
    <@g'                     ~    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	e      Zy
)    )CustomerBalanceTransaction)
ListObject)RequestOptions)StripeService)sanitize_id)DictListcast)LiteralNotRequired	TypedDictc                   l   e Zd Z G d de      Z G d de      Z G d de      Z G d de      Zi i fd	ed
dde	de
e   fdZi i fd	ed
dde	de
e   fdZi fd	ed
dde	defdZi fd	ed
dde	defdZi i fd	eded
dde	def
dZi i fd	eded
dde	def
dZi i fd	eded
dde	def
dZi i fd	eded
dde	def
dZy)!CustomerBalanceTransactionServicec                   `    e Zd ZU eed<   	 eed<   	 ee   ed<   	 eee      ed<   	 ed   ed<   y).CustomerBalanceTransactionService.CreateParamsamountcurrencydescriptionexpandLiteral['']|Dict[str, str]metadataN)__name__
__module____qualname__int__annotations__strr   r	        k/var/www/html/AdoubleTech/venv/lib/python3.12/site-packages/stripe/_customer_balance_transaction_service.pyCreateParamsr      sS    	 	 !%%	 DI&&	 :;;	r   r!   c                   Z    e Zd ZU ee   ed<   	 eee      ed<   	 ee   ed<   	 ee   ed<   y),CustomerBalanceTransactionService.ListParamsending_beforer   limitstarting_afterN)r   r   r   r   r   r   r	   r   r   r   r    
ListParamsr#   #   sL    "3''	 DI&&	 3	 $C((	r   r'   c                   $    e Zd ZU eee      ed<   y)0CustomerBalanceTransactionService.RetrieveParamsr   N)r   r   r   r   r	   r   r   r   r   r    RetrieveParamsr)   5   s    DI&&	r   r*   c                   H    e Zd ZU ee   ed<   	 eee      ed<   	 ed   ed<   y).CustomerBalanceTransactionService.UpdateParamsr   r   r   r   N)r   r   r   r   r   r   r	   r   r   r    UpdateParamsr,   ;   s;     %%	 DI&&	 :;;	r   r-   customerparamsr#   optionsreturnc                     t        t        t           | j                  ddj	                  t        |            d||            S )
        Returns a list of transactions that updated the customer's [balances](https://stripe.com/docs/billing/customer/balance).
        get-/v1/customers/{customer}/balance_transactionsr.   apibase_addressr/   r0   )r
   r   r   _requestformatr   selfr.   r/   r0   s       r    listz&CustomerBalanceTransactionService.listI   sU     12MM?FF(2 G  #  
 	
r   c                    K   t        t        t           | j                  ddj	                  t        |            d||       d{         S 7 w)r3   r4   r5   r6   r7   r8   N)r
   r   r   _request_asyncr;   r   r<   s       r    
list_asyncz,CustomerBalanceTransactionService.list_async_   se      12%%?FF(2 G  # &  
 	
s   AAA
	Ar   c                 |    t        t        | j                  ddj                  t	        |            d||            S )
        Creates an immutable transaction that updates the customer's credit [balance](https://stripe.com/docs/billing/customer/balance).
        postr5   r6   r7   r8   r
   r   r:   r;   r   r<   s       r    createz(CustomerBalanceTransactionService.createu   sO     &MM?FF(2 G  #  
 	
r   c                    K   t        t        | j                  ddj                  t	        |            d||       d{         S 7 w)rC   rD   r5   r6   r7   r8   Nr
   r   r@   r;   r   r<   s       r    create_asyncz.CustomerBalanceTransactionService.create_async   s_      &%%?FF(2 G  # &  
 	
s   =A
A
 	A
transactionr)   c                     t        t        | j                  ddj                  t	        |      t	        |            d||            S )
        Retrieves a specific customer balance transaction that updated the customer's [balances](https://stripe.com/docs/billing/customer/balance).
        r4   ;/v1/customers/{customer}/balance_transactions/{transaction}r.   rJ   r7   r8   rE   r=   r.   rJ   r/   r0   s        r    retrievez*CustomerBalanceTransactionService.retrieve   sW     &MMMTT(2 +K 8 U  #  	
 	
r   c                    K   t        t        | j                  ddj                  t	        |      t	        |            d||       d{         S 7 w)rL   r4   rM   rN   r7   r8   NrH   rO   s        r    retrieve_asyncz0CustomerBalanceTransactionService.retrieve_async   sg      &%%MTT(2 +K 8 U  # & 	 	
 	
	   AA	A

	Ar,   c                     t        t        | j                  ddj                  t	        |      t	        |            d||            S )x
        Most credit balance transaction fields are immutable, but you may update its description and metadata.
        rD   rM   rN   r7   r8   rE   rO   s        r    updatez(CustomerBalanceTransactionService.update   sW     &MMMTT(2 +K 8 U  #  	
 	
r   c                    K   t        t        | j                  ddj                  t	        |      t	        |            d||       d{         S 7 w)rU   rD   rM   rN   r7   r8   NrH   rO   s        r    update_asyncz.CustomerBalanceTransactionService.update_async   sg      &%%MTT(2 +K 8 U  # & 	 	
 	
	rS   N)r   r   r   r   r!   r'   r*   r-   r   r   r   r   r>   rA   rF   rI   rP   rR   rV   rX   r   r   r    r   r      s
   y ,Y $ y " BD"$	

 ?
  	

 
.	/
2 BD"$	

 ?
  	

 
.	/
4 #%	

 A
  	

 
$
4 #%	

 A
  	

 
$
4 FH"$

 
 C	

  
 
$
8 FH"$

 
 C	

  
 
$
8 DF"$

 
 A	

  
 
$
8 DF"$

 
 A	

  
 
$
r   r   N)$stripe._customer_balance_transactionr   stripe._list_objectr   stripe._request_optionsr   stripe._stripe_servicer   stripe._utilr   typingr   r	   r
   typing_extensionsr   r   r   r   r   r   r    <module>r`      s1    L * 2 0 $ # # = =s
 s
r   