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

from __future__ import annotations
from ascend_sdk.types import BaseModel
from typing import Optional
from typing_extensions import NotRequired, TypedDict


class CancelIctWithdrawalRequestCreateTypedDict(TypedDict):
    r"""Request to cancel an existing ICT withdrawal"""

    name: str
    r"""Full name of the ICT withdrawal resource, which contains account id and ICT withdrawal id"""
    reason: NotRequired[str]
    r"""Reason why the ICT withdrawal is being canceled"""


class CancelIctWithdrawalRequestCreate(BaseModel):
    r"""Request to cancel an existing ICT withdrawal"""

    name: str
    r"""Full name of the ICT withdrawal resource, which contains account id and ICT withdrawal id"""

    reason: Optional[str] = None
    r"""Reason why the ICT withdrawal is being canceled"""
