o
    i%                     @   s   d dl mZ d dlmZ d dlmZmZ d dlmZ er: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 G d
d deZdS )    )StripeService)sanitize_id)Optionalcast)TYPE_CHECKING)
ListObject)RequestOptions)TaxCode)TaxCodeListParams)TaxCodeRetrieveParamsc                	   @   s   e Zd Z		dded ded ddfdd	Z		dded ded ddfd
dZ		ddeded ded ddfddZ		ddeded ded ddfddZdS )TaxCodeServiceNparamsr
   optionsr   returnListObject[TaxCode]c              	   C   s   t d| jddd||dS )
        A list of [all tax codes available](https://stripe.com/docs/tax/tax-categories) to add to Products in order to allow specific tax calculations.
        r   get/v1/tax_codesapibase_addressr   r   )r   _requestselfr   r    r   x/var/www/snowflake_co_dev_github/snow_flake_back_end_deploy/env/lib/python3.10/site-packages/stripe/_tax_code_service.pylist   s   zTaxCodeService.listc              	      s"   t d| jddd||dI dH S )r   r   r   r   r   r   N)r   _request_asyncr   r   r   r   
list_async$   s   
zTaxCodeService.list_asyncidr   r	   c              	   C   s&   t d| jddjt|dd||dS )
        Retrieves the details of an existing tax code. Supply the unique tax code ID and Stripe will return the corresponding tax code information.
        r	   r   /v1/tax_codes/{id}r   r   r   )r   r   formatr   r   r   r   r   r   r   r   retrieve7   s   	zTaxCodeService.retrievec              	      s.   t d| jddjt|dd||dI dH S )r    r	   r   r!   r"   r   r   N)r   r   r#   r   r$   r   r   r   retrieve_asyncK   s   	
zTaxCodeService.retrieve_async)NN)	__name__
__module____qualname__r   r   r   strr%   r&   r   r   r   r   r      sR    


r   N)stripe._stripe_servicer   stripe._utilr   typingr   r   typing_extensionsr   stripe._list_objectr   stripe._request_optionsr   stripe._tax_coder	   #stripe.params._tax_code_list_paramsr
   'stripe.params._tax_code_retrieve_paramsr   r   r   r   r   r   <module>   s   