import { OnInit, EventEmitter, SimpleChanges, OnChanges, ChangeDetectorRef } from '@angular/core';
import { FormControl, FormGroupDirective, NgForm } from '@angular/forms';
import { ErrorStateMatcher } from '@angular/material';
/** Error when invalid control is dirty or touched*/
export declare class DropdownErrorStateMatcher implements ErrorStateMatcher {
    isErrorState(control: FormControl | null, form: FormGroupDirective | NgForm | null): boolean;
}
export declare const DROPDOWN_COMPONENT_CONTROL_VALUE_ACCESSOR: any;
export declare class DropdownComponent implements OnInit, OnChanges {
    private ref;
    options: any[];
    direction: string;
    floatLabel: string;
    pattern: string;
    className: any;
    readonly: any;
    required: any;
    placeHolder: any;
    showValidatorMessage: boolean;
    isDirty: any;
    isValid: EventEmitter<boolean>;
    valueChanged: EventEmitter<any>;
    matcher: DropdownErrorStateMatcher;
    id: string;
    element: FormControl;
    private innerValue;
    private onTouchedCallback;
    private onChangeCallback;
    value: any;
    onBlur(validate: any): void;
    writeValue(value: any): void;
    registerOnChange(fn: any): void;
    registerOnTouched(fn: any): void;
    changedInput(event: any, validate: any): void;
    onFocused(validate: any): void;
    constructor(ref: ChangeDetectorRef);
    ngOnInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    getErrorMessage(): "" | " لا يمكن أن يكون هذا الحقل فارغًا!";
    idGenerator(): string;
}
