o
    qmi6                     @   sd   d dl mZmZmZ d dlZedZ	 G dd dZG dd dee eZG dd	 d	ee eZdS )
    )DictGenericTypeVarNTc                   @   sF   e Zd ZU dZejed< dejfddZede	e
e
f fddZd	S )
BaseHttpResponsez?Minimalist HTTP response wrapper that exposes response headers.	_responseresponsec                 C   s
   || _ d S N)r   )selfr    r   O/home/ubuntu/.local/lib/python3.10/site-packages/sarvamai/core/http_response.py__init__   s   
zBaseHttpResponse.__init__returnc                 C   s   t | jjS r	   )dictr   headersr
   r   r   r   r      s   zBaseHttpResponse.headersN)__name__
__module____qualname____doc__httpxResponse__annotations__r   propertyr   strr   r   r   r   r   r      s   
 
r   c                       R   e Zd ZU dZeed< dejdef fddZe	defdd	Z
dddZ  ZS )HttpResponse=HTTP response wrapper that exposes response headers and data._datar   datac                       t  | || _d S r	   superr   r   r
   r   r   	__class__r   r   r         
zHttpResponse.__init__r   c                 C      | j S r	   r   r   r   r   r   r   !      zHttpResponse.dataNc                 C   s   | j   d S r	   )r   closer   r   r   r   r*   %   s   zHttpResponse.closer   Nr   r   r   r   r   r   r   r   r   r   r   r*   __classcell__r   r   r$   r   r         
 r   c                       r   )AsyncHttpResponser   r   r   r   c                    r    r	   r!   r#   r$   r   r   r   .   r&   zAsyncHttpResponse.__init__r   c                 C   r'   r	   r(   r   r   r   r   r   2   r)   zAsyncHttpResponse.dataNc                    s   | j  I d H  d S r	   )r   acloser   r   r   r   r*   6   s   zAsyncHttpResponse.closer+   r,   r   r   r$   r   r/   )   r.   r/   )	typingr   r   r   r   r   r   r   r/   r   r   r   r   <module>   s   