import type { Table } from "@tanstack/react-table";
import type { CommandClick, ContextInfo, ContextMenuItem, PaginationConfig } from "../../grid-component/type";
import React from "react";
import type { Virtualizer } from "@tanstack/react-virtual";
import type { Column } from "@tanstack/react-table";
type Props<T> = {
    prefix: string;
    id: string;
    tableContainerRef: React.RefObject<HTMLDivElement>;
    height: number;
    minHeight?: number;
    table: Table<T>;
    showHeader?: boolean;
    summary?: boolean;
    loading?: boolean;
    commandClick?: (args: Omit<CommandClick<T>, 'rows'>) => void;
    editAble?: boolean;
    contextMenuItems?: ContextMenuItem[];
    showEmptyText?: boolean;
    contextMenuClick?: any;
    contextMenuOpen?: (args: Omit<ContextInfo<T>, 'item'>) => void;
    contextMenuHidden?: string[] | ((args?: Omit<ContextInfo<T>, 'item' | 'event'>) => string[]);
    next?: () => void;
    dataSource: T[];
    pagination?: false | PaginationConfig;
    infiniteScroll?: boolean;
    onEndReachedThreshold?: number;
    columnVirtualizer: Virtualizer<HTMLDivElement, HTMLTableCellElement>;
    virtualPaddingLeft: number | undefined;
    virtualPaddingRight: number | undefined;
    fixedLeftColumns: Column<T, unknown>[];
    fixedRightColumns: Column<T, unknown>[];
};
declare const TableWrapper: <RecordType extends object>(props: Props<RecordType>) => JSX.Element;
export default TableWrapper;
