@controladad/ng-base
Version:
Everything you need for Angular
41 lines (40 loc) • 1.55 kB
TypeScript
import { DestroyRef } from '@angular/core';
import { ItemToId } from '../../core';
import { FormControlExtended } from '@al00x/forms';
export declare class SelectionModel<T> {
private _totalCount;
private _selectedCount;
private _multiple;
private _itemToId;
private _currentViewItems;
private _boundFormControl?;
private _blockBoundUpdate;
id: string;
indeterminate: import("@angular/core").WritableSignal<boolean>;
allSelected: import("@angular/core").WritableSignal<boolean>;
selected: import("@angular/core").WritableSignal<T[]>;
selectedIds: import("@angular/core").WritableSignal<{
[p: string]: boolean;
[p: number]: boolean;
}>;
selectedCount: import("@angular/core").Signal<number>;
hasSelection: import("@angular/core").Signal<boolean>;
constructor(itemsCount?: number, multiple?: boolean, initial?: T[], itemToId?: ItemToId<T>);
get isMultiple(): boolean;
select(...items: T[]): void;
deselect(...items: T[]): void;
toggle(...items: T[]): void;
selectAll(): void;
deselectAll(): void;
toggleAll(): void;
clear(): void;
set(...items: T[]): void;
isSelected(item: T): boolean;
setTotalCount(count: number): void;
setItems(items: T[], setTotalCount?: boolean): void;
setItemToIdFn(fn: ItemToId<T>): void;
setMultiple(value?: boolean): void;
bindFormControl(control: FormControlExtended | undefined, destroyRef?: DestroyRef): void;
private updateBoundedFormControl;
private calculateSelectionState;
}