import { EventEmitter } from '@angular/core';
import { FormControl } from '@angular/forms';
import { Observable, Subscription } from 'rxjs';
import { MatSelectChange } from "@angular/material/select";
import { LanguageEnum } from '@testlocallibrary/shared-kernel/models/enums';
import { LanguageService } from '@testlocallibrary/shared-kernel/services/language';
import * as i0 from "@angular/core";
export declare class LdcDropDownComponent {
    private languageService;
    language: string;
    LanguageEnum: typeof LanguageEnum;
    controller: FormControl<unknown>;
    label: string;
    value: string;
    key: string;
    options: any[];
    optionsObservable: Observable<any[]> | undefined;
    isObservable: boolean;
    isRequired: boolean;
    isDependent: boolean | undefined;
    isMultiple: boolean;
    isSearchable: boolean;
    isDisplayClearBtn: boolean;
    isDisabled: boolean;
    placeholder: string;
    searchOptions: any;
    controllerValue: {
        key: unknown;
        value: unknown;
    }[];
    isDisplayChips: boolean;
    isShowTooltip: boolean;
    isWhiteMode: boolean;
    isDisplayButton: boolean;
    isDisplayNone: boolean;
    isLoading: boolean;
    searchValue: string;
    textButton: string;
    textNone: string;
    inputId: string;
    onChange: EventEmitter<unknown>;
    onScroll: EventEmitter<unknown>;
    onSearch: EventEmitter<any>;
    onClear: EventEmitter<any>;
    onRemoveChip: EventEmitter<any>;
    onControlValueChange: EventEmitter<any>;
    onButtonClick: EventEmitter<any>;
    subscription: Subscription;
    searchCtrl: FormControl;
    list: any[];
    protected clearControllerValue(): void;
    constructor(languageService: LanguageService);
    ngOnInit(): void;
    search(): void;
    ngOnDestroy(): void;
    clearSearch(): void;
    emitClear(event: Event): void;
    changeSelection($event: MatSelectChange): void;
    optionChosen(option: any): void;
    remove(value: {
        key: unknown;
        value: unknown;
    }): void;
    setControllerValueInChipsMode(): void;
    getDisplayChips(): string;
    static ɵfac: i0.ɵɵFactoryDeclaration<LdcDropDownComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<LdcDropDownComponent, "lib-ldc-drop-down", never, { "controller": { "alias": "controller"; "required": false; }; "label": { "alias": "label"; "required": false; }; "value": { "alias": "value"; "required": true; }; "key": { "alias": "key"; "required": true; }; "options": { "alias": "options"; "required": false; }; "optionsObservable": { "alias": "optionsObservable"; "required": false; }; "isObservable": { "alias": "isObservable"; "required": false; }; "isRequired": { "alias": "isRequired"; "required": false; }; "isDependent": { "alias": "isDependent"; "required": false; }; "isMultiple": { "alias": "isMultiple"; "required": false; }; "isSearchable": { "alias": "isSearchable"; "required": false; }; "isDisplayClearBtn": { "alias": "isDisplayClearBtn"; "required": false; }; "isDisabled": { "alias": "isDisabled"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "searchOptions": { "alias": "searchOptions"; "required": false; }; "controllerValue": { "alias": "controllerValue"; "required": false; }; "isDisplayChips": { "alias": "isDisplayChips"; "required": false; }; "isShowTooltip": { "alias": "isShowTooltip"; "required": false; }; "isWhiteMode": { "alias": "isWhiteMode"; "required": false; }; "isDisplayButton": { "alias": "isDisplayButton"; "required": false; }; "isDisplayNone": { "alias": "isDisplayNone"; "required": false; }; "isLoading": { "alias": "isLoading"; "required": false; }; "searchValue": { "alias": "searchValue"; "required": false; }; "textButton": { "alias": "textButton"; "required": false; }; "textNone": { "alias": "textNone"; "required": false; }; "inputId": { "alias": "inputId"; "required": false; }; }, { "onChange": "onChange"; "onScroll": "onScroll"; "onSearch": "onSearch"; "onClear": "onClear"; "onRemoveChip": "onRemoveChip"; "onControlValueChange": "onControlValueChange"; "onButtonClick": "onButtonClick"; }, never, never, true, never>;
}
