/** * Translate SDK agent/pipeline/provider/recording objects into Zero Runtime config messages. * * @internal */ import type { STTProviderConfig, LLMProviderConfig, TTSProviderConfig, VADProviderConfig, InterruptConfig as ProtoInterruptConfig, EOUConfig as ProtoEOUConfig, GeminiLLMExtras, ToolSchemaProto, ContextWindowConfig, DenoiseConfig, VoicemailConfig, AvatarProviderConfig, CascadeConfig, RealtimeProviderConfig, PipelineConfig as ProtoPipelineConfig, MCPServerConfig, AgentConfig, RecordingConfig as ProtoRecordingConfig, SessionConfig } from '../proto/types.js'; /** @internal Env var -> credential key(s) it populates. */ export declare const ENV_KEY_MAP: Record; /** Default voice-suffix appended to keep responses spoken-audio friendly; suppressed via `appendVoiceSuffix: false` or a custom `voiceSuffix`. */ export declare const DEFAULT_VOICE_SUFFIX: string; export declare function buildSttConfig(stt: any): STTProviderConfig; export declare function buildLlmConfig(llm: any): LLMProviderConfig; export declare function buildGeminiLlmExtras(llm: any): GeminiLLMExtras | null; export declare function buildTtsConfig(tts: any): TTSProviderConfig; export declare function buildVadConfig(vad: any): VADProviderConfig; export declare function buildInterruptConfig(ic: any): ProtoInterruptConfig; export declare function buildEouConfig(eou: any, turnDetector?: any): ProtoEOUConfig; export declare function buildToolSchemas(agent: any): ToolSchemaProto[]; export declare function resolveContextWindow(agent: any, pipeline: any): any; export declare function buildContextWindowConfig(cw: any, pipeline?: any): ContextWindowConfig; /** @internal Collect provider API keys and per-provider tuning knobs into the credentials map. */ export declare function buildCredentials(pipeline: any, sessionOptions?: Record | null, agent?: any): Record; export declare function buildDenoiseConfig(denoise: any): DenoiseConfig; export declare function buildAvatarConfig(avatar: any): AvatarProviderConfig; export declare function buildVoicemailConfig(detector: any): VoicemailConfig; export declare function buildCascadeConfig(pipeline: any): CascadeConfig; export declare function llmIsRealtime(llm: any): boolean; export declare function detectPipelineMode(pipeline: any): string; export declare function modeFromComponents(opts: { stt?: any; llm?: any; tts?: any; }): string; /** The user's explicit `realtimeConfig.mode`, or `''` so the runtime derives the mode. */ export declare function explicitWireMode(pipeline: any): string; export declare function isRealtimePipeline(pipeline: any): boolean; export declare function buildRealtimeProviderConfig(pipeline: any): RealtimeProviderConfig; /** @internal Build the pipeline config, selecting cascade/realtime/hybrid shape by detected mode. */ export declare function buildPipelineConfig(pipeline: any): ProtoPipelineConfig; export declare function buildMcpServerConfigs(agent: any): MCPServerConfig[]; export declare function buildAgentConfig(agent: any, pipeline?: any): AgentConfig; export declare function buildRecordingConfig(recording: any): ProtoRecordingConfig; /** @internal Assemble the full session config message from pipeline, agent, room, and recording. */ export declare function buildSessionConfig(pipeline: any, agent: any, roomConfig: Record, recording?: any, sessionOptions?: Record | null, sessionId?: string): SessionConfig;