o
    e*                     @   s   d 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G dd deZdS )za
This code was generated by
\ / _    _  _|   _  _
 | (_)\/(_)(_|\/| |(/_  v1.0.0
      /       /
    )values)InstanceContext)InstanceResource)ListResource)Pagec                       s4   e Zd Z fddZdd Zdd Zdd Z  ZS )	CompositionSettingsListc                    s   t t| | i | _dS )a#  
        Initialize the CompositionSettingsList

        :param Version version: Version that contains the resource

        :returns: twilio.rest.video.v1.composition_settings.CompositionSettingsList
        :rtype: twilio.rest.video.v1.composition_settings.CompositionSettingsList
        N)superr   __init__	_solutionselfversion	__class__ \/var/www/html/venv/lib/python3.10/site-packages/twilio/rest/video/v1/composition_settings.pyr	      s   	
z CompositionSettingsList.__init__c                 C   
   t | jS z
        Constructs a CompositionSettingsContext

        :returns: twilio.rest.video.v1.composition_settings.CompositionSettingsContext
        :rtype: twilio.rest.video.v1.composition_settings.CompositionSettingsContext
        CompositionSettingsContext_versionr   r   r   r   get       
zCompositionSettingsList.getc                 C   r   r   r   r   r   r   r   __call__)   r   z CompositionSettingsList.__call__c                 C      dS )z
        Provide a friendly representation

        :returns: Machine friendly representation
        :rtype: str
        z)<Twilio.Video.V1.CompositionSettingsList>r   r   r   r   r   __repr__2      z CompositionSettingsList.__repr__)__name__
__module____qualname__r	   r   r   r   __classcell__r   r   r   r   r      s
    		r   c                       s,   e Zd Z fddZdd Zdd Z  ZS )CompositionSettingsPagec                    s   t t| || || _dS )a[  
        Initialize the CompositionSettingsPage

        :param Version version: Version that contains the resource
        :param Response response: Response from the API

        :returns: twilio.rest.video.v1.composition_settings.CompositionSettingsPage
        :rtype: twilio.rest.video.v1.composition_settings.CompositionSettingsPage
        N)r   r#   r	   r
   )r   r   responsesolutionr   r   r   r	   >   s   

z CompositionSettingsPage.__init__c                 C   s   t | j|S )a-  
        Build an instance of CompositionSettingsInstance

        :param dict payload: Payload response from the API

        :returns: twilio.rest.video.v1.composition_settings.CompositionSettingsInstance
        :rtype: twilio.rest.video.v1.composition_settings.CompositionSettingsInstance
        )CompositionSettingsInstancer   r   payloadr   r   r   get_instanceM   s   	z$CompositionSettingsPage.get_instancec                 C   r   )r   z)<Twilio.Video.V1.CompositionSettingsPage>r   r   r   r   r   r   X   r   z CompositionSettingsPage.__repr__)r   r    r!   r	   r)   r   r"   r   r   r   r   r#   <   s    r#   c                       sJ   e Zd Z fddZdd ZejejejejejfddZdd Z  Z	S )	r   c                    s.   t t| | i | _djdi | j| _dS )a,  
        Initialize the CompositionSettingsContext

        :param Version version: Version that contains the resource

        :returns: twilio.rest.video.v1.composition_settings.CompositionSettingsContext
        :rtype: twilio.rest.video.v1.composition_settings.CompositionSettingsContext
        z/CompositionSettings/DefaultNr   )r   r   r	   r
   format_urir   r   r   r   r	   d   s   	z#CompositionSettingsContext.__init__c                 C   s   | j jd| jd}t| j |S )
        Fetch the CompositionSettingsInstance

        :returns: The fetched CompositionSettingsInstance
        :rtype: twilio.rest.video.v1.composition_settings.CompositionSettingsInstance
        GET)methoduri)r   fetchr+   r&   r'   r   r   r   r0   s   s   z CompositionSettingsContext.fetchc           	   	   C   s8   t ||||||d}| jjd| j|d}t| j|S )  
        Create the CompositionSettingsInstance

        :param unicode friendly_name: A descriptive string that you create to describe the resource
        :param unicode aws_credentials_sid: The SID of the stored Credential resource
        :param unicode encryption_key_sid: The SID of the Public Key resource to use for encryption
        :param unicode aws_s3_url: The URL of the AWS S3 bucket where the compositions should be stored
        :param bool aws_storage_enabled: Whether all compositions should be written to the aws_s3_url
        :param bool encryption_enabled: Whether all compositions should be stored in an encrypted form

        :returns: The created CompositionSettingsInstance
        :rtype: twilio.rest.video.v1.composition_settings.CompositionSettingsInstance
        )FriendlyNameAwsCredentialsSidEncryptionKeySidAwsS3UrlAwsStorageEnabledEncryptionEnabledPOST)r.   r/   data)r   ofr   creater+   r&   )	r   friendly_nameaws_credentials_sidencryption_key_sid
