import type { ColumnSizingState, ColumnSizingInfoState, ColumnOrderState, PaginationState, RowSelectionState, SortingState, VisibilityState } from '@tanstack/table-core'; import type { DataTableColumn } from './data-table-types.js'; import type { Snippet } from 'svelte'; import type { Row } from '@tanstack/table-core'; /** * Build TanStack columns from configuration */ export declare function buildColumns(columnConfig: DataTableColumn[], enableSelection: boolean, rowActionsSnippet: Snippet<[{ row: Row; }]> | null, hasRowActions: boolean): any[]; interface TableSetupOptions { enableSelection: boolean; enablePagination: boolean; manualPagination?: boolean; manualSorting?: boolean; pageCount?: number; getRowCount?: () => number | undefined; getData?: () => TData[]; getColumns?: () => any[]; getRowSelection: () => RowSelectionState; getColumnVisibility: () => VisibilityState; getSorting: () => SortingState; getPagination: () => PaginationState; getColumnSizing: () => ColumnSizingState; getColumnSizingInfo: () => ColumnSizingInfoState; getColumnOrder: () => ColumnOrderState; setRowSelection: (value: RowSelectionState) => void; setColumnVisibility: (value: VisibilityState) => void; setSorting: (value: SortingState) => void; setPagination: (value: PaginationState) => void; setColumnSizing: (value: ColumnSizingState) => void; setColumnSizingInfo: (value: ColumnSizingInfoState) => void; setColumnOrder: (value: ColumnOrderState) => void; } /** * Create the TanStack table instance with all configuration */ export declare function setupTable(options: TableSetupOptions): import("@tanstack/table-core").Table; export {};