
    piA
                     `    d dl mZ d dlmZmZmZmZ d dlmZ  G d de      Z	 G d de
      Zy)	    )Enum)AnyDictTupleUnion)	urlencodec                       e Zd ZdZy)Match*N)__name__
__module____qualname__ANY     U/opt/services/ai/voice_agent/venv/lib/python3.12/site-packages/twilio/http/request.pyr
   r
      s    
Cr   r
   c                   X   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	Zed
efd       Zd
efdZd
efdZd
efdZy)Requestz
    An HTTP request.
    methodurlauthparamsdataheaderskwargsc                     || _         |r'|t        j                  ur|j                         | _         || _        || _        || _        || _        || _        y N)	r   r
   r   upperr   r   r   r   r   )selfr   r   r   r   r   r   r   s           r   __init__zRequest.__init__   sI     fEII- ,,.DK		r   returnc                 r    |t         j                  k(  s|t         j                  k(  ry|xs d }|xs d }||k(  S )NT)r
   r   )clslhsrhss      r   attribute_equalzRequest.attribute_equal"   s8    %))seii/kTkTczr   c                     t        |t              sy| j                  | j                  |j                        xr | j                  | j                  |j                        xr | j                  | j
                  |j
                        xrv | j                  | j                  |j                        xrN | j                  | j                  |j                        xr& | j                  | j                  |j                        S )NF)	
isinstancer   r&   r   r   r   r   r   r   )r   others     r   __eq__zRequest.__eq__-   s    %)   ell; B$$TXXuyy9B$$TYY

;B $$T[[%,,?B $$TYY

;	B
 $$T\\5==A	
r   c                    d}| j                   rC| j                   t        j                  k7  r&dj                  t	        | j                   d            }d}| j
                  rp| j
                  t        j                  k7  rS| j                  dk(  rd}|dj                  dj                  d	 | j
                  j                         D                    z  }d}| j                  r\| j                  t        j                  k7  r?dj                  dj                  d
 | j                  j                         D                    }dj                  | j                  | j                  |||      S )N z?{}T)doseqGETz
 -Gz
{}
c              3   F   K   | ]  \  }}d j                  ||        yw)z -d "{}={}"N)format.0kvs      r   	<genexpr>z"Request.__str__.<locals>.<genexpr>D   s!     SA-..q!4Ss   !c              3   l   K   | ],  \  }}|j                         d k7  rdj                  ||       . yw)authorizationz -H "{}: {}"N)lowerr1   r2   s      r   r6   z"Request.__str__.<locals>.<genexpr>J   s7      1wwyO3 #))!Q/s   24z%{method} {url}{params}{data}{headers})r   r   r   r   r   )r   r
   r   r1   r   r   r   joinitemsr   r   )r   r   r   r   s       r   __str__zRequest.__str__:   s   ;;4;;%))3\\)DKKt"DEF99eii/{{e#FMM		SARSS D <<DLLEII5mm		  $ 2 2 4 G 7==;; > 
 	
r   c                     t        |       S r   )str)r   s    r   __repr__zRequest.__repr__Y   s    4yr   N)r   r   r   __doc__r
   r   r   r>   r   r   r   r    classmethodboolr&   r*   r<   r?   r   r   r   r   r   
   s    %*II!&.3ii/4yy-2YY05		c5j! 3: E#s(OU*+	
 d38ne+, DcNE)* tCH~u,- & $  
t 

 
># r   r   N)enumr   typingr   r   r   r   urllib.parser   r
   objectr   r   r   r   <module>rG      s+     * * "D Pf Pr   