o
    6׾g_
                     @   sT   d dl mZ d dlmZmZmZmZ d dlmZ G dd deZ	G dd de
ZdS )	    )Enum)AnyDictTupleUnion)	urlencodec                   @   s   e Zd ZdZdS )Match*N)__name__
__module____qualname__ANY r   r   ]/var/www/html/backend_erp/backend_erp_env/lib/python3.10/site-packages/twilio/http/request.pyr      s    r   c                   @   s   e Zd ZdZejejejejejejfdeeef deeef deeeef ef dee	eef ef dee	eef ef dee	eef ef de
fd	d
ZedefddZdefddZdefddZdefddZdS )Requestz
    An HTTP request.
    methodurlauthparamsdataheaderskwargsc                 K   s@   || _ |r|tjur| | _ || _|| _|| _|| _|| _d S N)	r   r   r   upperr   r   r   r   r   )selfr   r   r   r   r   r   r   r   r   r   __init__   s   


zRequest.__init__returnc                 C   s0   |t jks
|t jkrdS |pd }|pd }||kS )NT)r   r   )clslhsrhsr   r   r   attribute_equal"   s
   zRequest.attribute_equalc                 C   sn   t |tsdS | | j|jo6| | j|jo6| | j|jo6| | j|jo6| | j|jo6| | j|jS )NF)	
isinstancer   r    r   r   r   r   r   r   )r   otherr   r   r   __eq__-   s   
zRequest.__eq__c                 C   s   d}| j r| j tjkrd| j }d}| jr&| jtjkr&dt| jdd}d}| jrJ| jtjkrJ| jdkr8d}|dd	d
d | j	 D 7 }d}| j
re| j
tjkredd	dd | j
	 D }dj|| j| j|||dS )N z{} z?{}T)doseqGETz
 -Gz
{}
c                 s        | ]\}}d  ||V  qdS )z -d "{}={}"Nformat.0kvr   r   r   	<genexpr>H       z"Request.__str__.<locals>.<genexpr>c                 s   r(   )z -H "{}: {}"Nr)   r+   r   r   r   r/   N   r0   z+{auth}{method} {url}{params}{data}{headers})r   r   r   r   r   r   )r   r   r   r*   r   r   r   r   joinitemsr   r   )r   r   r   r   r   r   r   r   __str__:   s4   
zRequest.__str__c                 C   s   t | S r   )str)r   r   r   r   __repr__Z   s   zRequest.__repr__N)r
   r   r   __doc__r   r   r   r4   r   r   r   r   classmethodboolr    r#   r3   r5   r   r   r   r   r   
   s8    



 r   N)enumr   typingr   r   r   r   urllib.parser   r   objectr   r   r   r   r   <module>   s
    