
    Aiq                          d dl mZ d dlmZ d dlmZmZ d dlmZ er0d 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 d dlmZ d dlmZ  G d de      Zy)    )StripeService)sanitize_id)Optionalcast)TYPE_CHECKING)
ListObject)Person)RequestOptions)AccountPersonCreateParams)AccountPersonDeleteParams)AccountPersonListParams)AccountPersonRetrieveParams)AccountPersonUpdateParamsc                      e Zd Z	 	 ddededed   ded   dd	f
d
Z	 	 ddededed   ded   dd	f
dZ	 	 ddededed   ded   dd	f
dZ	 	 ddededed   ded   dd	f
dZ	 	 ddededed   ded   dd	f
dZ		 	 ddededed   ded   dd	f
dZ
	 	 ddeded   ded   ddfdZ	 	 ddeded   ded   ddfdZ	 	 ddeded   ded   dd	fdZ	 	 ddeded   ded   dd	fdZy)AccountPersonServiceNaccountpersonparamsr   optionsr
   returnr	   c                     t        d| 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.
        r	   delete'/v1/accounts/{account}/persons/{person}r   r   apibase_addressr   r   r   _requestformatr   selfr   r   r   r   s        Q/var/www/html/immo/lib/python3.12/site-packages/stripe/_account_person_service.pyr   zAccountPersonService.delete   sW     MM9@@'0&v. A  #  	
 	
    c                    K   t        d| j                  ddj                  t        |      t        |            d||       d{         S 7 w)r   r	   r   r   r   r   r   Nr   _request_asyncr!   r   r"   s        r$   delete_asyncz!AccountPersonService.delete_async6   sg      %%9@@'0&v. A  # & 	 	
 	
	   AAA
	Ar   c                     t        d| j                  ddj                  t        |      t        |            d||            S )/
        Retrieves an existing person.
        r	   getr   r   r   r   r   r"   s        r$   retrievezAccountPersonService.retrieveN   sW     MM9@@'0&v. A  #  	
 	
r%   c                    K   t        d| j                  ddj                  t        |      t        |            d||       d{         S 7 w)r,   r	   r-   r   r   r   r   Nr'   r"   s        r$   retrieve_asyncz#AccountPersonService.retrieve_asyncf   sg      %%9@@'0&v. A  # & 	 	
 	
	r*   r   c                     t        d| j                  ddj                  t        |      t        |            d||            S )-
        Updates an existing person.
        r	   postr   r   r   r   r   r"   s        r$   updatezAccountPersonService.update~   sW     MM9@@'0&v. A  #  	
 	
r%   c                    K   t        d| j                  ddj                  t        |      t        |            d||       d{         S 7 w)r2   r	   r3   r   r   r   r   Nr'   r"   s        r$   update_asyncz!AccountPersonService.update_async   sg      %%9@@'0&v. A  # & 	 	
 	
	r*   r   ListObject[Person]c                 t    t        d| 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.
        r7   r-   /v1/accounts/{account}/personsr   r   r   r   r#   r   r   r   s       r$   listzAccountPersonService.list   sN      MM077'0 8  #  
 	
r%   c                    K   t        d| j                  ddj                  t        |            d||       d{         S 7 w)r9   r7   r-   r:   r;   r   r   Nr'   r<   s       r$   
list_asynczAccountPersonService.list_async   s^       %%077'0 8  # &  
 	
   9AA
	Ar   c                 t    t        d| j                  ddj                  t        |            d||            S )'
        Creates a new person.
        r	   r3   r:   r;   r   r   r   r<   s       r$   createzAccountPersonService.create   sN     MM077'0 8  #  
 	
r%   c                    K   t        d| j                  ddj                  t        |            d||       d{         S 7 w)rB   r	   r3   r:   r;   r   r   Nr'   r<   s       r$   create_asyncz!AccountPersonService.create_async   s^      %%077'0 8  # &  
 	
r@   )NN)__name__
__module____qualname__strr   r   r)   r.   r0   r4   r6   r=   r?   rC   rE    r%   r$   r   r      s   
 9=.2

 
 45	

 *+
 

8 9=.2

 
 45	

 *+
 

8 ;?.2

 
 67	

 *+
 

8 ;?.2

 
 67	

 *+
 

8 9=.2

 
 45	

 *+
 

8 9=.2

 
 45	

 *+
 

6 7;.2	

 23
 *+	

 

2 7;.2	

 23
 *+	

 

2 9=.2	

 45
 *+	

 

2 9=.2	

 45
 *+	

 

r%   r   N)stripe._stripe_servicer   stripe._utilr   typingr   r   typing_extensionsr   stripe._list_objectr   stripe._personr	   stripe._request_optionsr
   +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   rJ   r%   r$   <module>rW      sF    1 $ ! +.%6
g
= g
r%   