import { type ColumnDef, type RowSelectionState, type SortingState } from '@tanstack/react-table'; import { ComponentType, ReactNode } from 'react'; import { PaginationConfig } from '@/components/PaginationControls'; import { ActionMenuItem } from '@/components/RowActions'; export type DetailsPanelConfig = { content: ComponentType; titleAccessorKey?: keyof TData; titleAccessorFn?: (row: TData) => string | ReactNode; selectedRow?: TData; onRowSelect?: (row: TData) => void; onRowClose?: () => void; }; export type CheckboxSelectionConfig = { rowSelection: RowSelectionState; onRowSelectionChange: (state: RowSelectionState) => void; }; export type DataTableProps = { className?: string; data: TData[]; columns: ColumnDef[]; initialSorting?: SortingState; pagination?: PaginationConfig; rowActions?: (row: TData) => ActionMenuItem[]; detailsPanel?: DetailsPanelConfig; checkboxSelection?: CheckboxSelectionConfig; }; declare const DataTable: ({ className, data, columns, initialSorting, pagination, rowActions, detailsPanel, checkboxSelection }: Readonly>) => import("react/jsx-runtime").JSX.Element; export default DataTable; //# sourceMappingURL=DataTable.d.ts.map