"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""

from __future__ import annotations
from .mode import Mode
from moovio_sdk.types import BaseModel
import pydantic
from typing_extensions import Annotated, TypedDict


class OnboardingPartnerAccountTypedDict(TypedDict):
    r"""The account that created the onboarding invite."""

    account_id: str
    r"""The account ID of the partner that created the invite."""
    account_mode: Mode
    r"""The operating mode for an account."""
    display_name: str
    r"""The name of the Moov account used to create the onboarding invite."""


class OnboardingPartnerAccount(BaseModel):
    r"""The account that created the onboarding invite."""

    account_id: Annotated[str, pydantic.Field(alias="accountID")]
    r"""The account ID of the partner that created the invite."""

    account_mode: Annotated[Mode, pydantic.Field(alias="accountMode")]
    r"""The operating mode for an account."""

    display_name: Annotated[str, pydantic.Field(alias="displayName")]
    r"""The name of the Moov account used to create the onboarding invite."""


try:
    OnboardingPartnerAccount.model_rebuild()
except NameError:
    pass
