import type { DataTableConfig } from "@/config/data-table"; import type { FilterItemSchema } from "@/lib/parsers"; import type { ColumnSort, Row, RowData } from "@tanstack/react-table"; declare module "@tanstack/react-table" { // biome-ignore lint/correctness/noUnusedVariables: Interface type parameters required by @tanstack/react-table interface ColumnMeta { label?: string; placeholder?: string; variant?: FilterVariant; options?: Option[]; range?: [number, number]; unit?: string; icon?: React.FC>; } } export interface Option { label: string; value: string; count?: number; icon?: React.FC>; } export type FilterOperator = DataTableConfig["operators"][number]; export type FilterVariant = DataTableConfig["filterVariants"][number]; export type JoinOperator = DataTableConfig["joinOperators"][number]; export interface ExtendedColumnSort extends Omit { id: Extract; } export interface ExtendedColumnFilter extends FilterItemSchema { id: Extract; } export interface DataTableRowAction { row: Row; variant: "update" | "delete"; }