import * as React from 'react'; import type { TableSelectionMode } from './types.cjs'; interface TableSelection { selected: Set; toggleRow: (id: string, extend?: boolean) => void; isRowSelected: (id: string) => boolean; toggleAll: (allIds: string[]) => void; isAllSelected: (allIds: string[]) => boolean; isSomeSelected: (allIds: string[]) => boolean; } /** Controlled-or-uncontrolled row selection, including Shift-click ranges read from header DOM order. */ export declare function useTableSelection(tableRef: React.RefObject, prop: Set | string[] | undefined, defaultProp: Set | string[] | undefined, onChange: ((selected: string[]) => void) | undefined, selectionMode: TableSelectionMode): TableSelection; export {};