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

"""Enumeration of vault byok key provider values."""

from __future__ import annotations

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


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

    AWS_KMS = "AWS_KMS"
    GCP_KMS = "GCP_KMS"
    AZURE_KEY_VAULT = "AZURE_KEY_VAULT"

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


VaultByokKeyProviderLiteral: TypeAlias = Literal[
    "AWS_KMS", "GCP_KMS", "AZURE_KEY_VAULT"
]
