import { MaskHistory } from './classes';
import type { ElementState, MaskitoElement, MaskitoOptions, TypedInputEvent } from './types';
export declare class Maskito extends MaskHistory {
    private readonly element;
    private readonly maskitoOptions;
    private readonly isTextArea;
    private readonly eventListener;
    private readonly options;
    private upcomingElementState;
    private readonly preprocessor;
    private readonly postprocessor;
    private readonly teardowns;
    constructor(element: MaskitoElement, maskitoOptions: MaskitoOptions);
    destroy(): void;
    protected updateElementState({ value, selection }: ElementState, eventInit?: Pick<TypedInputEvent, 'data' | 'inputType'>): void;
    private get elementState();
    private get maxLength();
    private updateSelectionRange;
    private updateValue;
    private ensureValueFitsMask;
    private dispatchInputEvent;
    private handleDelete;
    private handleInsert;
    private handleEnter;
    private clampState;
}
