@tanstack/table-core 8.5.20 → 8.5.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/build/cjs/columnHelper.js.map +1 -1
  2. package/build/cjs/core/cell.js.map +1 -1
  3. package/build/cjs/core/column.js.map +1 -1
  4. package/build/cjs/core/headers.js.map +1 -1
  5. package/build/cjs/core/row.js.map +1 -1
  6. package/build/cjs/core/table.js.map +1 -1
  7. package/build/cjs/features/ColumnSizing.js.map +1 -1
  8. package/build/cjs/features/Expanding.js.map +1 -1
  9. package/build/cjs/features/Filters.js.map +1 -1
  10. package/build/cjs/features/Grouping.js.map +1 -1
  11. package/build/cjs/features/Ordering.js.map +1 -1
  12. package/build/cjs/features/Pagination.js.map +1 -1
  13. package/build/cjs/features/Pinning.js.map +1 -1
  14. package/build/cjs/features/RowSelection.js.map +1 -1
  15. package/build/cjs/features/Sorting.js.map +1 -1
  16. package/build/cjs/features/Visibility.js.map +1 -1
  17. package/build/cjs/utils.js +4 -0
  18. package/build/cjs/utils.js.map +1 -1
  19. package/build/esm/index.js +4 -0
  20. package/build/esm/index.js.map +1 -1
  21. package/build/stats-html.html +1 -1
  22. package/build/stats-react.json +312 -312
  23. package/build/types/index.d.ts +199 -253
  24. package/build/umd/index.development.js +4 -0
  25. package/build/umd/index.development.js.map +1 -1
  26. package/build/umd/index.production.js.map +1 -1
  27. package/package.json +1 -1
  28. package/src/columnHelper.ts +20 -27
  29. package/src/core/cell.ts +3 -3
  30. package/src/core/column.ts +5 -2
  31. package/src/core/headers.ts +5 -5
  32. package/src/core/row.ts +1 -1
  33. package/src/core/table.ts +7 -6
  34. package/src/features/ColumnSizing.ts +8 -8
  35. package/src/features/Expanding.ts +4 -4
  36. package/src/features/Filters.ts +11 -17
  37. package/src/features/Grouping.ts +10 -16
  38. package/src/features/Ordering.ts +5 -5
  39. package/src/features/Pagination.ts +6 -6
  40. package/src/features/Pinning.ts +8 -8
  41. package/src/features/RowSelection.ts +4 -4
  42. package/src/features/Sorting.ts +9 -15
  43. package/src/features/Visibility.ts +7 -7
  44. package/src/types.ts +110 -133
  45. package/src/utils.ts +46 -59
@@ -9,17 +9,17 @@
9
9
  * @license MIT
10
10
  */
11
11
  declare type VisibilityState = Record<string, boolean>;
