export interface DataTableColumn { /** * Unique key for the column */ key: string; /** * Header label to display */ header: string; /** * Optional className for the header cell */ headerClassName?: string; /** * Optional className for the data cells */ cellClassName?: string; /** * Render function for the cell content */ render: (row: T, rowIndex: number) => React.ReactNode; } export interface DataTableProps { /** * Array of column definitions */ columns: DataTableColumn[]; /** * Array of data rows */ data: T[]; /** * Optional function to get a unique key for each row * Defaults to using the row index */ getRowKey?: (row: T, index: number) => string | number; /** * Optional className for the table container */ className?: string; /** * Optional empty state message */ emptyMessage?: string; } /** * Reusable data table component * * @example * ```tsx * row.name * }, * { * key: 'status', * header: 'Status', * render: (row) => {row.status} * } * ]} * data={items} * getRowKey={(row) => row.id} * /> * ``` */ export declare function DataTable({ columns, data, getRowKey, className, emptyMessage, }: DataTableProps): import("react/jsx-runtime").JSX.Element; //# sourceMappingURL=data-table.d.ts.map