import { GridStatusBarAggregates } from '../models'; import * as i0 from "@angular/core"; export interface CellCoordinate { rowIndex: number; colField: string; } export interface CellRange { start: CellCoordinate; end: CellCoordinate; } export declare class GridSelectionService { readonly selectedRows: import("@angular/core").WritableSignal>; readonly cellRanges: import("@angular/core").WritableSignal; readonly activeCellRange: import("@angular/core").WritableSignal; readonly focusedCell: import("@angular/core").WritableSignal; readonly isDragging: import("@angular/core").WritableSignal; readonly selectionAggregates: import("@angular/core").WritableSignal; selectRow(rowId: unknown): void; deselectRow(rowId: unknown): void; toggleRow(rowId: unknown): void; selectAll(rowIds: unknown[]): void; deselectAll(): void; isRowSelected(rowId: unknown): boolean; startCellSelection(coord: CellCoordinate): void; extendCellSelection(coord: CellCoordinate): void; endCellSelection(): void; addCellRange(range: CellRange): void; clearCellSelection(): void; /** Simplistic check assuming contiguous field indices are managed externally if needed */ isCellSelected(rowIndex: number, colField: string): boolean; setFocusedCell(coord: CellCoordinate): void; moveFocus(direction: 'up' | 'down' | 'left' | 'right', maxRow: number, fields: string[]): void; updateSelectionAggregates>(data: T[], fields: string[]): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }