import { AbstractTTSClient } from "../core/abstract-tts"; import type { SpeakOptions, TTSCredentials, UnifiedVoice } from "../types"; /** * eSpeak TTS Client for Node.js environments * * This client uses the text2wav package for server-side eSpeak TTS synthesis. * For browser environments, use EspeakBrowserTTSClient instead. */ export declare class EspeakNodeTTSClient extends AbstractTTSClient { constructor(credentials?: TTSCredentials); /** * Get the list of required credential types for this engine * @returns Array of required credential field names */ protected getRequiredCredentials(): string[]; /** * eSpeak does not require credentials in Node.js */ checkCredentials(): Promise; /** * Synthesize text to audio bytes (Uint8Array) * @param text Text to synthesize * @param options Synthesis options * @returns Promise resolving to audio bytes */ synthToBytes(text: string, options?: SpeakOptions): Promise; /** * Synthesize text to a byte stream (ReadableStream) * @param text Text to synthesize * @param options Synthesis options * @returns Promise resolving to an object containing the audio stream and an empty word boundaries array. */ synthToBytestream(text: string, options?: SpeakOptions): Promise<{ audioStream: ReadableStream; wordBoundaries: Array<{ text: string; offset: number; duration: number; }>; }>; /** * Return available voices for eSpeak */ _getVoices(): Promise; } export { EspeakNodeTTSClient as EspeakTTSClient };