# This file was auto-generated by Fern from our API Definition.

import typing

import pydantic
import typing_extensions
from ..core.pydantic_utilities import IS_PYDANTIC_V2
from ..core.serialization import FieldMetadata
from ..core.unchecked_base_model import UncheckedBaseModel
from .dubbing_transcript import DubbingTranscript
from .dubbing_transcripts_response_model_transcript_format import DubbingTranscriptsResponseModelTranscriptFormat


class DubbingTranscriptsResponseModel(UncheckedBaseModel):
    transcript_format: DubbingTranscriptsResponseModelTranscriptFormat
    srt: typing.Optional[str] = None
    webvtt: typing.Optional[str] = None
    json_: typing_extensions.Annotated[
        typing.Optional[DubbingTranscript], FieldMetadata(alias="json"), pydantic.Field(alias="json")
    ] = None

    if IS_PYDANTIC_V2:
        model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)  # type: ignore # Pydantic v2
    else:

        class Config:
            frozen = True
            smart_union = True
            extra = pydantic.Extra.allow
