U
    ^g%i-                     @   s   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	 d	eZG d
d de	ZG dd deZdS )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                       s   e Zd ZdZdeeeef ee d fddZ	e
dddd	Zejfeeeef d d
ddZejfeeeef d d
ddZedddZ  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.
    N)versionpayloadcustomer_idc                    sV   t  | |d| _|d| _|d| _|d| _d|pF| ji| _d | _d S )N
inquiry_idinquiry_session_tokenr   url)	super__init__getr   r   r   r   	_solution_context)selfr   r   r   	__class__ k/var/www/html/api-medvista/venv/lib/python3.8/site-packages/twilio/rest/trusthub/v1/compliance_inquiries.pyr      s     z$ComplianceInquiriesInstance.__init__ComplianceInquiriesContextreturnc                 C   s&   | j dkr t| j| jd 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
        Nr   r   )r   r   _versionr   r   r   r   r   _proxy1   s    
z"ComplianceInquiriesInstance._proxyprimary_profile_sidtheme_set_idr   c                 C   s   | j j||d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%   r   r   r   r(   @   s    z"ComplianceInquiriesInstance.updatec                    s   | j j||dI dH S )  
        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)   r   r   r   r+   P   s    z(ComplianceInquiriesInstance.update_asyncc                 C   s$   d dd | j D }d|S )f
        Provide a friendly representation

        :returns: Machine friendly representation
         c                 s   s   | ]\}}d  ||V  qdS z{}={}Nformat.0kvr   r   r   	<genexpr>f   s     z7ComplianceInquiriesInstance.__repr__.<locals>.<genexpr>z3<Twilio.Trusthub.V1.ComplianceInquiriesInstance {}>joinr   itemsr0   r   contextr   r   r   __repr__`   s    z$ComplianceInquiriesInstance.__repr__)N)__name__
__module____qualname____doc__r
   r   strr   r   r   propertyr"   r   unsetr   objectr(   r+   r;   __classcell__r   r   r   r   r      s,    
 
 
r   c                       sr   e Zd Zeed fddZejfeeee	f e
dddZejfeeee	f e
dddZed	d
dZ  ZS )r   )r   r   c                    s*   t  | d|i| _djf | j| _dS )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   r0   _uri)r   r   r   r   r   r   r   l   s     z#ComplianceInquiriesContext.__init__r#   c                 C   sV   t ||d}t i }d|d< d|d< | jjd| j||d}t| j|| jd d	S )
r&   PrimaryProfileSid
ThemeSetId!application/x-www-form-urlencodedContent-Typeapplication/jsonAcceptPOSTmethoduridataheadersr   r   )r   ofr    r(   rE   r   r   r   r$   r%   rQ   rR   r   r   r   r   r(   }   s&    
     z!ComplianceInquiriesContext.updatec                    s\   t ||d}t i }d|d< d|d< | jjd| j||dI dH }t| j|| jd	 d
S )r*   rF   rI   rJ   rK   rL   rM   rN   Nr   r   )r   rS   r    r+   rE   r   r   rT   r   r   r   r+      s&    
     z'ComplianceInquiriesContext.update_asyncr   c                 C   s$   d dd | j D }d|S )r,   r-   c                 s   s   | ]\}}d  ||V  qdS r.   r/   r1   r   r   r   r5      s     z6ComplianceInquiriesContext.__repr__.<locals>.<genexpr>z2<Twilio.Trusthub.V1.ComplianceInquiriesContext {}>r6   r9   r   r   r   r;      s    z#ComplianceInquiriesContext.__repr__)r<   r=   r>   r
   r@   r   r   rB   r   rC   r   r(   r+   r;   rD   r   r   r   r   r   j   s    
! 
 r   c                       s   e Zd Zed fddZejejejfeee	f eee	f eee	f e
dddZejejejfeee	f eee	f eee	f e
dddZeed	d
dZeed	ddZedddZ  ZS )ComplianceInquiriesList)r   c                    s   t  | d| _dS )zu
        Initialize the ComplianceInquiriesList

        :param version: Version that contains the resource

        z)/ComplianceInquiries/Customers/InitializeN)r   r   rE   )r   r   r   r   r   r      s    z ComplianceInquiriesList.__init__)notification_emailr%   r$   r   c                 C   sR   t |||d}t ddi}d|d< d|d< | jjd| j||d}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
        ZNotificationEmailrH   rG   rJ   rI   rK   rL   rM   rN   )r   rS   r    createrE   r   r   rV   r%   r$   rQ   rR   r   r   r   r   rX      s        zComplianceInquiriesList.createc                    sX   t |||d}t ddi}d|d< d|d< | jjd| j||dI dH }t| j|S )	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
        rW   rJ   rI   rK   rL   rM   rN   N)r   rS   r    create_asyncrE   r   rY   r   r   r   rZ      s        z$ComplianceInquiriesList.create_async)r   r   c                 C   s   t | j|d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   r   r   r   r     s    zComplianceInquiriesList.getc                 C   s   t | j|dS r[   r\   r]   r   r   r   __call__"  s    z ComplianceInquiriesList.__call__r   c                 C   s   dS )r,   z,<Twilio.Trusthub.V1.ComplianceInquiriesList>r   r!   r   r   r   r;   *  s    z ComplianceInquiriesList.__repr__)r<   r=   r>   r
   r   r   rB   r   r@   rC   r   rX   rZ   r   r   r^   r;   rD   r   r   r   r   rU      s,   


%


#rU   N)r?   typingr   r   r   r   Ztwilio.baser   Ztwilio.base.instance_contextr   Ztwilio.base.instance_resourcer   Ztwilio.base.list_resourcer	   Ztwilio.base.versionr
   r   r   rU   r   r   r   r   <module>   s   S]