/// <reference types="node" />
import * as Tp from 'thingpedia';
import * as events from 'events';
import type Conversation from '../dialogue-agent/conversation';
interface SpeechHandlerOptions {
    subscriptionKey?: string;
}
export default class SpeechHandler extends events.EventEmitter {
    private _platform;
    private _prefs;
    private _conversation;
    private _pulse;
    private _wakeWordDetector;
    private _systemLock;
    private _recognizer;
    private _tts;
    private _currentRequest;
    private _started;
    private _enableVoiceInput;
    private _enableVoiceOutput;
    private _stream;
    constructor(conversation: Conversation, platform: Tp.BasePlatform, options?: SpeechHandlerOptions);
    setVoiceInput(enable: boolean): void;
    setVoiceOutput(enable: boolean): void;
    setHypothesis(): void;
    setExpected(expect: string): void;
    addMessage(message: any): Promise<void>;
    /**
     * Programmatically trigger a wakeword.
     *
     * This can be used to emulate a wakeword with a push button.
     */
    wakeword(): void;
    private _onDetected;
    private _onError;
    start(): void;
    private _startVoiceInput;
    stop(): void;
    private _stopVoiceInput;
}
export {};
