
    AiU                         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mZ d dlmZmZmZ erd dlmZ d d	lmZ d d
lmZ d dlmZ  G d ded   ed         Zy)    )CreateableAPIResource)ExpandableField)
ListObject)ListableAPIResource)StripeObject)ClassVarDictOptionalcast)LiteralUnpackTYPE_CHECKING)DebitReversalCreateParams)DebitReversalListParams)DebitReversalRetrieveParams)Transactionc                   "   e Zd ZU dZdZeed      ed<    G d de      Z	 G d de      Z
eed<   	 eed	<   	 eed
<   	 ee   ed<   	 ee   ed<   	 eed<   	 ee	   ed<   	 eed<   	 eeef   ed<   	 ed   ed<   	 ed   ed<   	 eed<   	 ed   ed<   	 e
ed<   eed      ed<   	 eded   dd fd       Zeded   dd fd       Zeded   ded    fd        Zeded   ded    fd!       Zededed"   dd fd#       Zededed"   dd fd$       Ze	e
d%Zy&)'DebitReversalz
    You can reverse some [ReceivedDebits](https://stripe.com/docs/api#received_debits) depending on their network and source flow. Reversing a ReceivedDebit leads to the creation of a new object known as a DebitReversal.
    ztreasury.debit_reversalOBJECT_NAMEc                       e Zd ZU ee   ed<   y)DebitReversal.LinkedFlowsissuing_disputeN)__name__
__module____qualname__r
   str__annotations__     R/var/www/html/immo/lib/python3.12/site-packages/stripe/treasury/_debit_reversal.pyLinkedFlowsr   $   s    !#&	r   r!   c                       e Zd ZU ee   ed<   y)DebitReversal.StatusTransitionscompleted_atN)r   r   r   r
   intr   r   r   r    StatusTransitionsr#   *   s    sm#	r   r&   amountcreatedcurrencyfinancial_accounthosted_regulatory_receipt_urlidlinked_flowslivemodemetadata)achcardnetworkobjectreceived_debit)failed
processing	succeededstatusstatus_transitionsr   transactionparamsr   returnc                 Z    t        d| j                  d| j                         |            S )N
        Reverses a ReceivedDebit and creates a DebitReversal object.
        r   postr;   )r   _static_request	class_urlclsr;   s     r    createzDebitReversal.createj   s6        
 	
r   c                 v   K   t        d| j                  d| j                         |       d{         S 7 w)r>   r   r?   r@   N)r   _static_request_asyncrB   rC   s     r    create_asynczDebitReversal.create_asyncz   sD      ++ ,  
 	
s   ,97
	9r   c                     | j                  d| j                         |      }t        |t              s!t	        dt        |      j                  z        |S )3
        Returns a list of DebitReversals.
        getr@   %Expected list object from API, got %s)rA   rB   
isinstancer   	TypeErrortyper   rD   r;   results      r    listzDebitReversal.list   s]     $$MMO % 

 &*-7<((* 
 r   c                    K   | j                  d| j                         |       d{   }t        |t              s!t	        dt        |      j                  z        |S 7 7w)rJ   rK   r@   NrL   )rG   rB   rM   r   rN   rO   r   rP   s      r    
list_asynczDebitReversal.list_async   sk      00MMO 1 
 

 &*-7<((* 
 
s   &A"A 8A"r   c                 8     | |fi |}|j                          |S )3
        Retrieves a DebitReversal object.
        )refreshrD   r,   r;   instances       r    retrievezDebitReversal.retrieve   s$     r$V$r   c                 T   K    | |fi |}|j                          d{    |S 7 w)rV   N)refresh_asyncrX   s       r    retrieve_asynczDebitReversal.retrieve_async   s3      r$V$$$&&& 	's   (&()r-   r9   N)r   r   r   __doc__r   r   r   r   r   r!   r&   r%   r   r
   boolr	   r   classmethodr   rE   rH   r   rR   rT   rZ   r]   _inner_class_typesr   r   r    r   r      sH   
 	" '";<= l L  K L M  }$ $,C=0 	G ;'' N 38n ]## -..  788 *)/-899 
9:
	
 
 
9:
	
 
 78	O	$ & 78	O	$ &  &'D E	   &'D E	  $/r   r   N)stripe._createable_api_resourcer   stripe._expandable_fieldr   stripe._list_objectr   stripe._listable_api_resourcer   stripe._stripe_objectr   typingr   r	   r
   r   typing_extensionsr   r   r   4stripe.params.treasury._debit_reversal_create_paramsr   2stripe.params.treasury._debit_reversal_list_paramsr   6stripe.params.treasury._debit_reversal_retrieve_paramsr   stripe.treasury._transactionr   r   r   r   r    <module>rm      sV    B 4 * = . 1 1 < < 9s/*(sr   