
    <@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
)    )
ListObject)RequestOptions)StripeService)sanitize_id)CreditGrant)DictListcast)LiteralNotRequired	TypedDictc            	       H   e Zd Z G d de      Z G d de      Z G d de      Z G d de      Z G d	 d
e      Z G d de      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ddedee   fdZi i fdddedee   fdZi fdddedefdZi fdddedefdZi i fdedddedefd Zi i fdedddedefd!Zi i fdedd"dedefd#Zi i fdedd"dedefd$Zi i fdedd%dedefd&Zi i fdedd%dedefd'Zi i fdedd(dedefd)Zi i fdedd(dedefd*Zy+),CreditGrantServicec                       e Zd ZU ded<   	 ded<   	 ed   ed<   	 eed<   	 ee   ed<   	 eee      ed	<   	 ee   ed
<   	 ee	eef      ed<   	 ee   ed<   y)CreditGrantService.CreateParams%CreditGrantService.CreateParamsAmountamount2CreditGrantService.CreateParamsApplicabilityConfigapplicability_config)paidpromotionalcategorycustomereffective_atexpand
expires_atmetadatanameN)
__name__
__module____qualname____annotations__r   strr   intr	   r        c/var/www/html/AdoubleTech/venv/lib/python3.12/site-packages/stripe/billing/_credit_grant_service.pyCreateParamsr      s    77	 A	
	 /00	 	 "#&&	 DI&&	  $$	 d38n--	 #	r&   r(   c                   0    e Zd ZU ed   ed<   	 ed   ed<   y)r   -CreditGrantService.CreateParamsAmountMonetarymonetarytypeN)r   r    r!   r   r"   r   r%   r&   r'   CreateParamsAmountz%CreditGrantService.CreateParamsAmount5   s%    MNN	 j!!	r&   r-   c                   $    e Zd ZU eed<   	 eed<   y)r*   currencyvalueN)r   r    r!   r#   r"   r$   r%   r&   r'   CreateParamsAmountMonetaryz-CreditGrantService.CreateParamsAmountMonetary?   s    	 
	r&   r1   c                       e Zd ZU ded<   y)r   7CreditGrantService.CreateParamsApplicabilityConfigScopescopeN)r   r    r!   r"   r%   r&   r'   CreateParamsApplicabilityConfigz2CreditGrantService.CreateParamsApplicabilityConfigI   s    HH	r&   r5   c                       e Zd ZU ed   ed<   y)r3   metered
price_typeN)r   r    r!   r   r"   r%   r&   r'   $CreateParamsApplicabilityConfigScopez7CreditGrantService.CreateParamsApplicabilityConfigScopeO   s    I&&	r&   r9   c                   $    e Zd ZU eee      ed<   y)CreditGrantService.ExpireParamsr   Nr   r    r!   r   r	   r#   r"   r%   r&   r'   ExpireParamsr;   U       DI&&	r&   r=   c                   l    e Zd ZU ee   ed<   	 ee   ed<   	 eee      ed<   	 ee   ed<   	 ee   ed<   y)CreditGrantService.ListParamsr   ending_beforer   limitstarting_afterN)r   r    r!   r   r#   r"   r	   r$   r%   r&   r'   
ListParamsr@   [   s^    c""	 #3''	 DI&&	 3	 $C((	r&   rD   c                   $    e Zd ZU eee      ed<   y)!CreditGrantService.RetrieveParamsr   Nr<   r%   r&   r'   RetrieveParamsrF   q   r>   r&   rG   c                   R    e Zd ZU eee      ed<   	 ed   ed<   	 eeeef      ed<   y)CreditGrantService.UpdateParamsr   zLiteral['']|intr   r   N)r   r    r!   r   r	   r#   r"   r   r%   r&   r'   UpdateParamsrI   w   sC    DI&&	   122	 d38n--	r&   rJ   c                   $    e Zd ZU eee      ed<   y)"CreditGrantService.VoidGrantParamsr   Nr<   r%   r&   r'   VoidGrantParamsrL      r>   r&   rM   paramsr@   optionsreturnc           
      X    t        t        t           | j                  ddd||            S )3
        Retrieve a list of credit grants.
        get/v1/billing/credit_grantsapibase_addressrN   rO   )r
   r   r   _requestselfrN   rO   s      r'   listzCreditGrantService.list   s9     {#MM+"  	
 		
