Table Instance

The object returned by createTable() or useTable(). All methods are grouped by feature.

State

MethodReturnDescription
getState()TableStateGet the complete current state
setState(updater)voidUpdate the entire state
setOptions(updater)voidUpdate table options
reset()voidReset all state to initial values

Column API

MethodReturnDescription
getAllColumns()Column[]All columns (including group parents)
getAllFlatColumns()Column[]All leaf columns (flat)
getAllLeafColumns()Column[]All leaf columns
getColumn(id)Column | undefinedGet a column by ID
getVisibleFlatColumns()Column[]Visible leaf columns (respecting order/visibility)
getVisibleLeafColumns()Column[]Same as getVisibleFlatColumns()
getLeftVisibleLeafColumns()Column[]Left-pinned visible columns
getRightVisibleLeafColumns()Column[]Right-pinned visible columns
getCenterVisibleLeafColumns()Column[]Unpinned visible columns

Header API

MethodReturnDescription
getHeaderGroups()HeaderGroup[]All header groups
getLeftHeaderGroups()HeaderGroup[]Left-pinned header groups
getRightHeaderGroups()HeaderGroup[]Right-pinned header groups
getCenterHeaderGroups()HeaderGroup[]Unpinned header groups
getFooterGroups()HeaderGroup[]Footer groups (reversed header groups)
getLeftFooterGroups()HeaderGroup[]Left-pinned footer groups
getRightFooterGroups()HeaderGroup[]Right-pinned footer groups
getCenterFooterGroups()HeaderGroup[]Unpinned footer groups

Row Model API

MethodReturnDescription
getCoreRowModel()RowModelRaw data as rows (no filtering/sorting)
getRowModel()RowModelFinal row model (filtered, sorted, paginated)
getRow(id, searchAll?)RowGet a specific row by ID
getFilteredRowModel()RowModelRows after filtering
getPreFilteredRowModel()RowModelRows before filtering (= core model)
getSortedRowModel()RowModelRows after sorting
getPreSortedRowModel()RowModelRows before sorting (= filtered model)
getPaginationRowModel()RowModelRows after pagination
getPrePaginationRowModel()RowModelRows before pagination (= sorted model)
getGroupedRowModel()RowModelRows after grouping
getPreGroupedRowModel()RowModelRows before grouping
getExpandedRowModel()RowModelRows after expansion
getPreExpandedRowModel()RowModelRows before expansion

Sorting API

MethodReturnDescription
setSorting(updater)voidSet the sorting state
resetSorting(defaultState?)voidReset sorting

Filtering API

MethodReturnDescription
setColumnFilters(updater)voidSet column filter state
resetColumnFilters(defaultState?)voidReset column filters
setGlobalFilter(updater)voidSet global filter value
resetGlobalFilter(defaultState?)voidReset global filter

Pagination API

MethodReturnDescription
getPageCount()numberTotal number of pages
getRowCount()numberTotal number of rows
getCanPreviousPage()booleanCan navigate to previous page
getCanNextPage()booleanCan navigate to next page
previousPage()voidGo to previous page
nextPage()voidGo to next page
firstPage()voidGo to first page
lastPage()voidGo to last page
setPagination(updater)voidSet pagination state
setPageIndex(updater)voidSet page index
setPageSize(size)voidSet page size
resetPageIndex(defaultState?)voidReset page index
resetPageSize(defaultState?)voidReset page size
resetPagination(defaultState?)voidReset all pagination

Selection API

MethodReturnDescription
getSelectedRowModel()RowModelModel of selected rows
getFilteredSelectedRowModel()RowModelSelected rows (filtered)
getGroupedSelectedRowModel()RowModelSelected rows (grouped)
getIsAllRowsSelected()booleanAll rows selected?
getIsSomeRowsSelected()booleanSome (but not all) rows selected?
getIsAllPageRowsSelected()booleanAll current page rows selected?
getIsSomePageRowsSelected()booleanSome current page rows selected?
toggleAllRowsSelected(value?)voidSelect/deselect all rows
toggleAllPageRowsSelected(value?)voidSelect/deselect current page rows
setRowSelection(updater)voidSet row selection state
resetRowSelection(defaultState?)voidReset row selection

