o
    e1                     @   sR   d dl T G dd dZG dd dZG dd dZG dd	 d	ZG d
d dZdS )    )*c                   @   s`   e Zd Zeeeegeeeedgeeegeee	geee	gddddZ
dS )	ParameterN)typetextmediacurrency	date_timec                 C   sL   || _ || _|| _|rtdi |nd | _|r!tdi || _d S d | _d S )N )r   r   r   Currencyr   DateTimer   )selfr   r   r   r   r   r	   r	   G/var/www/html/venv/lib/python3.10/site-packages/plivo/utils/template.py__init__   s
   "zParameter.__init__)NNNN)__name__
__module____qualname__validate_argsrequiredof_type_exactstroptionalr   dictr   r	   r	   r	   r   r      s    r   c                   @   sZ   e Zd Zeeeegeeeedgeeeedgee	e
gddddZdS )	ComponentNr   sub_typeindex
parametersc                 C   s.   || _ || _|| _|d ur|| _d S g | _d S Nr   )r   r   r   r   r   r	   r	   r   r      s   zComponent.__init__)NNN)r   r   r   r   r   r   r   r   r   validate_list_itemsr   r   r	   r	   r	   r   r      s    r   c                   @   sB   e Zd Zeeeegeeegeee	gddddZ
dS )Templatenamelanguage
componentsNc                 C   s(   || _ || _|d ur|| _d S g | _d S r   r    )r   r!   r"   r#   r	   r	   r   r       s   zTemplate.__init__r   )r   r   r   r   r   r   r   r   r   r   r   r	   r	   r	   r   r      s    r   c                   @   s@   e Zd Zeeeegeeegeeegddd ZdS )r
   fallback_valuecurrency_codeamount_1000c                 C   s   || _ || _|| _d S r   r$   )r   r%   r&   r'   r	   r	   r   r   ,   s   
zCurrency.__init__N)	r   r   r   r   r   r   r   intr   r	   r	   r	   r   r
   +   s    r
   c                   @   s(   e Zd Zeeeegddd ZdS )r   r%   c                 C   s
   || _ d S r   r)   )r   r%   r	   r	   r   r   8   s   
zDateTime.__init__N)r   r   r   r   r   r   r   r   r	   r	   r	   r   r   7   s
    r   N)plivo.utils.validatorsr   r   r   r
   r   r	   r	   r	   r   <module>   s    