# 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 .embed_config_avatar import EmbedConfigAvatar
from ..core.pydantic_utilities import IS_PYDANTIC_V2
import pydantic


class EmbedConfig(UncheckedBaseModel):
    variant: typing.Optional[EmbedVariant] = None
    avatar: typing.Optional[EmbedConfigAvatar] = None
    custom_avatar_path: typing.Optional[str] = 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

    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
