U
    ^g%in                     @   s   d Z ddlmZmZmZmZ ddlmZ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)	serializevalues)InstanceContext)InstanceResource)ListResource)Versionc                       s   e Zd ZG dd deZG dd deZG dd deZG dd deZdee	e
ef ee
 d
 fddZeddddZejejfeeef ee
ef d dddZejejfeeef ee
ef d dddZe
dddZ  ZS )'ComplianceRegistrationInquiriesInstancec                   @   s   e Zd ZdZdZdZdS )<ComplianceRegistrationInquiriesInstance.BusinessIdentityTypeZdirect_customerZisv_reseller_or_partnerunknownN)__name__
__module____qualname__ZDIRECT_CUSTOMERZISV_RESELLER_OR_PARTNERUNKNOWN r   r   x/var/www/html/api-medvista/venv/lib/python3.8/site-packages/twilio/rest/trusthub/v1/compliance_registration_inquiries.pyBusinessIdentityType   s   r   c                   @   s    e Zd ZdZdZdZdZdZdS )EComplianceRegistrationInquiriesInstance.BusinessRegistrationAuthorityzUK:CRNzUS:EINzCA:CBNzAU:ACNOtherN)r   r   r   ZUK_CRNZUS_EINZCA_CBNZAU_ACNOTHERr   r   r   r   BusinessRegistrationAuthority   s
   r   c                   @   s   e Zd ZdZdZdS )3ComplianceRegistrationInquiriesInstance.EndUserTypeZ
IndividualZBusinessN)r   r   r   Z
INDIVIDUALZBUSINESSr   r   r   r   EndUserType%   s   r   c                   @   s   e Zd ZdZdZdZdZdS )7ComplianceRegistrationInquiriesInstance.PhoneNumberTypelocalZnationalZmobilez	toll-freeN)r   r   r   ZLOCALZNATIONALZMOBILEZ	TOLL_FREEr   r   r   r   PhoneNumberType)   s   r   N)versionpayloadregistration_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__r   r   r&   6   s     z0ComplianceRegistrationInquiriesInstance.__init__&ComplianceRegistrationInquiriesContext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: ComplianceRegistrationInquiriesContext for this ComplianceRegistrationInquiriesInstance
        Nr!   r!   )r)   r-   _versionr(   r*   r   r   r   _proxyH   s    
z.ComplianceRegistrationInquiriesInstance._proxyis_isv_embedtheme_set_idr/   c                 C   s   | j j||dS )7  
        Update the ComplianceRegistrationInquiriesInstance

        :param is_isv_embed: Indicates if the inquiry is being started from an ISV embedded component.
        :param theme_set_id: Theme id for styling the inquiry form.

        :returns: The updated ComplianceRegistrationInquiriesInstance
        r5   r6   )r3   updater*   r5   r6   r   r   r   r9   W   s    z.ComplianceRegistrationInquiriesInstance.updatec                    s   | j j||dI dH S )Q  
        Asynchronous coroutine to update the ComplianceRegistrationInquiriesInstance

        :param is_isv_embed: Indicates if the inquiry is being started from an ISV embedded component.
        :param theme_set_id: Theme id for styling the inquiry form.

        :returns: The updated ComplianceRegistrationInquiriesInstance
        r8   N)r3   update_asyncr:   r   r   r   r<   i   s    z4ComplianceRegistrationInquiriesInstance.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>   s     zCComplianceRegistrationInquiriesInstance.__repr__.<locals>.<genexpr>z?<Twilio.Trusthub.V1.ComplianceRegistrationInquiriesInstance {}>joinr(   itemsrA   r*   contextr   r   r   __repr__{   s    z0ComplianceRegistrationInquiriesInstance.__repr__)N)r   r   r   objectr   r   r   r   r   r   strr   r   r&   propertyr3   r   unsetr   boolr9   r<   rL   __classcell__r   r   r+   r   r      s6    




