
    pi-                         d Z ddlmZmZmZ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 G d
 de	      Z G d de      Zy)a  
    This code was generated by
   ___ _ _ _ _ _    _ ____    ____ ____ _    ____ ____ _  _ ____ ____ ____ ___ __   __
    |  | | | | |    | |  | __ |  | |__| | __ | __ |___ |\ | |___ |__/ |__|  | |  | |__/
    |  |_|_| | |___ | |__|    |__| |  | |    |__] |___ | \| |___ |  \ |  |  | |__| |  \

    Twilio - Trusthub
    This is the public Twilio REST API.

    NOTE: This class is auto generated by OpenAPI Generator.
    https://openapi-generator.tech
    Do not edit the class manually.
    )AnyDictOptionalUnion)values)InstanceContext)InstanceResource)ListResource)Versionc                        e Zd ZdZ	 ddedeeef   dee   f fdZ	e
dd       Zej                  fded	eeef   dd fd
Zej                  fded	eeef   dd fdZdefdZ xZS )ComplianceInquiriesInstancear  
    :ivar inquiry_id: The unique ID used to start an embedded compliance registration session.
    :ivar inquiry_session_token: The session token used to start an embedded compliance registration session.
    :ivar customer_id: The CustomerID matching the Customer Profile that should be resumed or resubmitted for editing.
    :ivar url: The URL of this resource.
    versionpayloadcustomer_idc                    t         |   |       |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        d|xs | j
                  i| _        d | _        y )N
inquiry_idinquiry_session_tokenr   url)	super__init__getr   r   r   r   	_solution_context)selfr   r   r   	__class__s       n/opt/services/ai/voice_agent/venv/lib/python3.12/site-packages/twilio/rest/trusthub/v1/compliance_inquiries.pyr   z$ComplianceInquiriesInstance.__init__   sz     	!)0\)B4;KK@W4X"*1++m*D")++e"4 ;:$*:*:
 ?C    returnc                     | j                   )t        | j                  | j                  d         | _         | j                   S )a  
        Generate an instance context for the instance, the context is capable of
        performing various actions. All instance actions are proxied to the context

        :returns: ComplianceInquiriesContext for this ComplianceInquiriesInstance
        r   r   )r   ComplianceInquiriesContext_versionr   r   s    r   _proxyz"ComplianceInquiriesInstance._proxy1   s9     == 6 NN=9DM }}r   primary_profile_sidtheme_set_idc                 <    | j                   j                  ||      S )r  
        Update the ComplianceInquiriesInstance

        :param primary_profile_sid: The unique SID identifier of the Primary Customer Profile that should be used as a parent. Only necessary when creating a secondary Customer Profile.
        :param theme_set_id: Theme id for styling the inquiry form.

        :returns: The updated ComplianceInquiriesInstance
        r%   r&   )r$   updater   r%   r&   s      r   r*   z"ComplianceInquiriesInstance.update@   s&     {{!! 3% " 
 	
r   c                 X   K   | j                   j                  ||       d{   S 7 w)  
        Asynchronous coroutine to update the ComplianceInquiriesInstance

        :param primary_profile_sid: The unique SID identifier of the Primary Customer Profile that should be used as a parent. Only necessary when creating a secondary Customer Profile.
        :param theme_set_id: Theme id for styling the inquiry form.

        :returns: The updated ComplianceInquiriesInstance
        r)   N)r$   update_asyncr+   s      r   r.   z(ComplianceInquiriesInstance.update_asyncP   s4      [[-- 3% . 
 
 	
 
s   !*(*c                     dj                  d | j                  j                         D              }dj                  |      S )f
        Provide a friendly representation

        :returns: Machine friendly representation
         c              3   F   K   | ]  \  }}d j                  ||        ywz{}={}Nformat.0kvs      r   	<genexpr>z7ComplianceInquiriesInstance.__repr__.<locals>.<genexpr>f        SDAq7>>!Q/S   !z3<Twilio.Trusthub.V1.ComplianceInquiriesInstance {}>joinr   itemsr5   r   contexts     r   __repr__z$ComplianceInquiriesInstance.__repr__`   s6     ((SDNN<P<P<RSSDKKGTTr   )N)r   r!   )__name__
__module____qualname____doc__r   r   strr   r   r   propertyr$   r   unsetr   objectr*   r.   rB   __classcell__r   s   @r   r   r      s     &*	CC c3hC c]	C$   LR<<
#&
6;CK6H
	&
" LR<<
#&
6;CK6H
	&
 U# Ur   r   c                        e Zd Zdedef fdZej                  fdedeee	f   de
fdZej                  fdedeee	f   de
fdZdefd	Z xZS )
r!   r   r   c                 x    t         |   |       d|i| _         dj                  di | j                  | _        y)aU  
        Initialize the ComplianceInquiriesContext

        :param version: Version that contains the resource
        :param customer_id: The unique CustomerId matching the Customer Profile/Compliance Inquiry that should be resumed or resubmitted. This value will have been returned by the initial Compliance Inquiry creation call.
        r   z7/ComplianceInquiries/Customers/{customer_id}/InitializeN )r   r   r   r5   _uri)r   r   r   r   s      r   r   z#ComplianceInquiriesContext.__init__l   sF     	! ;
 UMTT 
nn
	r   r%   r&   r   c                    t        j                  ||d      }t        j                  i       }d|d<   d|d<   | j                  j                  d| j                  ||      }t        | j                  || j                  d   	      S )
r(   PrimaryProfileSid
ThemeSetId!application/x-www-form-urlencodedContent-Typeapplication/jsonAcceptPOSTmethoduridataheadersr   r    )r   ofr"   r*   rP   r   r   r   r%   r&   r]   r^   r   s         r   r*   z!ComplianceInquiriesContext.update}   s     yy%8*
 ))B-"E.--&&tyytW ' 
 +MM7}0M
 	
r   c                 (  K   t        j                  ||d      }t        j                  i       }d|d<   d|d<   | j                  j                  d| j                  ||       d{   }t        | j                  || j                  d	   
      S 7 )w)r-   rR   rU   rV   rW   rX   rY   rZ   Nr   r    )r   r_   r"   r.   rP   r   r   r`   s         r   r.   z'ComplianceInquiriesContext.update_async   s      yy%8*
 ))B-"E.22tyytW 3 
 
 +MM7}0M
 	
	