aws_s3_urlaws_storage_enabledencryption_enabledr9   r(   r   r   r   r;   ~   s   	z!CompositionSettingsContext.createc                 C   $   d dd | j D }d|S )r    c                 s        | ]\}}d  ||V  qdS z{}={}Nr*   .0kvr   r   r   	<genexpr>       z6CompositionSettingsContext.__repr__.<locals>.<genexpr>z/<Twilio.Video.V1.CompositionSettingsContext {}>joinr
   itemsr*   r   contextr   r   r   r         
z#CompositionSettingsContext.__repr__)
r   r    r!   r	   r0   r   unsetr;   r   r"   r   r   r   r   r   b   s    
r   c                       s   e Zd Z fddZedd Zedd Zedd Zed	d
 Zedd Z	edd Z
edd Zedd Zedd Zdd ZejejejejejfddZdd Z  ZS )r&   c              
      sh   t t| | |d|d|d|d|d|d|d|dd	| _d
| _i | _d
S )z
        Initialize the CompositionSettingsInstance

        :returns: twilio.rest.video.v1.composition_settings.CompositionSettingsInstance
        :rtype: twilio.rest.video.v1.composition_settings.CompositionSettingsInstance
        account_sidr<   r=   r?   r@   r>   rA   url)rT   r<   r=   r?   r@   r>   rA   rU   N)r   r&   r	   r   _properties_contextr
   )r   r   r(   r   r   r   r	      s   
z$CompositionSettingsInstance.__init__c                 C   s   | j du rt| j| _ | j S )aW  
        Generate an instance context for the instance, the context is capable of
        performing various actions.  All instance actions are proxied to the context

        :returns: CompositionSettingsContext for this CompositionSettingsInstance
        :rtype: twilio.rest.video.v1.composition_settings.CompositionSettingsContext
        N)rW   r   r   r   r   r   r   _proxy   s   
	z"CompositionSettingsInstance._proxyc                 C   
   | j d S )zd
        :returns: The SID of the Account that created the resource
        :rtype: unicode
        rT   rV   r   r   r   r   rT         
z'CompositionSettingsInstance.account_sidc                 C   rY   )zi
        :returns: The string that you assigned to describe the resource
        :rtype: unicode
        r<   rZ   r   r   r   r   r<      r[   z)CompositionSettingsInstance.friendly_namec                 C   rY   )z]
        :returns: The SID of the stored Credential resource
        :rtype: unicode
        r=   rZ   r   r   r   r   r=      r[   z/CompositionSettingsInstance.aws_credentials_sidc                 C   rY   )zr
        :returns: The URL of the AWS S3 bucket where the compositions are stored
        :rtype: unicode
        r?   rZ   r   r   r   r   r?      r[   z&CompositionSettingsInstance.aws_s3_urlc                 C   rY   )zg
        :returns: Whether all compositions are written to the aws_s3_url
        :rtype: bool
        r@   rZ   r   r   r   r   r@      r[   z/CompositionSettingsInstance.aws_storage_enabledc                 C   rY   )zj
        :returns: The SID of the Public Key resource used for encryption
        :rtype: unicode
        r>   rZ   r   r   r   r   r>      r[   z.CompositionSettingsInstance.encryption_key_sidc                 C   rY   )zi
        :returns: Whether all compositions are stored in an encrypted form
        :rtype: bool
        rA   rZ   r   r   r   r   rA      r[   z.CompositionSettingsInstance.encryption_enabledc                 C   rY   )zT
        :returns: The absolute URL of the resource
        :rtype: unicode
        rU   rZ   r   r   r   r   rU     r[   zCompositionSettingsInstance.urlc                 C   s
   | j  S )r,   )rX   r0   r   r   r   r   r0     r   z!CompositionSettingsInstance.fetchc                 C   s   | j j||||||dS )r1   )r=   r>   r?   r@   rA   )rX   r;   )r   r<   r=   r>   r?   r@   rA   r   r   r   r;     s   z"CompositionSettingsInstance.createc                 C   rB   )r   rC   c                 s   rD   rE   rF   rG   r   r   r   rK   7  rL   z7CompositionSettingsInstance.__repr__.<locals>.<genexpr>z0<Twilio.Video.V1.CompositionSettingsInstance {}>rM   rP   r   r   r   r   0  rR   z$CompositionSettingsInstance.__repr__)r   r    r!   r	   propertyrX   rT   r<   r=   r?   r@   r>   rA   rU   r0   r   rS   r;   r   r"   r   r   r   r   r&      s4    








	
r&   N)__doc__twilio.baser   twilio.base.instance_contextr   twilio.base.instance_resourcer   twilio.base.list_resourcer   twilio.base.pager   r   r#   r   r&   r   r   r   r   <module>   s   ,&D