
    b6iA                         d dl Z d dlmZ ddlmZ ddlmZmZ ddlm	Z	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  G d d      Z G d d      Zy)    N)JSONDecodeError   )ApiError)AsyncClientWrapperSyncClientWrapper)AsyncHttpResponseHttpResponse)RequestOptions)construct_type)UnprocessableEntityError)HttpValidationError)Modelc                   h    e Zd ZdefdZdddej                  e   deej                  e
      fdZy)RawModelsClientclient_wrapperc                    || _         y N_client_wrapperselfr   s     g/root/.openclaw/workspace/visionaryfx/venv/lib/python3.12/site-packages/elevenlabs/models/raw_client.py__init__zRawModelsClient.__init__   
    -    Nrequest_optionsr   returnc                   | j                   j                  j                  dd|      }	 d|j                  cxk  rdk  rin nft	        j
                  t        j                  t           t        t        j                  t           |j                                     }t        ||      S |j                  dk(  rUt        t        |j                        t	        j
                  t        t        t        |j                                     	      |j                         }t!        |j                  t        |j                        |
      # t        $ r6 t!        |j                  t        |j                        |j"                  
      w xY w)a)  
        Gets a list of available models.

        Parameters
        ----------
        request_options : typing.Optional[RequestOptions]
            Request-specific configuration.

        Returns
        -------
        HttpResponse[typing.List[Model]]
            Successful Response
        	v1/modelsGETmethodr      ,  type_object_responsedata  headersbodystatus_coder.   r/   )r   httpx_clientrequestr1   typingcastListr   r   jsonr	   r   dictr.   r   r   r   textr   r   	_response_data_response_jsons        r   listzRawModelsClient.list   sF    ((55==+ > 
	
	ti++1c1KK&"$kk%0 ) 0 $YUCC$$+. !2!23+&"5$-NN$4	 	 '^^-N 9#8#8$yGXGXBY`noo  	ty'<'<d9K\K\F]dmdrdrss	ts   A=E (A4E ?F)__name__
__module____qualname__r   r   r4   Optionalr
   r	   r6   r   r>    r   r   r   r      sH    .*; . JN +pv~'F +pR^_e_j_jkp_qRr +pr   r   c                   h    e Zd ZdefdZdddej                  e   deej                  e
      fdZy)AsyncRawModelsClientr   c                    || _         y r   r   r   s     r   r   zAsyncRawModelsClient.__init__C   r   r   Nr   r   r   c                0  K   | j                   j                  j                  dd|       d{   }	 d|j                  cxk  rdk  rin nft	        j
                  t        j                  t           t        t        j                  t           |j                                     }t        ||      S |j                  d	k(  rUt        t        |j                        t	        j
                  t        t        t        |j                                     
      |j                         }t!        |j                  t        |j                        |      7 ## t        $ r6 t!        |j                  t        |j                        |j"                        w xY ww)a.  
        Gets a list of available models.

        Parameters
        ----------
        request_options : typing.Optional[RequestOptions]
            Request-specific configuration.

        Returns
        -------
        AsyncHttpResponse[typing.List[Model]]
            Successful Response
        r    r!   r"   Nr$   r%   r&   r)   r,   r-   r0   )r   r2   r3   r1   r4   r5   r6   r   r   r7   r   r   r8   r.   r   r   r   r9   r:   s        r   r>   zAsyncRawModelsClient.listF   sT      ..;;CC+ D 
 
	
	ti++1c1KK&"$kk%0 ) 0 ))%HH$$+. !2!23+&"5$-NN$4	 	 '^^-N 9#8#8$yGXGXBY`noo;
6  	ty'<'<d9K\K\F]dmdrdrss	ts4   ,FEFA=E 1F2A4E &,F?FF)r?   r@   rA   r   r   r4   rB   r
   r   r6   r   r>   rC   r   r   rE   rE   B   sE    .*< . EI-p"(//."A-p	6;;u-	.-pr   rE   )r4   json.decoderr   core.api_errorr   core.client_wrapperr   r   core.http_responser   r	   core.request_optionsr
   core.unchecked_base_modelr   !errors.unprocessable_entity_errorr   types.http_validation_errorr   types.modelr   r   rE   rC   r   r   <module>rQ      s>     ( % G @ 1 6 H = /p /pd1p 1pr   