o
    BiV                     @   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)DebitReversal)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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dS )DebitReversalServicec                   @   s>   e Zd ZU eee  ed< 	 eeeef  ed< 	 eed< dS )!DebitReversalService.CreateParamsexpandmetadatareceived_debitN)__name__
__module____qualname__r   r   str__annotations__r    r   r   g/var/www/html/Trade-python/venv/lib/python3.10/site-packages/stripe/treasury/_debit_reversal_service.pyCreateParams   s   
 r   c                   @   s   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< 	 ee ed< 	 eed	  ed
< dS )DebitReversalService.ListParamsending_beforer   financial_accountlimitr   )lostwon
resolutionstarting_after)canceled	completed
processingstatusN)	r   r   r   r   r   r   r   intr
   r   r   r   r   
ListParams   s"   
 r'   c                   @   s   e Zd ZU eee  ed< dS )#DebitReversalService.RetrieveParamsr   N)r   r   r   r   r   r   r   r   r   r   r   RetrieveParams=   s   
 r)   paramsr   optionsreturnc              	   C   s   t tt | jddd||dS )3
        Returns a list of DebitReversals.
        get/v1/treasury/debit_reversalsapibase_addressr*   r+   )r	   r   r   _requestselfr*   r+   r   r   r   listC   s   zDebitReversalService.listc              	      s&   t tt | jddd||dI dH S )r-   r.   r/   r0   r1   N)r	   r   r   _request_asyncr4   r   r   r   
list_asyncV   s   
zDebitReversalService.list_asyncr   c              	   C   s   t t| jddd||dS )N
        Reverses a ReceivedDebit and creates a DebitReversal object.
        postr/   r0   r1   )r	   r   r3   r4   r   r   r   createi   s   zDebitReversalService.createc              	      s"   t t| jddd||dI dH S )r9   r:   r/   r0   r1   N)r	   r   r7   r4   r   r   r   create_async|   s   
z!DebitReversalService.create_asyncdebit_reversalr(   c              	   C   s&   t t| jddjt|dd||dS )3
        Retrieves a DebitReversal object.
        r.   -/v1/treasury/debit_reversals/{debit_reversal}r=   r0   r1   )r	   r   r3   formatr   r5   r=   r*   r+   r   r   r   retrieve   s   	zDebitReversalService.retrievec              	      s.   t t| jddjt|dd||dI dH S )r>   r.   r?   r@   r0   r1   N)r	   r   r7   rA   r   rB   r   r   r   retrieve_async   s   	
z#DebitReversalService.retrieve_asyncN)r   r   r   r   r   r'   r)   r   r   r   r6   r8   r;   r<   r   rC   rD   r   r   r   r   r      st    "	




r   N)stripe._list_objectr   stripe._request_optionsr   stripe._stripe_servicer   stripe._utilr   stripe.treasury._debit_reversalr   typingr   r   r	   typing_extensionsr
   r   r   r   r   r   r   r   <module>   s   