o
    Bi-                     @   sx   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	 d	eZd
S )    )
ListObject)RequestOptions)StripeService)TaxRate)sanitize_id)DictListcast)LiteralNotRequired	TypedDictc                	   @   sP  e Zd ZG dd deZG dd deZG dd deZG dd deZG d	d
 d
eZi i fddde	de
e fddZi i fddde	de
e fddZi fddde	defddZi fddde	defddZi i fdeddde	defddZi i fdeddde	defddZi i fdeddde	defdd Zi i fdeddde	defd!d"Zd#S )$TaxRateServicec                   @   s   e Zd ZU ee ed< 	 ee ed< 	 ee ed< 	 eed< 	 eee  ed< 	 eed< 	 ee ed< 	 eeeef  ed< 	 e	ed	< 	 ee ed
< 	 ee
d  ed< dS )TaxRateService.CreateParamsactivecountrydescriptiondisplay_nameexpand	inclusivejurisdictionmetadata
percentagestateamusement_taxcommunications_taxgsthstigstjct	lease_taxpstqstrst	sales_taxvattax_typeN)__name__
__module____qualname__r   bool__annotations__strr   r   floatr
    r.   r.   X/var/www/html/Trade-python/venv/lib/python3.10/site-packages/stripe/_tax_rate_service.pyCreateParams   s6   
 r0   c                   @   sr   e Zd ZU ee ed< 	 ed ed< 	 ee ed< 	 eee  ed< 	 ee ed< 	 ee ed< 	 ee ed< d	S )
TaxRateService.ListParamsr   z$TaxRateService.ListParamsCreated|intcreatedending_beforer   r   limitstarting_afterN)	r'   r(   r)   r   r*   r+   r,   r   intr.   r.   r.   r/   
ListParamsJ   s   
 r7   c                   @   sD   e Zd ZU ee ed< 	 ee ed< 	 ee ed< 	 ee ed< dS )z TaxRateService.ListParamsCreatedgtgteltlteN)r'   r(   r)   r   r6   r+   r.   r.   r.   r/   ListParamsCreatedh   s   
 r<   c                   @   s   e Zd ZU eee  ed< dS )TaxRateService.RetrieveParamsr   N)r'   r(   r)   r   r   r,   r+   r.   r.   r.   r/   RetrieveParamsz   s   
 r>   c                   @   s   e Zd ZU ee ed< 	 ee ed< 	 ee ed< 	 ee ed< 	 eee  ed< 	 ee ed< 	 ed ed< 	 ee ed	< 	 eed
  ed< dS )TaxRateService.UpdateParamsr   r   r   r   r   r   zLiteral['']|Dict[str, str]r   r   r   r&   N)	r'   r(   r)   r   r*   r+   r,   r   r
   r.   r.   r.   r/   UpdateParams   s.   
 r@   paramsr1   optionsreturnc              	   C   s   t tt | jddd||dS )
        Returns a list of your tax rates. Tax rates are returned sorted by creation date, with the most recently created tax rates appearing first.
        get/v1/tax_ratesapibase_addressrA   rB   )r	   r   r   _requestselfrA   rB   r.   r.   r/   list   s   zTaxRateService.listc              	      s&   t tt | jddd||dI dH S )rD   rE   rF   rG   rH   N)r	   r   r   _request_asyncrK   r.   r.   r/   
list_async   s   
zTaxRateService.list_asyncr   c              	   C   s   t t| jddd||dS ))
        Creates a new tax rate.
        postrF   rG   rH   )r	   r   rJ   rK   r.   r.   r/   create   s   zTaxRateService.createc              	      s"   t t| jddd||dI dH S )rP   rQ   rF   rG   rH   N)r	   r   rN   rK   r.   r.   r/   create_async   s   
zTaxRateService.create_asynctax_rater=   c              	   C   &   t t| jddjt|dd||dS )8
        Retrieves a tax rate with the given ID
        rE   /v1/tax_rates/{tax_rate}rT   rG   rH   r	   r   rJ   formatr   rL   rT   rA   rB   r.   r.   r/   retrieve     	zTaxRateService.retrievec              	      .   t t| jddjt|dd||dI dH S )rV   rE   rW   rX   rG   rH   Nr	   r   rN   rZ   r   r[   r.   r.   r/   retrieve_async     	
zTaxRateService.retrieve_asyncr?   c              	   C   rU   )/
        Updates an existing tax rate.
        rQ   rW   rX   rG   rH   rY   r[   r.   r.   r/   update-  r]   zTaxRateService.updatec              	      r^   )rb   rQ   rW   rX   rG   rH   Nr_   r[   r.   r.   r/   update_asyncC  ra   zTaxRateService.update_asyncN)r'   r(   r)   r   r0   r7   r<   r>   r@   r   r   r   rM   rO   rR   rS   r,   r\   r`   rc   rd   r.   r.   r.   r/   r      s    =7






r   N)stripe._list_objectr   stripe._request_optionsr   stripe._stripe_servicer   stripe._tax_rater   stripe._utilr   typingr   r   r	   typing_extensionsr
   r   r   r   r.   r.   r.   r/   <module>   s   