
    {h                       d dl mZ d dlZd dlmZmZ d dlmZmZ eej                  j                  f	 	 	 	 	 	 	 dd       Zeej                  j                  f	 	 	 	 	 	 	 d	d       Zej                  j                  f	 	 	 	 	 	 	 d
dZy)    )annotationsN)AsyncWriterWriter)overloadAnyc                     y N clientmodekwargss      Y/var/www/html/hubwallet-dev/venv/lib/python3.12/site-packages/instructor/client_writer.pyfrom_writerr   
   s    
      c                     y r	   r
   r   s      r   r   r      s    
 "%r   c           
        t         j                  j                  t         j                  j                  h}||vr1ddlm}  |t        |      d|D cg c]  }t        |       c}      t        | t        t        f      s$ddlm
}  |dt        |       j                         t        | t              r[t        j                  d	| t        j                  | j                  j                  |      t         j                   j"                  |d|S t        j$                  d	| t        j                  | j                  j                  |      t         j                   j"                  |d|S c c}w )
Nr   )	ModeErrorr   )r   providervalid_modes)ClientErrorz:Client must be an instance of Writer or AsyncWriter. Got: )creater   )r   r   r   r   r
   )
instructorModeWRITER_TOOLSWRITER_JSONinstructor.exceptionsr   str
isinstancer   r   r   type__name__
InstructorpatchchatProviderWRITERAsyncInstructor)r   r   r   r   r   mr   s          r   r   r      sE   
 ??//1L1LMK;3TXK;XqCF;X
 	
 fv{345L))*,
 	

 &&!$$ 
##6;;+;+;$G((//	

 
 	
 %% v{{'7'7dC$$++	
  ) <Ys   E*)r   r   r   instructor.Moder   r   returnzinstructor.Instructor)r   r   r   r)   r   r   r*   zinstructor.AsyncInstructor)r   zWriter | AsyncWriterr   r)   r   r   r*   z@instructor.client.Instructor | instructor.client.AsyncInstructor)
__future__r   r   writerair   r   typingr   r   r   r   r   r
   r   r   <module>r.      s    "  (   
 'OO88  
    	  
  
 'OO88%%
% %  	% 
% 'OO88% %
% % F	%r   