
    >|h'                         d dl mZ ddl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 d
lmZ d dl mZ  G d d      Z G d d      Zy)   )SyncClientWrapper    N)RequestOptions)Model)construct_type)UnprocessableEntityError)HttpValidationError)JSONDecodeError)ApiError)AsyncClientWrapperc                   b    e Zd ZdefdZdddej                  e   dej                  e	   fdZ
y)ModelsClientclient_wrapperc                    || _         y N_client_wrapperselfr   s     W/var/www/html/test/engine/venv/lib/python3.12/site-packages/elevenlabs/models/client.py__init__zModelsClient.__init__   
    -    Nrequest_optionsr   returnc          
      ~   | j                   j                  j                  dd|      }	 d|j                  cxk  rdk  r\n nYt	        j
                  t        j                  t           t        t        j                  t           |j                                     S |j                  dk(  r@t        t	        j
                  t        t        t        |j                                           |j                         }t        |j                  |      # t        $ r" t        |j                  |j                        w xY w)	a  
        Gets a list of available models.

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

        Returns
        -------
        typing.List[Model]
            Successful Response

        Examples
        --------
        from elevenlabs import ElevenLabs

        client = ElevenLabs(
            api_key="YOUR_API_KEY",
        )
        client.models.get_all()
        	v1/modelsGETmethodr      ,  type_object_  status_codebodyr   httpx_clientrequestr)   typingcastListr   r   jsonr   r	   r
   r   textr   r   	_response_response_jsons       r   get_allzModelsClient.get_all   s   . ((55==+ > 
	
	Si++1c1{{KK&"$kk%0 ) 0  $$+.KK+&"5$-NN$4  '^^-N 9#8#8~NN  	Sy'<'<9>>RR	Ss   A0D AD +D<)__name__
__module____qualname__r   r   r.   Optionalr   r0   r   r6    r   r   r   r      sB    .*; . MQ 2O&//.*I 2OU[U`U`afUg 2Or   r   c                   b    e Zd ZdefdZdddej                  e   dej                  e	   fdZ
y)AsyncModelsClientr   c                    || _         y r   r   r   s     r   r   zAsyncModelsClient.__init__I   r   r   Nr   r   r   c          
        K   | j                   j                  j                  dd|       d{   }	 d|j                  cxk  rdk  r\n nYt	        j
                  t        j                  t           t        t        j                  t           |j                                     S |j                  dk(  r@t        t	        j
                  t        t        t        |j                                           |j                         }t        |j                  |	      7 # t        $ r" t        |j                  |j                  	      w xY ww)
aB  
        Gets a list of available models.

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

        Returns
        -------
        typing.List[Model]
            Successful Response

        Examples
        --------
        import asyncio

        from elevenlabs import AsyncElevenLabs

        client = AsyncElevenLabs(
            api_key="YOUR_API_KEY",
        )


        async def main() -> None:
            await client.models.get_all()


        asyncio.run(main())
        r   r   r    Nr"   r#   r$   r'   r(   r+   r3   s       r   r6   zAsyncModelsClient.get_allL   s    > ..;;CC+ D 
 
	
	Si++1c1{{KK&"$kk%0 ) 0  $$+.KK+&"5$-NN$4  '^^-N 9#8#8~NN7
2  	Sy'<'<9>>RR	Ss4   ,EDEA0D $E%AD E+EE)r7   r8   r9   r   r   r.   r:   r   r0   r   r6   r;   r   r   r=   r=   H   sB    .*< . SW :O0O :O[a[f[fgl[m :Or   r=   )core.client_wrapperr   r.   core.request_optionsr   types.modelr   core.unchecked_base_modelr   !errors.unprocessable_entity_errorr   types.http_validation_errorr	   json.decoderr
   core.api_errorr   r   r   r=   r;   r   r   <module>rH      s>    4  1  6 H = ( % 46O 6Or>O >Or   