import { default as React, RefObject } from 'react';
import { RowConfig, ColumnConfig, EmptyState } from '../../../../shared/types/table';
interface TableBodyProps<T = unknown> {
    rows: RowConfig<T>[];
    columns: ColumnConfig<T>[];
    /** Anchos de `<th>` medidos en `TableContent` (ResizeObserver); no es estado reactivo. */
    columnWidthsRef?: RefObject<Map<string, number>>;
    loading?: boolean;
    empty?: EmptyState;
    selectedIds?: (string | number)[];
    expandable?: boolean;
    showSelection?: boolean;
    showExpand?: boolean;
    stickyCheckbox?: boolean;
    stickyActions?: boolean;
    onRowClick?: (row: RowConfig<T>) => void;
    onRowExpand?: (row: RowConfig<T>) => void;
    onRowSelect?: (row: RowConfig<T>) => void;
    onCellFocus?: (rowId: string | number, columnId: string) => void;
    isCellFocused?: (rowId: string | number, columnId: string) => boolean;
    onCellChange?: (rowId: string | number, columnId: string, value: unknown) => void;
    hasColumnMaxWidthAuto?: boolean;
    isRowSelectionDisabled?: (row: RowConfig<T>) => boolean;
}
export declare const TableBody: <T>(props: TableBodyProps<T>) => React.ReactElement | null;
export {};
//# sourceMappingURL=TableBody.d.ts.map