/**
 * Copyright (c) 2018-2019 Aleksey Melnikov, True Directive Company.
 * @link https://truedirective.com/
 * @license MIT
*/
import { Internationalization } from '../internationalization/internationalization.class';
import { Locale } from '../internationalization/locale.class';
import { MaskSectionType } from './mask-section-type.class';
import { MaskSection } from './mask-section.class';
import { MaskSettings } from './mask-settings.class';
export declare class Mask {
    static readonly defaultSettings: MaskSettings;
    static readonly delimiterChars: string;
    static readonly sectionTypes: MaskSectionType[];
    private _settings;
    settings: MaskSettings;
    private readonly _separators;
    private readonly _singles;
    private localeDateFormat;
    private localeTimeHMFormat;
    private localeTimeHMSFormat;
    private localeDateTimeHMFormat;
    private localeDateTimeHMSFormat;
    sections: Array<MaskSection>;
    private _pattern;
    pattern: string;
    selectSectionType(s: string): MaskSectionType;
    private selectSectionTypeByFirstChar;
    private addEmptySection;
    private addSection;
    pureValue(value: string): string;
    applyPureValue(value: string): string;
    updateMask(): void;
    protected appendPlaceholders(value: string): string;
    checkMask(value: string): boolean;
    applyMask(value: string, autoCorrect?: boolean): string;
    applyKeyAtPos(value: string, key: number, char: string, selStart: number, selEnd?: number): any;
    static maskWithPattern(intl: Internationalization, pattern: string): Mask;
    setLocale(locale: Locale): void;
}
