
    kh)                          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 d dlmZ  G d de      Zy)    )
ListObject)Person)RequestOptions)StripeService)sanitize_id)Optionalcast)TYPE_CHECKING)AccountPersonCreateParams)AccountPersonDeleteParams)AccountPersonListParams)AccountPersonRetrieveParams)AccountPersonUpdateParamsc                      e Zd Z	 	 ddededed   dee   def
dZ	 	 ddededed   dee   def
d	Z	 	 ddededed
   dee   def
dZ		 	 ddededed
   dee   def
dZ
	 	 ddededed   dee   def
dZ	 	 ddededed   dee   def
dZ	 	 ddeded   dee   dee   fdZ	 	 ddeded   dee   de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)AccountPersonServiceNaccountpersonparamsr   optionsreturnc                     t        t        | j                  ddj                  t	        |      t	        |            d||            S )A  
        Deletes an existing person's relationship to the account's legal entity. Any person with a relationship for an account can be deleted through the API, except if the person is the account_opener. If your integration is using the executive parameter, you cannot delete the only verified executive on file.
        delete'/v1/accounts/{account}/persons/{person}r   r   apibase_addressr   r   r	   r   _requestformatr   selfr   r   r   r   s        ^/var/www/api/v1/venv_fitandmore/lib/python3.12/site-packages/stripe/_account_person_service.pyr   zAccountPersonService.delete   sW     MM9@@'0&v. A  #  	
 	
    c                    K   t        t        | j                  ddj                  t	        |      t	        |            d||       d{         S 7 w)r   r   r   r   r   r   Nr	   r   _request_asyncr!   r   r"   s        r$   delete_asyncz!AccountPersonService.delete_async6   sg      %%9@@'0&v. A  # & 	 	
 	
	   AA	A

	Ar   c                     t        t        | j                  ddj                  t	        |      t	        |            d||            S )/
        Retrieves an existing person.
        getr   r   r   r   r   r"   s        r$   retrievezAccountPersonService.retrieveN   sW     MM9@@'0&v. A  #  	
 	
r%   c                    K   t        t        | j                  ddj                  t	        |      t	        |            d||       d{         S 7 w)r,   r-   r   r   r   r   Nr'   r"   s        r$   retrieve_asyncz#AccountPersonService.retrieve_asyncf   sg      %%9@@'0&v. A  # & 	 	
 	
	r*   r   c                     t        t        | j                  ddj                  t	        |      t	        |            d||            S )-
        Updates an existing person.
        postr   r   r   r   r   r"   s        r$   updatezAccountPersonService.update~   sW     MM9@@'0&v. A  #  	
 	
r%   c                    K   t        t        | j                  ddj                  t	        |      t	        |            d||       d{         S 7 w)r2   r3   r   r   r   r   Nr'   r"   s        r$   update_asyncz!AccountPersonService.update_async   sg      %%9@@'0&v. A  # & 	 	
 	
	r*   r   c                     t        t        t           | j                  ddj	                  t        |            d||            S )
        Returns a list of people associated with the account's legal entity. The people are returned sorted by creation date, with the most recent people appearing first.
        r-   /v1/accounts/{account}/personsr   r   r   )r	   r   r   r    r!   r   r#   r   r   r   s       r$   listzAccountPersonService.list   sS     vMM077'0 8  #  
 	
r%   c                    K   t        t        t           | j                  ddj	                  t        |            d||       d{         S 7 w)r8   r-   r9   r:   r   r   N)r	   r   r   r(   r!   r   r;   s       r$   
list_asynczAccountPersonService.list_async   sc      v%%077'0 8  # &  
 	
s   AAA
	Ar   c                 |    t        t        | j                  ddj                  t	        |            d||            S )'
        Creates a new person.
        r3   r9   r:   r   r   r   r;   s       r$   createzAccountPersonService.create   sN     MM077'0 8  #  
 	
r%   c                    K   t        t        | j                  ddj                  t	        |            d||       d{         S 7 w)r@   r3   r9   r:   r   r   Nr'   r;   s       r$   create_asyncz!AccountPersonService.create_async   s^      %%077'0 8  # &  
 	
s   =A
A
 	A
)NN)__name__
__module____qualname__strr   r   r   r   r)   r.   r0   r4   r6   r   r<   r>   rA   rC    r%   r$   r   r      s   
 9=,0

 
 45	

 .)
 

8 9=,0

 
 45	

 .)
 

8 ;?,0

 
 67	

 .)
 

8 ;?,0

 
 67	

 .)
 

8 9=,0

 
 45	

 .)
 

8 9=,0

 
 45	

 .)
 

6 7;,0	

 23
 .)	

 
F	
2 7;,0	

 23
 .)	

 
F	
2 9=,0	

 45
 .)	

 

2 9=,0	

 45
 .)	

 

r%   r   N)stripe._list_objectr   stripe._personr   stripe._request_optionsr   stripe._stripe_servicer   stripe._utilr   typingr   r	   typing_extensionsr
   +stripe.params._account_person_create_paramsr   +stripe.params._account_person_delete_paramsr   )stripe.params._account_person_list_paramsr   -stripe.params._account_person_retrieve_paramsr   +stripe.params._account_person_update_paramsr   r   rH   r%   r$   <module>rU      sF    + ! 2 0 $ ! +
g
= g
r%   