import { OpenAI } from 'openai'; import { type LLMProviders, type LLMCreateSpeechOptions, type LLMCreateSpeechResult, type LLMInstanceOptions, type LLMModel } from '../../LLMService.typedefs'; import { type LLMLoggerInterface } from '../../utilities/logger'; import { type LLMReporterInterface } from '../../utilities/reporter'; import { LLMTextToSpeechService } from '../../services'; type OpenAICompatibleTTSProvider = LLMProviders.OpenAI | LLMProviders.LLMAPI; interface SpeechUsage { inputTextTokens: number; outputAudioTokens: number; } export declare abstract class OpenAICompatibleTextToSpeechService | undefined> extends LLMTextToSpeechService { constructor(provider: Provider, logger: LLMLoggerInterface | undefined, reporter: Reporter, options?: LLMInstanceOptions[Provider]); get instance(): OpenAI; protected getDefaultVoice(_modelName: string): string; protected getRequestOptions(abortSignal?: AbortSignal): { signal?: AbortSignal; headers?: Record; }; protected abstract extractUsage(audioBuffer: Buffer, text: string, model: LLMModel): Promise | SpeechUsage; createSpeech(options: LLMCreateSpeechOptions): Promise; } export {};