import { ReactNode } from 'react';
import { useReactTable } from '@tanstack/react-table';
import { DataTableRef, ExpandableProps } from './table.tsx';
export interface TableContextProps {
    /**
     * The table instance created using useReactTable
     */
    table: ReturnType<typeof useReactTable>;
    /**
     * Properties related to expandable row functionality
     */
    expandable: ExpandableProps;
    /**
     * The height of each table row
     */
    rowHeight: number;
    /**
     * Forwarded ref object to access the DataTableRef interface
     */
    tableRef: DataTableRef;
}
export declare const TableContext: import('react').Context<TableContextProps>;
export declare function useTable(): TableContextProps;
export interface TableProviderProps extends TableContextProps {
    children: ReactNode;
}
export declare function TableProvider({ children, table, expandable, rowHeight, tableRef }: TableProviderProps): import("react/jsx-runtime").JSX.Element;
