/**
 * Copyright (c) 2018-2019 Aleksey Melnikov, True Directive Company.
 * @link https://truedirective.com/
 * @license MIT
*/
import { ElementRef, EventEmitter, Renderer2 } from '@angular/core';
import { InternationalizationService } from '../internationalization/internationalization.service';
import { MaskState } from '@true-directive/base';
import { MaskResult } from '@true-directive/base';
import { Locale } from '@true-directive/base';
export declare class MaskNumberDirective {
    protected _renderer: Renderer2;
    protected _elementRef: ElementRef;
    protected intl: InternationalizationService;
    _localeSubscription: any;
    private onChange;
    private onTouched;
    registerOnChange(fn: (_: any) => void): void;
    registerOnTouched(fn: () => void): void;
    blur(): void;
    private _undo;
    private _redo;
    private _numValue;
    protected _txtValue: string;
    stateChange: EventEmitter<MaskState>;
    private _state;
    state: MaskState;
    protected updateState(): void;
    protected toModel(): void;
    processAndroid(txt: any): void;
    input(txt: any): void;
    writeValue(value: any): void;
    private _separators;
    private _format;
    format: string;
    android_behavior: boolean;
    last_res: MaskResult;
    keyDown(e: any): boolean;
    processKey(e: any): boolean;
    protected setRes(res: MaskResult): void;
    protected currentRes(): MaskResult;
    protected getRes(s: string, selStart: number, selEnd: number): MaskResult;
    protected setText(displayedValue: string, toModel?: boolean): void;
    setLocale(locale: Locale): void;
    ngOnDestroy(): void;
    constructor(_renderer: Renderer2, _elementRef: ElementRef, intl: InternationalizationService);
}
