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

from ..core.unchecked_base_model import UncheckedBaseModel
import typing
from .embed_variant import EmbedVariant
from .widget_config_response_model_avatar import WidgetConfigResponseModelAvatar
from .widget_feedback_mode import WidgetFeedbackMode
from ..core.pydantic_utilities import IS_PYDANTIC_V2
import pydantic


class WidgetConfigResponseModel(UncheckedBaseModel):
    variant: typing.Optional[EmbedVariant] = None
    avatar: typing.Optional[WidgetConfigResponseModelAvatar] = None
    feedback_mode: typing.Optional[WidgetFeedbackMode] = None
    bg_color: typing.Optional[str] = None
    text_color: typing.Optional[str] = None
    btn_color: typing.Optional[str] = None
    btn_text_color: typing.Optional[str] = None
    border_color: typing.Optional[str] = None
    focus_color: typing.Optional[str] = None
    border_radius: typing.Optional[int] = None
    btn_radius: typing.Optional[int] = None
    action_text: typing.Optional[str] = None
    start_call_text: typing.Optional[str] = None
    end_call_text: typing.Optional[str] = None
    expand_text: typing.Optional[str] = None
    listening_text: typing.Optional[str] = None
    speaking_text: typing.Optional[str] = None
    shareable_page_text: typing.Optional[str] = None
    terms_text: typing.Optional[str] = None
    terms_html: typing.Optional[str] = None
    terms_key: typing.Optional[str] = None
    language: str
    supported_language_overrides: typing.Optional[typing.List[str]] = 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
