import * as react_jsx_runtime from 'react/jsx-runtime';
import { ComponentPropsWithRef } from 'react';
import { VariantProps as VariantPropsInternal } from './variants.js';

declare const table: (props?: ({
    variant?: "modern" | "minimal" | "elegant" | "retro" | "classic" | undefined;
} & {
    className?: string;
}) | undefined) => string;

type TableVariantProps = VariantPropsInternal<typeof table>['variant'];
interface TableProps extends ComponentPropsWithRef<'table'> {
    variant?: TableVariantProps;
}
declare function TableRoot({ className, variant, ref, ...props }: TableProps): react_jsx_runtime.JSX.Element;
declare function TableHeader({ className, ref, ...props }: ComponentPropsWithRef<'thead'>): react_jsx_runtime.JSX.Element;
declare function TableBody({ className, ref, ...props }: ComponentPropsWithRef<'tbody'>): react_jsx_runtime.JSX.Element;
declare function TableFooter({ className, ref, ...props }: ComponentPropsWithRef<'tfoot'>): react_jsx_runtime.JSX.Element;
declare function TableRow({ className, ref, ...props }: ComponentPropsWithRef<'tr'>): react_jsx_runtime.JSX.Element;
declare function TableHead({ className, ref, ...props }: ComponentPropsWithRef<'th'>): react_jsx_runtime.JSX.Element;
declare function TableCell({ className, ref, ...props }: ComponentPropsWithRef<'td'>): react_jsx_runtime.JSX.Element;
declare const Table: typeof TableRoot & {
    Header: typeof TableHeader;
    Body: typeof TableBody;
    Footer: typeof TableFooter;
    Row: typeof TableRow;
    Head: typeof TableHead;
    Cell: typeof TableCell;
};

export { Table, type TableProps, type TableVariantProps };
