import { type ReactNode } from 'react'; /** Represents the type of row selection allowed within a table. */ export type RowSelectionMode = 'single' | 'multiple' | 'none'; export interface TableState { sortLabelId: string; rowSelectionMode: RowSelectionMode; areAllRowsSelected?: boolean; areSomeRowsSelected?: boolean; onAllRowsSelectionToggle?: (value?: boolean) => void; /** The selection state that will be applied to the next focused row. */ pendingRowSelectionState?: boolean; setPendingRowSelectionState: (value: boolean | undefined) => void; } export declare function TableStateProvider({ children, rowSelectionMode, areAllRowsSelected, areSomeRowsSelected, onAllRowsSelectionToggle, }: { children: ReactNode; rowSelectionMode: RowSelectionMode; areAllRowsSelected?: boolean; areSomeRowsSelected?: boolean; onAllRowsSelectionToggle?: (value?: boolean) => void; }): import("react/jsx-runtime").JSX.Element; export declare function useTableState(): TableState; //# sourceMappingURL=table-state.d.ts.map