
    +h                     p    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mZ  G d ded         Zy)	    )ListableAPIResource)
ListObject)RequestOptions)ClassVarListOptional)LiteralNotRequiredUnpackTYPE_CHECKINGc                      e Zd ZU dZdZeed      ed<   er G d de	      Z
 G d de	      Zeed<   	 eed	<   	 eed
<   	 ed   ed<   	 e	 	 	 ddee   dee   dee   ded   ded    f
d       Zed	eded   dd fd       Zy)TaxCodezo
    [Tax codes](https://stripe.com/docs/tax/tax-categories) classify goods and services for tax purposes.
    tax_codeOBJECT_NAMEc                   T    e Zd ZU ed   ed<   	 ed   ed<   	 ed   ed<   	 ed   ed<   y)	TaxCode.ListParamsstrending_before	List[str]expandintlimitstarting_afterN__name__
__module____qualname__r
   __annotations__     P/var/www/html/venv/lib/python3.12/site-packages/stripe/api_resources/tax_code.py
ListParamsr      sH    &u--  ,, u%% (..r    r"   c                       e Zd ZU ed   ed<   y)TaxCode.RetrieveParamsr   r   Nr   r   r    r!   RetrieveParamsr$   $   s    ,,r    r%   descriptionidnameobjectNapi_keystripe_versionstripe_accountparamsr   returnc                     | j                  d| j                         ||||      }t        |t              s!t	        dt        |      j                  z        |S )z
        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.
        get)r*   r+   r,   r-   z%Expected list object from API, got %s)_static_request	class_url
isinstancer   	TypeErrortyper   )clsr*   r+   r,   r-   results         r!   listzTaxCode.list;   sf     $$MMO)) % 
 &*-7<((* 
 r    r$   c                 8     | |fi |}|j                          |S )z
        Retrieves the details of an existing tax code. Supply the unique tax code ID and Stripe will return the corresponding tax code information.
        )refresh)r6   r'   r-   instances       r!   retrievezTaxCode.retrieveW   s$     r$V$r    )NNN)r   r   r   __doc__r   r   r	   r   r   r   r"   r%   r   classmethodr   r   r   r8   r<   r   r    r!   r   r   
   s    2<K'*-.;	 	$	^ 	  	G I J  "&(,(,	# ! !	
 -. 
I	 6  &'? @	 r    r   N)stripe.api_resources.abstractr    stripe.api_resources.list_objectr   stripe.request_optionsr   typingr   r   r   typing_extensionsr	   r
   r   r   r   r   r    r!   <module>rD      s0    > 7 1 + + I IV!), Vr    