
    khE                         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 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  G d de      Zy)    )
ListObject)RequestOptions)StripeService)sanitize_id)Registration)Optionalcast)TYPE_CHECKING)RegistrationCreateParams)RegistrationListParams)RegistrationRetrieveParams)RegistrationUpdateParamsc            	       H   e Zd Z	 	 dded   dee   dee   fdZ	 	 dded   dee   dee   fdZ	 ddddee   defd	Z		 ddddee   defd
Z
	 	 ddeded   dee   defdZ	 	 ddeded   dee   defdZ	 	 ddeded   dee   defdZ	 	 ddeded   dee   defdZy)RegistrationServiceNparamsr   optionsreturnc           
      X    t        t        t           | j                  ddd||            S )=
        Returns a list of Tax Registration objects.
        get/v1/tax/registrationsapibase_addressr   r   )r	   r   r   _requestselfr   r   s      `/var/www/api/v1/venv_fitandmore/lib/python3.12/site-packages/stripe/tax/_registration_service.pylistzRegistrationService.list   s9     |$MM'"  	
 		
    c           
      t   K   t        t        t           | j                  ddd||       d{         S 7 w)r   r   r   r   r   N)r	   r   r   _request_asyncr   s      r   
list_asynczRegistrationService.list_async.   sI      |$%%'" &  	
 		
s   +86
	8r   c           
      J    t        t        | j                  ddd||            S )8
        Creates a new Tax Registration object.
        postr   r   r   )r	   r   r   r   s      r   createzRegistrationService.createA   s4     MM'"  	
 		
r    c           
      f   K   t        t        | j                  ddd||       d{         S 7 w)r%   r&   r   r   r   N)r	   r   r"   r   s      r   create_asyncz RegistrationService.create_asyncT   sD      %%'" &  	
 		
s   $1/
	1idr   c                 |    t        t        | j                  ddj                  t	        |            d||            S )4
        Returns a Tax Registration object.
        r   /v1/tax/registrations/{id}r*   r   r   r	   r   r   formatr   r   r*   r   r   s       r   retrievezRegistrationService.retrieveg   sF     MM,33{23G"  	
 		
r    c                    K   t        t        | j                  ddj                  t	        |            d||       d{         S 7 w)r,   r   r-   r.   r   r   Nr	   r   r"   r0   r   r1   s       r   retrieve_asyncz"RegistrationService.retrieve_async{   sV      %%,33{23G" &  	
 		
   =A
A
 	A
r   c                 |    t        t        | j                  ddj                  t	        |            d||            S )
        Updates an existing Tax Registration object.

        A registration cannot be deleted after it has been created. If you wish to end a registration you may do so by setting expires_at.
        r&   r-   r.   r   r   r/   r1   s       r   updatezRegistrationService.update   sF     MM,33{23G"  	
 		
r    c                    K   t        t        | j                  ddj                  t	        |            d||       d{         S 7 w)r8   r&   r-   r.   r   r   Nr4   r1   s       r   update_asyncz RegistrationService.update_async   sV      %%,33{23G" &  	
 		
r6   )NN)N)__name__
__module____qualname__r   r   r   r   r   r#   r'   r)   strr2   r5   r9   r;    r    r   r   r      s    6:,0
12
 .)
 
L	!	
* 6:,0
12
 .)
 
L	!	
, -1
*
 .)
 
	
, -1
*
 .)
 
	
, :>,0	

 56
 .)	

 

. :>,0	

 56
 .)	

 

. 8<,0	

 34
 .)	

 

2 8<,0	

 34
 .)	

 

r    r   N)stripe._list_objectr   stripe._request_optionsr   stripe._stripe_servicer   stripe._utilr   stripe.tax._registrationr   typingr   r	   typing_extensionsr
   -stripe.params.tax._registration_create_paramsr   +stripe.params.tax._registration_list_paramsr   /stripe.params.tax._registration_retrieve_paramsr   -stripe.params.tax._registration_update_paramsr   r   r@   r    r   <module>rL      sA    + 2 0 $ 1 ! +
_
- _
r    