import { ChangeDetectorRef, ElementRef, OnChanges, OnDestroy, OnInit, ViewContainerRef } from '@angular/core';
import { AbstractControl, ControlContainer } from '@angular/forms';
import { LogService } from '@ironsource/fusion-ui/services/log';
import { DropdownComponent } from '@ironsource/fusion-ui/components/dropdown/v2';
import { InputComponent } from '@ironsource/fusion-ui/components/input/v2';
import * as i0 from "@angular/core";
export declare class ErrorMessageDirective implements OnInit, OnDestroy, OnChanges {
    private elementRef;
    private viewContainerRef;
    private changeDetectorRef;
    private fg;
    private inputComponent;
    private dropdownComponent;
    private loggerService;
    showError: boolean;
    fusionErrorMessage: string;
    errorInnerMessage: string;
    customMessages: {
        [key: string]: string;
    };
    customMapping: {
        [key: string]: string;
    };
    errorStyles: {};
    private errorMessageComponent;
    private formControl;
    private isTooltipMessage;
    private currentStatus;
    constructor(elementRef: ElementRef, viewContainerRef: ViewContainerRef, changeDetectorRef: ChangeDetectorRef, fg: ControlContainer, inputComponent: InputComponent, dropdownComponent: DropdownComponent, loggerService: LogService);
    get parentFormControl(): AbstractControl;
    ngOnInit(): void;
    ngOnChanges(): void;
    ngOnDestroy(): void;
    private _setComponentError;
    private _checkErrors;
    private _getMessage;
    static ɵfac: i0.ɵɵFactoryDeclaration<ErrorMessageDirective, [null, null, null, null, { optional: true; host: true; }, { optional: true; host: true; }, null]>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<ErrorMessageDirective, "[fusionErrorMessage]", never, { "showError": { "alias": "showError"; "required": false; }; "fusionErrorMessage": { "alias": "fusionErrorMessage"; "required": false; }; "errorInnerMessage": { "alias": "errorInnerMessage"; "required": false; }; "customMessages": { "alias": "customMessages"; "required": false; }; "customMapping": { "alias": "customMapping"; "required": false; }; "errorStyles": { "alias": "errorStyles"; "required": false; }; }, {}, never, never, false, never>;
}
