import type pino from "pino";
import { EventEmitter } from "node:events";
import type { StreamingTranscriptionSession } from "../../speech-provider.js";
type OpenAITurnDetection = null | {
    type: "server_vad";
    create_response?: boolean;
    threshold?: number;
    prefix_padding_ms?: number;
    silence_duration_ms?: number;
} | {
    type: "semantic_vad";
    create_response?: boolean;
    eagerness?: "low" | "medium" | "high";
};
export declare class OpenAIRealtimeTranscriptionSession extends EventEmitter implements StreamingTranscriptionSession {
    readonly requiredSampleRate = 24000;
    private readonly apiKey;
    private readonly logger;
    private readonly transcriptionModel;
    private readonly language?;
    private readonly prompt?;
    private readonly turnDetection;
    private ws;
    private ready;
    private closing;
    private partialByItemId;
    constructor(params: {
        apiKey: string;
        logger: pino.Logger;
        transcriptionModel: string;
        language?: string;
        prompt?: string;
        turnDetection?: OpenAITurnDetection;
    });
    connect(): Promise<void>;
    appendPcm16(pcm16le: Buffer): void;
    commit(): void;
    clear(): void;
    close(): void;
}
export {};
//# sourceMappingURL=realtime-transcription-session.d.ts.map