/// <reference types="node" />
import type { SpeechOptions, SpeechStreamOptions, SpeechOutput, OutputQuality, Emotion, VoiceEngine, PlayHT10OutputStreamFormat, PlayHT20OutputStreamFormat, Play30EngineStreamOptions, OutputFormat, PlayDialogEngineStreamOptions } from '..';
import { PlayRequestConfig } from './internal/config/PlayRequestConfig';
export type V1ApiOptions = {
    narrationStyle?: string;
    globalSpeed?: string;
    pronunciations?: Array<{
        key: string;
        value: string;
    }>;
    trimSilence?: boolean;
    preset?: Preset;
};
export type V2ApiOptions = {
    voiceEngine: VoiceEngine;
    quality?: OutputQuality;
    outputFormat?: OutputFormat | PlayHT10OutputStreamFormat | PlayHT20OutputStreamFormat;
    speed?: number;
    sampleRate?: number;
    seed?: number;
    temperature?: number;
    emotion?: Emotion;
    voiceGuidance?: number;
    styleGuidance?: number;
    textGuidance?: number;
};
export type AuthBasedEngineOptions = Play30EngineStreamOptions | PlayDialogEngineStreamOptions;
type Preset = 'real-time' | 'balanced' | 'low-latency' | 'high-quality';
export declare function commonGenerateSpeech(input: string, optionsInput?: SpeechOptions): Promise<SpeechOutput>;
export declare function commonGenerateStream(input: string | NodeJS.ReadableStream, optionsInput: SpeechStreamOptions | undefined, reqConfig: PlayRequestConfig): Promise<NodeJS.ReadableStream>;
export declare function internalGenerateStreamFromString(input: string, optionsInput: SpeechStreamOptions | undefined, reqConfig: PlayRequestConfig): Promise<NodeJS.ReadableStream>;
export declare function internalGenerateStreamFromInputStream(inputStream: NodeJS.ReadableStream, optionsInput: SpeechStreamOptions | undefined, reqConfig: PlayRequestConfig): Promise<NodeJS.ReadableStream>;
export declare function qualityToPreset(quality?: OutputQuality): Preset;
export {};