r&   c           
      t   K   t        t        t           | j                  ddd||       d{         S 7 w)rR   rS   rT   rU   rV   N)r
   r   r   _request_asyncrY   s      r'   
list_asynczCreditGrantService.list_async   sI      {#%%+" &  	
 		
s   +86
	8r   c           
      J    t        t        | j                  ddd||            S ))
        Creates a credit grant.
        postrT   rU   rV   )r
   r   rX   rY   s      r'   createzCreditGrantService.create   s4     MM+"  	
 		
r&   c           
      f   K   t        t        | j                  ddd||       d{         S 7 w)r`   ra   rT   rU   rV   N)r
   r   r]   rY   s      r'   create_asynczCreditGrantService.create_async   sD      %%+" &  	
 		
s   $1/
	1idrF   c                 |    t        t        | j                  ddj                  t	        |            d||            S )+
        Retrieves a credit grant.
        rS   /v1/billing/credit_grants/{id}re   rU   rV   r
   r   rX   formatr   rZ   re   rN   rO   s       r'   retrievezCreditGrantService.retrieve   sF     MM077;r?7K"  	
 		
r&   c                    K   t        t        | j                  ddj                  t	        |            d||       d{         S 7 w)rg   rS   rh   ri   rU   rV   Nr
   r   r]   rk   r   rl   s       r'   retrieve_asyncz!CreditGrantService.retrieve_async   sV      %%077;r?7K" &  	
 		
   =A
A
 	A
rI   c                 |    t        t        | j                  ddj                  t	        |            d||            S ))
        Updates a credit grant.
        ra   rh   ri   rU   rV   rj   rl   s       r'   updatezCreditGrantService.update   sF     MM077;r?7K"  	
 		
r&   c                    K   t        t        | j                  ddj                  t	        |            d||       d{         S 7 w)rs   ra   rh   ri   rU   rV   Nro   rl   s       r'   update_asynczCreditGrantService.update_async  sV      %%077;r?7K" &  	
 		
rq   r;   c                 |    t        t        | j                  ddj                  t	        |            d||            S ))
        Expires a credit grant.
        ra   %/v1/billing/credit_grants/{id}/expireri   rU   rV   rj   rl   s       r'   expirezCreditGrantService.expire'  sM     MM7>>"2 ?  #  
 	
r&   c                    K   t        t        | j                  ddj                  t	        |            d||       d{         S 7 w)rx   ra   ry   ri   rU   rV   Nro   rl   s       r'   expire_asynczCreditGrantService.expire_async=  s]      %%7>>"2 ?  # &  
 	
rq   rL   c                 |    t        t        | j                  ddj                  t	        |            d||            S )'
        Voids a credit grant.
        ra   #/v1/billing/credit_grants/{id}/voidri   rU   rV   rj   rl   s       r'   
void_grantzCreditGrantService.void_grantS  sM     MM5<<"2 =  #  
 	
r&   c                    K   t        t        | j                  ddj                  t	        |            d||       d{         S 7 w)r~   ra   r   ri   rU   rV   Nro   rl   s       r'   void_grant_asyncz#CreditGrantService.void_grant_asynci  s]      %%5<<"2 =  # &  
 	
rq   N)r   r    r!   r   r(   r-   r1   r5   r9   r=   rD   rG   rJ   rM   r   r   r   r[   r^   rb   rd   r#   rm   rp   rt   rv   rz   r|   r   r   r%   r&   r'   r   r      s   &y &PY Y ) y y Y , y )  35"$
/
  
 
K	 	
* 35"$
/
  
 
K	 	
, #%
1
  
 
	
, #%
1
  
 
	
, 79"$	

 4
  	

 

. 79"$	

 4
  	

 

. 57"$	

 2
  	

 

. 57"$	

 2
  	

 

. 57"$	

 2
  	

 

2 57"$	

 2
  	

 

2 8:"$	

 5
  	

 

2 8:"$	

 5
  	

 

r&   r   N)stripe._list_objectr   stripe._request_optionsr   stripe._stripe_servicer   stripe._utilr   stripe.billing._credit_grantr   typingr   r	   r
   typing_extensionsr   r   r   r   r%   r&   r'   <module>r      s0    + 2 0 $ 4 # # = =q
 q
r&   