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

import datetime as dt
import typing

import pydantic

from ...core.pydantic_utilities import UniversalBaseModel
from .language import Language
from .letters_language import LettersLanguage
from .status import Status
from .transcription_id import TranscriptionId


class TranscriptionInfo(UniversalBaseModel):
    id: TranscriptionId = pydantic.Field()
    """
    ID of the transcription
    """

    title: str = pydantic.Field()
    """
    Title of the transcription
    """

    created_at: dt.datetime = pydantic.Field()
    """
    When the transcription was created
    """

    primary_language: Language = pydantic.Field()
    """
    Primary language of the audio content
    """

    lang_for_hebrew_words: typing.List[LettersLanguage] = pydantic.Field()
    """
    Languages used for Hebrew words in the transcription
    """

    num_speakers: int = pydantic.Field()
    """
    Number of speakers in the audio
    """

    status: Status = pydantic.Field()
    """
    Current status of the transcription
    """

    duration: int = pydantic.Field()
    """
    Duration of the audio in seconds
    """

    model: typing.Optional[str] = pydantic.Field(default=None)
    """
    Model used for the transcription
    """

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