o
    ùT·j  ã                   @  sX   d dl mZ d dlZd dlmZ ddlmZ er ddlmZm	Z	 ddd„Z
ddd„ZdS )é    )ÚannotationsN)ÚTYPE_CHECKINGé   )Ú
FileObject)ÚFilesÚ
AsyncFilesÚfilesr   ÚidÚstrÚpoll_intervalÚfloatÚmax_wait_secondsÚreturnr   c                C  sl   h d£}t   ¡ }|  |¡}|j|vr4|  |¡ |  |¡}t   ¡ | |kr/td|› d|› d�ƒ‚|j|vs|S )z8Poll a file using the caller's resource and sleep hooks.>   ÚerrorÚdeletedÚ	processedúGiving up on waiting for file ú to finish processing after ú	 seconds.©ÚtimeÚretrieveÚstatusÚ_sleepÚRuntimeError©r   r	   r   r   ÚTERMINAL_STATESÚstartÚfile© r   úT/home/dinkstrade/pdmp-scanner/venv/lib/python3.10/site-packages/openai/lib/_files.pyÚwait_for_file_processing   s   



ÿ
û	r!   r   c                Ã  s€   �h d£}t   ¡ }|  |¡I dH }|j|vr>|  |¡I dH  |  |¡I dH }t   ¡ | |kr9td|› d|› d�ƒ‚|j|vs|S )z>Poll a file using the caller's async resource and sleep hooks.>   r   r   r   Nr   r   r   r   r   r   r   r    Úasync_wait_for_file_processing$   s   €
ÿ
û	r"   )
r   r   r	   r
   r   r   r   r   r   r   )
r   r   r	   r
   r   r   r   r   r   r   )Ú
__future__r   r   Útypingr   Útypes.file_objectr   Úresources.filesr   r   r!   r"   r   r   r   r    Ú<module>   s    
