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

import typing

import pydantic

from ...core.pydantic_utilities import UniversalBaseModel
from .letters_language import LettersLanguage


class Timestamp(UniversalBaseModel):
    word: str = pydantic.Field()
    """
    Word
    """

    punctuated_word: typing.Optional[str] = pydantic.Field(default=None)
    """
    Punctuated word
    """

    languages: typing.Optional[typing.List[LettersLanguage]] = pydantic.Field(default=None)
    """
    The language(s) for which this timestamp applies. If a word appears in both language versions, this field will include both "he" and "en". If the word is written in Hebrew letters, it will only have "he". If the word is transliterated into English letters, it will only have "en".
    """

    start: float = pydantic.Field()
    """
    Start time of the timestamp
    """

    end: float = pydantic.Field()
    """
    End time of the timestamp
    """

    speaker: typing.Optional[str] = pydantic.Field(default=None)
    """
    Speaker (Pro feature)
    """

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