import { ComponentPropsWithoutRef } from 'react';
import { Table as TanstackTable } from '@tanstack/react-table';
import { ColumnDef } from '../../types';
import { DataTableProps, DataTableRowData } from '../DataTable';
/**
 * Props for the default/configured table footer rows
 * @extends TanstackTable<T>
 * @extends ColumnDef<T>[]
 */
export type DefaultTableFooterRowsProps<T extends DataTableRowData> = {
    table: TanstackTable<T>;
    columns: ColumnDef<T>[];
};
/**
 * Props for the custom table footer rows
 * @extends DataTableProps<T>
 */
export type CustomTableFooterRowsProps<T extends DataTableRowData> = {
    columnCount: number;
    customFooter: DataTableProps<T>["customFooter"];
    table: TanstackTable<T>;
};
/**
 * Props for the DataTableFooter component
 * @extends ComponentPropsWithoutRef<"div">
 */
export type DataTableFooterProps<T extends DataTableRowData> = {
    /**
     * The table instance from @tanstack/react-table to render
     */
    table: TanstackTable<T>;
    /**
     * The columns of the table
     */
    columns: ColumnDef<T>[];
    /**
     * The custom footer of the table
     */
    customFooter?: DataTableProps<T>["customFooter"];
} & ComponentPropsWithoutRef<"div">;
/**
 * Data table footer, which can be either a configured or custom footer
 * @param props - The props for the DataTableFooter component
 * @param props.table - The table instance from @tanstack/react-table to render
 * @param props.customFooter - The custom footer of the table
 * @param props.columns - The columns of the table
 */
export declare function DataTableFooter<T extends DataTableRowData>({ table, customFooter, columns, ...rest }: DataTableFooterProps<T>): import("react/jsx-runtime").JSX.Element;
