o
    Bi                      @   sx   d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z	 d dl
mZmZmZ d dlmZmZmZ G dd	 d	eZd
S )    )
ListObject)RequestOptions)StripeService)sanitize_id)InboundTransfer)DictListcast)LiteralNotRequired	TypedDictc                	   @   s<  e Zd ZG dd deZG dd deZG dd deZG dd deZi fd	d
dede	e
 fddZi fd	d
dede	e
 fddZi fd	ddede
fddZi fd	ddede
fddZi i fded	ddede
fddZi i fded	ddede
fddZi i fded	ddede
fddZi i fded	ddede
fd d!Zd"S )#InboundTransferServicec                   @      e Zd ZU eee  ed< dS )#InboundTransferService.CancelParamsexpandN__name__
__module____qualname__r   r   str__annotations__ r   r   i/var/www/html/Trade-python/venv/lib/python3.10/site-packages/stripe/treasury/_inbound_transfer_service.pyCancelParams      
 r   c                   @   sx   e Zd ZU eed< 	 eed< 	 ee ed< 	 eee  ed< 	 eed< 	 eeeef  ed< 	 eed< 	 ee ed< d	S )
#InboundTransferService.CreateParamsamountcurrencydescriptionr   financial_accountmetadataorigin_payment_methodstatement_descriptorN)	r   r   r   intr   r   r   r   r   r   r   r   r   CreateParams   s"   
 r$   c                   @   sd   e Zd ZU ee ed< 	 eee  ed< 	 eed< 	 ee ed< 	 ee ed< 	 eed  ed< dS )	!InboundTransferService.ListParamsending_beforer   r   limitstarting_after)canceledfailed
processing	succeededstatusN)	r   r   r   r   r   r   r   r#   r
   r   r   r   r   
ListParams5   s   
 r.   c                   @   r   )%InboundTransferService.RetrieveParamsr   Nr   r   r   r   r   RetrieveParamsQ   r   r0   paramsr%   optionsreturnc              	   C   s   t tt | jddd||dS )^
        Returns a list of InboundTransfers sent from the specified FinancialAccount.
        get/v1/treasury/inbound_transfersapibase_addressr1   r2   )r	   r   r   _requestselfr1   r2   r   r   r   listW   s   zInboundTransferService.listc              	      s&   t tt | jddd||dI dH S )r4   r5   r6   r7   r8   N)r	   r   r   _request_asyncr;   r   r   r   
list_asyncj   s   
z!InboundTransferService.list_asyncr   c              	   C   s   t t| jddd||dS )-
        Creates an InboundTransfer.
        postr6   r7   r8   )r	   r   r:   r;   r   r   r   create}   s   zInboundTransferService.createc              	      s"   t t| jddd||dI dH S )r@   rA   r6   r7   r8   N)r	   r   r>   r;   r   r   r   create_async   s   
z#InboundTransferService.create_asyncidr/   c              	   C   &   t t| jddjt|dd||dS )G
        Retrieves the details of an existing InboundTransfer.
        r5   #/v1/treasury/inbound_transfers/{id}rD   r7   r8   r	   r   r:   formatr   r<   rD   r1   r2   r   r   r   retrieve      	zInboundTransferService.retrievec              	      .   t t| jddjt|dd||dI dH S )rF   r5   rG   rH   r7   r8   Nr	   r   r>   rJ   r   rK   r   r   r   retrieve_async      	
z%InboundTransferService.retrieve_asyncinbound_transferr   c              	   C   rE   )-
        Cancels an InboundTransfer.
        rA   8/v1/treasury/inbound_transfers/{inbound_transfer}/cancelrR   r7   r8   rI   r<   rR   r1   r2   r   r   r   cancel   rM   zInboundTransferService.cancelc              	      rN   )rS   rA   rT   rU   r7   r8   NrO   rV   r   r   r   cancel_async   rQ   z#InboundTransferService.cancel_asyncN)r   r   r   r   r   r$   r.   r0   r   r   r   r=   r?   rB   rC   r   rL   rP   rW   rX   r   r   r   r   r      s    "	






r   N)stripe._list_objectr   stripe._request_optionsr   stripe._stripe_servicer   stripe._utilr   !stripe.treasury._inbound_transferr   typingr   r   r	   typing_extensionsr
   r   r   r   r   r   r   r   <module>   s   