"""
RCABench API

RCABench - A comprehensive root cause analysis benchmarking platform for microservices

The version of the OpenAPI document: 1.1.44
Contact: team@rcabench.com
Generated by OpenAPI Generator (https://rcabench.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 FilterOperator(str, Enum):
    """
    FilterOperator
    """

    """
    allowed enum values
    """
    Equal = "eq"
    NotEqual = "ne"
    Greater = "gt"
    GreaterEq = "gte"
    Less = "lt"
    LessEq = "lte"
    Like = "like"
    StartsWith = "starts"
    EndsWith = "ends"
    NotLike = "nlike"
    In = "in"
    NotIn = "nin"
    IsNull = "null"
    IsNotNull = "nnull"
    DateEqual = "deq"
    DateAfter = "dafter"
    DateBefore = "dbefore"
    DateBetween = "dbetween"

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