o
    j                     @  s,  d dl mZ d dlmZmZmZ d dlmZ d dlZddl	m
Z
 g d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G dd de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G dd de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 )$    )annotations)AnyOptionalcast)LiteralN   )is_dict)BadRequestErrorAuthenticationErrorPermissionDeniedErrorNotFoundErrorConflictErrorUnprocessableEntityErrorRateLimitErrorInternalServerErrorc                   @     e Zd ZdS )OpenAIErrorN__name__
__module____qualname__ r   r   X/var/www/html/fyndo/pharma/fyndo/venv/lib/python3.10/site-packages/openai/_exceptions.pyr          r   c                      sZ   e Zd ZU ded< ded< ded< 	 dZded	< dZded
< ded< d fddZ  ZS )APIErrorstrmessagehttpx.Requestrequestobject | NonebodyNzOptional[str]codeparamtypereturnNonec                  sv   t  | || _|| _|| _t|r0tt|d| _	tt|d| _
tt|d| _d S d | _	d | _
d | _d S )Nr!   r"   r#   )super__init__r   r   r    r   r   r   getr!   r"   r#   )selfr   r   r    	__class__r   r   r'   /   s   
zAPIError.__init__)r   r   r   r   r    r   r$   r%   )r   r   r   __annotations__r!   r"   r'   __classcell__r   r   r*   r   r      s   
 
r   c                      s6   e Zd ZU ded< ded< ddd fddZ  ZS )APIResponseValidationErrorhttpx.Responseresponseintstatus_codeNr   r    r   r   
str | Noner$   r%   c                  s*   t  j|pd|j|d || _|j| _d S )Nz1Data returned by API invalid for expected schema.r    r&   r'   r   r0   r2   )r)   r0   r    r   r*   r   r   r'   C   s   z#APIResponseValidationError.__init__)r0   r/   r    r   r   r4   r$   r%   )r   r   r   r,   r'   r-   r   r   r*   r   r.   ?   s   
 r.   c                      s4   e Zd ZU dZded< ded< d fddZ  ZS )APIStatusErrorz<Raised when an API response has a status code of 4xx or 5xx.r/   r0   r1   r2   r   r   r    r   r$   r%   c                  s&   t  j||j|d || _|j| _d S Nr5   r6   )r)   r   r0   r    r*   r   r   r'   O   s   zAPIStatusError.__init__)r   r   r0   r/   r    r   r$   r%   )r   r   r   __doc__r,   r'   r-   r   r   r*   r   r7   I   s
   
 r7   c                      s$   e Zd Zddd fd	d
Z  ZS )APIConnectionErrorzConnection error.r3   r   r   r   r   r$   r%   c                  s   t  j||d d d S r8   r&   r'   )r)   r   r   r*   r   r   r'   V   s   zAPIConnectionError.__init__)r   r   r   r   r$   r%   r   r   r   r'   r-   r   r   r*   r   r:   U   s    r:   c                      s   e Zd Zd fddZ  ZS )APITimeoutErrorr   r   r$   r%   c                   s   t  jd|d d S )NzRequest timed out.)r   r   r;   )r)   r   r*   r   r   r'   [   s   zAPITimeoutError.__init__)r   r   r$   r%   r<   r   r   r*   r   r=   Z   s    r=   c                   @     e Zd ZU dZded< dS )r	   i  zLiteral[400]r2   Nr   r   r   r2   r,   r   r   r   r   r	   _      
 r	   c                   @  r>   )r
   i  zLiteral[401]r2   Nr?   r   r   r   r   r
   c   r@   r
   c                   @  r>   )r   i  zLiteral[403]r2   Nr?   r   r   r   r   r   g   r@   r   c                   @  r>   )r   i  zLiteral[404]r2   Nr?   r   r   r   r   r   k   r@   r   c                   @  r>   )r   i  zLiteral[409]r2   Nr?   r   r   r   r   r   o   r@   r   c                   @  r>   )r   i  zLiteral[422]r2   Nr?   r   r   r   r   r   s   r@   r   c                   @  r>   )r   i  zLiteral[429]r2   Nr?   r   r   r   r   r   w   r@   r   c                   @  r   )r   Nr   r   r   r   r   r   {   r   r   )
__future__r   typingr   r   r   typing_extensionsr   httpx_utilsr   __all__	Exceptionr   r   r.   r7   r:   r=   r	   r
   r   r   r   r   r   r   r   r   r   r   <module>   s(   #