r   c                       s   e Zd Zeed fddZejejfee	e
f eee
f edddZejejfee	e
f 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 )an  
        Initialize the ComplianceRegistrationInquiriesContext

        :param version: Version that contains the resource
        :param registration_id: The unique RegistrationId matching the Regulatory Compliance Inquiry that should be resumed or resubmitted. This value will have been returned by the initial Regulatory Compliance Inquiry creation call.
        r!   zV/ComplianceInquiries/Registration/{registration_id}/RegulatoryCompliance/GB/InitializeN)r%   r&   r(   rA   _uri)r*   r   r!   r+   r   r   r&      s     z/ComplianceRegistrationInquiriesContext.__init__r4   c                 C   s\   t t||d}t i }d|d< d|d< | jjd| j||d}t| j|| jd d	S )
r7   
IsIsvEmbed
ThemeSetId!application/x-www-form-urlencodedContent-Typeapplication/jsonAcceptPOSTmethoduridataheadersr!   r0   )	r   ofr   boolean_to_stringr1   r9   rS   r   r(   r*   r5   r6   r_   r`   r    r   r   r   r9      s&    
     z-ComplianceRegistrationInquiriesContext.updatec                    sb   t t||d}t i }d|d< d|d< | jjd| j||dI dH }t| j|| jd	 d
S )r;   rT   rW   rX   rY   rZ   r[   r\   Nr!   r0   )	r   ra   r   rb   r1   r<   rS   r   r(   rc   r   r   r   r<      s&    
     z3ComplianceRegistrationInquiriesContext.update_asyncr.   c                 C   s$   d dd | j D }d|S )r=   r>   c                 s   s   | ]\}}d  ||V  qdS r?   r@   rB   r   r   r   rF      s     zBComplianceRegistrationInquiriesContext.__repr__.<locals>.<genexpr>z><Twilio.Trusthub.V1.ComplianceRegistrationInquiriesContext {}>rG   rJ   r   r   r   rL      s    z/ComplianceRegistrationInquiriesContext.__repr__)r   r   r   r   rN   r&   r   rP   r   rQ   rM   r   r9   r<   rL   rR   r   r   r+   r   r-      s    

$

"r-   c                *       s  e Zd Zed fddZejejejejejejejejejejejejejejejejejejejejejejejejejejejejejejejejejejejejejf%ddedef edef ee	ef ee	ef ee
ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee
ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee
ef ee	ef ee	ef ee	ef ed(d	d
Zejejejejejejejejejejejejejejejejejejejejejejejejejejejejejejejejejejejejejf%ddedef edef ee	ef ee	ef ee
ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee
ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee	ef ee
e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 )#ComplianceRegistrationInquiriesList)r   c                    s   t  | d| _dS )z
        Initialize the ComplianceRegistrationInquiriesList

        :param version: Version that contains the resource

        zD/ComplianceInquiries/Registration/RegulatoryCompliance/GB/InitializeN)r%   r&   rS   )r*   r   r+   r   r   r&      s    z,ComplianceRegistrationInquiriesList.__init__r   r   r   r   )(end_user_typephone_number_typebusiness_identity_typebusiness_registration_authoritybusiness_legal_namenotification_emailaccepted_notification_receiptbusiness_registration_numberbusiness_website_urlfriendly_name%authorized_representative1_first_name$authorized_representative1_last_name authorized_representative1_phone authorized_representative1_email(authorized_representative1_date_of_birthaddress_streetaddress_street_secondaryaddress_cityaddress_subdivisionaddress_postal_codeaddress_country_codeemergency_address_street"emergency_address_street_secondaryemergency_address_cityemergency_address_subdivisionemergency_address_postal_codeemergency_address_country_code use_address_as_emergency_address	file_namefile
first_name	last_namedate_of_birthindividual_emailindividual_phoner5   "isv_registering_for_self_or_tenantstatus_callback_urlr6   r/   c(           +   *   C   s   t ||||||t|||	|
|||||||||||||||||t||||| |!|"|#t|$|%|&|'d'}(t ddi})d|)d< d|)d< | jjd| j|(|)d}*t| j|*S )a+  
        Create the ComplianceRegistrationInquiriesInstance

        :param end_user_type:
        :param phone_number_type:
        :param business_identity_type:
        :param business_registration_authority:
        :param business_legal_name: he name of the business or organization using the Tollfree number.
        :param notification_email: he email address to receive the notification about the verification result.
        :param accepted_notification_receipt: The email address to receive the notification about the verification result.
        :param business_registration_number: Business registration number of the business
        :param business_website_url: The URL of the business website
        :param friendly_name: Friendly name for your business information
        :param authorized_representative1_first_name: First name of the authorized representative
        :param authorized_representative1_last_name: Last name of the authorized representative
        :param authorized_representative1_phone: Phone number of the authorized representative
        :param authorized_representative1_email: Email address of the authorized representative
        :param authorized_representative1_date_of_birth: Birthdate of the authorized representative
        :param address_street: Street address of the business
        :param address_street_secondary: Street address of the business
        :param address_city: City of the business
        :param address_subdivision: State or province of the business
        :param address_postal_code: Postal code of the business
        :param address_country_code: Country code of the business
        :param emergency_address_street: Street address of the business
        :param emergency_address_street_secondary: Street address of the business
        :param emergency_address_city: City of the business
        :param emergency_address_subdivision: State or province of the business
        :param emergency_address_postal_code: Postal code of the business
        :param emergency_address_country_code: Country code of the business
        :param use_address_as_emergency_address: Use the business address as the emergency address
        :param file_name: The name of the verification document to upload
        :param file: The verification document to upload
        :param first_name: The first name of the Individual User.
        :param last_name: The last name of the Individual User.
        :param date_of_birth: The date of birth of the Individual User.
        :param individual_email: The email address of the Individual User.
        :param individual_phone: The phone number of the Individual User.
        :param is_isv_embed: Indicates if the inquiry is being started from an ISV embedded component.
        :param isv_registering_for_self_or_tenant: Indicates if the isv registering for self or tenant.
        :param status_callback_url: The url we call to inform you of bundle changes.
        :param theme_set_id: Theme id for styling the inquiry form.

        :returns: The created ComplianceRegistrationInquiriesInstance
        'r   r   r   r   ZBusinessLegalNameZNotificationEmailZAcceptedNotificationReceiptZBusinessRegistrationNumberZBusinessWebsiteUrlZFriendlyNameZ"AuthorizedRepresentative1FirstNameZ!AuthorizedRepresentative1LastNameZAuthorizedRepresentative1PhoneZAuthorizedRepresentative1EmailZ$AuthorizedRepresentative1DateOfBirthZAddressStreetZAddressStreetSecondaryZAddressCityZAddressSubdivisionZAddressPostalCodeZAddressCountryCodeZEmergencyAddressStreetZEmergencyAddressStreetSecondaryZEmergencyAddressCityZEmergencyAddressSubdivisionZEmergencyAddressPostalCodeZEmergencyAddressCountryCodeZUseAddressAsEmergencyAddressZFileNameFileZ	FirstNameZLastNameZDateOfBirthZIndividualEmailZIndividualPhonerU   ZIsvRegisteringForSelfOrTenantZStatusCallbackUrlrV   rX   rW   rY   rZ   r[   r\   )r   ra   r   rb   r1   createrS   r   +r*   re   rf   rg   rh   ri   rj   rk   rl   rm   rn   ro   rp   rq   rr   rs   rt   ru   rv   rw   rx   ry   rz   r{   r|   r}   r~   r   r   r   r   r   r   r   r   r   r5   r   r   r6   r_   r`   r    r   r   r   r      sp    ]/   z*ComplianceRegistrationInquiriesList.createc(           +   *      s   t ||||||t|||	|
|||||||||||||||||t||||| |!|"|#t|$|%|&|'d'}(t ddi})d|)d< d|)d< | jjd| j|(|)dI dH }*t| j|*S )	a:  
        Asynchronously create the ComplianceRegistrationInquiriesInstance

        :param end_user_type:
        :param phone_number_type:
        :param business_identity_type:
        :param business_registration_authority:
        :param business_legal_name: he name of the business or organization using the Tollfree number.
        :param notification_email: he email address to receive the notification about the verification result.
        :param accepted_notification_receipt: The email address to receive the notification about the verification result.
        :param business_registration_number: Business registration number of the business
        :param business_website_url: The URL of the business website
        :param friendly_name: Friendly name for your business information
        :param authorized_representative1_first_name: First name of the authorized representative
        :param authorized_representative1_last_name: Last name of the authorized representative
        :param authorized_representative1_phone: Phone number of the authorized representative
        :param authorized_representative1_email: Email address of the authorized representative
        :param authorized_representative1_date_of_birth: Birthdate of the authorized representative
        :param address_street: Street address of the business
        :param address_street_secondary: Street address of the business
        :param address_city: City of the business
        :param address_subdivision: State or province of the business
        :param address_postal_code: Postal code of the business
        :param address_country_code: Country code of the business
        :param emergency_address_street: Street address of the business
        :param emergency_address_street_secondary: Street address of the business
        :param emergency_address_city: City of the business
        :param emergency_address_subdivision: State or province of the business
        :param emergency_address_postal_code: Postal code of the business
        :param emergency_address_country_code: Country code of the business
        :param use_address_as_emergency_address: Use the business address as the emergency address
        :param file_name: The name of the verification document to upload
        :param file: The verification document to upload
        :param first_name: The first name of the Individual User.
        :param last_name: The last name of the Individual User.
        :param date_of_birth: The date of birth of the Individual User.
        :param individual_email: The email address of the Individual User.
        :param individual_phone: The phone number of the Individual User.
        :param is_isv_embed: Indicates if the inquiry is being started from an ISV embedded component.
        :param isv_registering_for_self_or_tenant: Indicates if the isv registering for self or tenant.
        :param status_callback_url: The url we call to inform you of bundle changes.
        :param theme_set_id: Theme id for styling the inquiry form.

        :returns: The created ComplianceRegistrationInquiriesInstance
        r   rX   rW   rY   rZ   r[   r\   N)r   ra   r   rb   r1   create_asyncrS   r   r   r   r   r   r     sp    ]/   z0ComplianceRegistrationInquiriesList.create_async)r!   r/   c                 C   s   t | j|dS a1  
        Constructs a ComplianceRegistrationInquiriesContext

        :param registration_id: The unique RegistrationId matching the Regulatory Compliance Inquiry that should be resumed or resubmitted. This value will have been returned by the initial Regulatory Compliance Inquiry creation call.
        r0   r-   r1   r*   r!   r   r   r   r'   )  s     z'ComplianceRegistrationInquiriesList.getc                 C   s   t | j|dS r   r   r   r   r   r   __call__3  s     z,ComplianceRegistrationInquiriesList.__call__r.   c                 C   s   dS )r=   z8<Twilio.Trusthub.V1.ComplianceRegistrationInquiriesList>r   r2   r   r   r   rL   =  s    z,ComplianceRegistrationInquiriesList.__repr__)r   r   r   r   r&   r   rP   r   rM   rN   rQ   r   r   r   r-   r'   r   rL   rR   r   r   r+   r   rd      s`  


































 


































 

rd   N)__doc__typingr   r   r   r   Ztwilio.baser   r   Ztwilio.base.instance_contextr   Ztwilio.base.instance_resourcer	   Ztwilio.base.list_resourcer
   Ztwilio.base.versionr   r   r-   rd   r   r   r   r   <module>   s   pc