Visibility API

MethodReturnDescription
setColumnVisibility(updater)voidSet column visibility state
resetColumnVisibility(defaultState?)voidReset column visibility
toggleAllColumnsVisible(value?)voidShow/hide all columns
getIsAllColumnsVisible()booleanAll columns visible?
getIsSomeColumnsVisible()booleanSome columns visible?

Column Order API

MethodReturnDescription
setColumnOrder(updater)voidSet column order
resetColumnOrder(defaultState?)voidReset column order

Column Pinning API

MethodReturnDescription
setColumnPinning(updater)voidSet column pinning state
resetColumnPinning(defaultState?)voidReset column pinning
getIsSomeColumnsPinned(position?)booleanAny columns pinned?

Column Sizing API

MethodReturnDescription
setColumnSizing(updater)voidSet column sizing state
setColumnSizingInfo(updater)voidSet sizing info (resize-in-progress data)
resetColumnSizing(defaultState?)voidReset column sizing
getTotalSize()numberTotal width of all visible columns
getLeftTotalSize()numberTotal width of left-pinned columns
getRightTotalSize()numberTotal width of right-pinned columns
getCenterTotalSize()numberTotal width of unpinned columns

Expanding API

MethodReturnDescription
setExpanded(updater)voidSet expanded state
toggleAllRowsExpanded(expanded?)voidExpand/collapse all
resetExpanded(defaultState?)voidReset expanded state
getCanSomeRowsExpand()booleanAny rows can expand?
getIsAllRowsExpanded()booleanAll expandable rows expanded?
getIsSomeRowsExpanded()booleanSome rows expanded?
getExpandedDepth()numberMaximum expansion depth

Row Pinning API

MethodReturnDescription
setRowPinning(updater)voidSet row pinning state
resetRowPinning(defaultState?)voidReset row pinning
getTopRows()Row[]Top-pinned rows
getBottomRows()Row[]Bottom-pinned rows
getCenterRows()Row[]Unpinned rows

Grouping API

MethodReturnDescription
setGrouping(updater)voidSet grouping state
resetGrouping(defaultState?)voidReset grouping

Editing API

MethodReturnDescription
startEditing(rowId, columnId)voidEnter edit mode on a cell
commitEdit()voidCommit the active edit
cancelEdit()voidCancel the active edit
setPendingValue(rowId, columnId, value)voidSet a pending edit value
getPendingValue(rowId, columnId)unknown | undefinedGet a pending edit value
getPendingRow(rowId)Partial<TData> | undefinedGet all pending values for a row
getAllPendingChanges()Record<string, Partial<TData>>Get all pending changes
hasPendingChanges()booleanAny uncommitted changes?
commitAllPending()voidCommit all pending changes (triggers onEditCommit)
discardAllPending()voidDiscard all pending changes
getValidationErrors()Record<string, Record<string, string>>Get validation errors
isValid()booleanAll pending values valid?
setEditing(updater)voidSet editing state directly
resetEditing(defaultState?)voidReset editing state

Async Commit API

MethodReturnDescription
getCellRenderValue(rowId, columnId)unknownReturns pending value if commit is in-flight, otherwise saved value
getCellStatus(rowId, columnId)CellStatusReturns 'idle' | 'pending' | 'error' | 'conflict'
getCellErrorMessage(rowId, columnId)string | undefinedError message from failed commit
getCellConflictWith(rowId, columnId)unknownThe server value that conflicts with the pending value
commit()Promise<void>Dispatch all pending edits (used when autoCommit: false)
retryCommit(rowId, columnId)Promise<void>Retry a failed commit
dismissCommit(rowId, columnId)voidDismiss an error/conflict and revert to saved value
dismissAllCommits()voidDismiss all errors and conflicts

Export API

MethodReturnDescription
exportData(options?)stringExport table data as CSV or JSON string

Event Emitter

PropertyTypeDescription
eventsEventEmitter<YableEventMap>Typed event emitter
events.on(event, handler)() => voidSubscribe (returns unsubscribe function)
events.off(event, handler)voidUnsubscribe
events.emit(event, payload)voidEmit an event
events.removeAllListeners(event?)voidRemove all listeners