# This file is auto-generated by oagen. Do not edit.

"""Enumeration of directory state values."""

from __future__ import annotations

from enum import Enum
from typing import Optional
from typing import Literal, TypeAlias


class DirectoryState(str, Enum):
    """Known values for DirectoryState."""

    LINKED = "linked"
    VALIDATING = "validating"
    INVALID_CREDENTIALS = "invalid_credentials"
    UNLINKED = "unlinked"
    DELETING = "deleting"

    @classmethod
    def _missing_(cls, value: object) -> Optional["DirectoryState"]:
        if not isinstance(value, str):
            return None
        unknown = str.__new__(cls, value)
        unknown._name_ = value.upper()
        unknown._value_ = value
        return unknown


DirectoryStateLiteral: TypeAlias = Literal[
    "linked", "validating", "invalid_credentials", "unlinked", "deleting"
]
