import type { SpeechProviderPlugin } from "../plugins/types.js"; type OpenAiCompatibleSpeechProviderBaseConfig = { apiKey?: string; baseUrl?: string; model: string; voice: string; speed?: number; responseFormat?: string; }; export type OpenAiCompatibleSpeechProviderConfig = Record> = OpenAiCompatibleSpeechProviderBaseConfig & ExtraConfig; export type OpenAiCompatibleSpeechProviderBaseUrlPolicy = { kind: "trim-trailing-slash"; } | { kind: "canonical"; aliases?: readonly string[]; allowCustom?: boolean; }; export type OpenAiCompatibleSpeechProviderExtraJsonBodyField> = { configKey: Extract; requestKey?: string; }; export type OpenAiCompatibleSpeechProviderOptions = Record> = { id: string; label: string; autoSelectOrder: number; models: readonly string[]; voices: readonly string[]; defaultModel: string; defaultVoice: string; defaultBaseUrl: string; envKey: string; responseFormats: readonly string[]; defaultResponseFormat: string; voiceCompatibleResponseFormats: readonly string[]; baseUrlPolicy?: OpenAiCompatibleSpeechProviderBaseUrlPolicy; normalizeModel?: (value: string | undefined, fallback: string) => string; configKey?: string; extraHeaders?: Record; readExtraConfig?: (raw: Record | undefined) => ExtraConfig; extraJsonBodyFields?: readonly OpenAiCompatibleSpeechProviderExtraJsonBodyField[]; apiErrorLabel?: string; missingApiKeyError?: string; }; export declare function createOpenAiCompatibleSpeechProvider = Record>(options: OpenAiCompatibleSpeechProviderOptions): SpeechProviderPlugin; export {};