# coding: utf-8

"""
    STACKIT CDN API

    API used to create and manage your CDN distributions.

    The version of the OpenAPI document: 1.0.0
    Generated by OpenAPI Generator (https://openapi-generator.tech)

    Do not edit the class manually.
"""  # noqa: E501

from __future__ import annotations

import json
from enum import Enum

from typing_extensions import Self


class WafMode(str, Enum):
    """
    - `ENABLED`: The WAF actively inspects and blocks malicious requests. - `DISABLED`: The WAF is completely off. No inspection occurs. - `LOG_ONLY`: The WAF inspects requests and logs matches but never blocks.
    """

    """
    allowed enum values
    """
    DISABLED = "DISABLED"
    ENABLED = "ENABLED"
    LOG_ONLY = "LOG_ONLY"

    @classmethod
    def from_json(cls, json_str: str) -> Self:
        """Create an instance of WafMode from a JSON string"""
        return cls(json.loads(json_str))
