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

from __future__ import annotations
from ascend_sdk.types import BaseModel
from enum import Enum
from typing_extensions import TypedDict


class RetrieveDistributionConstraintsRequestCreateMechanism(str, Enum):
    r"""Cash transfer mechanism to search constraints for"""

    ACH = "ACH"
    ICT = "ICT"


class RetrieveDistributionConstraintsRequestCreateTypedDict(TypedDict):
    r"""Request to retrieve retirement distribution constraints"""

    mechanism: RetrieveDistributionConstraintsRequestCreateMechanism
    r"""Cash transfer mechanism to search constraints for"""
    name: str
    r"""Name of the account being queried, for retirement distribution constraints Format: accounts/{account}"""


class RetrieveDistributionConstraintsRequestCreate(BaseModel):
    r"""Request to retrieve retirement distribution constraints"""

    mechanism: RetrieveDistributionConstraintsRequestCreateMechanism
    r"""Cash transfer mechanism to search constraints for"""

    name: str
    r"""Name of the account being queried, for retirement distribution constraints Format: accounts/{account}"""
