import { Table, tableTag } from '@ni/nimble-components/dist/esm/table';
import type { TableActionMenuToggleEventDetail, TableRowExpansionToggleEventDetail, TableColumnConfigurationChangeEventDetail, TableRowSelectionEventDetail, TableRecord, TableSetRecordHierarchyOptions } from '@ni/nimble-components/dist/esm/table/types';
import type { RefAttributes, RefObject } from 'react';
import { type EventName } from '../utilities/react-wrapper';
export { tableTag };
export { type Table, type TableRecord, type TableSetRecordHierarchyOptions };
export declare const NimbleTable: import("@lit/react").ReactWebComponent
, {
onActionMenuBeforeToggle: EventName;
onActionMenuToggle: EventName;
onSelectionChange: EventName;
onColumnConfigurationChange: EventName;
onRowExpandToggle: EventName;
}>;
export interface TableActionMenuBeforeToggleEvent extends CustomEvent {
target: Table;
}
export interface TableActionMenuToggleEvent extends CustomEvent {
target: Table;
}
export interface TableSelectionChangeEvent extends CustomEvent {
target: Table;
}
export interface TableColumnConfigurationChangeEvent extends CustomEvent {
target: Table;
}
export interface TableRowExpandToggleEvent extends CustomEvent {
target: Table;
}
/**
* Helper to assign Table refs with generics to ref bindings
* See: https://github.com/ni/nimble/issues/2784
* @param tableRef A ref to a table created with `useRef`
* @returns A ref type compatible with normal `ref` bindings
*/
export declare const fromTableRef: (tableRef: RefObject | null>) => RefAttributes