12
- interface VisibilityTableState {
12
+ declare type VisibilityTableState = {
13
13
  columnVisibility: VisibilityState;
14
- }
15
- interface VisibilityOptions {
14
+ };
15
+ declare type VisibilityOptions = {
16
16
  onColumnVisibilityChange?: OnChangeFn<VisibilityState>;
17
17
  enableHiding?: boolean;
18
- }
19
- interface VisibilityDefaultOptions {
18
+ };
19
+ declare type VisibilityDefaultOptions = {
20
20
  onColumnVisibilityChange: OnChangeFn<VisibilityState>;
21
- }
22
- interface VisibilityInstance<TData extends RowData> {
21
+ };
22
+ declare type VisibilityInstance<TData extends RowData> = {
23
23
  getVisibleFlatColumns: () => Column<TData, unknown>[];
24
24
  getVisibleLeafColumns: () => Column<TData, unknown>[];
25
25
  getLeftVisibleLeafColumns: () => Column<TData, unknown>[];
@@ -31,89 +31,89 @@ interface VisibilityInstance<TData extends RowData> {
31
31
  getIsAllColumnsVisible: () => boolean;
32
32
  getIsSomeColumnsVisible: () => boolean;
33
33
  getToggleAllColumnsVisibilityHandler: () => (event: unknown) => void;
34
- }
35
- interface VisibilityColumnDef {
34
+ };
35
+ declare type VisibilityColumnDef = {
36
36
  enableHiding?: boolean;
37
- }
38
- interface VisibilityRow<TData extends RowData> {
37
+ };
38
+ declare type VisibilityRow<TData extends RowData> = {
39
39
  _getAllVisibleCells: () => Cell<TData, unknown>[];
40
40
  getVisibleCells: () => Cell<TData, unknown>[];
41
- }
42
- interface VisibilityColumn {
41
+ };
42
+ declare type VisibilityColumn = {
43
43
  getCanHide: () => boolean;
44
44
  getIsVisible: () => boolean;
45
45
  toggleVisibility: (value?: boolean) => void;
46
46
  getToggleVisibilityHandler: () => (event: unknown) => void;
47
- }
47
+ };
48
48
  declare const Visibility: TableFeature;
49
49
 
50
- interface ColumnOrderTableState {
50
+ declare type ColumnOrderTableState = {
51
51
  columnOrder: ColumnOrderState;
52
- }
52
+ };
53
53
  declare type ColumnOrderState = string[];
54
- interface ColumnOrderOptions {
54
+ declare type ColumnOrderOptions = {
55
55
  onColumnOrderChange?: OnChangeFn<ColumnOrderState>;
56
- }
57
- interface ColumnOrderDefaultOptions {
56
+ };
57
+ declare type ColumnOrderDefaultOptions = {
58
58
  onColumnOrderChange: OnChangeFn<ColumnOrderState>;
59
- }
60
- interface ColumnOrderInstance<TData extends RowData> {
59
+ };
60
+ declare type ColumnOrderInstance<TData extends RowData> = {
61
61
  setColumnOrder: (updater: Updater<ColumnOrderState>) => void;
62
62
  resetColumnOrder: (defaultState?: boolean) => void;
63
63
  _getOrderColumnsFn: () => (columns: Column<TData, unknown>[]) => Column<TData, unknown>[];
64
- }
64
+ };
65
65
  declare const Ordering: TableFeature;
66
66
 
67
67
  declare type ColumnPinningPosition = false | 'left' | 'right';
68
- interface ColumnPinningState {
68
+ declare type ColumnPinningState = {
69
69
  left?: string[];
70
70
  right?: string[];
71
- }
72
- interface ColumnPinningTableState {
71
+ };
72
+ declare type ColumnPinningTableState = {
73
73
  columnPinning: ColumnPinningState;
74
- }
75
- interface ColumnPinningOptions {
74
+ };
75
+ declare type ColumnPinningOptions = {
76
76
  onColumnPinningChange?: OnChangeFn<ColumnPinningState>;
77
77
  enablePinning?: boolean;
78
- }
79
- interface ColumnPinningDefaultOptions {
78
+ };
79
+ declare type ColumnPinningDefaultOptions = {
80
80
  onColumnPinningChange: OnChangeFn<ColumnPinningState>;
81
- }
82
- interface ColumnPinningColumnDef {
81
+ };
82
+ declare type ColumnPinningColumnDef = {
83
83
  enablePinning?: boolean;
84
- }
85
- interface ColumnPinningColumn {
84
+ };
85
+ declare type ColumnPinningColumn = {
86
86
  getCanPin: () => boolean;
87
87
  getPinnedIndex: () => number;
88
88
  getIsPinned: () => ColumnPinningPosition;
89
89
  pin: (position: ColumnPinningPosition) => void;
90
- }
91
- interface ColumnPinningRow<TData extends RowData> {
90
+ };
91
+ declare type ColumnPinningRow<TData extends RowData> = {
92
92
  getLeftVisibleCells: () => Cell<TData, unknown>[];
93
93
  getCenterVisibleCells: () => Cell<TData, unknown>[];
94
94
  getRightVisibleCells: () => Cell<TData, unknown>[];
95
- }
96
- interface ColumnPinningInstance<TData extends RowData> {
95
+ };
96
+ declare type ColumnPinningInstance<TData extends RowData> = {
97
97
  setColumnPinning: (updater: Updater<ColumnPinningState>) => void;
98
98
  resetColumnPinning: (defaultState?: boolean) => void;
99
99
  getIsSomeColumnsPinned: (position?: ColumnPinningPosition) => boolean;
100
100
  getLeftLeafColumns: () => Column<TData, unknown>[];
101
101
  getRightLeafColumns: () => Column<TData, unknown>[];
102
102
  getCenterLeafColumns: () => Column<TData, unknown>[];
103
- }
103
+ };
104
104
  declare const Pinning: TableFeature;
105
105
 
106
- interface CoreHeaderGroup<TData extends RowData> {
106
+ declare type CoreHeaderGroup<TData extends RowData> = {
107
107
  id: string;
108
108
  depth: number;
109
109
  headers: Header<TData, unknown>[];
110
- }
111
- interface HeaderContext<TData, TValue> {
110
+ };
111
+ declare type HeaderContext<TData, TValue> = {
112
112
  table: Table<TData>;
113
113
  header: Header<TData, TValue>;
114
114
  column: Column<TData, TValue>;
115
- }
116
- interface CoreHeader<TData extends RowData, TValue> {
115
+ };
116
+ declare type CoreHeader<TData extends RowData, TValue> = {
117
117
  id: string;
118
118
  index: number;
119
119
  depth: number;
@@ -126,8 +126,8 @@ interface CoreHeader<TData extends RowData, TValue> {
126
126
  isPlaceholder: boolean;
127
127
  placeholderId?: string;
128
128
  getContext: () => HeaderContext<TData, TValue>;
129
- }
130
- interface HeadersInstance<TData extends RowData> {
129
+ };
130
+ declare type HeadersInstance<TData extends RowData> = {
131
131
  getHeaderGroups: () => HeaderGroup<TData>[];
132
132
  getLeftHeaderGroups: () => HeaderGroup<TData>[];
133
133
  getCenterHeaderGroups: () => HeaderGroup<TData>[];
@@ -144,7 +144,7 @@ interface HeadersInstance<TData extends RowData> {
144
144
  getLeftLeafHeaders: () => Header<TData, unknown>[];
145
145
  getCenterLeafHeaders: () => Header<TData, unknown>[];
146
146
  getRightLeafHeaders: () => Header<TData, unknown>[];
147
- }
147
+ };
148
148
  declare const Headers: TableFeature;
149
149
  declare function buildHeaderGroups<TData extends RowData>(allColumns: Column<TData, unknown>[], columnsToGroup: Column<TData, unknown>[], table: Table<TData>, headerFamily?: 'center' | 'left' | 'right'): HeaderGroup<TData>[];
150
150
 
@@ -161,35 +161,35 @@ declare const filterFns: {
161
161
  };
162
162
  declare type BuiltInFilterFn = keyof typeof filterFns;
163
163
 
164
- interface FiltersTableState {
164
+ declare type FiltersTableState = {
165
165
  columnFilters: ColumnFiltersState;
166
166
  globalFilter: any;
167
- }
167
+ };
168
168
  declare type ColumnFiltersState = ColumnFilter[];
169
- interface ColumnFilter {
169
+ declare type ColumnFilter = {
170
170
  id: string;
171
171
  value: unknown;
172
- }
173
- interface ResolvedColumnFilter<TData extends RowData> {
172
+ };
173
+ declare type ResolvedColumnFilter<TData extends RowData> = {
174
174
  id: string;
175
175
  resolvedValue: unknown;
176
176
  filterFn: FilterFn<TData>;
177
- }
178
- interface FilterFn<TData extends RowData> {
177
+ };
178
+ declare type FilterFn<TData extends RowData> = {
179
179
  (row: Row<TData>, columnId: string, filterValue: any, addMeta: (meta: FilterMeta) => void): boolean;
180
180
  resolveFilterValue?: TransformFilterValueFn<TData>;
181
181
  autoRemove?: ColumnFilterAutoRemoveTestFn<TData>;
182
- }
182
+ };
183
183
  declare type TransformFilterValueFn<TData extends RowData> = (value: any, column?: Column<TData, unknown>) => unknown;
184
184
  declare type ColumnFilterAutoRemoveTestFn<TData extends RowData> = (value: any, column?: Column<TData, unknown>) => boolean;
185
185
  declare type CustomFilterFns<TData extends RowData> = Record<string, FilterFn<TData>>;
186
186
  declare type FilterFnOption<TData extends RowData> = 'auto' | BuiltInFilterFn | keyof FilterFns | FilterFn<TData>;
187
- interface FiltersColumnDef<TData extends RowData> {
187
+ declare type FiltersColumnDef<TData extends RowData> = {
188
188
  filterFn?: FilterFnOption<TData>;
189
189
  enableColumnFilter?: boolean;
190
190
  enableGlobalFilter?: boolean;
191
- }
192
- interface FiltersColumn<TData extends RowData> {
191
+ };
192
+ declare type FiltersColumn<TData extends RowData> = {
193
193
  getAutoFilterFn: () => FilterFn<TData> | undefined;
194
194
  getFilterFn: () => FilterFn<TData> | undefined;
195
195
  setFilterValue: (updater: Updater<any>) => void;
@@ -204,12 +204,12 @@ interface FiltersColumn<TData extends RowData> {
204
204
  _getFacetedUniqueValues?: () => Map<any, number>;
205
205
  getFacetedMinMaxValues: () => undefined | [number, number];
206
206
  _getFacetedMinMaxValues?: () => undefined | [number, number];
207
- }
208
- interface FiltersRow<TData extends RowData> {
207
+ };
208
+ declare type FiltersRow<TData extends RowData> = {
209
209
  columnFilters: Record<string, boolean>;
210
210
  columnFiltersMeta: Record<string, FilterMeta>;
211
- }
212
- interface FiltersOptionsBase<TData extends RowData> {
211
+ };
212
+ declare type FiltersOptions<TData extends RowData> = {
213
213
  enableFilters?: boolean;
214
214
  manualFiltering?: boolean;
215
215
  filterFromLeafRows?: boolean;
@@ -223,15 +223,12 @@ interface FiltersOptionsBase<TData extends RowData> {
223
223
  getFacetedRowModel?: (table: Table<TData>, columnId: string) => () => RowModel<TData>;
224
224
  getFacetedUniqueValues?: (table: Table<TData>, columnId: string) => () => Map<any, number>;
225
225
  getFacetedMinMaxValues?: (table: Table<TData>, columnId: string) => () => undefined | [number, number];
226
- }
227
- declare type ResolvedFilterFns = keyof FilterFns extends never ? {
226
+ } & (keyof FilterFns extends never ? {
228
227
  filterFns?: Record<string, FilterFn<any>>;
229
228
  } : {
230
229
  filterFns: Record<keyof FilterFns, FilterFn<any>>;
231
- };
232
- interface FiltersOptions<TData extends RowData> extends FiltersOptionsBase<TData>, ResolvedFilterFns {
233
- }
234
- interface FiltersInstance<TData extends RowData> {
230
+ });
231
+ declare type FiltersInstance<TData extends RowData> = {
235
232
  setColumnFilters: (updater: Updater<ColumnFiltersState>) => void;
236
233
  resetColumnFilters: (defaultState?: boolean) => void;
237
234
  getPreFilteredRowModel: () => RowModel<TData>;
@@ -247,7 +244,7 @@ interface FiltersInstance<TData extends RowData> {
247
244
  _getGlobalFacetedUniqueValues?: () => Map<any, number>;
248
245
  getGlobalFacetedMinMaxValues: () => undefined | [number, number];
249
246
  _getGlobalFacetedMinMaxValues?: () => undefined | [number, number];
250
- }
247
+ };
251
248
  declare const Filters: TableFeature;
252
249
  declare function shouldAutoRemoveFilter<TData extends RowData>(filterFn?: FilterFn<TData>, value?: any, column?: Column<TData, unknown>): boolean;
253
250
 
@@ -263,28 +260,28 @@ declare const sortingFns: {
263
260
  declare type BuiltInSortingFn = keyof typeof sortingFns;
264
261
 
265
262
  declare type SortDirection = 'asc' | 'desc';
266
- interface ColumnSort {
263
+ declare type ColumnSort = {
267
264
  id: string;
268
265
  desc: boolean;
269
- }
266
+ };
270
267
  declare type SortingState = ColumnSort[];
271
- interface SortingTableState {
268
+ declare type SortingTableState = {
272
269
  sorting: SortingState;
273
- }
274
- interface SortingFn<TData extends RowData> {
270
+ };
271
+ declare type SortingFn<TData extends RowData> = {
275
272
  (rowA: Row<TData>, rowB: Row<TData>, columnId: string): number;
276
- }
273
+ };
277
274
  declare type CustomSortingFns<TData extends RowData> = Record<string, SortingFn<TData>>;
278
275
  declare type SortingFnOption<TData extends RowData> = 'auto' | keyof SortingFns | BuiltInSortingFn | SortingFn<TData>;
279
- interface SortingColumnDef<TData extends RowData> {
276
+ declare type SortingColumnDef<TData extends RowData> = {
280
277
  sortingFn?: SortingFnOption<TData>;
281
278
  sortDescFirst?: boolean;
282
279
  enableSorting?: boolean;
283
280
  enableMultiSort?: boolean;
284
281
  invertSorting?: boolean;
285
282
  sortUndefined?: false | -1 | 1;
286
- }
287
- interface SortingColumn<TData extends RowData> {
283
+ };
284
+ declare type SortingColumn<TData extends RowData> = {
288
285
  getAutoSortingFn: () => SortingFn<TData>;
289
286
  getAutoSortDir: () => SortDirection;
290
287
  getSortingFn: () => SortingFn<TData>;
@@ -297,8 +294,8 @@ interface SortingColumn<TData extends RowData> {
297
294
  clearSorting: () => void;
298
295
  toggleSorting: (desc?: boolean, isMulti?: boolean) => void;
299
296
  getToggleSortingHandler: () => undefined | ((event: unknown) => void);
300
- }
301
- interface SortingOptionsBase {
297
+ };
298
+ declare type SortingOptions<TData extends RowData> = {
302
299
  manualSorting?: boolean;
303
300
  onSortingChange?: OnChangeFn<SortingState>;
304
301
  enableSorting?: boolean;
@@ -309,21 +306,18 @@ interface SortingOptionsBase {
309
306
  getSortedRowModel?: (table: Table<any>) => () => RowModel<any>;
310
307
  maxMultiSortColCount?: number;
311
308
  isMultiSortEvent?: (e: unknown) => boolean;
312
- }
313
- declare type ResolvedSortingFns = keyof SortingFns extends never ? {
309
+ } & (keyof SortingFns extends never ? {
314
310
  sortingFns?: Record<string, SortingFn<any>>;
315
311
  } : {
316
312
  sortingFns: Record<keyof SortingFns, SortingFn<any>>;
317
- };
318
- interface SortingOptions<TData extends RowData> extends SortingOptionsBase, ResolvedSortingFns {
319
- }
320
- interface SortingInstance<TData extends RowData> {
313
+ });
314
+ declare type SortingInstance<TData extends RowData> = {
321
315
  setSorting: (updater: Updater<SortingState>) => void;
322
316
  resetSorting: (defaultState?: boolean) => void;
323
317
  getPreSortedRowModel: () => RowModel<TData>;
324
318
  getSortedRowModel: () => RowModel<TData>;
325
319
  _getSortedRowModel?: () => RowModel<TData>;
326
- }
320
+ };
327
321
  declare const Sorting: TableFeature;
328
322
 
329
323
  declare const aggregationFns: {
@@ -340,18 +334,18 @@ declare const aggregationFns: {
340
334
  declare type BuiltInAggregationFn = keyof typeof aggregationFns;
341
335
 
342
336
  declare type GroupingState = string[];
343
- interface GroupingTableState {
337
+ declare type GroupingTableState = {
344
338
  grouping: GroupingState;
345
- }
339
+ };
346
340
  declare type AggregationFn<TData extends RowData> = (columnId: string, leafRows: Row<TData>[], childRows: Row<TData>[]) => any;
347
341
  declare type CustomAggregationFns = Record<string, AggregationFn<any>>;
348
342
  declare type AggregationFnOption<TData extends RowData> = 'auto' | keyof AggregationFns | BuiltInAggregationFn | AggregationFn<TData>;
349
- interface GroupingColumnDef<TData extends RowData, TValue> {
343
+ declare type GroupingColumnDef<TData extends RowData, TValue> = {
350
344
  aggregationFn?: AggregationFnOption<TData>;
351
345
  aggregatedCell?: ColumnDefTemplate<ReturnType<Cell<TData, TValue>['getContext']>>;
352
346
  enableGrouping?: boolean;
353
- }
354
- interface GroupingColumn<TData extends RowData> {
347
+ };
348
+ declare type GroupingColumn<TData extends RowData> = {
355
349
  getCanGroup: () => boolean;
356
350
  getIsGrouped: () => boolean;
357
351
  getGroupedIndex: () => number;
@@ -359,59 +353,56 @@ interface GroupingColumn<TData extends RowData> {
359
353
  getToggleGroupingHandler: () => () => void;
360
354
  getAutoAggregationFn: () => AggregationFn<TData> | undefined;
361
355
  getAggregationFn: () => AggregationFn<TData> | undefined;
362
- }
363
- interface GroupingRow {
356
+ };
357
+ declare type GroupingRow = {
364
358
  groupingColumnId?: string;
365
359
  groupingValue?: unknown;
366
360
  getIsGrouped: () => boolean;
367
361
  _groupingValuesCache: Record<string, any>;
368
- }
369
- interface GroupingCell {
362
+ };
363
+ declare type GroupingCell = {
370
364
  getIsGrouped: () => boolean;
371
365
  getIsPlaceholder: () => boolean;
372
366
  getIsAggregated: () => boolean;
373
- }
374
- interface ColumnDefaultOptions {
367
+ };
368
+ declare type ColumnDefaultOptions = {
375
369
  onGroupingChange: OnChangeFn<GroupingState>;
376
370
  enableGrouping: boolean;
377
- }
378
- interface GroupingOptionsBase {
371
+ };
372
+ declare type GroupingOptions = {
379
373
  manualGrouping?: boolean;
380
374
  onGroupingChange?: OnChangeFn<GroupingState>;
381
375
  enableGrouping?: boolean;
382
376
  getGroupedRowModel?: (table: Table<any>) => () => RowModel<any>;
383
377
  groupedColumnMode?: false | 'reorder' | 'remove';
384
- }
385
- declare type ResolvedAggregationFns = keyof AggregationFns extends never ? {
378
+ } & (keyof AggregationFns extends never ? {
386
379
  aggregationFns?: Record<string, AggregationFn<any>>;
387
380
  } : {
388
381
  aggregationFns: Record<keyof AggregationFns, AggregationFn<any>>;
389
- };
390
- interface GroupingOptions extends GroupingOptionsBase, ResolvedAggregationFns {
391
- }
382
+ });
392
383
  declare type GroupingColumnMode = false | 'reorder' | 'remove';
393
- interface GroupingInstance<TData extends RowData> {
384
+ declare type GroupingInstance<TData extends RowData> = {
394
385
  setGrouping: (updater: Updater<GroupingState>) => void;
395
386
  resetGrouping: (defaultState?: boolean) => void;
396
387
  getPreGroupedRowModel: () => RowModel<TData>;
397
388
  getGroupedRowModel: () => RowModel<TData>;
398
389
  _getGroupedRowModel?: () => RowModel<TData>;
399
- }
390
+ };
400
391
  declare const Grouping: TableFeature;
401
392
  declare function orderColumns<TData extends RowData>(leafColumns: Column<TData, unknown>[], grouping: string[], groupedColumnMode?: GroupingColumnMode): Column<TData, unknown>[];
402
393
 
403
394
  declare type ExpandedStateList = Record<string, boolean>;
404
395
  declare type ExpandedState = true | Record<string, boolean>;
405
- interface ExpandedTableState {
396
+ declare type ExpandedTableState = {
406
397
  expanded: ExpandedState;
407
- }
408
- interface ExpandedRow {
398
+ };
399
+ declare type ExpandedRow = {
409
400
  toggleExpanded: (expanded?: boolean) => void;
410
401
  getIsExpanded: () => boolean;
411
402
  getCanExpand: () => boolean;
412
403
  getToggleExpandedHandler: () => () => void;
413
- }
414
- interface ExpandedOptions<TData extends RowData> {
404
+ };
405
+ declare type ExpandedOptions<TData extends RowData> = {
415
406
  manualExpanding?: boolean;
416
407
  onExpandedChange?: OnChangeFn<ExpandedState>;
417
408
  autoResetExpanded?: boolean;
@@ -420,8 +411,8 @@ interface ExpandedOptions<TData extends RowData> {
420
411
  getIsRowExpanded?: (row: Row<TData>) => boolean;
421
412
  getRowCanExpand?: (row: Row<TData>) => boolean;
422
413
  paginateExpandedRows?: boolean;
423
- }
424
- interface ExpandedInstance<TData extends RowData> {
414
+ };
415
+ declare type ExpandedInstance<TData extends RowData> = {
425
416
  _autoResetExpanded: () => void;
426
417
  setExpanded: (updater: Updater<ExpandedState>) => void;
427
418
  toggleAllRowsExpanded: (expanded?: boolean) => void;
@@ -434,35 +425,35 @@ interface ExpandedInstance<TData extends RowData> {
434
425
  getExpandedRowModel: () => RowModel<TData>;
435
426
  _getExpandedRowModel?: () => RowModel<TData>;
436
427
  getPreExpandedRowModel: () => RowModel<TData>;
437
- }
428
+ };
438
429
  declare const Expanding: TableFeature;
439
430
 
440
- interface ColumnSizingTableState {
431
+ declare type ColumnSizingTableState = {
441
432
  columnSizing: ColumnSizingState;
442
433
  columnSizingInfo: ColumnSizingInfoState;
443
- }
434
+ };
444
435
  declare type ColumnSizingState = Record<string, number>;
445
- interface ColumnSizingInfoState {
436
+ declare type ColumnSizingInfoState = {
446
437
  startOffset: null | number;
447
438
  startSize: null | number;
448
439
  deltaOffset: null | number;
449
440
  deltaPercentage: null | number;
450
441
  isResizingColumn: false | string;
451
442
  columnSizingStart: [string, number][];
452
- }
443
+ };
453
444
  declare type ColumnResizeMode = 'onChange' | 'onEnd';
454
- interface ColumnSizingOptions {
445
+ declare type ColumnSizingOptions = {
455
446
  enableColumnResizing?: boolean;
456
447
  columnResizeMode?: ColumnResizeMode;
457
448
  onColumnSizingChange?: OnChangeFn<ColumnSizingState>;
458
449
  onColumnSizingInfoChange?: OnChangeFn<ColumnSizingInfoState>;
459
- }
460
- interface ColumnSizingDefaultOptions {
450
+ };
451
+ declare type ColumnSizingDefaultOptions = {
461
452
  columnResizeMode: ColumnResizeMode;
462
453
  onColumnSizingChange: OnChangeFn<ColumnSizingState>;
463
454
  onColumnSizingInfoChange: OnChangeFn<ColumnSizingInfoState>;
464
- }
465
- interface ColumnSizingInstance {
455
+ };
456
+ declare type ColumnSizingInstance = {
466
457
  setColumnSizing: (updater: Updater<ColumnSizingState>) => void;
467
458
  setColumnSizingInfo: (updater: Updater<ColumnSizingInfoState>) => void;
468
459
  resetColumnSizing: (defaultState?: boolean) => void;
@@ -471,25 +462,25 @@ interface ColumnSizingInstance {
471
462
  getLeftTotalSize: () => number;
472
463
  getCenterTotalSize: () => number;
473
464
  getRightTotalSize: () => number;
474
- }
475
- interface ColumnSizingColumnDef {
465
+ };
466
+ declare type ColumnSizingColumnDef = {
476
467
  enableResizing?: boolean;
477
468
  size?: number;
478
469
  minSize?: number;
479
470
  maxSize?: number;
480
- }
481
- interface ColumnSizingColumn {
471
+ };
472
+ declare type ColumnSizingColumn = {
482
473
  getSize: () => number;
483
474
  getStart: (position?: ColumnPinningPosition) => number;
484
475
  getCanResize: () => boolean;
485
476
  getIsResizing: () => boolean;
486
477
  resetSize: () => void;
487
- }
488
- interface ColumnSizingHeader {
478
+ };
479
+ declare type ColumnSizingHeader = {
489
480
  getSize: () => number;
490
481
  getStart: (position?: ColumnPinningPosition) => number;
491
482
  getResizeHandler: () => (event: unknown) => void;
492
- }
483
+ };
493
484
  declare const defaultColumnSizing: {
494
485
  size: number;
495
486
  minSize: number;
@@ -498,27 +489,27 @@ declare const defaultColumnSizing: {
498
489
  declare const ColumnSizing: TableFeature;
499
490
  declare function passiveEventSupported(): boolean;
500
491
 
501
- interface PaginationState {
492
+ declare type PaginationState = {
502
493
  pageIndex: number;
503
494
  pageSize: number;
504
- }
505
- interface PaginationTableState {
495
+ };
496
+ declare type PaginationTableState = {
506
497
  pagination: PaginationState;
507
- }
508
- interface PaginationInitialTableState {
498
+ };
499
+ declare type PaginationInitialTableState = {
509
500
  pagination?: Partial<PaginationState>;
510
- }
511
- interface PaginationOptions {
501
+ };
502
+ declare type PaginationOptions = {
512
503
  pageCount?: number;
513
504
  manualPagination?: boolean;
514
505
  onPaginationChange?: OnChangeFn<PaginationState>;
515
506
  autoResetPageIndex?: boolean;
516
507
  getPaginationRowModel?: (table: Table<any>) => () => RowModel<any>;
517
- }
518
- interface PaginationDefaultOptions {
508
+ };
509
+ declare type PaginationDefaultOptions = {
519
510
  onPaginationChange: OnChangeFn<PaginationState>;
520
- }
521
- interface PaginationInstance<TData extends RowData> {
511
+ };
512
+ declare type PaginationInstance<TData extends RowData> = {
522
513
  _autoResetPageIndex: () => void;
523
514
  setPagination: (updater: Updater<PaginationState>) => void;
524
515
  resetPagination: (defaultState?: boolean) => void;
@@ -536,20 +527,20 @@ interface PaginationInstance<TData extends RowData> {
536
527
  getPaginationRowModel: () => RowModel<TData>;
537
528
  _getPaginationRowModel?: () => RowModel<TData>;
538
529
  getPageCount: () => number;
539
- }
530
+ };
540
531
  declare const Pagination: TableFeature;
541
532
 
542
533
  declare type RowSelectionState = Record<string, boolean>;
543
- interface RowSelectionTableState {
534
+ declare type RowSelectionTableState = {
544
535
  rowSelection: RowSelectionState;
545
- }
546
- interface RowSelectionOptions<TData extends RowData> {
536
+ };
537
+ declare type RowSelectionOptions<TData extends RowData> = {
547
538
  enableRowSelection?: boolean | ((row: Row<TData>) => boolean);
548
539
  enableMultiRowSelection?: boolean | ((row: Row<TData>) => boolean);
549
540
  enableSubRowSelection?: boolean | ((row: Row<TData>) => boolean);
550
541
  onRowSelectionChange?: OnChangeFn<RowSelectionState>;
551
- }
552
- interface RowSelectionRow {
542
+ };
543
+ declare type RowSelectionRow = {
553
544
  getIsSelected: () => boolean;
554
545
  getIsSomeSelected: () => boolean;
555
546
  getIsAllSubRowsSelected: () => boolean;
@@ -558,8 +549,8 @@ interface RowSelectionRow {
558
549
  getCanSelectSubRows: () => boolean;
559
550
  toggleSelected: (value?: boolean) => void;
560
551
  getToggleSelectedHandler: () => (event: unknown) => void;
561
- }
562
- interface RowSelectionInstance<TData extends RowData> {
552
+ };
553
+ declare type RowSelectionInstance<TData extends RowData> = {
563
554
  getToggleAllRowsSelectedHandler: () => (event: unknown) => void;
564
555
  getToggleAllPageRowsSelectedHandler: () => (event: unknown) => void;
565
556
  setRowSelection: (updater: Updater<RowSelectionState>) => void;
@@ -574,13 +565,13 @@ interface RowSelectionInstance<TData extends RowData> {
574
565
  getSelectedRowModel: () => RowModel<TData>;
575
566
  getFilteredSelectedRowModel: () => RowModel<TData>;
576
567
  getGroupedSelectedRowModel: () => RowModel<TData>;
577
- }
568
+ };
578
569
  declare const RowSelection: TableFeature;
579
570
  declare function selectRowsFn<TData extends RowData>(table: Table<TData>, rowModel: RowModel<TData>): RowModel<TData>;
580
571
  declare function isRowSelected<TData extends RowData>(row: Row<TData>, selection: Record<string, boolean>): boolean;
581
572
  declare function isSubRowSelected<TData extends RowData>(row: Row<TData>, selection: Record<string, boolean>, table: Table<TData>): boolean | 'some' | 'all';
582
573
 
583
- interface CoreRow<TData extends RowData> {
574
+ declare type CoreRow<TData extends RowData> = {
584
575
  id: string;
585
576
  index: number;
586
577
  original: TData;
@@ -595,28 +586,28 @@ interface CoreRow<TData extends RowData> {
595
586
  originalSubRows?: TData[];
596
587
  getAllCells: () => Cell<TData, unknown>[];
597
588
  _getAllCellsByColumnId: () => Record<string, Cell<TData, unknown>>;
598
- }
589
+ };
599
590
  declare const createRow: <TData extends unknown>(table: Table<TData>, id: string, original: TData, rowIndex: number, depth: number, subRows?: Row<TData>[] | undefined) => Row<TData>;
600
591
 
601
- interface CellContext<TData extends RowData, TValue> {
592
+ declare type CellContext<TData extends RowData, TValue> = {
602
593
  table: Table<TData>;
603
594
  column: Column<TData, TValue>;
604
595
  row: Row<TData>;
605
596
  cell: Cell<TData, TValue>;
606
597
  getValue: Getter<TValue>;
607
598
  renderValue: Getter<TValue | null>;
608
- }
609
- interface CoreCell<TData extends RowData, TValue> {
599
+ };
600
+ declare type CoreCell<TData extends RowData, TValue> = {
610
601
  id: string;
611
602
  getValue: CellContext<TData, TValue>['getValue'];
612
603
  renderValue: CellContext<TData, TValue>['renderValue'];
613
604
  row: Row<TData>;
614
605
  column: Column<TData, TValue>;
615
606
  getContext: () => CellContext<TData, TValue>;
616
- }
607
+ };
617
608
  declare function createCell<TData extends RowData, TValue>(table: Table<TData>, row: Row<TData>, column: Column<TData, TValue>, columnId: string): Cell<TData, TValue>;
618
609
 
619
- interface CoreColumn<TData extends RowData, TValue> {
610
+ declare type CoreColumn<TData extends RowData, TValue> = {
620
611
  id: string;
621
612
  depth: number;
622
613
  accessorFn?: AccessorFn<TData, TValue>;
@@ -625,7 +616,7 @@ interface CoreColumn<TData extends RowData, TValue> {
625
616
  parent?: Column<TData, TValue>;
626
617
  getFlatColumns: () => Column<TData, TValue>[];
627
618
  getLeafColumns: () => Column<TData, TValue>[];
628
- }
619
+ };
629
620
  declare function createColumn<TData extends RowData, TValue>(table: Table<TData>, columnDef: ColumnDef<TData, TValue>, depth: number, parent?: Column<TData, TValue>): Column<TData, TValue>;
630
621
 
631
622
  interface TableMeta<TData extends RowData> {
@@ -644,120 +635,78 @@ declare type Updater<T> = T | ((old: T) => T);
644
635
  declare type OnChangeFn<T> = (updaterOrValue: Updater<T>) => void;
645
636
  declare type RowData = unknown | object | any[];
646
637
  declare type AnyRender = (Comp: any, props: any) => any;
647
- interface Table<TData extends RowData> extends CoreInstance<TData>, HeadersInstance<TData>, VisibilityInstance<TData>, ColumnOrderInstance<TData>, ColumnPinningInstance<TData>, FiltersInstance<TData>, SortingInstance<TData>, GroupingInstance<TData>, ColumnSizingInstance, ExpandedInstance<TData>, PaginationInstance<TData>, RowSelectionInstance<TData> {
648
- }
649
- interface FeatureOptions<TData extends RowData> extends VisibilityOptions, ColumnOrderOptions, ColumnPinningOptions, FiltersOptions<TData>, SortingOptions<TData>, GroupingOptions, ExpandedOptions<TData>, ColumnSizingOptions, PaginationOptions, RowSelectionOptions<TData> {
650
- }
651
- declare type TableOptionsResolved<TData extends RowData> = CoreOptions<TData> & FeatureOptions<TData>;
652
- interface TableOptions<TData extends RowData> extends PartialKeys<TableOptionsResolved<TData>, 'state' | 'onStateChange' | 'renderFallbackValue'> {
653
- }
654
- interface TableState extends CoreTableState, VisibilityTableState, ColumnOrderTableState, ColumnPinningTableState, FiltersTableState, SortingTableState, ExpandedTableState, GroupingTableState, ColumnSizingTableState, PaginationTableState, RowSelectionTableState {
655
- }
656
- interface CompleteInitialTableState extends CoreTableState, VisibilityTableState, ColumnOrderTableState, ColumnPinningTableState, FiltersTableState, SortingTableState, ExpandedTableState, GroupingTableState, ColumnSizingTableState, PaginationInitialTableState, RowSelectionTableState {
657
- }
658
- interface InitialTableState extends Partial<CompleteInitialTableState> {
659
- }
660
- interface Row<TData extends RowData> extends CoreRow<TData>, VisibilityRow<TData>, ColumnPinningRow<TData>, FiltersRow<TData>, GroupingRow, RowSelectionRow, ExpandedRow {
661
- }
662
- interface RowModel<TData extends RowData> {
638
+ declare type Table<TData extends RowData> = CoreInstance<TData> & HeadersInstance<TData> & VisibilityInstance<TData> & ColumnOrderInstance<TData> & ColumnPinningInstance<TData> & FiltersInstance<TData> & SortingInstance<TData> & GroupingInstance<TData> & ColumnSizingInstance & ExpandedInstance<TData> & PaginationInstance<TData> & RowSelectionInstance<TData>;
639
+ declare type TableOptionsResolved<TData extends RowData> = CoreOptions<TData> & VisibilityOptions & ColumnOrderOptions & ColumnPinningOptions & FiltersOptions<TData> & SortingOptions<TData> & GroupingOptions & ExpandedOptions<TData> & ColumnSizingOptions & PaginationOptions & RowSelectionOptions<TData>;
640
+ declare type TableOptions<TData extends RowData> = PartialKeys<TableOptionsResolved<TData>, 'state' | 'onStateChange' | 'renderFallbackValue'>;
641
+ declare type TableState = CoreTableState & VisibilityTableState & ColumnOrderTableState & ColumnPinningTableState & FiltersTableState & SortingTableState & ExpandedTableState & GroupingTableState & ColumnSizingTableState & PaginationTableState & RowSelectionTableState;
642
+ declare type InitialTableState = Partial<CoreTableState & VisibilityTableState & ColumnOrderTableState & ColumnPinningTableState & FiltersTableState & SortingTableState & ExpandedTableState & GroupingTableState & ColumnSizingTableState & PaginationInitialTableState & RowSelectionTableState>;
643
+ declare type Row<TData extends RowData> = CoreRow<TData> & VisibilityRow<TData> & ColumnPinningRow<TData> & FiltersRow<TData> & GroupingRow & RowSelectionRow & ExpandedRow;
644
+ declare type RowModel<TData extends RowData> = {
663
645
  rows: Row<TData>[];
664
646
  flatRows: Row<TData>[];
665
647
  rowsById: Record<string, Row<TData>>;
666
- }
648
+ };
667
649
  declare type AccessorFn<TData extends RowData, TValue = unknown> = (originalRow: TData, index: number) => TValue;
668
650
  declare type ColumnDefTemplate<TProps extends object> = string | ((props: TProps) => any);
669
651
  declare type StringOrTemplateHeader<TData, TValue> = string | ColumnDefTemplate<HeaderContext<TData, TValue>>;
670
- interface StringHeaderIdentifier {
652
+ declare type StringHeaderIdentifier = {
671
653
  header: string;
672
654
  id?: string;
673
- }
674
- interface IdIdentifier<TData extends RowData, TValue> {
655
+ };
656
+ declare type IdIdentifier<TData extends RowData, TValue> = {
675
657
  id: string;
676
658
  header?: StringOrTemplateHeader<TData, TValue>;
677
- }
659
+ };
678
660
  declare type ColumnIdentifiers<TData extends RowData, TValue> = IdIdentifier<TData, TValue> | StringHeaderIdentifier;
679
- interface ColumnDefExtensions<TData extends RowData, TValue = unknown> extends VisibilityColumnDef, ColumnPinningColumnDef, FiltersColumnDef<TData>, SortingColumnDef<TData>, GroupingColumnDef<TData, TValue>, ColumnSizingColumnDef {
680
- }
681
- interface ColumnDefBase<TData extends RowData, TValue = unknown> extends ColumnDefExtensions<TData, TValue> {
661
+ declare type ColumnDefBase<TData extends RowData, TValue = unknown> = {
682
662
  getUniqueValues?: AccessorFn<TData, unknown[]>;
683
663
  footer?: ColumnDefTemplate<HeaderContext<TData, TValue>>;
684
664
  cell?: ColumnDefTemplate<CellContext<TData, TValue>>;
685
665
  meta?: ColumnMeta<TData, TValue>;
686
- }
687
- interface IdentifiedColumnDef<TData extends RowData, TValue = unknown> extends ColumnDefBase<TData, TValue> {
666
+ } & VisibilityColumnDef & ColumnPinningColumnDef & FiltersColumnDef<TData> & SortingColumnDef<TData> & GroupingColumnDef<TData, TValue> & ColumnSizingColumnDef;
667
+ declare type IdentifiedColumnDef<TData extends RowData, TValue = unknown> = ColumnDefBase<TData, TValue> & {
688
668
  id?: string;
689
669
  header?: StringOrTemplateHeader<TData, TValue>;
690
- }
670
+ };
691
671
  declare type DisplayColumnDef<TData extends RowData, TValue = unknown> = ColumnDefBase<TData, TValue> & ColumnIdentifiers<TData, TValue>;
692
- interface GroupColumnDefBase<TData extends RowData, TValue = unknown> extends ColumnDefBase<TData, TValue> {
672
+ declare type GroupColumnDef<TData extends RowData, TValue = unknown> = ColumnDefBase<TData, TValue> & ColumnIdentifiers<TData, TValue> & {
693
673
  columns?: ColumnDef<TData, any>[];
694
- }
695
- declare type GroupColumnDef<TData extends RowData, TValue = unknown> = GroupColumnDefBase<TData, TValue> & ColumnIdentifiers<TData, TValue>;
696
- interface AccessorFnColumnDefBase<TData extends RowData, TValue = unknown> extends ColumnDefBase<TData, TValue> {
674
+ };
675
+ declare type AccessorFnColumnDef<TData extends RowData, TValue = unknown> = ColumnDefBase<TData, TValue> & ColumnIdentifiers<TData, TValue> & {
697
676
  accessorFn: AccessorFn<TData, TValue>;
698
- }
699
- declare type AccessorFnColumnDef<TData extends RowData, TValue = unknown> = AccessorFnColumnDefBase<TData, TValue> & ColumnIdentifiers<TData, TValue>;
700
- interface AccessorKeyColumnDefBase<TData extends RowData, TValue = unknown> extends ColumnDefBase<TData, TValue> {
677
+ };
678
+ declare type AccessorKeyColumnDef<TData extends RowData, TValue = unknown> = {
701
679
  id?: string;
680
+ } & Partial<ColumnIdentifiers<TData, TValue>> & ColumnDefBase<TData, TValue> & {
702
681
  accessorKey: string | keyof TData;
703
- }
704
- declare type AccessorKeyColumnDef<TData extends RowData, TValue = unknown> = AccessorKeyColumnDefBase<TData, TValue> & Partial<ColumnIdentifiers<TData, TValue>>;
682
+ };
705
683
  declare type AccessorColumnDef<TData extends RowData, TValue = unknown> = AccessorKeyColumnDef<TData, TValue> | AccessorFnColumnDef<TData, TValue>;
706
684
  declare type ColumnDef<TData extends RowData, TValue = unknown> = DisplayColumnDef<TData, TValue> | GroupColumnDef<TData, TValue> | AccessorColumnDef<TData, TValue>;
707
685
  declare type ColumnDefResolved<TData extends RowData, TValue = unknown> = Partial<UnionToIntersection<ColumnDef<TData, TValue>>> & {
708
686
  accessorKey?: string;
709
687
  };
710
- interface Column<TData extends RowData, TValue = unknown> extends CoreColumn<TData, TValue>, VisibilityColumn, ColumnPinningColumn, FiltersColumn<TData>, SortingColumn<TData>, GroupingColumn<TData>, ColumnSizingColumn {
711
- }
712
- interface Cell<TData extends RowData, TValue> extends CoreCell<TData, TValue>, GroupingCell {
713
- }
714
- interface Header<TData extends RowData, TValue> extends CoreHeader<TData, TValue>, ColumnSizingHeader {
715
- }
716
- interface HeaderGroup<TData extends RowData> extends CoreHeaderGroup<TData> {
717
- }
688
+ declare type Column<TData extends RowData, TValue = unknown> = CoreColumn<TData, TValue> & VisibilityColumn & ColumnPinningColumn & FiltersColumn<TData> & SortingColumn<TData> & GroupingColumn<TData> & ColumnSizingColumn;
689
+ declare type Cell<TData extends RowData, TValue> = CoreCell<TData, TValue> & GroupingCell;
690
+ declare type Header<TData extends RowData, TValue> = CoreHeader<TData, TValue> & ColumnSizingHeader;
691
+ declare type HeaderGroup<TData extends RowData> = CoreHeaderGroup<TData>;
718
692
 
719
- declare type PartialKeys<T, K extends keyof T> = Omit<T, K> & Partial<T>;
720
- declare type RequiredKeys<T, K extends keyof T> = T & {
721
- [P in K]-?: T[P];
722
- };
693
+ declare type PartialKeys<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;
694
+ declare type RequiredKeys<T, K extends keyof T> = Omit<T, K> & Required<Pick<T, K>>;
723
695
  declare type Overwrite<T, U extends {
724
696
  [TKey in keyof T]?: any;
725
697
  }> = Omit<T, keyof U> & U;
726
698
  declare type UnionToIntersection<T> = (T extends any ? (x: T) => any : never) extends (x: infer R) => any ? R : never;
727
699
  declare type IsAny<T, Y, N> = 1 extends 0 & T ? Y : N;
728
700
  declare type IsKnown<T, Y, N> = unknown extends T ? N : Y;
729
- declare type IndexableData = Record<string | number, any>;
730
- declare type DeepValue<T, TProp> = T extends IndexableData ? TProp extends `${infer TBranch}.${infer TDeepProp}` ? DeepValue<T[TBranch], TDeepProp> : TProp extends keyof T ? T[TProp] : never : never;
731
- declare type Join<K, P> = K extends string | number ? P extends string | number ? `${K}${'' extends P ? '' : '.'}${P}` : never : never;
732
- declare type Prev = [
733
- never,
734
- 0,
735
- 1,
736
- 2,
737
- 3,
738
- 4,
739
- 5,
740
- 6,
741
- 7,
742
- 8,
743
- 9,
744
- 10,
745
- 11,
746
- 12,
747
- 13,
748
- 14,
749
- 15,
750
- 16,
751
- 17,
752
- 18,
753
- 19,
754
- 20,
755
- ...0[]
756
- ];
757
- declare type ExplicitLeaves = Date | Number | BigInt | String | Set<unknown> | Map<unknown, unknown> | WeakSet<object> | WeakMap<object, unknown>;
758
- declare type DeepKeys<T, D extends number = 10> = [D] extends [never] ? never : T extends ExplicitLeaves ? never : T extends object ? {
759
- [K in keyof T]-?: K extends string | number ? `${K}` | Join<K, DeepKeys<T[K], Prev[D]>> : never;
760
- }[keyof T] : '';
701
+ declare type ComputeRange<N extends number, Result extends Array<unknown> = []> = Result['length'] extends N ? Result : ComputeRange<N, [...Result, Result['length']]>;
702
+ declare type Index40 = ComputeRange<40>[number];
703
+ declare type IsTuple<T> = T extends readonly any[] & {
704
+ length: infer Length;
705
+ } ? Length extends Index40 ? T : never : never;
706
+ declare type AllowedIndexes<Tuple extends ReadonlyArray<any>, Keys extends number = never> = Tuple extends readonly [] ? Keys : Tuple extends readonly [infer _, ...infer Tail] ? AllowedIndexes<Tail, Keys | Tail['length']> : Keys;
707
+ declare type DeepKeys<T> = unknown extends T ? keyof T : object extends T ? string : T extends readonly any[] & IsTuple<T> ? AllowedIndexes<T> | DeepKeysPrefix<T, AllowedIndexes<T>> : T extends any[] ? never & 'Dynamic length array indexing is not supported' : T extends Date ? never : T extends object ? (keyof T & string) | DeepKeysPrefix<T, keyof T> : never;
708
+ declare type DeepKeysPrefix<T, TPrefix> = TPrefix extends keyof T & (number | string) ? `${TPrefix}.${DeepKeys<T[TPrefix]> & string}` : never;
709
+ declare type DeepValue<T, TProp> = T extends Record<string | number, any> ? TProp extends `${infer TBranch}.${infer TDeepProp}` ? DeepValue<T[TBranch], TDeepProp> : T[TProp & string] : never;
761
710
  declare type NoInfer<T> = [T][T extends any ? 0 : never];
762
711
  declare type Getter<TValue> = <TTValue = TValue>() => NoInfer<TTValue>;
763
712
  declare function functionalUpdate<T>(updater: Updater<T>, input: T): T;
@@ -772,7 +721,7 @@ declare function memo<TDeps extends readonly any[], TResult>(getDeps: () => [...
772
721
  onChange?: (result: TResult) => void;
773
722
  }): () => TResult;
774
723
 
775
- interface TableFeature {
724
+ declare type TableFeature = {
776
725
  getDefaultOptions?: (table: any) => any;
777
726
  getInitialState?: (initialState?: InitialTableState) => any;
778
727
  createTable?: (table: any) => any;
@@ -781,10 +730,9 @@ interface TableFeature {
781
730
  createHeader?: (column: any, table: any) => any;
782
731
  createCell?: (cell: any, column: any, row: any, table: any) => any;
783
732
  createRow?: (row: any, table: any) => any;
784
- }
785
- interface CoreTableState {
786
- }
787
- interface CoreOptions<TData extends RowData> {
733
+ };
734
+ declare type CoreTableState = {};
735
+ declare type CoreOptions<TData extends RowData> = {
788
736
  data: TData[];
789
737
  state: Partial<TableState>;
790
738
  onStateChange: (updater: Updater<TableState>) => void;
@@ -803,8 +751,8 @@ interface CoreOptions<TData extends RowData> {
803
751
  columns: ColumnDef<TData, any>[];
804
752
  defaultColumn?: Partial<ColumnDef<TData, unknown>>;
805
753
  renderFallbackValue: any;
806
- }
807
- interface CoreInstance<TData extends RowData> {
754
+ };
755
+ declare type CoreInstance<TData extends RowData> = {
808
756
  initialState: TableState;
809
757
  reset: () => void;
810
758
  options: RequiredKeys<TableOptionsResolved<TData>, 'state'>;
@@ -825,16 +773,14 @@ interface CoreInstance<TData extends RowData> {
825
773
  getAllFlatColumns: () => Column<TData, unknown>[];
826
774
  getAllLeafColumns: () => Column<TData, unknown>[];
827
775
  getColumn: (columnId: string) => Column<TData, unknown>;
828
- }
776
+ };
829
777
  declare function createTable<TData extends RowData>(options: TableOptionsResolved<TData>): Table<TData>;
830
778
 
831
- declare type AccessorType<TData, TAccessor> = TAccessor extends AccessorFn<TData, infer TReturn> ? TReturn : DeepValue<TData, TAccessor>;
832
- declare type Accessor<TData extends RowData> = <TAccessor extends AccessorFn<TData> | string, TValue extends AccessorType<TData, TAccessor>>(accessor: TAccessor, column: TAccessor extends AccessorFn<TData> ? DisplayColumnDef<TData, TValue> : IdentifiedColumnDef<TData, TValue>) => TValue extends never ? never : AccessorColumnDef<TData, AccessorType<TData, TAccessor>>;
833
- interface ColumnHelper<TData extends RowData> {
834
- accessor: Accessor<TData>;
835
- display: (column: DisplayColumnDef<TData>) => DisplayColumnDef<TData>;
836
- group: (column: GroupColumnDef<TData>) => GroupColumnDef<TData>;
837
- }
779
+ declare type ColumnHelper<TData extends RowData> = {
780
+ accessor: <TAccessor extends AccessorFn<TData> | DeepKeys<TData>, TValue extends TAccessor extends AccessorFn<TData, infer TReturn> ? TReturn : TAccessor extends DeepKeys<TData> ? DeepValue<TData, TAccessor> : never>(accessor: TAccessor, column: TAccessor extends AccessorFn<TData> ? DisplayColumnDef<TData, TValue> : IdentifiedColumnDef<TData, TValue>) => ColumnDef<TData, TValue>;
781
+ display: (column: DisplayColumnDef<TData>) => ColumnDef<TData, unknown>;
782
+ group: (column: GroupColumnDef<TData>) => ColumnDef<TData, unknown>;
783
+ };
838
784
  declare function createColumnHelper<TData extends RowData>(): ColumnHelper<TData>;
839
785
 
840
786
  declare function getCoreRowModel<TData extends RowData>(): (table: Table<TData>) => () => RowModel<TData>;