
    b6i                         d dl Z ddlmZ ddlmZmZ ddlmZ ddlm	Z	 ddl
mZmZ dd	lmZ  e j                  e j                   d
      Z G d d      Z G d d      Zy)    N   )core)AsyncClientWrapperSyncClientWrapper)RequestOptions)AddVoiceIvcResponseModel   )AsyncRawIvcClientRawIvcClient)IvcCreateRequestLabels.c                       e Zd ZdefdZedefd       Zeeeddde	de
j                  ej                     d	e
j                  e   d
e
j                  e	   de
j                  e   de
j                  e   defdZy)	IvcClientclient_wrapperc                &    t        |      | _        y N)r   )r   _raw_clientselfr   s     g/root/.openclaw/workspace/visionaryfx/venv/lib/python3.12/site-packages/elevenlabs/voices/ivc/client.py__init__zIvcClient.__init__   s    '~F    returnc                     | j                   S )z
        Retrieves a raw implementation of this client that returns raw responses.

        Returns
        -------
        RawIvcClient
        r   r   s    r   with_raw_responsezIvcClient.with_raw_response        r   Nremove_background_noisedescriptionlabelsrequest_optionsnamefilesr   r    r!   r"   c                \    | j                   j                  ||||||      }|j                  S )a  
        Create a voice clone and add it to your Voices

        Parameters
        ----------
        name : str
            The name that identifies this voice. This will be displayed in the dropdown of the website.

        files : typing.List[core.File]
            See core.File for more documentation

        remove_background_noise : typing.Optional[bool]
            If set will remove background noise for voice samples using our audio isolation model. If the samples do not include background noise, it can make the quality worse.

        description : typing.Optional[str]
            A description of the voice.

        labels : typing.Optional[IvcCreateRequestLabels]
            Labels for the voice. Keys can be language, accent, gender, or age.

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

        Returns
        -------
        AddVoiceIvcResponseModel
            Successful Response

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

        client = ElevenLabs(
            api_key="YOUR_API_KEY",
        )
        client.voices.ivc.create(
            name="name",
        )
        r#   r$   r   r    r!   r"   r   createdatar   r#   r$   r   r    r!   r"   	_responses           r   r(   zIvcClient.create   s>    b $$++$;#+ , 
	 ~~r   )__name__
__module____qualname__r   r   propertyr   r   OMITstrtypingListr   FileOptionalboolr   r   r   r(    r   r   r   r      s    G*; G  <     :>,0:>;?9 9 {{499%	9
 "(!69 __S)9  679  89 
"9r   r   c                       e Zd ZdefdZedefd       Zeeeddde	de
j                  ej                     d	e
j                  e   d
e
j                  e	   de
j                  e   de
j                  e   defdZy)AsyncIvcClientr   c                &    t        |      | _        y r   )r
   r   r   s     r   r   zAsyncIvcClient.__init__\   s    ,NKr   r   c                     | j                   S )z
        Retrieves a raw implementation of this client that returns raw responses.

        Returns
        -------
        AsyncRawIvcClient
        r   r   s    r   r   z AsyncIvcClient.with_raw_response_   r   r   Nr   r#   r$   r   r    r!   r"   c                x   K   | j                   j                  ||||||       d{   }|j                  S 7 w)a!  
        Create a voice clone and add it to your Voices

        Parameters
        ----------
        name : str
            The name that identifies this voice. This will be displayed in the dropdown of the website.

        files : typing.List[core.File]
            See core.File for more documentation

        remove_background_noise : typing.Optional[bool]
            If set will remove background noise for voice samples using our audio isolation model. If the samples do not include background noise, it can make the quality worse.

        description : typing.Optional[str]
            A description of the voice.

        labels : typing.Optional[IvcCreateRequestLabels]
            Labels for the voice. Keys can be language, accent, gender, or age.

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

        Returns
        -------
        AddVoiceIvcResponseModel
            Successful Response

        Examples
        --------
        import asyncio

        from elevenlabs import AsyncElevenLabs

        client = AsyncElevenLabs(
            api_key="YOUR_API_KEY",
        )


        async def main() -> None:
            await client.voices.ivc.create(
                name="name",
            )


        asyncio.run(main())
        r&   Nr'   r*   s           r   r(   zAsyncIvcClient.createj   sL     r **11$;#+ 2 
 
	 ~~
s   %:8:)r,   r-   r.   r   r   r/   r
   r   r0   r1   r2   r3   r   r4   r5   r6   r   r   r   r(   r7   r   r   r9   r9   [   s    L*< L  #4     :>,0:>;?A A {{499%	A
 "(!6A __S)A  67A  8A 
"Ar   r9   )r2    r   core.client_wrapperr   r   core.request_optionsr   "types.add_voice_ivc_response_modelr   
raw_clientr
   r   types.ivc_create_request_labelsr   castAnyr0   r   r9   r7   r   r   <module>rE      sM      H 2 J 7 C v{{6::s#H HVP Pr   