"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""

from __future__ import annotations
from enum import Enum
from opperai.types import BaseModel
import pydantic
from typing import Union
from typing_extensions import Annotated, TypeAliasType, TypedDict


class ChatCompletionAudioParamFormat(str, Enum):
    WAV = "wav"
    AAC = "aac"
    MP3 = "mp3"
    FLAC = "flac"
    OPUS = "opus"
    PCM16 = "pcm16"


class VoiceEnum(str, Enum):
    ALLOY = "alloy"
    ASH = "ash"
    BALLAD = "ballad"
    CORAL = "coral"
    ECHO = "echo"
    FABLE = "fable"
    ONYX = "onyx"
    NOVA = "nova"
    SAGE = "sage"
    SHIMMER = "shimmer"
    VERSE = "verse"


VoiceTypedDict = TypeAliasType("VoiceTypedDict", Union[str, VoiceEnum])


Voice = TypeAliasType("Voice", Union[str, VoiceEnum])


class ChatCompletionAudioParamTypedDict(TypedDict):
    format_: ChatCompletionAudioParamFormat
    voice: VoiceTypedDict


class ChatCompletionAudioParam(BaseModel):
    format_: Annotated[ChatCompletionAudioParamFormat, pydantic.Field(alias="format")]

    voice: Voice
