
    Dh!                          S SK Jr  S SKJr  S SKJr  S SKJr  S SKJ	r	  S SK
Jr  S SKJrJrJrJrJr  S SKJrJrJrJr  \(       a  S S	KJr   " S
 S\S   \S   5      rg)    )CreateableAPIResource)ExpandableField)
ListObject)ListableAPIResource)RequestOptions)StripeObject)ClassVarDictListOptionalcast)LiteralNotRequiredUnpackTYPE_CHECKING)Transactionc                   H   \ rS rSr% SrSr\\S      \S'    " S S\	5      r
 " S S\5      r " S	 S
\5      r " S S\5      r\\S'    \\S'    \\S'    \\S'    \\   \S'    \\S'    \\S'    \\\4   \S'    \S   \S'    \S   \S'    \\S'    \S   \S'    \
\S'   \\S      \S'    \S\S   S S 4S! j5       r\S\S   S S 4S" j5       r\S\S#   S \S    4S$ j5       r\S\S#   S \S    4S% j5       r\S\S\S&   S S 4S' j5       r\S\S\S&   S S 4S( j5       rS\
0rS)rg*)+CreditReversal   z
You can reverse some [ReceivedCredits](https://stripe.com/docs/api#received_credits) depending on their network and source flow. Reversing a ReceivedCredit leads to the creation of a new object known as a CreditReversal.
ztreasury.credit_reversalOBJECT_NAMEc                   &    \ rS rSr% \\   \S'   Srg) CreditReversal.StatusTransitions   	posted_at N)__name__
__module____qualname____firstlineno__r   int__annotations____static_attributes__r       c/home/kali/devsecops-assessor/venv/lib/python3.13/site-packages/stripe/treasury/_credit_reversal.pyStatusTransitionsr      s    C= 	r#   r%   c                   T    \ rS rSr% \\\      \S'    \\\\4      \S'    \\S'   Sr	g)CreditReversal.CreateParams"   expandmetadatareceived_creditr   N)
r   r   r   r   r   r   strr!   r
   r"   r   r#   r$   CreateParamsr'   "   s=    DI&&	 d38n--	 	r#   r-   c                       \ rS rSr% \\   \S'    \\\      \S'    \\S'    \\   \S'    \\   \S'    \\   \S'    \\	S      \S	'   S
r
g)CreditReversal.ListParams0   ending_beforer)   financial_accountlimitr+   starting_aftercanceledposted
processingstatusr   N)r   r   r   r   r   r,   r!   r   r    r   r"   r   r#   r$   
ListParamsr/   0   s    "3''	 DI&&	 	 3	 %S))	 $C((	 G$FGHH	r#   r:   c                   ,    \ rS rSr% \\\      \S'   Srg)CreditReversal.RetrieveParamsN   r)   r   N)	r   r   r   r   r   r   r,   r!   r"   r   r#   r$   RetrieveParamsr<   N   s    DI&&	r#   r>   amountcreatedcurrencyr2   hosted_regulatory_receipt_urlidlivemoder*   )achstripenetworkobjectr+   r5   r9   status_transitionsr   transactionparamsr'   returnc           	      T    [        SU R                  SU R                  5       US95      $ )@
Reverses a ReceivedCredit and creates a CreditReversal object.
r   postrK   )r   _static_request	class_urlclsrK   s     r$   createCreditReversal.create   s6        
 	
r#   c           	      p   #    [        SU R                  SU R                  5       US9I Sh  vN 5      $  N7f)rN   r   rO   rP   N)r   _static_request_asyncrR   rS   s     r$   create_asyncCreditReversal.create_async   sC      ++ ,  
 	
s   )64
	6r/   c                     U R                  SU R                  5       US9n[        U[        5      (       d!  [	        S[        U5      R                  -  5      eU$ )$
Returns a list of CreditReversals.
getrP   %Expected list object from API, got %s)rQ   rR   
isinstancer   	TypeErrortyper   rT   rK   results      r$   listCreditReversal.list   s`     $$MMO % 

 &*--7<((* 
 r#   c                    #    U R                  SU R                  5       US9I Sh  vN n[        U[        5      (       d!  [	        S[        U5      R                  -  5      eU$  N<7f)r\   r]   rP   Nr^   )rX   rR   r_   r   r`   ra   r   rb   s      r$   
list_asyncCreditReversal.list_async   sm      00MMO 1 
 

 &*--7<((* 
 
s   #A$A"=A$r<   c                 8    U " U40 UD6nUR                  5         U$ )
Retrieves the details of an existing CreditReversal by passing the unique CreditReversal ID from either the CreditReversal creation request or CreditReversal list
)refreshrT   rC   rK   instances       r$   retrieveCreditReversal.retrieve   s$     r$V$r#   c                 T   #    U " U40 UD6nUR                  5       I Sh  vN   U$  N7f)rj   N)refresh_asyncrl   s       r$   retrieve_asyncCreditReversal.retrieve_async   s2      r$V$$$&&& 	's   (&(r   N) r   r   r   r   __doc__r   r	   r   r!   r   r%   r   r-   r:   r>   r    r,   r   boolr
   r   classmethodr   rU   rY   r   rd   rg   rn   rr   _inner_class_typesr"   r   r#   r$   r   r      sJ   
 	# '"<=> L ~ ^ <  K L M  $,C=0 	G N 38n _%% .//  677 *)/-899 
;<
	
 
 
;<
	
 
 9:	$	% & 9:	$	% &  &'F G	   &'F G	  /0ABr#   r   N)stripe._createable_api_resourcer   stripe._expandable_fieldr   stripe._list_objectr   stripe._listable_api_resourcer   stripe._request_optionsr   stripe._stripe_objectr   typingr	   r
   r   r   r   typing_extensionsr   r   r   r   stripe.treasury._transactionr   r   r   r#   r$   <module>r      sL    B 4 * = 2 . 7 7 I I8XC*+()XCr#   