igniteui-webcomponents
Version:
Ignite UI for Web Components is a complete library of UI components, giving you the ability to build modern web applications using encapsulation and the concept of reusable components in a dependency-free approach.
26 lines (25 loc) • 926 B
TypeScript
import type { ReactiveController } from 'lit';
import type { ComboHost, ComboValue, Item, Keys } from '../types.js';
export declare class SelectionController<T extends object> implements ReactiveController {
protected host: ComboHost<T>;
private _selected;
get data(): T[];
resetSearchTerm(): void;
getValue(items: T[], key: Keys<T>): ComboValue<T>[];
private handleChange;
private getItemsByValueKey;
private selectValueKeys;
private deselectValueKeys;
private selectObjects;
private deselectObjects;
private selectAll;
private deselectAll;
select(items?: Item<T>[], emit?: boolean): Promise<void>;
deselect(items?: Item<T>[], emit?: boolean): Promise<void>;
get selected(): Set<T>;
changeSelection(index: number): void;
selectByIndex(index: number): void;
constructor(host: ComboHost<T>);
hostConnected(): void;
hostDisconnected(): void;
}