UNPKG

@3mo/data-grid

Version:
44 lines 1.72 kB
import type { DataRecord } from './DataRecord.js'; export declare enum DataGridSelectability { Single = "single", Multiple = "multiple" } export declare enum DataGridSelectionBehaviorOnDataChange { /** Resets the selection of all data */ Reset = "reset", /** Tries to find the previously selected data to maintain the selection */ Maintain = "maintain", /** Prevents the selection from changing */ Prevent = "prevent" } interface SelectableComponent<TData> { selectability?: DataGridSelectability; readonly dataRecords: Array<DataRecord<TData>>; selectedData: Array<TData>; isDataSelectable?(data: TData): boolean; readonly selectionChange?: EventDispatcher<Array<TData>>; readonly selectionBehaviorOnDataChange?: DataGridSelectionBehaviorOnDataChange; readonly hasContextMenu?: boolean; } export declare class DataGridSelectionController<TData> { readonly host: SelectableComponent<TData>; private lastActiveSelection?; constructor(host: SelectableComponent<TData>); private get selectability(); get hasSelection(): boolean; private get data(); private get selectableData(); private get selectedData(); private set selectedData(value); private get previouslySelectedData(); isSelectable(data: TData): boolean; isSelected(data: TData): boolean; handleDataChange(behavior: DataGridSelectionBehaviorOnDataChange): void; selectPreviouslySelectedData(): void; setSelection(data: TData, selected: boolean, preservePreviousSelections?: boolean): void; selectAll(): void; deselectAll(): void; select(data: Array<TData>): void; } export {}; //# sourceMappingURL=DataGridSelectionController.d.ts.map