import { type RowData, type TableOptions } from "@tanstack/table-core"; /** * Merges objects while preserving property getters for lazy evaluation. * Properties are defined as getters that look up values from sources in * reverse order at access time. This is critical: it means reading a * property from the merged result doesn't happen until the property is * actually accessed, not when mergeObjects is called. */ export declare function mergeObjects(...sources: any): any; /** * Creates a reactive TanStack Table for Svelte 5. * * The reactivity works through mergeObjects' lazy getters: * - $effect.pre calls table.setOptions() with a merged object * - The merged object has lazy getters for `data`, `columns`, `state`, etc. * - TanStack stores this object but doesn't deep-read all properties immediately * - When getRowModel() is called (in $derived), TanStack reads `data` and `columns` * through the lazy getters, which read the reactive $state/$derived values * - onStateChange fires when TanStack mutates its own state → bumps version * - version is read by getRowModel/getHeaderGroups → $derived re-evaluates */ export declare function createSvelteTable(options: TableOptions): { getRowModel: () => import("@tanstack/table-core").RowModel; getHeaderGroups: () => import("@tanstack/table-core").HeaderGroup[]; getColumn: (id: string) => import("@tanstack/table-core").Column | undefined; };