SST_ColumnDef<TData, TValue> describes a single column. It extends the underlying TanStack Table v8 ColumnDef with extra options for filtering UI, editing, slot props, and column-level enable flags.
import { type SST_ColumnDef } from'shadstack-table';
Which filter UI to render. Defaults to 'text'. date / date-range use a shadcn Popover + Calendar; time / datetime variants fall back to native inputs.
filterSelectOptions
string[] | { label, value }[]
Options for select / multi-select / autocomplete filter variants.
filterFnRangeOptions
{ min, max, step? }
Range bounds for range-slider filter variant.
enableFilterByColumnMenuItem
boolean
Show the “filter by column” entry in this column’s actions menu. Default true. Set false to drop the entry while keeping the column filterable — enableColumnFilter: false would take the “clear filter” entry with it.
Every cell, header, footer, filter input, and edit input accepts slotProps for per-column className / prop overrides. These accept either a plain object or a (props) => object callback: