
    g                    t    d dl mZ d dlmZ d dlmZ ddlmZ ddlm	Z	 ddl
mZ dd	lmZ d
gZ G d d
e      Zy)    )annotations)Optional)DEFAULT_TIMEOUT   )
SyncClient)__version__   )SyncStorageBucketAPI)SyncBucketProxySyncStorageClientc                       e Zd ZdZeddf	 	 	 	 	 	 	 	 	 	 	 d
 fdZ	 	 d	 	 	 	 	 	 	 	 	 	 	 ddZddZddZddZ	dd	Z
 xZS )r   z!Manage storage buckets and files.TNc                    ddt          i|}| j                  |||||      | _        t        |   | j                         y )Nz
User-Agentzsupabase-py/storage3 v)r   _create_sessionsessionsuper__init__)selfurlheaderstimeoutverifyproxy	__class__s         J/var/www/openai/venv/lib/python3.12/site-packages/storage3/_sync/client.pyr   zSyncStorageClient.__init__   sN     2;-@

 ++C'65Q&    c           	     8    t        ||||t        |      dd      S )NT)base_urlr   r   r   r   follow_redirectshttp2)r   bool)r   r   r   r   r   r   s         r   r   z!SyncStorageClient._create_session#   s*     <!
 	
r   c                    | S N r   s    r   	__enter__zSyncStorageClient.__enter__5   s    r   c                $    | j                          y r"   )aclose)r   exc_typeexctbs       r   __exit__zSyncStorageClient.__exit__8   s    r   c                8    | j                   j                          y r"   )r   r'   r$   s    r   r'   zSyncStorageClient.aclose;   s    r   c                .    t        || j                        S )zRun a storage file operation.

        Parameters
        ----------
        id
            The unique identifier of the bucket
        )r   _client)r   ids     r   from_zSyncStorageClient.from_>   s     r4<<00r   )r   strr   dict[str, str]r   intr   r    r   Optional[str]returnNone)TN)r   r1   r   r2   r   r3   r   r    r   r4   r5   r   )r5   r   )r5   r6   )r/   r1   r5   r   )__name__
__module____qualname____doc__r   r   r   r%   r+   r'   r0   __classcell__)r   s   @r   r   r      s    + '#''  ' 	'
 ' ' 
'( #

  
 	

 
 
 

$1r   N)
__future__r   typingr   storage3.constantsr   utilsr   versionr   bucketr
   file_apir   __all__r   r#   r   r   <module>rD      s3    "  .  ! ( % 
51, 51r   