import { ColumnGlideLast, ObjectForExtending, CellsSelectionMode } from '../../types'; import { GridSelection, Rectangle } from '@glideappsfinal/glide-data-grid'; interface UseSelectionGeometryParams { columns: readonly ColumnGlideLast[]; selection: GridSelection; cellsSelectionMode: CellsSelectionMode; checkboxSelectedRowIndexes?: ReadonlySet; } export declare function useSelectionGeometry({ columns, selection, cellsSelectionMode, checkboxSelectedRowIndexes, }: UseSelectionGeometryParams): { hasAnyActiveSelection: boolean; firstDataColumnIndex: number; leadingServiceColumnsCount: number; activeRows: Set; activeColumns: Set; activeDataRange: Rectangle | undefined; isSingleCellCustomHighlight: boolean; outlineRange: Rectangle | undefined; isServiceColumn: (colInd: number) => boolean; isActiveRow: (_rowInd: number) => boolean; isCheckboxSelectedRow: (rowInd: number) => boolean; isActiveDataCell: (_colInd: number, _rowInd: number) => boolean; isActiveHeaderColumn: (_colInd: number) => boolean; } | { hasAnyActiveSelection: true; firstDataColumnIndex: number; leadingServiceColumnsCount: number; activeRows: ReadonlySet; activeColumns: ReadonlySet; activeDataRange: Rectangle; isSingleCellCustomHighlight: boolean; outlineRange: Rectangle | undefined; isServiceColumn: (colInd: number) => boolean; isActiveRow: (rowInd: number) => boolean; isCheckboxSelectedRow: (rowInd: number) => boolean; isActiveDataCell: (colInd: number, rowInd: number) => boolean; isActiveHeaderColumn: (colInd: number) => boolean; }; export {};