export interface MaskControllerOptions { input: HTMLInputElement; mask: string; slotChar: string; autoClear: boolean; unmask: boolean; onValueChange: (value: string) => void; onComplete?: (event: Event) => void; } export declare class MaskController { private readonly input; private mask; private slotChar; private autoClear; private unmask; private readonly onValueChange; private readonly onComplete?; private tests; private buffer; private len; private partialPosition; private firstNonMaskPos; private lastRequiredNonMaskPos; private defaultBuffer; private focusText; private currentVal; private caretTimeoutId; private oldVal; private readonly androidChrome; constructor(options: MaskControllerOptions); destroy(): void; updateOptions(options: Partial): void; setValue(value: string | null | undefined, emit?: boolean): void; private bindEvents; private handleInput; private handleFocus; private handleBlur; private handleKeyDown; private handleKeyPress; private handlePaste; private handleInputChange; private handleAndroidInput; private initMask; private caret; private isCompleted; private getPlaceholder; private seekNext; private seekPrev; private shiftL; private shiftR; private clearBuffer; private writeBuffer; private checkVal; private getUnmaskedValue; private updateModelValue; } //# sourceMappingURL=mask-controller.d.ts.map