import * as React from 'react';
import { TbodyProps } from '@patternfly/react-table';
import { EitherNotBoth } from '../../types/typeHelpers';
import TableBase from './TableBase';
import { ControlledSortProps } from './useTableColumnSort';
type ControlledPaginationProps = {
    page?: number;
    pageSize?: number;
    onPageChange?: (page: number) => void;
    onPageSizeChange?: (pageSize: number, page: number) => void;
};
type TableProps<DataType> = Omit<React.ComponentProps<typeof TableBase<DataType>>, 'itemCount' | 'onPerPageSelect' | 'onSetPage' | 'page' | 'perPage'> & EitherNotBoth<{
    disableRowRenderSupport?: boolean;
}, {
    tbodyProps?: TbodyProps & {
        ref?: React.Ref<HTMLTableSectionElement>;
    };
}> & Partial<ControlledSortProps> & Partial<ControlledPaginationProps>;
declare const Table: <T>({ data: allData, columns, subColumns, enablePagination, defaultSortColumn, truncateRenderingAt, sortIndex, sortDirection, onSortIndexChange, onSortDirectionChange, sortField, onSortFieldChange, page: controlledPage, pageSize: controlledPageSize, onPageChange, onPageSizeChange, ...props }: TableProps<T>) => React.ReactElement;
export default Table;
//# sourceMappingURL=Table.d.ts.map