
    b6ik                         d dl 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
  e j                  e j                  d      Z G d	 d
      Z G d d      Zy)    N   )AsyncClientWrapperSyncClientWrapper)RequestOptions)SegmentCreateResponse   )AsyncRawSegmentClientRawSegmentClient.c                       e Zd ZdefdZedefd       Zeeddde	de	d	e
d
e
dej                  e	   dej                  ej                  e	ej                  e	   f      dej                  e   defdZy)SegmentClientclient_wrapperc                &    t        |      | _        y N)r   )r
   _raw_clientselfr   s     }/root/.openclaw/workspace/visionaryfx/venv/lib/python3.12/site-packages/elevenlabs/dubbing/resource/speaker/segment/client.py__init__zSegmentClient.__init__   s    +>J    returnc                     | j                   S )z
        Retrieves a raw implementation of this client that returns raw responses.

        Returns
        -------
        RawSegmentClient
        r   r   s    r   with_raw_responsezSegmentClient.with_raw_response        r   Ntexttranslationsrequest_options
dubbing_id
speaker_id
start_timeend_timer   r   r   c          	      ^    | j                   j                  |||||||      }|j                  S )a.  
        Creates a new segment in dubbing resource with a start and end time for the speaker in every available language. Does not automatically generate transcripts/translations/audio.

        Parameters
        ----------
        dubbing_id : str
            ID of the dubbing project.

        speaker_id : str
            ID of the speaker.

        start_time : float

        end_time : float

        text : typing.Optional[str]

        translations : typing.Optional[typing.Dict[str, typing.Optional[str]]]

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

        Returns
        -------
        SegmentCreateResponse
            Successful Response

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

        client = ElevenLabs(
            api_key="YOUR_API_KEY",
        )
        client.dubbing.resource.speaker.segment.create(
            dubbing_id="dubbing_id",
            speaker_id="speaker_id",
            start_time=1.1,
            end_time=1.1,
        )
        r"   r#   r   r   r   r   createdata	r   r    r!   r"   r#   r   r   r   	_responses	            r   r'   zSegmentClient.create   sA    h $$++!%+ , 
	 ~~r   )__name__
__module____qualname__r   r   propertyr
   r   OMITstrfloattypingOptionalDictr   r   r'    r   r   r   r      s    K*; K  #3    " &*PT;?== =
 = = ooc"= oofkk#vs7K2K&LM=  8= 
=r   r   c                       e Zd ZdefdZedefd       Zeeddde	de	d	e
d
e
dej                  e	   dej                  ej                  e	ej                  e	   f      dej                  e   defdZy)AsyncSegmentClientr   c                &    t        |      | _        y r   )r	   r   r   s     r   r   zAsyncSegmentClient.__init__^   s    0Or   r   c                     | j                   S )z
        Retrieves a raw implementation of this client that returns raw responses.

        Returns
        -------
        AsyncRawSegmentClient
        r   r   s    r   r   z$AsyncSegmentClient.with_raw_responsea   r   r   Nr   r    r!   r"   r#   r   r   r   c          	      z   K   | j                   j                  |||||||       d{   }|j                  S 7 w)a  
        Creates a new segment in dubbing resource with a start and end time for the speaker in every available language. Does not automatically generate transcripts/translations/audio.

        Parameters
        ----------
        dubbing_id : str
            ID of the dubbing project.

        speaker_id : str
            ID of the speaker.

        start_time : float

        end_time : float

        text : typing.Optional[str]

        translations : typing.Optional[typing.Dict[str, typing.Optional[str]]]

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

        Returns
        -------
        SegmentCreateResponse
            Successful Response

        Examples
        --------
        import asyncio

        from elevenlabs import AsyncElevenLabs

        client = AsyncElevenLabs(
            api_key="YOUR_API_KEY",
        )


        async def main() -> None:
            await client.dubbing.resource.speaker.segment.create(
                dubbing_id="dubbing_id",
                speaker_id="speaker_id",
                start_time=1.1,
                end_time=1.1,
            )


        asyncio.run(main())
        r%   Nr&   r)   s	            r   r'   zAsyncSegmentClient.createl   sO     x **11!%+ 2 
 
	 ~~
s   &;9;)r+   r,   r-   r   r   r.   r	   r   r/   r0   r1   r2   r3   r4   r   r   r'   r5   r   r   r7   r7   ]   s    P*< P  #8    " &*PT;?EE E
 E E ooc"E oofkk#vs7K2K&LME  8E 
Er   r7   )r2   core.client_wrapperr   r   core.request_optionsr   types.segment_create_responser   
raw_clientr	   r
   castAnyr/   r   r7   r5   r   r   <module>rA      sG     J 4 D ? v{{6::s#L L^T Tr   