import { ElementRef, OnInit, OnDestroy, OnChanges, SimpleChanges } from '@angular/core';
import { NgControl, FormGroup } from '@angular/forms';
import { MaskService } from '../services/mask.service';
import * as i0 from "@angular/core";
export declare class DocumentMaskDirective implements OnInit, OnDestroy, OnChanges {
    private el;
    private control;
    private maskService;
    documentType: 'cpf' | 'cnpj' | 'auto';
    typePerson?: 'NATURAL_PERSON' | 'JURIDICAL_PERSON' | null;
    typePersonField?: string;
    parentForm?: FormGroup;
    private typePersonSubscription?;
    constructor(el: ElementRef, control: NgControl, maskService: MaskService);
    ngOnInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    ngOnDestroy(): void;
    private setupTypePersonWatcher;
    onInput(event: any): void;
    onBlur(event: any): void;
    private applyMask;
    static ɵfac: i0.ɵɵFactoryDeclaration<DocumentMaskDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<DocumentMaskDirective, "[siaDocumentMask]", never, { "documentType": { "alias": "documentType"; "required": false; }; "typePerson": { "alias": "typePerson"; "required": false; }; "typePersonField": { "alias": "typePersonField"; "required": false; }; "parentForm": { "alias": "parentForm"; "required": false; }; }, {}, never, never, true, never>;
}
