
    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	 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)ConvAiWebhooks)'ConversationInitiationClientDataWebhook)GetConvAiSettingsResponseModel)LivekitStackType   )AsyncRawSettingsClientRawSettingsClient.c                   .   e Zd ZdefdZedefd       Zdddej                  e
   defdZeeeeedd	d
ej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e
   defdZy)SettingsClientclient_wrapperc                &    t        |      | _        y N)r   )r   _raw_clientselfr   s     w/root/.openclaw/workspace/visionaryfx/venv/lib/python3.12/site-packages/elevenlabs/conversational_ai/settings/client.py__init__zSettingsClient.__init__   s    ,NK    returnc                     | j                   S )z
        Retrieves a raw implementation of this client that returns raw responses.

        Returns
        -------
        RawSettingsClient
        r   r   s    r   with_raw_responsez SettingsClient.with_raw_response        r   Nrequest_optionsr    c                R    | j                   j                  |      }|j                  S )a  
        Retrieve Convai settings for the workspace

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

        Returns
        -------
        GetConvAiSettingsResponseModel
            Successful Response

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

        client = ElevenLabs(
            api_key="YOUR_API_KEY",
        )
        client.conversational_ai.settings.get()
        r   r   getdatar   r    	_responses      r   r#   zSettingsClient.get    s'    . $$(((I	~~r   +conversation_initiation_client_data_webhookwebhookscan_use_mcp_serversrag_retention_period_daysdefault_livekit_stackr    r(   r)   r*   r+   r,   c                \    | j                   j                  ||||||      }|j                  S )a  
        Update Convai settings for the workspace

        Parameters
        ----------
        conversation_initiation_client_data_webhook : typing.Optional[ConversationInitiationClientDataWebhook]

        webhooks : typing.Optional[ConvAiWebhooks]

        can_use_mcp_servers : typing.Optional[bool]
            Whether the workspace can use MCP servers

        rag_retention_period_days : typing.Optional[int]

        default_livekit_stack : typing.Optional[LivekitStackType]

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

        Returns
        -------
        GetConvAiSettingsResponseModel
            Successful Response

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

        client = ElevenLabs(
            api_key="YOUR_API_KEY",
        )
        client.conversational_ai.settings.update()
        r'   r   updater$   r   r(   r)   r*   r+   r,   r    r&   s           r   r/   zSettingsClient.update:   s>    V $$++8c 3&?"7+ , 
	 ~~r   )__name__
__module____qualname__r   r   propertyr   r   typingOptionalr   r	   r#   OMITr   r   boolintr
   r/    r   r   r   r      s    L*; L  #4     IM foon&E Qo : qu4859:>CG;?3 6<__El5m3 //.1	3
 $__T23 $*??3#73  &/?@3  83 
(3r   r   c                   .   e Zd ZdefdZedefd       Zdddej                  e
   defdZeeeeedd	d
ej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e
   defdZy)AsyncSettingsClientr   c                &    t        |      | _        y r   )r   r   r   s     r   r   zAsyncSettingsClient.__init__q   s    1Pr   r   c                     | j                   S )z
        Retrieves a raw implementation of this client that returns raw responses.

        Returns
        -------
        AsyncRawSettingsClient
        r   r   s    r   r   z%AsyncSettingsClient.with_raw_responset   r   r   Nr   r    c                n   K   | j                   j                  |       d{   }|j                  S 7 w)ah  
        Retrieve Convai settings for the workspace

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

        Returns
        -------
        GetConvAiSettingsResponseModel
            Successful Response

        Examples
        --------
        import asyncio

        from elevenlabs import AsyncElevenLabs

        client = AsyncElevenLabs(
            api_key="YOUR_API_KEY",
        )


        async def main() -> None:
            await client.conversational_ai.settings.get()


        asyncio.run(main())
        r   Nr"   r%   s      r   r#   zAsyncSettingsClient.get   s4     > **...OO	~~ Ps    535r'   r(   r)   r*   r+   r,   c                x   K   | j                   j                  ||||||       d{   }|j                  S 7 w)a  
        Update Convai settings for the workspace

        Parameters
        ----------
        conversation_initiation_client_data_webhook : typing.Optional[ConversationInitiationClientDataWebhook]

        webhooks : typing.Optional[ConvAiWebhooks]

        can_use_mcp_servers : typing.Optional[bool]
            Whether the workspace can use MCP servers

        rag_retention_period_days : typing.Optional[int]

        default_livekit_stack : typing.Optional[LivekitStackType]

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

        Returns
        -------
        GetConvAiSettingsResponseModel
            Successful Response

        Examples
        --------
        import asyncio

        from elevenlabs import AsyncElevenLabs

        client = AsyncElevenLabs(
            api_key="YOUR_API_KEY",
        )


        async def main() -> None:
            await client.conversational_ai.settings.update()


        asyncio.run(main())
        r'   Nr.   r0   s           r   r/   zAsyncSettingsClient.update   sL     f **118c 3&?"7+ 2 
 
	 ~~
s   %:8:)r1   r2   r3   r   r   r4   r   r   r5   r6   r   r	   r#   r7   r   r   r8   r9   r
   r/   r:   r   r   r<   r<   p   s    Q*< Q  #9     OS  FOON,K  Wu  J qu4859:>CG;?; 6<__El5m; //.1	;
 $__T2; $*??3#7;  &/?@;  8; 
(;r   r<   )r5   core.client_wrapperr   r   core.request_optionsr   types.conv_ai_webhooksr   1types.conversation_initiation_client_data_webhookr   )types.get_conv_ai_settings_response_modelr	   types.livekit_stack_typer
   
raw_clientr   r   castAnyr7   r   r<   r:   r   r   <module>rJ      sP     H 2 4 h W 8 A v{{6::s#\ \~l lr   