import type { IncomingMessage, ServerResponse } from "node:http"; import type { StreamRouteState } from "./stream-route-state"; interface StreamVoiceSettings { enabled?: boolean; autoSpeak?: boolean; provider?: string; } interface StreamSettingsLike { voice?: StreamVoiceSettings; } interface TtsBridgeLike { isSpeaking(): boolean; isAttached(): boolean; speak(text: string, config: Record): Promise; } export interface StreamVoiceRouteContext { req: IncomingMessage; res: ServerResponse; pathname: string; method: string; state: StreamRouteState; getTtsProviderStatus: (config: unknown) => { resolvedProvider: string | null; configuredProvider: string | null; hasApiKey: boolean; }; resolveTtsConfig: (config: unknown) => Record | null; ttsStreamBridge: TtsBridgeLike; sanitizeSpeechText: (text: string) => string; readStreamSettings: () => StreamSettingsLike; writeStreamSettings: (settings: StreamSettingsLike) => void; } export declare function handleStreamVoiceRoute(ctx: StreamVoiceRouteContext): Promise; export declare function onAgentMessage(text: string, state: StreamRouteState, deps: Pick): Promise; export {}; //# sourceMappingURL=stream-voice-routes.d.ts.map