import { ListItem, OperateOnOneItemFn } from "./types"; /** @immutable */ export declare class SelectionModel { private selected; private readonly singleSelectionMode; /** @immutable */ constructor(initialSelected: ListItem[], singleSelectionMode: boolean); /** @immutable */ clearAllSelections: () => SelectionModel; /** @immutable */ toggleSelectionFor: (selectedItem: ListItem, onSelect: OperateOnOneItemFn, onUnselect: OperateOnOneItemFn) => SelectionModel; /** * @immutable * https://stackoverflow.com/a/20070691/2085356 */ getSelection: () => ListItem[]; isItemSelected: (query: ListItem) => boolean; toString: () => string; }