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

"""Enumeration of authentication factors create request type values."""

from __future__ import annotations

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


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

    GENERIC_OTP = "generic_otp"
    SMS = "sms"
    TOTP = "totp"

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


AuthenticationFactorsCreateRequestTypeLiteral: TypeAlias = Literal[
    "generic_otp", "sms", "totp"
]
