import { ElementRef, TemplateRef, EventEmitter } from '@angular/core'; import { ControlValueAccessor } from '@angular/forms'; import { FilterOptionsComponent } from './filter-options/filter-options.component'; import { MultiselectOption } from './models/multiselect-option.model'; export declare class NgxMultiselectComponent implements ControlValueAccessor { private elementRef; constructor(elementRef: ElementRef); private _multiple; private _theme; private _optionsCopy; private _isOpen; private operationPendingQueue; _selectedOptions: MultiselectOption | MultiselectOption[] | null; _defaultPropertyMap: Record; _defaultPropertyMapLength: number; _options: MultiselectOption[]; matMultiselect: boolean; bsMultiselect: boolean; disabled: boolean; color: string; groupedProperty: string; showHelperElements: boolean; showSearchFilter: boolean; showMaxLabels: number; _optionsTemplate: TemplateRef; get optionsTemplate(): TemplateRef; set optionsTemplate(template: TemplateRef); get theme(): string; set theme(val: string); set isOpen(value: boolean); get isOpen(): boolean; set propertyMap(val: Record); get multiple(): boolean; set multiple(value: boolean); set options(collection: MultiselectOption[]); onOpen: EventEmitter; onClose: EventEmitter; onItemClick: EventEmitter; onGroupItemClick: EventEmitter; onSelectAll: EventEmitter; onSelectNone: EventEmitter; onReset: EventEmitter; onClear: EventEmitter; onSearchChange: EventEmitter; filterOptions: FilterOptionsComponent; addOperation(item: any): void; popOperation(): MultiselectOption; finishPendingOperations(): void; isOperationPending(): number; private _initialValue; set initialValue(value: MultiselectOption | MultiselectOption[]); get initialValue(): MultiselectOption | MultiselectOption[]; onChange: (_: MultiselectOption | MultiselectOption[]) => void; onTouched: () => void; writeValue(value: MultiselectOption | MultiselectOption[]): void; private formatPrepopulatedValues; registerOnChange(fn: (value: MultiselectOption | MultiselectOption[] | null) => void): void; registerOnTouched(fn: () => MultiselectOption): void; setOptions(options: MultiselectOption[]): void; getOptions(): MultiselectOption[]; getOptionsCopy(): MultiselectOption[]; filterOptionsList: (val: string) => void; isValueSelected(): number | MultiselectOption | MultiselectOption[]; searchChange(val: string): void; close(): void; removeItem(collection: MultiselectOption[], item: MultiselectOption): void; toggleDropdown(): void; prepopulateOptions(selected: MultiselectOption | MultiselectOption[]): void; select(option: MultiselectOption): void; selectAll(): void; selectNone(): void; borderBottom(): { borderBottom: string; } | { borderBottom?: undefined; }; selectGroup(group: MultiselectOption): void; reset(): void; viewToModel(selected: MultiselectOption | MultiselectOption[] | null): void; clear(event: Event): void; setDisabledState(isDisabled: boolean): void; ngOnInit(): void; clickOutSide(event: HTMLElement): void; }