import * as React from 'react';
import { EditorToolsSettings } from './../config/toolsSettings';
import { TextSelection, EditorView } from '@progress/kendo-editor-common';
interface FindAndReplaceDialogState {
    selectedTab: number;
    matches?: TextSelection<any>[];
    nextMatch?: TextSelection<any>;
    searchText: string;
    replaceText: string;
    matchCase: boolean;
    matchWord: boolean;
    matchCyclic: boolean;
    useRegExp: boolean;
}
/**
 * @hidden
 */
export interface FindAndReplaceDialogProps {
    /**
     * The `EditorView` object.
     */
    view: EditorView;
    /**
     * The `settings` object of the Dialog.
     */
    settings?: EditorToolsSettings.FindReplaceSettings;
    /**
     * Represents the `dir` HTML attribute.
     */
    dir?: string;
    /**
     * The `close` event which will be triggered when the Dialog is about to be unmounted.
     */
    onClose: () => void;
}
/**
 * @hidden
 */
export declare class FindAndReplaceDialog extends React.Component<FindAndReplaceDialogProps, FindAndReplaceDialogState> {
    /**
     * @hidden
     */
    state: FindAndReplaceDialogState;
    private readonly settings;
    constructor(props: FindAndReplaceDialogProps);
    /**
     * @hidden
     */
    componentDidUpdate(_: FindAndReplaceDialogProps, prevState: FindAndReplaceDialogState): void;
    /**
     * @hidden
     */
    render(): React.ReactPortal;
    private onTabSelect;
    private onClose;
    private matchesMessage;
    private onFindNext;
    private onFindPrev;
    private onFind;
    private onReplace;
    private onReplaceAll;
    private onKeyDown;
    private onMatchCaseChecked;
    private onMatchWordChecked;
    private onMatchCyclicChecked;
    private onUseRegExpChecked;
    private onSearchChange;
    private onReplaceChange;
    private setNextState;
}
export {};
