ag-charts-community
Version:
Advanced Charting / Charts supporting Javascript / Typescript / React / Angular / Vue
29 lines (28 loc) • 1.08 kB
TypeScript
import type { DataChangeDescription } from './dataChangeDescription';
/**
* Per-series selection state backed by a `Uint8Array` indexed by datum index.
*
* The `Uint8Array` is the sole mutable selection state — there is no secondary
* structure to keep in sync. Series identity scoping is managed by `DataSet`'s
* `selections: Map<string, DataSetSelection>`.
*/
export declare class DataSetSelection {
private selection;
private count;
constructor(length: number);
select(datumIndex: number): number;
deselect(datumIndex: number): number;
toggle(datumIndex: number): number;
isSelected(datumIndex: number): boolean;
isNotSelected(): boolean;
isAllSelected(): boolean;
selectRange(startIndex: number, endIndex: number): number;
deselectRange(startIndex: number, endIndex: number): number;
private countRange;
clear(): void;
applyDataChange(desc: DataChangeDescription): void;
getLength(): number;
getSelectedCount(): number;
/** Direct access for the render loop. */
getSelection(): Uint8Array;
}