import { Subject } from 'rxjs'; import { SelectionChange } from '@angular/cdk/collections'; import { IGridDataEntry, ISelectionDiff } from '../models'; /** * @internal * @ignore */ export declare class SelectionManager { private _emitChanges; get selected(): T[]; get selectionSnapshot(): T[]; get difference(): ISelectionDiff; set disableSelectionByEntry(disableFunc: (entry: T) => null | string); get disableSelectionByEntry(): (entry: T) => null | string; changed$: Subject>; private _hasValue$; hasValue$: import("rxjs").Observable; private _selection; private _indeterminate; private _selectionSnapshot; private _indeterminateSnapshot; private _deselectedToEmit; private _selectedToEmit; private _indeterminateToEmit; private _disableSelectionByEntry; constructor(initiallySelectedValues?: T[], _emitChanges?: boolean); select: (...values: T[]) => void; deselect: (...values: T[]) => void; setIndeterminate: (...values: T[]) => void; toggle(value: T): void; clear(): void; isSelected(value: T): boolean; isIndeterminate(value: T): boolean; isEmpty(): boolean; hasValue(): boolean; snapshot(): void; destroy(): void; private _updateState; private _emitChangeEvent; private _markSelected; private _unmarkSelected; private _markIndeterminate; }