o
    lWi|                     @   sT   d dl Z ddlmZmZ ddlmZ ddlmZmZ G dd dZ	G d	d
 d
Z
dS )    N   )AsyncClientWrapperSyncClientWrapper)RequestOptions   )AsyncRawPreviewClientRawPreviewClientc                   @   T   e Zd ZdefddZedefddZddd	ed
e	j
e de	je fddZdS )PreviewClientclient_wrapperc                C      t |d| _d S N)r   )r   _raw_clientselfr    r   k/var/www/html/asistente-voz-ia/venv/lib/python3.10/site-packages/elevenlabs/text_to_voice/preview/client.py__init__      zPreviewClient.__init__returnc                 C      | j S )z
        Retrieves a raw implementation of this client that returns raw responses.

        Returns
        -------
        RawPreviewClient
        r   r   r   r   r   with_raw_response      	zPreviewClient.with_raw_responseNrequest_optionsgenerated_voice_idr   c                c   sD    | j j||d}|jE dH  W d   dS 1 sw   Y  dS )a  
        Stream a voice preview that was created via the /v1/text-to-voice/design endpoint.

        Parameters
        ----------
        generated_voice_id : str
            The generated_voice_id to stream.

        request_options : typing.Optional[RequestOptions]
            Request-specific configuration. You can pass in configuration such as `chunk_size`, and more to customize the request and response.

        Returns
        -------
        typing.Iterator[bytes]
            Streaming audio data

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

        client = ElevenLabs(
            api_key="YOUR_API_KEY",
        )
        client.text_to_voice.preview.stream(
            generated_voice_id="generated_voice_id",
        )
        r   Nr   streamdata)r   r   r   rr   r   r   r      s   "zPreviewClient.stream)__name__
__module____qualname__r   r   propertyr   r   strtypingOptionalr   Iteratorbytesr   r   r   r   r   r
   
       r
   c                   @   r	   )AsyncPreviewClientr   c                C   r   r   )r   r   r   r   r   r   r   <   r   zAsyncPreviewClient.__init__r   c                 C   r   )z
        Retrieves a raw implementation of this client that returns raw responses.

        Returns
        -------
        AsyncRawPreviewClient
        r   r   r   r   r   r   ?   r   z$AsyncPreviewClient.with_raw_responseNr   r   r   c             	   C  sh   | j j||d4 I dH }|j2 z	3 dH W }|V  q6 W d  I dH  dS 1 I dH s-w   Y  dS )a  
        Stream a voice preview that was created via the /v1/text-to-voice/design endpoint.

        Parameters
        ----------
        generated_voice_id : str
            The generated_voice_id to stream.

        request_options : typing.Optional[RequestOptions]
            Request-specific configuration. You can pass in configuration such as `chunk_size`, and more to customize the request and response.

        Returns
        -------
        typing.AsyncIterator[bytes]
            Streaming audio data

        Examples
        --------
        import asyncio

        from elevenlabs import AsyncElevenLabs

        client = AsyncElevenLabs(
            api_key="YOUR_API_KEY",
        )


        async def main() -> None:
            await client.text_to_voice.preview.stream(
                generated_voice_id="generated_voice_id",
            )


        asyncio.run(main())
        r   Nr   )r   r   r   r!   _chunkr   r   r   r   J   s   &.zAsyncPreviewClient.stream)r"   r#   r$   r   r   r%   r   r   r&   r'   r(   r   AsyncIteratorr*   r   r   r   r   r   r,   ;   r+   r,   )r'   core.client_wrapperr   r   core.request_optionsr   
raw_clientr   r   r
   r,   r   r   r   r   <module>   s   1