/// export interface IDataSelectItemComponentProps { selected: boolean; item: T; } export interface IDataListConfig { items: T[]; itemKey(item: T): string; } export interface IDataSource { items: T[]; selectedKeys: Set; itemKey: (item: T) => string; readonly selections: T[]; readonly selectableKeys: Set; readonly allSelected: boolean; isSelected(item: T): boolean; selectOnly(item: T): void; selectAll(): void; unselectAll(): void; toggleSelectAll(): void; select(item: T): void; unselect(item: T): void; toggleSelect(item: T): void; onInvoke(e: React.MouseEvent, item: T): void; onSelect(item: T): void; onContextMenu(item: T): void; }