import { DataTableProps } from "./types.js";
import * as react_jsx_runtime285 from "react/jsx-runtime";

//#region src/react/table/data-table.d.ts

/**
 * Production-ready data table with automatic data fetching and state management
 *
 * Features:
 *  - Automatic column generation from data structure
 *  - Integrated with useAnalyticsQuery for data fetching
 *  - Built-in loading, error, and empty states
 *  - Dynamic filtering, sorting and pagination
 *  - Column visibility controls
 *  - Responsive design
 *  - Supports opinionated mode (auto columns) and full-control mode (`children(table)`)
 *
 * @param props - Props for the DataTable component
 * @param props.queryKey - The query key to fetch the data
 * @param props.parameters - The parameters to pass to the query. Required - use `{}` if none.
 * @param props.filterColumn - The column to filter by
 * @param props.filterPlaceholder - The placeholder for the filter input
 * @param props.children - Optional children for full control mode
 * @returns - The rendered data table component
 *
 * @example
 * // Opinionated mode
 * <DataTable
 *  queryKey="users-list"
 *  parameters={{ status: "active" }}
 *  filterColumn="email"
 *  filterPlaceholder="Filter by email..."
 * />
 * @example
 * // full control mode
 * <DataTable queryKey="users-list" parameters={{ status: "active" }}>
 *   {(table) => (
 *     <div>
 *       <h2>Custom Table UI</h2>
 *       {table.getRowModel().rows.map(row => (
 *         <div key={row.id}>{row.original.name}</div>
 *       ))}
 *     </div>
 *   )}
 * </DataTable>
 */
declare function DataTable(props: DataTableProps): react_jsx_runtime285.JSX.Element;
//#endregion
export { DataTable };
//# sourceMappingURL=data-table.d.ts.map