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

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


class SentReceiptTypedDict(TypedDict):
    receipt_id: str
    r"""Unique identifier for the receipt."""
    idempotency_key: str
    r"""The idempotency key used when creating the receipt."""
    sent_on: datetime
    r"""When the receipt was sent."""


class SentReceipt(BaseModel):
    receipt_id: Annotated[str, pydantic.Field(alias="receiptID")]
    r"""Unique identifier for the receipt."""

    idempotency_key: Annotated[str, pydantic.Field(alias="idempotencyKey")]
    r"""The idempotency key used when creating the receipt."""

    sent_on: Annotated[datetime, pydantic.Field(alias="sentOn")]
    r"""When the receipt was sent."""


try:
    SentReceipt.model_rebuild()
except NameError:
    pass
