import { ReactElement, ReactNode, RefAttributes } from 'react';
import { TableFooterProps } from './TableFooter';
import { TableHeaderProps } from './TableHeader';
import { TableProps, TableRowData } from './Table.types';
export type { TableCellOverflow, TableCellClassName, TableCardsStyleSettings, TableColumnDefinition, TableExpandedRowAnimation, TableHorizontalAlign, TableProps, TableResponsiveBreakpoint, TableRowAnimationProps, TableRowId, TableRowClassName, TableRowSelectable, TableStickyReference, TableStickyColumns, TableSortDirection, TableVerticalAlign, TableViewType, } from './Table.types';
export { default as useTableSelection } from './selection/useTableSelection';
export type { UseTableSelectionOptions, UseTableSelectionReturn } from './selection/useTableSelection';
export declare const TableBody: import('react').ForwardRefExoticComponent<import('./Table.types').TableHtmlAttributes & {
    children?: ReactNode;
    maxHeight?: number | string;
    onScrollBottom?: () => void;
    scrollBottomOffset?: number;
} & RefAttributes<import('./TableBody').TableBodyHandle>>;
export type { TableBodyHandle, TableBodyProps } from './TableBody';
export declare const TableHeader: <RowType extends TableRowData = TableRowData>(props: TableHeaderProps<RowType>) => import("react/jsx-runtime").JSX.Element | null;
export type { TableHeaderProps } from './TableHeader';
export declare const TableHeaderRow: ({ children }: import('./TableHeaderRow').TableHeaderRowProps) => import("react/jsx-runtime").JSX.Element | null;
export type { TableHeaderRowProps } from './TableHeaderRow';
export declare const TableHeaderColumn: <RowType extends TableRowData = TableRowData>(props: import('./TableHeaderColumn').TableHeaderColumnProps<RowType>) => import("react/jsx-runtime").JSX.Element | null;
export type { TableHeaderColumnProps } from './TableHeaderColumn';
export declare const TableFooter: (props: TableFooterProps) => import("react/jsx-runtime").JSX.Element | null;
export type { TableFooterProps } from './TableFooter';
export declare const TableColumn: (props: import('./TableColumn').TableColumnProps) => import("react/jsx-runtime").JSX.Element | null;
export type { TableColumnProps } from './TableColumn';
export declare const TableExpanderButton: (props: import('./TableExpanderButton').TableExpanderButtonProps) => import("react/jsx-runtime").JSX.Element;
export type { TableExpanderButtonProps } from './TableExpanderButton';
export declare const TableExpandAllGroupsButton: (props: import('./TableExpandAllGroupsButton').TableExpandAllGroupsButtonProps) => import("react/jsx-runtime").JSX.Element;
export type { TableExpandAllGroupsButtonProps } from './TableExpandAllGroupsButton';
export declare const TableRow: <RowType extends TableRowData = TableRowData>(props: import('./TableRow').TableRowProps<RowType>) => import("react/jsx-runtime").JSX.Element | null;
export type { TableRowProps } from './TableRow';
export declare const TableStickyRowButton: (props: import('./TableStickyRowButton').TableStickyRowButtonProps) => import("react/jsx-runtime").JSX.Element;
export type { TableStickyRowButtonProps } from './TableStickyRowButton';
export declare const TableSpacerRow: (props: import('./TableSpacerRow').TableSpacerRowProps) => import("react/jsx-runtime").JSX.Element | null;
export type { TableSpacerRowProps } from './TableSpacerRow';
export declare const TableExpandedRow: <RowType extends TableRowData = TableRowData>(props: import('./TableExpandedRow').TableExpandedRowProps<RowType>) => import("react/jsx-runtime").JSX.Element | null;
export type { TableExpandedRowProps } from './TableExpandedRow';
export declare const TableExpandedContentRow: (props: import('./TableExpandedContentRow').TableExpandedContentRowProps) => import("react/jsx-runtime").JSX.Element | null;
export type { TableExpandedContentRowProps } from './TableExpandedContentRow';
export declare const TableGroupRow: (props: import('./TableGroupRow').TableGroupRowProps) => import("react/jsx-runtime").JSX.Element | null;
export type { TableGroupRowProps } from './TableGroupRow';
export declare const TableGroupFooterRow: (props: import('./TableGroupFooterRow').TableGroupFooterRowProps) => import("react/jsx-runtime").JSX.Element | null;
export type { TableGroupFooterRowProps } from './TableGroupFooterRow';
export declare const TableBatchDropdown: ({ items, dropdownClassName, ...remainingProps }: import('./Table').TableBatchDropdownProps) => import("react/jsx-runtime").JSX.Element;
export declare const TableColumnFilter: (props: import('./Table').TableColumnFilterProps) => import("react/jsx-runtime").JSX.Element;
export declare const TableColumnsDropdown: (props: import('./Table').TableColumnsDropdownProps) => import("react/jsx-runtime").JSX.Element;
export type { TableBatchDropdownProps } from './render/header/TableBatchDropdown';
export type { TableColumnFilterProps } from './render/header/TableColumnFilter';
export type { TableColumnsDropdownItem, TableColumnsDropdownProps } from './settings/TableColumnsDropdown';
declare const Table: <RowType extends TableRowData>(props: TableProps<RowType> & RefAttributes<HTMLDivElement>) => ReactElement;
export default Table;
