ó
    C®µh  ã                   óš   • 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  S SKJrJr  \(       a  S SKJr  S SKJr   " S	 S
\S
   5      rg)é    )ÚExpandableField)ÚTransfer)ÚUpdateableAPIResource)Úsanitize_id)ÚClassVarÚDictÚOptional)ÚLiteralÚTYPE_CHECKING)ÚBalanceTransaction)ÚRefundc                   ó  • \ rS rSr% SrSr\\S      \S'   \	\S'    \
\S      \S'    \	\S'    \\S	'    \
\S
      \S'    \\S'    \
\\\4      \S'    \S   \S'    \
\S
      \S'    \S   \S'    S r\S 5       r\S 5       rSrg)ÚReversalé   a)  
[Stripe Connect](https://stripe.com/docs/connect) platforms can reverse transfers made to a
connected account, either entirely or partially, and can also specify whether
to refund any related application fees. Transfer reversals add to the
platform's balance and subtract from the destination account's balance.

Reversing a transfer that was made for a [destination
charge](https://docs.stripe.com/docs/connect/destination-charges) is allowed only up to the amount of
the charge. It is possible to reverse a
[transfer_group](https://stripe.com/docs/connect/separate-charges-and-transfers#transfer-options)
transfer only if the destination account has enough balance to cover the
reversal.

Related guide: [Reverse transfers](https://stripe.com/docs/connect/separate-charges-and-transfers#reverse-transfers)
Útransfer_reversalÚOBJECT_NAMEÚamountr   Úbalance_transactionÚcreatedÚcurrencyr   Údestination_payment_refundÚidÚmetadataÚobjectÚsource_refundr   Útransferc                 óä   • U R                   nU R                  n[        U[        5      (       a  UR                   n[        R                  " 5       n[        U5      n[        U5      nU< SU< SU< 3$ )NÚ/z/reversals/)r   r   Ú
isinstancer   Ú	class_urlr   )ÚselfÚtokenr   ÚbaseÚ	cust_extnÚextns         ÚS/home/kali/devsecops-assessor/venv/lib/python3.13/site-packages/stripe/_reversal.pyÚinstance_urlÚReversal.instance_urlJ   sY   € Ø—‘ˆØ—=‘=ˆÜh¤×)Ñ)Ø—{‘{ˆHÜ×!Ò!Ó#ˆÜ Ó)ˆ	Ü˜5Ó!ˆÛ'+«YºÐ=Ð=ó    c                 ó   • [        S5      e)Nz²Can't modify a reversal without a transfer ID. Use stripe.Transfer.modify_reversal('transfer_id', 'reversal_id', ...) (see https://stripe.com/docs/api/transfer_reversals/update).©ÚNotImplementedError)ÚclsÚsidÚparamss      r&   ÚmodifyÚReversal.modifyT   s   € ä!ðKó
ð 	
r)   c                 ó   • [        S5      e)Nz³Can't retrieve a reversal without a transfer ID. Use stripe.Transfer.retrieve_reversal('transfer_id', 'reversal_id') (see https://stripe.com/docs/api/transfer_reversals/retrieve).r+   )r-   r   r/   s      r&   ÚretrieveÚReversal.retrieve\   s   € ä!ðMó
ð 	
r)   © N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   r   r
   Ú__annotations__Úintr	   r   Ústrr   r'   Úclassmethodr0   r3   Ú__static_attributes__r5   r)   r&   r   r      sÿ   ‡ ñð  ;N€K˜'Ð"5Ñ6Ñ7ÓMØƒKðð " /Ð2FÑ"GÑHÓHðð ƒLðð ƒMðð !)¨¸Ñ)BÑ CÓCðð 	ƒGðð t˜C ˜H‘~Ñ&Ó&ðð Ð'Ñ(Ó(ðð ˜O¨HÑ5Ñ6Ó6ðð ˜jÑ)Ó)ðò>ð ñ
ó ð
ð ñ
ó ó
r)   r   N)Ústripe._expandable_fieldr   Ústripe._transferr   Ústripe._updateable_api_resourcer   Ústripe._utilr   Útypingr   r   r	   Útyping_extensionsr
   r   Ústripe._balance_transactionr   Ústripe._refundr   r   r5   r)   r&   Ú<module>rH      s9   ðõ 5Ý %Ý AÝ $ß +Ñ +ß 4æÝ>Ý%ôS
Ð$ ZÑ0õ S
r)   