import type { SelectionKeys, UseDataTableSelectionEvent } from '@primereact/types/headless/datatable'; import * as React from 'react'; export interface UseDataTableSelectionOptions { data: Record[]; rawTreeData?: Record[]; treeMode?: boolean; dataKey?: string | null; selectionMode?: 'single' | 'multiple' | null; metaKeySelection?: boolean; selectionKeys?: SelectionKeys; defaultSelectionKeys?: SelectionKeys; onSelectionChange?: (event: UseDataTableSelectionEvent) => void; } export declare function useDataTableSelection(options: UseDataTableSelectionOptions): { getRowKey: (item: Record, index: number) => string | number; state: { selectionKeys: SelectionKeys; }; exposes: { isSelected: (key: string | number) => boolean; isPartiallySelected: (key: string | number) => boolean; toggleSelection: (event: React.SyntheticEvent, key: string | number, mode: "checkbox" | "radio" | "single") => void; toggleAll: (event: React.SyntheticEvent) => void; isAllSelected: () => boolean; isSomeSelected: () => boolean; onRowClick: (event: React.MouseEvent, key: string | number) => void; }; };