o
    =i                     @   sp   d dl mZmZmZ d dlmZ ddlm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 )    )Optional	TypedDictUnion)	BaseModel   )StorageExceptionc                   @   s   e Zd ZdeddfddZdS )VectorBucketExceptionmsgreturnNc                 C   s
   || _ d S )N)r	   )selfr	    r   P/home/ubuntu/veenaModal/venv/lib/python3.10/site-packages/storage3/exceptions.py__init__	   s   
zVectorBucketException.__init__)__name__
__module____qualname__strr   r   r   r   r   r      s    r   c                   @   s>   e Zd ZU eeef ed< eed< eed< dZee ed< dS )VectorBucketErrorMessage
statusCodeerrormessageNcode)	r   r   r   r   r   int__annotations__r   r   r   r   r   r   r      s
   
 r   c                   @   s6   e Zd ZU eed< eed< eed< eeef ed< dS )StorageApiErrorDictnamer   r   statusN)r   r   r   r   r   r   r   r   r   r   r   r      s
   
 r   c                       sH   e Zd ZdZdededeeef ddf fddZdefd	d
Z	  Z
S )StorageApiErrorz8Error raised when an operation on the storage API fails.r   r   r   r
   Nc                    s@   d| d| d| d}t  | d| _|| _|| _|| _d S )Nz{'statusCode': z, 'error': z, 'message': }r   )superr   r   r   r   r   )r   r   r   r   error_message	__class__r   r   r      s   
zStorageApiError.__init__c                 C   s   | j | j| j| jdS )Nr   r   r   r   r#   )r   r   r   r   to_dict(   s
   zStorageApiError.to_dict)r   r   r   __doc__r   r   r   r   r   r$   __classcell__r   r   r!   r   r      s    &
r   N)typingr   r   r   pydanticr   utilsr   	Exceptionr   r   r   r   r   r   r   r   <module>   s    