import { Element } from '../../../../../client/element';
import { Mode } from '../../../../../client/mode';
import { System } from '../../../../../system';
import { Dict } from '../../../../../types/Dict';
import { IHTMLDivElement } from '../../../../../types/global/dom';
import { ISpeechRecognitionOpt } from '../../../../../types/global/ISpeechRecognition';
export interface Props {
    className?: string;
    style?: Dict<string>;
    mode?: Mode;
    disabled?: boolean;
    opt?: ISpeechRecognitionOpt;
    tabIndex?: number;
}
export declare const DEFAULT_STYLE: {
    touchAction: string;
};
export default class MicrophoneButton extends Element<IHTMLDivElement, Props> {
    private _icon_button;
    private _speech_recorder;
    constructor($props: Props, $system: System);
    onPropChanged(prop: string, current: any): void;
    private _on_pointer_down;
    private _on_transcript;
    private _on_err;
    start(): void;
    stop(): void;
}
