import { ElementRef, EventEmitter, OnChanges, SimpleChanges, AfterViewInit } from '@angular/core';
import { MultiSelectService } from '../multi-select.service';
import * as i0 from "@angular/core";
export declare class CsMultiselectComponent implements OnChanges, AfterViewInit {
    multiSelectService: MultiSelectService;
    isRequired: boolean;
    dropdownLabel: string;
    dropdownSubLabel: string;
    disabled: boolean;
    placeholder: string;
    searchPlaceholder: string;
    value: any;
    selectedItem: any;
    valueChange: EventEmitter<any[]>;
    applyFilter: EventEmitter<any>;
    searchText: EventEmitter<string>;
    resetSelectedData: EventEmitter<any>;
    restoreSelectedData: EventEmitter<any[]>;
    dropdownOption: boolean;
    positionReset: boolean;
    getLeft: number;
    getTop: number;
    getWidth: number;
    maxWidth: number;
    activeDropdown: boolean;
    items: any[];
    previousItems: any[];
    itemsDisplayedList: any[];
    name: string;
    filterApplied: boolean;
    searchKey: any;
    timer: any;
    tempSelectedData: any;
    private optionList;
    set content(content: ElementRef);
    constructor(multiSelectService: MultiSelectService);
    /**
     *
     * @param index - Represents the index of the value to be removed
     */
    removeValue(index: number): void;
    resetState(type?: any): void;
    ngOnChanges(changes: SimpleChanges): void;
    ngAfterViewInit(): void;
    set CheckBoxVal(val: any[]);
    search(event: any): void;
    writeValue(value: any[]): void;
    /**
     *
     * @param obj - Represents the object which is added to the value list
     */
    addValue(obj: {
        key: string;
        value: any;
    }): void;
    /**
     *
     * @param value - Represents the value to be removed from the value list
     */
    removeValueFromCheckbox(value: any): void;
    openDropdown(event: any): void;
    /**
     *
     * @param applyFilter - Determines whether filter is applied or not
     */
    closeDropdown(applyFilter: boolean): void;
    resetToLastState(): void;
    checkChanges(): boolean;
    static ɵfac: i0.ɵɵFactoryDeclaration<CsMultiselectComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<CsMultiselectComponent, "cs-multi-select", never, { "isRequired": { "alias": "isRequired"; "required": false; }; "dropdownLabel": { "alias": "dropdownLabel"; "required": false; }; "dropdownSubLabel": { "alias": "dropdownSubLabel"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; }; "value": { "alias": "value"; "required": false; }; "selectedItem": { "alias": "selectedItem"; "required": false; }; }, { "valueChange": "valueChange"; "applyFilter": "applyFilter"; "searchText": "searchText"; "resetSelectedData": "resetSelectedData"; "restoreSelectedData": "restoreSelectedData"; }, never, ["*"], false, never>;
}
