Core

The core API provides fundamental table functionality and configuration options. These properties and methods are always available on the table instance, regardless of which features are enabled.

CoreInstance

The CoreInstance interface defines the basic properties and methods available on every table instance returned by useReactTable.

PropType
Returns all columns in the table in their normalized and nested hierarchy.
      () => Column<
      TData,
      unknown,
      ColumnMeta
      >[]
      Returns all columns in the table flattened to a single level.
          () => Column<
          TData,
          unknown,
          ColumnMeta
          >[]
          Returns all leaf-node columns in the table flattened to a single level. This does not include parent columns.
              () => Column<
              TData,
              unknown,
              ColumnMeta
              >[]
              Returns a single column by its ID.
                  (
                  columnId: string,
                  ) => Column<
                  TData,
                  unknown,
                  ColumnMeta
                  >
                  Returns the core row model before any processing has been applied.
                      () => RowModel<TData>
                      Returns the row with the given ID.
                          (
                          id: string,
                          searchAll?: boolean,
                          ) => Row<TData>
                          Returns the final model after all processing from other used features has been applied. This is the row model that is most commonly used for rendering.
                              () => RowModel<TData>
                              Call this function to get the table's current state. It's recommended to use this function and its state, especially when managing the table state manually. It is the exact same state used internally by the table for every feature and function it provides.
                                  () => TableState
                                  This is the resolved initial state of the table.
                                  TableState
                                  A read-only reference to the table's current options.
                                  RequiredKeys<
                                  TableOptionsResolved,
                                  'state'
                                  >
                                  Call this function to reset the table state to the initial state.
                                      () => void
                                      This function can be used to provide new table options.
                                          (
                                          newOptions: Updater<
                                          TableOptionsResolved<TData>
                                          >,
                                          ) => void
                                          Call this function to update the table state.
                                              (
                                              updater: Updater<TableState>,
                                              ) => void
                                              Use this function to update the table options.
                                                  (
                                                  options: Partial<
                                                  TableOptionsResolved<TData>
                                                  >,
                                                  ) => void
                                                  Type
                                                  () => Column<
                                                  TData,
                                                  unknown,
                                                  ColumnMeta
                                                  >[]
                                                  Description
                                                  Returns all columns in the table in their normalized and nested hierarchy.
                                                      Type
                                                      () => Column<
                                                      TData,
                                                      unknown,
                                                      ColumnMeta
                                                      >[]
                                                      Description
                                                      Returns all columns in the table flattened to a single level.
                                                          Type
                                                          () => Column<
                                                          TData,
                                                          unknown,
                                                          ColumnMeta
                                                          >[]
                                                          Description
                                                          Returns all leaf-node columns in the table flattened to a single level. This does not include parent columns.
                                                              Type
                                                              (
                                                              columnId: string,
                                                              ) => Column<
                                                              TData,
                                                              unknown,
                                                              ColumnMeta
                                                              >
                                                              Description
                                                              Returns a single column by its ID.
                                                                  Type
                                                                  () => RowModel<TData>
                                                                  Description
                                                                  Returns the core row model before any processing has been applied.
                                                                      Type
                                                                      (
                                                                      id: string,
                                                                      searchAll?: boolean,
                                                                      ) => Row<TData>
                                                                      Description
                                                                      Returns the row with the given ID.
                                                                          Type
                                                                          () => RowModel<TData>
                                                                          Description
                                                                          Returns the final model after all processing from other used features has been applied. This is the row model that is most commonly used for rendering.
                                                                              Type
                                                                              () => TableState
                                                                              Description
                                                                              Call this function to get the table's current state. It's recommended to use this function and its state, especially when managing the table state manually. It is the exact same state used internally by the table for every feature and function it provides.
                                                                                  Type
                                                                                  TableState
                                                                                  Description
                                                                                  This is the resolved initial state of the table.
                                                                                  Type
                                                                                  RequiredKeys<
                                                                                  TableOptionsResolved,
                                                                                  'state'
                                                                                  >
                                                                                  Description
                                                                                  A read-only reference to the table's current options.
                                                                                  Type
                                                                                  () => void
                                                                                  Description
                                                                                  Call this function to reset the table state to the initial state.
                                                                                      Type
                                                                                      (
                                                                                      newOptions: Updater<
                                                                                      TableOptionsResolved<TData>
                                                                                      >,
                                                                                      ) => void
                                                                                      Description
                                                                                      This function can be used to provide new table options.
                                                                                          Type
                                                                                          (
                                                                                          updater: Updater<TableState>,
                                                                                          ) => void
                                                                                          Description
                                                                                          Call this function to update the table state.
                                                                                              Type
                                                                                              (
                                                                                              options: Partial<
                                                                                              TableOptionsResolved<TData>
                                                                                              >,
                                                                                              ) => void
                                                                                              Description
                                                                                              Use this function to update the table options.

                                                                                                  TableOptions

                                                                                                  The TableOptions interface defines the configuration options you pass to useReactTable to create and configure a table instance.

                                                                                                  PropType
                                                                                                  Record
                                                                                                  Set this option to override any of the autoReset... feature options.
                                                                                                  boolean
                                                                                                  Enable this setting to automatically reset the expanded state of the table when expanding state changes.
                                                                                                  boolean
                                                                                                  If set to true, pagination will be reset to the first page when page-altering state changes e.g.,data is updated, filters change, grouping changes, etc.
                                                                                                  boolean
                                                                                                  Enables or disables right-to-left support for resizing the column. defaults to 'ltr'.
                                                                                                  'ltr' | 'rtl'
                                                                                                  Determines when the columnSizing state is updated. onChange updates the state when the user is dragging the resize handle. onEnd updates the state when the user releases the resize handle.
                                                                                                  | 'onChange'
                                                                                                  | 'onEnd'
                                                                                                  The array of column defs to use for the table.
                                                                                                  ColumnDef[]
                                                                                                  The data for the table to display. This array should match the type you provided to table.setRowType<...>. Columns can access this data via string/index or a functional accessor. When the data option changes reference, the table will reprocess the data.
                                                                                                  Array<TData>
                                                                                                  Set this option to true to output all debugging information to the console.
                                                                                                  boolean
                                                                                                  Set this option to true to output column debugging information to the console.
                                                                                                  boolean
                                                                                                  Set this option to true to output header debugging information to the console.
                                                                                                  boolean
                                                                                                  Set this option to true to output row debugging information to the console.
                                                                                                  boolean
                                                                                                  Set this option to true to output table debugging information to the console.
                                                                                                  boolean
                                                                                                  Default column options to use for all column defs supplied to the table.
                                                                                                  Partial<ColumnDef>
                                                                                                  Enables/disables column filtering for all columns.
                                                                                                  boolean
                                                                                                  Enables/disables column pinning for the table. Defaults to true.
                                                                                                  boolean
                                                                                                  Enables or disables column resizing for the column.
                                                                                                  boolean
                                                                                                  Enable/disable expanding for all rows.
                                                                                                  boolean
                                                                                                  Enables/disables all filtering for the table.
                                                                                                  boolean
                                                                                                  Enables/disables global filtering for all columns.
                                                                                                  boolean
                                                                                                  Enables/disables grouping for the table.
                                                                                                  boolean
                                                                                                  boolean
                                                                                                  Enables/disables the ability to remove multi-sorts
                                                                                                  boolean
                                                                                                  - Enables/disables multiple row selection for all rows in the table OR
                                                                                                  - A function that given a row, returns whether to enable/disable multiple row selection for that row's children/grandchildren
                                                                                                  | boolean
                                                                                                  | ((
                                                                                                  row: Row<TData>,
                                                                                                  ) => boolean)
                                                                                                  Enables/Disables multi-sorting for the table.
                                                                                                  boolean
                                                                                                  Enables/disables all pinning for the table. Defaults to true.
                                                                                                  boolean
                                                                                                  Enables/disables row pinning for the table. Defaults to true.
                                                                                                  | boolean
                                                                                                  | ((
                                                                                                  row: Row<TData>,
                                                                                                  ) => boolean)
                                                                                                  - Enables/disables row selection for all rows in the table OR
                                                                                                  - A function that given a row, returns whether to enable/disable row selection for that row
                                                                                                  | boolean
                                                                                                  | ((
                                                                                                  row: Row<TData>,
                                                                                                  ) => boolean)
                                                                                                  Enables/Disables sorting for the table.
                                                                                                  boolean
                                                                                                  Enables/Disables the ability to remove sorting for the table.
                                                                                                  - If
                                                                                                  true then changing sort order will circle like: 'none' -> 'desc' -> 'asc' -> 'none' -> ... - If false then changing sort order will circle like: 'none' -> 'desc' -> 'asc' -> 'desc' -> 'asc' -> ...
                                                                                                  boolean
                                                                                                  Enables/disables automatic sub-row selection when a parent row is selected, or a function that enables/disables automatic sub-row selection for each row. (Use in combination with expanding or grouping features)
                                                                                                  | boolean
                                                                                                  | ((
                                                                                                  row: Row<TData>,
                                                                                                  ) => boolean)
                                                                                                  Record
                                                                                                  By default, filtering is done from parent rows down (so if a parent row is filtered out, all of its children will be filtered out as well). Setting this option to true will cause filtering to be done from leaf rows up (which means parent rows will be included so long as one of their child or grand-child rows is also included).
                                                                                                  boolean
                                                                                                  If provided, this function will be called with the column and should return true or false to indicate whether this column should be used for global filtering.

                                                                                                  This is useful if the column can contain data that is not
                                                                                                  string or number (i.e. undefined).
                                                                                                      (
                                                                                                      column: Column<
                                                                                                      TData,
                                                                                                      unknown
                                                                                                      >,
                                                                                                      ) => boolean
                                                                                                      This required option is a factory for a function that computes and returns the core row model for the table.
                                                                                                          (
                                                                                                          table: TableInstance<any>,
                                                                                                          ) => () => RowModel<any>
                                                                                                          This function is responsible for returning the expanded row model. If this function is not provided, the table will not expand rows. You can use the default exported getExpandedRowModel function to get the expanded row model or implement your own.
                                                                                                              (
                                                                                                              table: TableInstance<any>,
                                                                                                              ) => () => {
                                                                                                              flatRows: Row[]
                                                                                                              rows: Row[]
                                                                                                              rowsById: Record
                                                                                                              }
                                                                                                              (
                                                                                                              table: TableInstance<TData>,
                                                                                                              columnId: string,
                                                                                                              ) => () => [number, number]
                                                                                                              • columnId:The id of the column
                                                                                                                (
                                                                                                                table: TableInstance<TData>,
                                                                                                                columnId: string,
                                                                                                                ) => () => {
                                                                                                                flatRows: Row[]
                                                                                                                rows: Row[]
                                                                                                                rowsById: Record
                                                                                                                }
                                                                                                                (
                                                                                                                table: TableInstance<TData>,
                                                                                                                columnId: string,
                                                                                                                ) => () => Map<any, number>
                                                                                                                If provided, this function is called once per table and should return a new function which will calculate and return the row model for the table when it's filtered. - For server-side filtering, this function is unnecessary and can be ignored since the server should already return the filtered row model. - For client-side filtering, this function is required. A default implementation is provided via any table adapter's { getFilteredRowModel } export.
                                                                                                                    (
                                                                                                                    table: TableInstance<TData>,
                                                                                                                    ) => () => {
                                                                                                                    flatRows: Row[]
                                                                                                                    rows: Row[]
                                                                                                                    rowsById: Record
                                                                                                                    }
                                                                                                                    Returns the row model after grouping has taken place, but no further.
                                                                                                                        (
                                                                                                                        table: TableInstance<any>,
                                                                                                                        ) => () => {
                                                                                                                        flatRows: Row[]
                                                                                                                        rows: Row[]
                                                                                                                        rowsById: Record
                                                                                                                        }
                                                                                                                        If provided, allows you to override the default behavior of determining whether a row is currently expanded.
                                                                                                                            (
                                                                                                                            row: Row<TData>,
                                                                                                                            ) => boolean
                                                                                                                            Returns the row model after pagination has taken place, but no further.

                                                                                                                            Pagination columns are automatically reordered by default to the start of the columns list. If you would rather remove them or leave them as-is, set the appropriate mode here.
                                                                                                                                (
                                                                                                                                table: TableInstance<any>,
                                                                                                                                ) => () => {
                                                                                                                                flatRows: Row[]
                                                                                                                                rows: Row[]
                                                                                                                                rowsById: Record
                                                                                                                                }
                                                                                                                                If provided, allows you to override the default behavior of determining whether a row can be expanded.
                                                                                                                                    (
                                                                                                                                    row: Row<TData>,
                                                                                                                                    ) => boolean
                                                                                                                                    This optional function is used to derive a unique ID for any given row. If not provided the rows index is used (nested rows join together with . using their grandparents' index e.g.,index.index.index). If you need to identify individual rows that are originating from any server-side operations, it's suggested you use this function to return an ID that makes sense regardless of network IO/ambiguity e.g., a userId, taskId, database ID field, etc.
                                                                                                                                        (
                                                                                                                                        originalRow: TData,
                                                                                                                                        index: number,
                                                                                                                                        parent: Row<TData>,
                                                                                                                                        ) => string
                                                                                                                                        This function is used to retrieve the sorted row model. If using server-side sorting, this function is not required. To use client-side sorting, pass the exported getSortedRowModel() from your adapter to your table or implement your own.
                                                                                                                                            (
                                                                                                                                            table: TableInstance<any>,
                                                                                                                                            ) => () => {
                                                                                                                                            flatRows: Row[]
                                                                                                                                            rows: Row[]
                                                                                                                                            rowsById: Record
                                                                                                                                            }
                                                                                                                                            This optional function is used to access the sub rows for any given row. If you are using nested rows, you will need to use this function to return the sub rows object (or undefined) from the row.
                                                                                                                                                (
                                                                                                                                                originalRow: TData,
                                                                                                                                                index: number,
                                                                                                                                                ) => Array<TData>
                                                                                                                                                The filter function to use for global filtering.
                                                                                                                                                - A
                                                                                                                                                string referencing a built-in filter function
                                                                                                                                                - A
                                                                                                                                                string that references a custom filter functions provided via the tableOptions.filterFns option - A custom filter function
                                                                                                                                                FilterFnOption<TData>
                                                                                                                                                Grouping columns are automatically reordered by default to the start of the columns list. If you would rather remove them or leave them as-is, set the appropriate mode here.
                                                                                                                                                | false
                                                                                                                                                | 'remove'
                                                                                                                                                | 'reorder'
                                                                                                                                                Include child rows when pinning parent.
                                                                                                                                                boolean
                                                                                                                                                Include parent rows when pinning child.
                                                                                                                                                boolean
                                                                                                                                                Use this option to optionally pass initial state to the table. This state will be used when resetting various table states either automatically by the table (e.g.,options.autoResetPageIndex) or via functions like table.resetRowSelection(). Most reset functions allow you to optionally pass a flag to reset to a blank/default state instead of the initial state.

                                                                                                                                                Table state will not be reset when this object changes, which also means that the initial state object does not need to be stable.
                                                                                                                                                InitialTableState
                                                                                                                                                Pass a custom function that will be used to determine if a multi-sort event should be triggered. It is passed the event from the sort toggle handler and should return true if the event should trigger a multi-sort.
                                                                                                                                                    (
                                                                                                                                                    e: unknown,
                                                                                                                                                    ) => boolean
                                                                                                                                                    When false, pinned rows will not be visible if they are filtered or paginated out of the table. When true, pinned rows will always be visible regardless of filtering or pagination. Defaults to true.
                                                                                                                                                    boolean
                                                                                                                                                    Enables manual row expansion. If this is set to true, getExpandedRowModel will not be used to expand rows and you would be expected to perform the expansion in your own data model. This is useful if you are doing server-side expansion.
                                                                                                                                                    boolean
                                                                                                                                                    Disables the getFilteredRowModel from being used to filter data. This may be useful if your table needs to dynamically support both client-side and server-side filtering.
                                                                                                                                                    boolean
                                                                                                                                                    Enables manual grouping. If this option is set to true, the table will not automatically group rows using getGroupedRowModel() and instead will expect you to manually group the rows before passing them to the table. This is useful if you are doing server-side grouping and aggregation.
                                                                                                                                                    boolean
                                                                                                                                                    Enables manual pagination. If this option is set to true, the table will not automatically paginate rows using getPaginationRowModel() and instead will expect you to manually paginate the rows before passing them to the table. This is useful if you are doing server-side pagination and aggregation.
                                                                                                                                                    boolean
                                                                                                                                                    Enables manual sorting for the table. If this is true, you will be expected to sort your data before it is passed to the table. This is useful if you are doing server-side sorting.
                                                                                                                                                    boolean
                                                                                                                                                    By default, filtering is done for all rows (max depth of 100), no matter if they are root level parent rows or the child leaf rows of a parent row. Setting this option to 0 will cause filtering to only be applied to the root level parent rows, with all sub-rows remaining unfiltered. Similarly, setting this option to 1 will cause filtering to only be applied to child leaf rows 1 level deep, and so on.

                                                                                                                                                    This is useful for situations where you want a row's entire child hierarchy to be visible regardless of the applied filter.
                                                                                                                                                    number
                                                                                                                                                    Set a maximum number of columns that can be multi-sorted.
                                                                                                                                                    number
                                                                                                                                                    This option is used to optionally implement the merging of table options.
                                                                                                                                                        (
                                                                                                                                                        defaultOptions: TableOptions<TData>,
                                                                                                                                                        options: Partial<
                                                                                                                                                        TableOptions<TData>
                                                                                                                                                        >,
                                                                                                                                                        ) => TableOptions<TData>
                                                                                                                                                        You can pass any object to options.meta and access it anywhere the table is available via table.options.meta.
                                                                                                                                                        TableMeta<TData>
                                                                                                                                                        If provided, this function will be called with an updaterFn when state.columnFilters changes. This overrides the default internal state management, so you will need to persist the state change either fully or partially outside the table.
                                                                                                                                                            (
                                                                                                                                                            updaterOrValue:
                                                                                                                                                            | T
                                                                                                                                                            | ((old: T) => T),
                                                                                                                                                            ) => void
                                                                                                                                                            If provided, this function will be called with an updaterFn when state.columnOrder changes. This overrides the default internal state management, so you will need to persist the state change either fully or partially outside the table.
                                                                                                                                                                (
                                                                                                                                                                updaterOrValue:
                                                                                                                                                                | T
                                                                                                                                                                | ((old: T) => T),
                                                                                                                                                                ) => void
                                                                                                                                                                If provided, this function will be called with an updaterFn when state.columnPinning changes. This overrides the default internal state management, so you will also need to supply state.columnPinning from your own managed state.
                                                                                                                                                                    (
                                                                                                                                                                    updaterOrValue:
                                                                                                                                                                    | T
                                                                                                                                                                    | ((old: T) => T),
                                                                                                                                                                    ) => void
                                                                                                                                                                    If provided, this function will be called with an updaterFn when state.columnSizing changes. This overrides the default internal state management, so you will also need to supply state.columnSizing from your own managed state.
                                                                                                                                                                        (
                                                                                                                                                                        updaterOrValue:
                                                                                                                                                                        | T
                                                                                                                                                                        | ((old: T) => T),
                                                                                                                                                                        ) => void
                                                                                                                                                                        If provided, this function will be called with an updaterFn when state.columnSizingInfo changes. This overrides the default internal state management, so you will also need to supply state.columnSizingInfo from your own managed state.
                                                                                                                                                                            (
                                                                                                                                                                            updaterOrValue:
                                                                                                                                                                            | T
                                                                                                                                                                            | ((old: T) => T),
                                                                                                                                                                            ) => void
                                                                                                                                                                            If provided, this function will be called with an updaterFn when state.columnVisibility changes. This overrides the default internal state management, so you will need to persist the state change either fully or partially outside of the table.
                                                                                                                                                                            OnChangeFn<VisibilityState>
                                                                                                                                                                            This function is called when the expanded table state changes. If a function is provided, you will be responsible for managing this state on your own. To pass the managed state back to the table, use the tableOptions.state.expanded option.
                                                                                                                                                                            OnChangeFn<ExpandedState>
                                                                                                                                                                            If provided, this function will be called with an updaterFn when state.globalFilter changes. This overrides the default internal state management, so you will need to persist the state change either fully or partially outside the table.
                                                                                                                                                                                (
                                                                                                                                                                                updaterOrValue:
                                                                                                                                                                                | T
                                                                                                                                                                                | ((old: T) => T),
                                                                                                                                                                                ) => void
                                                                                                                                                                                If this function is provided, it will be called when the grouping state changes and you will be expected to manage the state yourself. You can pass the managed state back to the table via the tableOptions.state.grouping option.
                                                                                                                                                                                    (
                                                                                                                                                                                    updaterOrValue:
                                                                                                                                                                                    | T
                                                                                                                                                                                    | ((old: T) => T),
                                                                                                                                                                                    ) => void
                                                                                                                                                                                    If this function is provided, it will be called when the pagination state changes and you will be expected to manage the state yourself. You can pass the managed state back to the table via the tableOptions.state.pagination option.
                                                                                                                                                                                        (
                                                                                                                                                                                        updaterOrValue:
                                                                                                                                                                                        | T
                                                                                                                                                                                        | ((old: T) => T),
                                                                                                                                                                                        ) => void
                                                                                                                                                                                        If provided, this function will be called with an updaterFn when state.rowPinning changes. This overrides the default internal state management, so you will also need to supply state.rowPinning from your own managed state.
                                                                                                                                                                                            (
                                                                                                                                                                                            updaterOrValue:
                                                                                                                                                                                            | T
                                                                                                                                                                                            | ((old: T) => T),
                                                                                                                                                                                            ) => void
                                                                                                                                                                                            If provided, this function will be called with an updaterFn when state.rowSelection changes. This overrides the default internal state management, so you will need to persist the state change either fully or partially outside of the table.
                                                                                                                                                                                                (
                                                                                                                                                                                                updaterOrValue:
                                                                                                                                                                                                | T
                                                                                                                                                                                                | ((old: T) => T),
                                                                                                                                                                                                ) => void
                                                                                                                                                                                                If provided, this function will be called with an updaterFn when state.sorting changes. This overrides the default internal state management, so you will need to persist the state change either fully or partially outside of the table.
                                                                                                                                                                                                    (
                                                                                                                                                                                                    updaterOrValue:
                                                                                                                                                                                                    | T
                                                                                                                                                                                                    | ((old: T) => T),
                                                                                                                                                                                                    ) => void
                                                                                                                                                                                                    The onStateChange option can be used to optionally listen to state changes within the table.
                                                                                                                                                                                                        (
                                                                                                                                                                                                        updater: Updater<TableState>,
                                                                                                                                                                                                        ) => void
                                                                                                                                                                                                        When manually controlling pagination, you should supply a total pageCount value to the table if you know it. If you do not know how many pages there are, you can set this to -1.
                                                                                                                                                                                                        number
                                                                                                                                                                                                        If true expanded rows will be paginated along with the rest of the table (which means expanded rows may span multiple pages). If false expanded rows will not be considered for pagination (which means expanded rows will always render on their parents page. This also means more rows will be rendered than the set page size)
                                                                                                                                                                                                        boolean
                                                                                                                                                                                                        Value used when the desired value is not found in the data.
                                                                                                                                                                                                        any
                                                                                                                                                                                                        If true, all sorts will default to descending as their first toggle state.
                                                                                                                                                                                                        boolean
                                                                                                                                                                                                        Record<
                                                                                                                                                                                                        string,
                                                                                                                                                                                                        any
                                                                                                                                                                                                        >
                                                                                                                                                                                                        The state option can be used to optionally _control_ part or all of the table state. The state you pass here will merge with and overwrite the internal automatically-managed state to produce the final state for the table. You can also listen to state changes via the onStateChange option. > Note: Any state passed in here will override both the internal state and any other initialState you provide.
                                                                                                                                                                                                        Partial<TableState>
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        Record
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        boolean
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        Set this option to override any of the autoReset... feature options.
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        boolean
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        Enable this setting to automatically reset the expanded state of the table when expanding state changes.
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        boolean
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        If set to true, pagination will be reset to the first page when page-altering state changes e.g.,data is updated, filters change, grouping changes, etc.
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        'ltr' | 'rtl'
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        Enables or disables right-to-left support for resizing the column. defaults to 'ltr'.
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        | 'onChange'
                                                                                                                                                                                                        | 'onEnd'
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        Determines when the columnSizing state is updated. onChange updates the state when the user is dragging the resize handle. onEnd updates the state when the user releases the resize handle.
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        ColumnDef[]
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        The array of column defs to use for the table.
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        Array<TData>
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        The data for the table to display. This array should match the type you provided to table.setRowType<...>. Columns can access this data via string/index or a functional accessor. When the data option changes reference, the table will reprocess the data.
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        boolean
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        Set this option to true to output all debugging information to the console.
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        boolean
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        Set this option to true to output column debugging information to the console.
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        boolean
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        Set this option to true to output header debugging information to the console.
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        boolean
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        Set this option to true to output row debugging information to the console.
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        boolean
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        Set this option to true to output table debugging information to the console.
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        Partial<ColumnDef>
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        Default column options to use for all column defs supplied to the table.
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        boolean
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        Enables/disables column filtering for all columns.
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        boolean
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        Enables/disables column pinning for the table. Defaults to true.
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        boolean
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        Enables or disables column resizing for the column.
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        boolean
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        Enable/disable expanding for all rows.
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        boolean
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        Enables/disables all filtering for the table.
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        boolean
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        Enables/disables global filtering for all columns.
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        boolean
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        Enables/disables grouping for the table.
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        boolean
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        boolean
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        Enables/disables the ability to remove multi-sorts
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        | boolean
                                                                                                                                                                                                        | ((
                                                                                                                                                                                                        row: Row<TData>,
                                                                                                                                                                                                        ) => boolean)
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        - Enables/disables multiple row selection for all rows in the table OR
                                                                                                                                                                                                        - A function that given a row, returns whether to enable/disable multiple row selection for that row's children/grandchildren
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        boolean
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        Enables/Disables multi-sorting for the table.
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        boolean
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        Enables/disables all pinning for the table. Defaults to true.
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        | boolean
                                                                                                                                                                                                        | ((
                                                                                                                                                                                                        row: Row<TData>,
                                                                                                                                                                                                        ) => boolean)
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        Enables/disables row pinning for the table. Defaults to true.
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        | boolean
                                                                                                                                                                                                        | ((
                                                                                                                                                                                                        row: Row<TData>,
                                                                                                                                                                                                        ) => boolean)
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        - Enables/disables row selection for all rows in the table OR
                                                                                                                                                                                                        - A function that given a row, returns whether to enable/disable row selection for that row
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        boolean
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        Enables/Disables sorting for the table.
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        boolean
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        Enables/Disables the ability to remove sorting for the table.
                                                                                                                                                                                                        - If
                                                                                                                                                                                                        true then changing sort order will circle like: 'none' -> 'desc' -> 'asc' -> 'none' -> ... - If false then changing sort order will circle like: 'none' -> 'desc' -> 'asc' -> 'desc' -> 'asc' -> ...
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        | boolean
                                                                                                                                                                                                        | ((
                                                                                                                                                                                                        row: Row<TData>,
                                                                                                                                                                                                        ) => boolean)
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        Enables/disables automatic sub-row selection when a parent row is selected, or a function that enables/disables automatic sub-row selection for each row. (Use in combination with expanding or grouping features)
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        Record
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        boolean
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        By default, filtering is done from parent rows down (so if a parent row is filtered out, all of its children will be filtered out as well). Setting this option to true will cause filtering to be done from leaf rows up (which means parent rows will be included so long as one of their child or grand-child rows is also included).
                                                                                                                                                                                                        Type
                                                                                                                                                                                                        (
                                                                                                                                                                                                        column: Column<
                                                                                                                                                                                                        TData,
                                                                                                                                                                                                        unknown
                                                                                                                                                                                                        >,
                                                                                                                                                                                                        ) => boolean
                                                                                                                                                                                                        Description
                                                                                                                                                                                                        If provided, this function will be called with the column and should return true or false to indicate whether this column should be used for global filtering.

                                                                                                                                                                                                        This is useful if the column can contain data that is not
                                                                                                                                                                                                        string or number (i.e. undefined).
                                                                                                                                                                                                            Type
                                                                                                                                                                                                            (
                                                                                                                                                                                                            table: TableInstance<any>,
                                                                                                                                                                                                            ) => () => RowModel<any>
                                                                                                                                                                                                            Description
                                                                                                                                                                                                            This required option is a factory for a function that computes and returns the core row model for the table.
                                                                                                                                                                                                                Type
                                                                                                                                                                                                                (
                                                                                                                                                                                                                table: TableInstance<any>,
                                                                                                                                                                                                                ) => () => {
                                                                                                                                                                                                                flatRows: Row[]
                                                                                                                                                                                                                rows: Row[]
                                                                                                                                                                                                                rowsById: Record
                                                                                                                                                                                                                }
                                                                                                                                                                                                                Description
                                                                                                                                                                                                                This function is responsible for returning the expanded row model. If this function is not provided, the table will not expand rows. You can use the default exported getExpandedRowModel function to get the expanded row model or implement your own.
                                                                                                                                                                                                                    Type
                                                                                                                                                                                                                    (
                                                                                                                                                                                                                    table: TableInstance<TData>,
                                                                                                                                                                                                                    columnId: string,
                                                                                                                                                                                                                    ) => () => [number, number]
                                                                                                                                                                                                                    Type
                                                                                                                                                                                                                    (
                                                                                                                                                                                                                    table: TableInstance<TData>,
                                                                                                                                                                                                                    columnId: string,
                                                                                                                                                                                                                    ) => () => {
                                                                                                                                                                                                                    flatRows: Row[]
                                                                                                                                                                                                                    rows: Row[]
                                                                                                                                                                                                                    rowsById: Record
                                                                                                                                                                                                                    }
                                                                                                                                                                                                                    Type
                                                                                                                                                                                                                    (
                                                                                                                                                                                                                    table: TableInstance<TData>,
                                                                                                                                                                                                                    columnId: string,
                                                                                                                                                                                                                    ) => () => Map<any, number>
                                                                                                                                                                                                                    Type
                                                                                                                                                                                                                    (
                                                                                                                                                                                                                    table: TableInstance<TData>,
                                                                                                                                                                                                                    ) => () => {
                                                                                                                                                                                                                    flatRows: Row[]
                                                                                                                                                                                                                    rows: Row[]
                                                                                                                                                                                                                    rowsById: Record
                                                                                                                                                                                                                    }
                                                                                                                                                                                                                    Description
                                                                                                                                                                                                                    If provided, this function is called once per table and should return a new function which will calculate and return the row model for the table when it's filtered. - For server-side filtering, this function is unnecessary and can be ignored since the server should already return the filtered row model. - For client-side filtering, this function is required. A default implementation is provided via any table adapter's { getFilteredRowModel } export.
                                                                                                                                                                                                                        Type
                                                                                                                                                                                                                        (
                                                                                                                                                                                                                        table: TableInstance<any>,
                                                                                                                                                                                                                        ) => () => {
                                                                                                                                                                                                                        flatRows: Row[]
                                                                                                                                                                                                                        rows: Row[]
                                                                                                                                                                                                                        rowsById: Record
                                                                                                                                                                                                                        }
                                                                                                                                                                                                                        Description
                                                                                                                                                                                                                        Returns the row model after grouping has taken place, but no further.
                                                                                                                                                                                                                            Type
                                                                                                                                                                                                                            (
                                                                                                                                                                                                                            row: Row<TData>,
                                                                                                                                                                                                                            ) => boolean
                                                                                                                                                                                                                            Description
                                                                                                                                                                                                                            If provided, allows you to override the default behavior of determining whether a row is currently expanded.
                                                                                                                                                                                                                                Type
                                                                                                                                                                                                                                (
                                                                                                                                                                                                                                table: TableInstance<any>,
                                                                                                                                                                                                                                ) => () => {
                                                                                                                                                                                                                                flatRows: Row[]
                                                                                                                                                                                                                                rows: Row[]
                                                                                                                                                                                                                                rowsById: Record
                                                                                                                                                                                                                                }
                                                                                                                                                                                                                                Description
                                                                                                                                                                                                                                Returns the row model after pagination has taken place, but no further.

                                                                                                                                                                                                                                Pagination columns are automatically reordered by default to the start of the columns list. If you would rather remove them or leave them as-is, set the appropriate mode here.
                                                                                                                                                                                                                                    Type
                                                                                                                                                                                                                                    (
                                                                                                                                                                                                                                    row: Row<TData>,
                                                                                                                                                                                                                                    ) => boolean
                                                                                                                                                                                                                                    Description
                                                                                                                                                                                                                                    If provided, allows you to override the default behavior of determining whether a row can be expanded.
                                                                                                                                                                                                                                        Type
                                                                                                                                                                                                                                        (
                                                                                                                                                                                                                                        originalRow: TData,
                                                                                                                                                                                                                                        index: number,
                                                                                                                                                                                                                                        parent: Row<TData>,
                                                                                                                                                                                                                                        ) => string
                                                                                                                                                                                                                                        Description
                                                                                                                                                                                                                                        This optional function is used to derive a unique ID for any given row. If not provided the rows index is used (nested rows join together with . using their grandparents' index e.g.,index.index.index). If you need to identify individual rows that are originating from any server-side operations, it's suggested you use this function to return an ID that makes sense regardless of network IO/ambiguity e.g., a userId, taskId, database ID field, etc.
                                                                                                                                                                                                                                            Type
                                                                                                                                                                                                                                            (
                                                                                                                                                                                                                                            table: TableInstance<any>,
                                                                                                                                                                                                                                            ) => () => {
                                                                                                                                                                                                                                            flatRows: Row[]
                                                                                                                                                                                                                                            rows: Row[]
                                                                                                                                                                                                                                            rowsById: Record
                                                                                                                                                                                                                                            }
                                                                                                                                                                                                                                            Description
                                                                                                                                                                                                                                            This function is used to retrieve the sorted row model. If using server-side sorting, this function is not required. To use client-side sorting, pass the exported getSortedRowModel() from your adapter to your table or implement your own.
                                                                                                                                                                                                                                                Type
                                                                                                                                                                                                                                                (
                                                                                                                                                                                                                                                originalRow: TData,
                                                                                                                                                                                                                                                index: number,
                                                                                                                                                                                                                                                ) => Array<TData>
                                                                                                                                                                                                                                                Description
                                                                                                                                                                                                                                                This optional function is used to access the sub rows for any given row. If you are using nested rows, you will need to use this function to return the sub rows object (or undefined) from the row.
                                                                                                                                                                                                                                                    Type
                                                                                                                                                                                                                                                    FilterFnOption<TData>
                                                                                                                                                                                                                                                    Description
                                                                                                                                                                                                                                                    The filter function to use for global filtering.
                                                                                                                                                                                                                                                    - A
                                                                                                                                                                                                                                                    string referencing a built-in filter function
                                                                                                                                                                                                                                                    - A
                                                                                                                                                                                                                                                    string that references a custom filter functions provided via the tableOptions.filterFns option - A custom filter function
                                                                                                                                                                                                                                                    Type
                                                                                                                                                                                                                                                    | false
                                                                                                                                                                                                                                                    | 'remove'
                                                                                                                                                                                                                                                    | 'reorder'
                                                                                                                                                                                                                                                    Description
                                                                                                                                                                                                                                                    Grouping columns are automatically reordered by default to the start of the columns list. If you would rather remove them or leave them as-is, set the appropriate mode here.
                                                                                                                                                                                                                                                    Type
                                                                                                                                                                                                                                                    boolean
                                                                                                                                                                                                                                                    Description
                                                                                                                                                                                                                                                    Include child rows when pinning parent.
                                                                                                                                                                                                                                                    Type
                                                                                                                                                                                                                                                    boolean
                                                                                                                                                                                                                                                    Description
                                                                                                                                                                                                                                                    Include parent rows when pinning child.
                                                                                                                                                                                                                                                    Type
                                                                                                                                                                                                                                                    InitialTableState
                                                                                                                                                                                                                                                    Description
                                                                                                                                                                                                                                                    Use this option to optionally pass initial state to the table. This state will be used when resetting various table states either automatically by the table (e.g.,options.autoResetPageIndex) or via functions like table.resetRowSelection(). Most reset functions allow you to optionally pass a flag to reset to a blank/default state instead of the initial state.

                                                                                                                                                                                                                                                    Table state will not be reset when this object changes, which also means that the initial state object does not need to be stable.
                                                                                                                                                                                                                                                    Type
                                                                                                                                                                                                                                                    (
                                                                                                                                                                                                                                                    e: unknown,
                                                                                                                                                                                                                                                    ) => boolean
                                                                                                                                                                                                                                                    Description
                                                                                                                                                                                                                                                    Pass a custom function that will be used to determine if a multi-sort event should be triggered. It is passed the event from the sort toggle handler and should return true if the event should trigger a multi-sort.
                                                                                                                                                                                                                                                        Type
                                                                                                                                                                                                                                                        boolean
                                                                                                                                                                                                                                                        Description
                                                                                                                                                                                                                                                        When false, pinned rows will not be visible if they are filtered or paginated out of the table. When true, pinned rows will always be visible regardless of filtering or pagination. Defaults to true.
                                                                                                                                                                                                                                                        Type
                                                                                                                                                                                                                                                        boolean
                                                                                                                                                                                                                                                        Description
                                                                                                                                                                                                                                                        Enables manual row expansion. If this is set to true, getExpandedRowModel will not be used to expand rows and you would be expected to perform the expansion in your own data model. This is useful if you are doing server-side expansion.
                                                                                                                                                                                                                                                        Type
                                                                                                                                                                                                                                                        boolean
                                                                                                                                                                                                                                                        Description
                                                                                                                                                                                                                                                        Disables the getFilteredRowModel from being used to filter data. This may be useful if your table needs to dynamically support both client-side and server-side filtering.
                                                                                                                                                                                                                                                        Type
                                                                                                                                                                                                                                                        boolean
                                                                                                                                                                                                                                                        Description
                                                                                                                                                                                                                                                        Enables manual grouping. If this option is set to true, the table will not automatically group rows using getGroupedRowModel() and instead will expect you to manually group the rows before passing them to the table. This is useful if you are doing server-side grouping and aggregation.
                                                                                                                                                                                                                                                        Type
                                                                                                                                                                                                                                                        boolean
                                                                                                                                                                                                                                                        Description
                                                                                                                                                                                                                                                        Enables manual pagination. If this option is set to true, the table will not automatically paginate rows using getPaginationRowModel() and instead will expect you to manually paginate the rows before passing them to the table. This is useful if you are doing server-side pagination and aggregation.
                                                                                                                                                                                                                                                        Type
                                                                                                                                                                                                                                                        boolean
                                                                                                                                                                                                                                                        Description
                                                                                                                                                                                                                                                        Enables manual sorting for the table. If this is true, you will be expected to sort your data before it is passed to the table. This is useful if you are doing server-side sorting.
                                                                                                                                                                                                                                                        Type
                                                                                                                                                                                                                                                        number
                                                                                                                                                                                                                                                        Description
                                                                                                                                                                                                                                                        By default, filtering is done for all rows (max depth of 100), no matter if they are root level parent rows or the child leaf rows of a parent row. Setting this option to 0 will cause filtering to only be applied to the root level parent rows, with all sub-rows remaining unfiltered. Similarly, setting this option to 1 will cause filtering to only be applied to child leaf rows 1 level deep, and so on.

                                                                                                                                                                                                                                                        This is useful for situations where you want a row's entire child hierarchy to be visible regardless of the applied filter.
                                                                                                                                                                                                                                                        Type
                                                                                                                                                                                                                                                        number
                                                                                                                                                                                                                                                        Description
                                                                                                                                                                                                                                                        Set a maximum number of columns that can be multi-sorted.
                                                                                                                                                                                                                                                        Type
                                                                                                                                                                                                                                                        (
                                                                                                                                                                                                                                                        defaultOptions: TableOptions<TData>,
                                                                                                                                                                                                                                                        options: Partial<
                                                                                                                                                                                                                                                        TableOptions<TData>
                                                                                                                                                                                                                                                        >,
                                                                                                                                                                                                                                                        ) => TableOptions<TData>
                                                                                                                                                                                                                                                        Description
                                                                                                                                                                                                                                                        This option is used to optionally implement the merging of table options.
                                                                                                                                                                                                                                                            Type
                                                                                                                                                                                                                                                            TableMeta<TData>
                                                                                                                                                                                                                                                            Description
                                                                                                                                                                                                                                                            You can pass any object to options.meta and access it anywhere the table is available via table.options.meta.
                                                                                                                                                                                                                                                            Type
                                                                                                                                                                                                                                                            (
                                                                                                                                                                                                                                                            updaterOrValue:
                                                                                                                                                                                                                                                            | T
                                                                                                                                                                                                                                                            | ((old: T) => T),
                                                                                                                                                                                                                                                            ) => void
                                                                                                                                                                                                                                                            Description
                                                                                                                                                                                                                                                            If provided, this function will be called with an updaterFn when state.columnFilters changes. This overrides the default internal state management, so you will need to persist the state change either fully or partially outside the table.
                                                                                                                                                                                                                                                                Type
                                                                                                                                                                                                                                                                (
                                                                                                                                                                                                                                                                updaterOrValue:
                                                                                                                                                                                                                                                                | T
                                                                                                                                                                                                                                                                | ((old: T) => T),
                                                                                                                                                                                                                                                                ) => void
                                                                                                                                                                                                                                                                Description
                                                                                                                                                                                                                                                                If provided, this function will be called with an updaterFn when state.columnOrder changes. This overrides the default internal state management, so you will need to persist the state change either fully or partially outside the table.
                                                                                                                                                                                                                                                                    Type
                                                                                                                                                                                                                                                                    (
                                                                                                                                                                                                                                                                    updaterOrValue:
                                                                                                                                                                                                                                                                    | T
                                                                                                                                                                                                                                                                    | ((old: T) => T),
                                                                                                                                                                                                                                                                    ) => void
                                                                                                                                                                                                                                                                    Description
                                                                                                                                                                                                                                                                    If provided, this function will be called with an updaterFn when state.columnPinning changes. This overrides the default internal state management, so you will also need to supply state.columnPinning from your own managed state.
                                                                                                                                                                                                                                                                        Type
                                                                                                                                                                                                                                                                        (
                                                                                                                                                                                                                                                                        updaterOrValue:
                                                                                                                                                                                                                                                                        | T
                                                                                                                                                                                                                                                                        | ((old: T) => T),
                                                                                                                                                                                                                                                                        ) => void
                                                                                                                                                                                                                                                                        Description
                                                                                                                                                                                                                                                                        If provided, this function will be called with an updaterFn when state.columnSizing changes. This overrides the default internal state management, so you will also need to supply state.columnSizing from your own managed state.
                                                                                                                                                                                                                                                                            Type
                                                                                                                                                                                                                                                                            (
                                                                                                                                                                                                                                                                            updaterOrValue:
                                                                                                                                                                                                                                                                            | T
                                                                                                                                                                                                                                                                            | ((old: T) => T),
                                                                                                                                                                                                                                                                            ) => void
                                                                                                                                                                                                                                                                            Description
                                                                                                                                                                                                                                                                            If provided, this function will be called with an updaterFn when state.columnSizingInfo changes. This overrides the default internal state management, so you will also need to supply state.columnSizingInfo from your own managed state.
                                                                                                                                                                                                                                                                                Type
                                                                                                                                                                                                                                                                                OnChangeFn<VisibilityState>
                                                                                                                                                                                                                                                                                Description
                                                                                                                                                                                                                                                                                If provided, this function will be called with an updaterFn when state.columnVisibility changes. This overrides the default internal state management, so you will need to persist the state change either fully or partially outside of the table.
                                                                                                                                                                                                                                                                                Type
                                                                                                                                                                                                                                                                                OnChangeFn<ExpandedState>
                                                                                                                                                                                                                                                                                Description
                                                                                                                                                                                                                                                                                This function is called when the expanded table state changes. If a function is provided, you will be responsible for managing this state on your own. To pass the managed state back to the table, use the tableOptions.state.expanded option.
                                                                                                                                                                                                                                                                                Type
                                                                                                                                                                                                                                                                                (
                                                                                                                                                                                                                                                                                updaterOrValue:
                                                                                                                                                                                                                                                                                | T
                                                                                                                                                                                                                                                                                | ((old: T) => T),
                                                                                                                                                                                                                                                                                ) => void
                                                                                                                                                                                                                                                                                Description
                                                                                                                                                                                                                                                                                If provided, this function will be called with an updaterFn when state.globalFilter changes. This overrides the default internal state management, so you will need to persist the state change either fully or partially outside the table.
                                                                                                                                                                                                                                                                                    Type
                                                                                                                                                                                                                                                                                    (
                                                                                                                                                                                                                                                                                    updaterOrValue:
                                                                                                                                                                                                                                                                                    | T
                                                                                                                                                                                                                                                                                    | ((old: T) => T),
                                                                                                                                                                                                                                                                                    ) => void
                                                                                                                                                                                                                                                                                    Description
                                                                                                                                                                                                                                                                                    If this function is provided, it will be called when the grouping state changes and you will be expected to manage the state yourself. You can pass the managed state back to the table via the tableOptions.state.grouping option.
                                                                                                                                                                                                                                                                                        Type
                                                                                                                                                                                                                                                                                        (
                                                                                                                                                                                                                                                                                        updaterOrValue:
                                                                                                                                                                                                                                                                                        | T
                                                                                                                                                                                                                                                                                        | ((old: T) => T),
                                                                                                                                                                                                                                                                                        ) => void
                                                                                                                                                                                                                                                                                        Description
                                                                                                                                                                                                                                                                                        If this function is provided, it will be called when the pagination state changes and you will be expected to manage the state yourself. You can pass the managed state back to the table via the tableOptions.state.pagination option.
                                                                                                                                                                                                                                                                                            Type
                                                                                                                                                                                                                                                                                            (
                                                                                                                                                                                                                                                                                            updaterOrValue:
                                                                                                                                                                                                                                                                                            | T
                                                                                                                                                                                                                                                                                            | ((old: T) => T),
                                                                                                                                                                                                                                                                                            ) => void
                                                                                                                                                                                                                                                                                            Description
                                                                                                                                                                                                                                                                                            If provided, this function will be called with an updaterFn when state.rowPinning changes. This overrides the default internal state management, so you will also need to supply state.rowPinning from your own managed state.
                                                                                                                                                                                                                                                                                                Type
                                                                                                                                                                                                                                                                                                (
                                                                                                                                                                                                                                                                                                updaterOrValue:
                                                                                                                                                                                                                                                                                                | T
                                                                                                                                                                                                                                                                                                | ((old: T) => T),
                                                                                                                                                                                                                                                                                                ) => void
                                                                                                                                                                                                                                                                                                Description
                                                                                                                                                                                                                                                                                                If provided, this function will be called with an updaterFn when state.rowSelection changes. This overrides the default internal state management, so you will need to persist the state change either fully or partially outside of the table.
                                                                                                                                                                                                                                                                                                    Type
                                                                                                                                                                                                                                                                                                    (
                                                                                                                                                                                                                                                                                                    updaterOrValue:
                                                                                                                                                                                                                                                                                                    | T
                                                                                                                                                                                                                                                                                                    | ((old: T) => T),
                                                                                                                                                                                                                                                                                                    ) => void
                                                                                                                                                                                                                                                                                                    Description
                                                                                                                                                                                                                                                                                                    If provided, this function will be called with an updaterFn when state.sorting changes. This overrides the default internal state management, so you will need to persist the state change either fully or partially outside of the table.
                                                                                                                                                                                                                                                                                                        Type
                                                                                                                                                                                                                                                                                                        (
                                                                                                                                                                                                                                                                                                        updater: Updater<TableState>,
                                                                                                                                                                                                                                                                                                        ) => void
                                                                                                                                                                                                                                                                                                        Description
                                                                                                                                                                                                                                                                                                        The onStateChange option can be used to optionally listen to state changes within the table.
                                                                                                                                                                                                                                                                                                            Type
                                                                                                                                                                                                                                                                                                            number
                                                                                                                                                                                                                                                                                                            Description
                                                                                                                                                                                                                                                                                                            When manually controlling pagination, you should supply a total pageCount value to the table if you know it. If you do not know how many pages there are, you can set this to -1.
                                                                                                                                                                                                                                                                                                            Type
                                                                                                                                                                                                                                                                                                            boolean
                                                                                                                                                                                                                                                                                                            Description
                                                                                                                                                                                                                                                                                                            If true expanded rows will be paginated along with the rest of the table (which means expanded rows may span multiple pages). If false expanded rows will not be considered for pagination (which means expanded rows will always render on their parents page. This also means more rows will be rendered than the set page size)
                                                                                                                                                                                                                                                                                                            Type
                                                                                                                                                                                                                                                                                                            any
                                                                                                                                                                                                                                                                                                            Description
                                                                                                                                                                                                                                                                                                            Value used when the desired value is not found in the data.
                                                                                                                                                                                                                                                                                                            Type
                                                                                                                                                                                                                                                                                                            boolean
                                                                                                                                                                                                                                                                                                            Description
                                                                                                                                                                                                                                                                                                            If true, all sorts will default to descending as their first toggle state.
                                                                                                                                                                                                                                                                                                            Type
                                                                                                                                                                                                                                                                                                            Record<
                                                                                                                                                                                                                                                                                                            string,
                                                                                                                                                                                                                                                                                                            any
                                                                                                                                                                                                                                                                                                            >
                                                                                                                                                                                                                                                                                                            Type
                                                                                                                                                                                                                                                                                                            Partial<TableState>
                                                                                                                                                                                                                                                                                                            Description
                                                                                                                                                                                                                                                                                                            The state option can be used to optionally _control_ part or all of the table state. The state you pass here will merge with and overwrite the internal automatically-managed state to produce the final state for the table. You can also listen to state changes via the onStateChange option. > Note: Any state passed in here will override both the internal state and any other initialState you provide.