import { ElementRef, Injector, OnChanges, OnDestroy, OnInit, Renderer2, SimpleChanges, ViewContainerRef } from '@angular/core';
import { NgControl } from '@angular/forms';
import { BooleanInput } from '@angular/cdk/coercion';
import { Subscription } from 'rxjs';
import * as i0 from "@angular/core";
export declare class InputDirective implements OnInit, OnDestroy, OnChanges {
    euiDisabled: boolean;
    euiDanger: boolean;
    get disabled(): boolean;
    set disabled(state: BooleanInput);
    get readonly(): any;
    set readonly(state: BooleanInput);
    get placeholder(): string | null;
    set placeholder(value: string | number | null);
    protected _disabled: boolean;
    protected _readonly: boolean;
    protected _placeholder: string;
    protected _statusListener: Subscription;
    protected _id: string;
    protected _viewContainerRef: ViewContainerRef;
    protected control: NgControl;
    protected _elementRef: ElementRef<any>;
    protected _renderer: Renderer2;
    protected injector: Injector;
    constructor();
    ngOnInit(): void;
    ngOnDestroy(): void;
    ngOnChanges(changes: SimpleChanges): void;
    getCssClasses(rootClass: string): string;
    protected getPlaceholderAttribute(): string | undefined;
    protected setPlaceholderAttribute(value: string | null): void;
    protected setIdAttribute(value?: string | null): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<InputDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<InputDirective, "input[euiInput]", never, { "euiDisabled": { "alias": "euiDisabled"; "required": false; }; "euiDanger": { "alias": "euiDanger"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; }, {}, never, never, false, never>;
    static ngAcceptInputType_euiDisabled: unknown;
    static ngAcceptInputType_euiDanger: unknown;
}
//# sourceMappingURL=input.directive.d.ts.map