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

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


class PaymentSummaryTypedDict(TypedDict):
    completed_count: int
    r"""Number of completed payment links in the period"""
    completed_amount: str
    r"""Total amount of completed payment links in dollars"""
    pending_count: int
    r"""Number of pending payment links in the period"""
    pending_amount: str
    r"""Total amount of pending payment links in dollars"""
    expired_count: int
    r"""Number of expired payment links in the period"""
    expired_amount: str
    r"""Total amount of expired payment links in dollars"""


class PaymentSummary(BaseModel):
    completed_count: Annotated[int, pydantic.Field(alias="completedCount")]
    r"""Number of completed payment links in the period"""

    completed_amount: Annotated[str, pydantic.Field(alias="completedAmount")]
    r"""Total amount of completed payment links in dollars"""

    pending_count: Annotated[int, pydantic.Field(alias="pendingCount")]
    r"""Number of pending payment links in the period"""

    pending_amount: Annotated[str, pydantic.Field(alias="pendingAmount")]
    r"""Total amount of pending payment links in dollars"""

    expired_count: Annotated[int, pydantic.Field(alias="expiredCount")]
    r"""Number of expired payment links in the period"""

    expired_amount: Annotated[str, pydantic.Field(alias="expiredAmount")]
    r"""Total amount of expired payment links in dollars"""


try:
    PaymentSummary.model_rebuild()
except NameError:
    pass
