import React from 'react'; import { ListItem, FilterOptions } from '../../types'; export interface TableColumn { key: string; label: string; sortable?: boolean; filterable?: boolean; width?: string | number; render?: (value: any, item: ListItem) => React.ReactNode; } export interface TableAction { key: string; label: string; icon?: React.ReactNode; color?: string; onClick: (item: ListItem) => void; show?: (item: ListItem) => boolean; } export interface DataTableProps { data: ListItem[]; columns: TableColumn[]; loading?: boolean; error?: string | null; title?: string; total?: number; page?: number; pageSize?: number; onPageChange?: (page: number) => void; onAdd?: () => void; onEdit?: (item: ListItem) => void; onDelete?: (item: ListItem) => Promise; onRefresh?: () => void; customActions?: TableAction[]; searchable?: boolean; filterable?: boolean; filters?: FilterOptions; onFiltersChange?: (filters: FilterOptions) => void; withBorder?: boolean; withColumnBorders?: boolean; striped?: boolean; highlightOnHover?: boolean; emptyMessage?: string; } declare const DataTable: React.FC; export default DataTable;