import type { TableVariants } from "@heroui/styles";
import type { ComponentPropsWithRef } from "react";
import React from "react";
import { Cell as CellPrimitive, Collection as CollectionPrimitive, Column as ColumnPrimitive, ColumnResizer as ColumnResizerPrimitive, ResizableTableContainer as ResizableTableContainerPrimitive, Row as RowPrimitive, TableBody as TableBodyPrimitive, TableHeader as TableHeaderPrimitive, TableLoadMoreItem as TableLoadMoreItemPrimitive, Table as TablePrimitive } from "react-aria-components";
interface TableRootProps extends ComponentPropsWithRef<"div">, TableVariants {
    className?: string;
    children?: React.ReactNode;
}
declare const TableRoot: React.ForwardRefExoticComponent<Omit<TableRootProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
interface TableScrollContainerProps extends ComponentPropsWithRef<"div"> {
}
declare const TableScrollContainer: React.ForwardRefExoticComponent<Omit<TableScrollContainerProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
interface TableContentProps extends Omit<ComponentPropsWithRef<typeof TablePrimitive>, "className"> {
    className?: string;
}
declare function TableContent({ className, ...props }: TableContentProps): import("react/jsx-runtime").JSX.Element;
interface TableHeaderProps<T extends object> extends ComponentPropsWithRef<typeof TableHeaderPrimitive<T>> {
}
declare function TableHeader<T extends object>({ className, ...props }: TableHeaderProps<T>): import("react/jsx-runtime").JSX.Element;
interface TableColumnProps extends ComponentPropsWithRef<typeof ColumnPrimitive> {
}
declare const TableColumn: React.ForwardRefExoticComponent<Omit<TableColumnProps, "ref"> & React.RefAttributes<HTMLTableCellElement>>;
interface TableBodyProps<T extends object> extends ComponentPropsWithRef<typeof TableBodyPrimitive<T>> {
}
declare function TableBody<T extends object>({ className, ...props }: TableBodyProps<T>): import("react/jsx-runtime").JSX.Element;
interface TableRowProps<T extends object> extends ComponentPropsWithRef<typeof RowPrimitive<T>> {
}
declare function TableRow<T extends object>({ className, ...props }: TableRowProps<T>): import("react/jsx-runtime").JSX.Element;
interface TableCellProps extends ComponentPropsWithRef<typeof CellPrimitive> {
}
declare const TableCell: React.ForwardRefExoticComponent<Omit<TableCellProps, "ref"> & React.RefAttributes<HTMLTableCellElement>>;
interface TableFooterProps extends ComponentPropsWithRef<"div"> {
    className?: string;
}
declare const TableFooter: React.ForwardRefExoticComponent<Omit<TableFooterProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
interface TableResizableContainerProps extends ComponentPropsWithRef<typeof ResizableTableContainerPrimitive> {
}
declare const TableResizableContainer: React.ForwardRefExoticComponent<Omit<TableResizableContainerProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
interface TableColumnResizerProps extends ComponentPropsWithRef<typeof ColumnResizerPrimitive> {
}
declare const TableColumnResizer: React.ForwardRefExoticComponent<Omit<TableColumnResizerProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
interface TableLoadMoreItemProps extends ComponentPropsWithRef<typeof TableLoadMoreItemPrimitive> {
}
declare const TableLoadMoreItem: React.ForwardRefExoticComponent<Omit<TableLoadMoreItemProps, "ref"> & React.RefAttributes<HTMLTableRowElement>>;
interface TableLoadMoreContentProps extends ComponentPropsWithRef<"div"> {
}
declare const TableLoadMoreContent: React.ForwardRefExoticComponent<Omit<TableLoadMoreContentProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
declare const TableCollection: typeof CollectionPrimitive;
export { TableRoot, TableScrollContainer, TableContent, TableHeader, TableColumn, TableColumnResizer, TableBody, TableRow, TableCell, TableFooter, TableCollection, TableLoadMoreItem, TableLoadMoreContent, TableResizableContainer, };
export type { TableRootProps, TableScrollContainerProps, TableContentProps, TableHeaderProps, TableColumnProps, TableColumnResizerProps, TableBodyProps, TableRowProps, TableCellProps, TableFooterProps, TableLoadMoreItemProps, TableLoadMoreContentProps, TableResizableContainerProps, };
