/** * Copyright © INOVUA TRADING. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ import { TypeDataGridProps, TypeComputedProps, TypeCellProps, TypeGetColumnByParam, TypeCellSelection, CellProps } from '../../types'; import { MutableRefObject, Dispatch, SetStateAction } from 'react'; export declare const useCellSelection: (props: TypeDataGridProps, { rowSelectionEnabled, hasRowNavigation, listenOnCellEnter, }: { listenOnCellEnter: boolean; rowSelectionEnabled: boolean; hasRowNavigation: boolean; }, computedPropsRef: MutableRefObject) => { computedActiveCell: [number, number] | null | undefined; getCellSelectionIdKey: (rowIndex: number, columnIndex: number) => string | number; getCellSelectionKey?: ((cellProps: number | TypeCellProps | string, col: TypeGetColumnByParam) => string | number) | undefined; cellDragStartRowIndex: number | null; setCellDragStartRowIndex: Dispatch>; setActiveCell: (activeCell: [number, number] | null) => void; incrementActiveCell: (direction: [number, number]) => void; computedCellSelection: TypeCellSelection; setCellSelection: (cellSelection: TypeCellSelection) => void; cellSelectionEnabled: boolean; cellMultiSelectionEnabled: boolean; cellNavigationEnabled: boolean; computedCellBulkUpdateMouseDown: (event: MouseEvent, cellProps: CellProps) => void; bulkUpdateMouseDown: boolean; computedCellBulkUpdateMouseUp: (event: MouseEvent) => void; onCellSelectionDraggerMouseDown: ((event: any, { columnIndex, rowIndex }: { columnIndex: number; rowIndex: number; }, selectionFixedCell?: [number, number] | null) => void) | null; toggleActiveCellSelection: (fakeEvent?: { metaKey: boolean; ctrlKey: boolean; shiftKey: boolean; }) => void; getCellSelectionBetween: (start?: [number, number], end?: [number, number]) => { [key: string]: boolean; }; onCellEnter: ((event: any, { columnIndex, rowIndex }: { columnIndex: number; rowIndex: number; }) => void) | null; };