import { Renderer2 } from '@angular/core';
import { Subject } from 'rxjs';
export declare class InputMask {
    private renderer;
    private tlInput;
    private maskGuides;
    private addNinthDigit;
    private valueUppercase;
    private literalChar;
    private _value;
    private input;
    private startPosition;
    private endPosition;
    private shiftStart;
    private maskExpression;
    private maskGuideExpression;
    private maskSpecialCharacters;
    complete: Subject<boolean>;
    private maskAwaliablePatterns;
    constructor(element: any, renderer: Renderer2, maskValue: any);
    setMaskExpression(value: any): void;
    get value(): any;
    set value(value: any);
    initializeMask(): void;
    onPastListener(): void;
    handleAddNinthDigit(value: any): any;
    onKeyPressInputListener(): void;
    onMouseUpInputListener(): void;
    onKeyDownInputListener(): void;
    isDateString(x: any): boolean;
    private applyMaskOnInit;
    private getPosition;
    private initializeOnFocus;
    private onFocus;
    private handleNotMath;
    private handleBackspace;
    private handleDelete;
    private handleKeypress;
    private handleArrowRight;
    private handleArrowLeft;
    private handleHome;
    private handleEnd;
    private handleSelectAll;
    private setShiftKey;
    private applyMask;
    private deleteTextOnKeyPress;
    private deleteTextSelected;
    private deleteCharOnBackspaceKey;
    private deleteCharOnDeleteKey;
    private replaceUnderscoreForChar;
    private getCursorPosition;
    private replaceValidChar;
    private onComplete;
    private isTextLengthMatchWithExpressionLength;
    private isValidSymbolMask;
    private validateHourMatch;
    private updateModel;
    setModelValue(): void;
    private setValidation;
    private applyGuides;
    private generateMaskGuideExpression;
    private clearMask;
    private jumpCharMask;
    private setPosition;
    private isCharBeforeEqualMaskGuide;
    private isFirstPosition;
    private hasTextSelected;
    private removeUnderscore;
    private setPlaceholder;
    private setValueOnInitialize;
    private cleanValue;
}