s   A$B&B'*Bc                     dj                  d | j                  j                         D              }dj                  |      S )r0   r1   c              3   F   K   | ]  \  }}d j                  ||        ywr3   r4   r6   s      r   r:   z6ComplianceInquiriesContext.__repr__.<locals>.<genexpr>   r;   r<   z2<Twilio.Trusthub.V1.ComplianceInquiriesContext {}>r=   r@   s     r   rB   z#ComplianceInquiriesContext.__repr__   s6     ((SDNN<P<P<RSSCJJ7SSr   )rC   rD   rE   r   rG   r   r   rI   r   rJ   r   r*   r.   rB   rK   rL   s   @r   r!   r!   j   s    
 
c 
$ LR<<
#&
6;CK6H
	$
B LR<<
#&
6;CK6H
	$
@T# Tr   r!   c            	       D    e Zd Zdef fdZej                  ej                  ej                  fdeee	f   deee	f   deee	f   de
fdZej                  ej                  ej                  fdeee	f   deee	f   deee	f   de
fdZd	edefd
Zd	edefdZdefdZ xZS )ComplianceInquiriesListr   c                 2    t         |   |       d| _        y)zu
        Initialize the ComplianceInquiriesList

        :param version: Version that contains the resource

        z)/ComplianceInquiries/Customers/InitializeN)r   r   rP   )r   r   r   s     r   r   z ComplianceInquiriesList.__init__   s     	!?	r   notification_emailr&   r%   r   c                     t        j                  |||d      }t        j                  ddi      }d|d<   d|d<   | j                  j                  d| j                  ||      }t        | j                  |      S )a5  
        Create the ComplianceInquiriesInstance

        :param notification_email: The email address that approval status updates will be sent to. If not specified, the email address associated with your primary customer profile will be used.
        :param theme_set_id: Theme id for styling the inquiry form.
        :param primary_profile_sid: The unique SID identifier of the Primary Customer Profile that should be used as a parent. Only necessary when creating a secondary Customer Profile.

        :returns: The created ComplianceInquiriesInstance
        NotificationEmailrT   rS   rV   rU   rW   rX   rY   rZ   )r   r_   r"   createrP   r   r   rg   r&   r%   r]   r^   r   s          r   rk   zComplianceInquiriesList.create   s      yy%7*%8
 ))^-PQR"E.--&&tyytW ' 
 +4=='BBr   c                   K   t        j                  |||d      }t        j                  ddi      }d|d<   d|d<   | j                  j                  d| j                  ||       d{   }t        | j                  |      S 7 w)	aD  
        Asynchronously create the ComplianceInquiriesInstance

        :param notification_email: The email address that approval status updates will be sent to. If not specified, the email address associated with your primary customer profile will be used.
        :param theme_set_id: Theme id for styling the inquiry form.
        :param primary_profile_sid: The unique SID identifier of the Primary Customer Profile that should be used as a parent. Only necessary when creating a secondary Customer Profile.

        :returns: The created ComplianceInquiriesInstance
        ri   rV   rU   rW   rX   rY   rZ   N)r   r_   r"   create_asyncrP   r   rl   s          r   rn   z$ComplianceInquiriesList.create_async   s       yy%7*%8
 ))^-PQR"E.22tyytW 3 
 
 +4=='BB	
s   A'B)B*Br   c                 0    t        | j                  |      S a  
        Constructs a ComplianceInquiriesContext

        :param customer_id: The unique CustomerId matching the Customer Profile/Compliance Inquiry that should be resumed or resubmitted. This value will have been returned by the initial Compliance Inquiry creation call.
        r    r!   r"   r   r   s     r   r   zComplianceInquiriesList.get       *$--[QQr   c                 0    t        | j                  |      S rp   rq   rr   s     r   __call__z ComplianceInquiriesList.__call__"  rs   r   c                      y)r0   z,<Twilio.Trusthub.V1.ComplianceInquiriesList>rO   r#   s    r   rB   z ComplianceInquiriesList.__repr__*  s     >r   )rC   rD   rE   r   r   r   rI   r   rG   rJ   r   rk   rn   r!   r   ru   rB   rK   rL   s   @r   re   re      s   	@ 	@ 28+1<<28,,	!C!#v+.!C CK(!C #3;/	!C
 
%!CJ 28+1<<28,,	!C!#v+.!C CK(!C #3;/	!C
 
%!CFRs R'A RRC R,F R># >r   re   N)rF   typingr   r   r   r   twilio.baser   twilio.base.instance_contextr   twilio.base.instance_resourcer	   twilio.base.list_resourcer
   twilio.base.versionr   r   r!   re   rO   r   r   <module>r}      sR    . -  8 : 2 'PU"2 PUfZT ZTzi>l i>r   