/** Default voice used by {@link AzureVoiceLiveConfig} when none is supplied. */ export declare const DEFAULT_VOICE = "en-US-AvaNeural"; declare class TurnDetectionConfigImpl { static readonly displayName = "TurnDetectionConfig"; type: string; threshold: number; prefixPaddingMs: number; silenceDurationMs: number; createResponse: boolean; interruptResponse: boolean; constructor(opts?: { type?: string; threshold?: number; prefixPaddingMs?: number; silenceDurationMs?: number; createResponse?: boolean; interruptResponse?: boolean; }); } export type TurnDetectionConfig = TurnDetectionConfigImpl; /** * Server-side voice-activity / turn-detection settings for {@link AzureVoiceLive}. * * @param opts.type Detection mode. Default: `'server_vad'`. * @param opts.threshold VAD activation threshold. Range `0`-`1`. Default: `0.5`. * @param opts.prefixPaddingMs Audio (ms) retained before detected speech. Default: `300`. * @param opts.silenceDurationMs Trailing silence (ms) that ends a turn. Default: `500`. * @param opts.createResponse Auto-generate a response when a turn ends. Default: `true`. * @param opts.interruptResponse Allow user speech to interrupt the response. Default: `true`. */ export declare const TurnDetectionConfig: (opts?: { type?: string; threshold?: number; prefixPaddingMs?: number; silenceDurationMs?: number; createResponse?: boolean; interruptResponse?: boolean; }) => TurnDetectionConfig; declare class InputAudioTranscriptionConfigImpl { static readonly displayName = "InputAudioTranscriptionConfig"; model: string; constructor(opts?: { model?: string; }); } export type InputAudioTranscriptionConfig = InputAudioTranscriptionConfigImpl; /** * Input-audio transcription settings for {@link AzureVoiceLive}. * * @param opts.model Transcription model. Default: `'gpt-4o-mini-transcribe'`. */ export declare const InputAudioTranscriptionConfig: (opts?: { model?: string; }) => InputAudioTranscriptionConfig; declare class AzureVoiceLiveConfigImpl { static readonly displayName = "AzureVoiceLiveConfig"; model: string; voice: string; endpoint: string | null; modalities: string[]; temperature: number | null; maxResponseOutputTokens: number | string | null; turnDetection: TurnDetectionConfig | null; inputAudioTranscription: InputAudioTranscriptionConfig | null; toolChoice: string; constructor(opts?: { model?: string; voice?: string; endpoint?: string | null; modalities?: string[]; temperature?: number | null; maxResponseOutputTokens?: number | string | null; turnDetection?: TurnDetectionConfig | null; inputAudioTranscription?: InputAudioTranscriptionConfig | null; toolChoice?: string; }); } export type AzureVoiceLiveConfig = AzureVoiceLiveConfigImpl; /** * Session configuration for the {@link AzureVoiceLive} realtime speech-to-speech provider. * * @param opts.model Realtime model. Default: `'gpt-4o-realtime-preview'`. * @param opts.voice Output voice name. Default: {@link DEFAULT_VOICE}. * @param opts.endpoint Azure Voice Live endpoint. Default: `null`. * @param opts.modalities Active response modalities. Default: `['text', 'audio']`. * @param opts.temperature Sampling temperature. Default: `null`. * @param opts.maxResponseOutputTokens Max tokens per response (number or `'inf'`). Default: `null`. * @param opts.turnDetection Turn-detection config. Default: a {@link TurnDetectionConfig} with defaults (pass `null` to disable). * @param opts.inputAudioTranscription Input-transcription config. Default: an {@link InputAudioTranscriptionConfig} with defaults (pass `null` to disable). * @param opts.toolChoice Tool-selection strategy. Default: `'auto'`. */ export declare const AzureVoiceLiveConfig: (opts?: { model?: string; voice?: string; endpoint?: string | null; modalities?: string[]; temperature?: number | null; maxResponseOutputTokens?: number | string | null; turnDetection?: TurnDetectionConfig | null; inputAudioTranscription?: InputAudioTranscriptionConfig | null; toolChoice?: string; }) => AzureVoiceLiveConfig; /** Configuration options for the {@link AzureVoiceLive} provider. */ export type AzureVoiceLiveOptions = { /** Azure Voice Live API key. Falls back to the `AZURE_VOICE_LIVE_API_KEY` env var. */ apiKey?: string; /** Session config. Default: an {@link AzureVoiceLiveConfig} with defaults. */ config?: AzureVoiceLiveConfig; /** Endpoint override. Falls back to `config.endpoint`, then the `AZURE_VOICE_LIVE_ENDPOINT` env var, then `''`. */ endpoint?: string; [key: string]: any; }; declare class AzureVoiceLiveImpl { static readonly displayName = "AzureVoiceLive"; _providerName: string; _isRealtimeModel: boolean; apiKey?: string; config: AzureVoiceLiveConfig; endpoint: string; model: string; voice: string; params: Record; constructor(opts?: AzureVoiceLiveOptions); close(): Promise; cleanup(): Promise; getRuntimeConfig(): Record; } export type AzureVoiceLive = AzureVoiceLiveImpl; /** * Azure Voice Live realtime speech-to-speech provider. * * Creates a configured Azure Voice Live provider (full speech-to-speech) for use in a voice agent. */ export declare const AzureVoiceLive: (opts?: AzureVoiceLiveOptions) => AzureVoiceLive; export {};