OptionalactiveKey?: stringOptionalannounceEmpty?: booleanFalse when the page announces the empty result itself, so it is said once.
Optionalcard?: (row: T) => ReactNodeA card layout below md, sharing the empty state and the footer.
Optionaldensity?: "compact" | "comfortable"Shown in a status row when there are no rows.
OptionalgroupBy?: (row: T) => { key: string; label: ReactNode }A heading row wherever the key changes from the row before.
The table's accessible name.
Optionalpagination?: {undefined leaves that page unlinked.
Optionaltotal?: numberAdds "of total" to the "start–end" range; omit when the total is unknown.
OptionalrowClassName?: (row: T) => string | undefinedOptionalscrollable?: booleanMakes the scroll container a focusable region, for tables wider than the viewport.
Optionalselection?: {A checkbox column and a selection bar holding actions. Row items cross
to the client provider, so they must be serializable.
Optionalactions?: ReactNodeOptionalallLabel?: stringThe select-all checkbox's label.
Optionalselectable?: (row: T) => booleanRows it returns false for show a disabled checkbox and are left out of select-all.
Optionaltotal?: numberWhat "select all" covers; defaults to pagination.total, else the rows shown.
Optionalsort?: { hrefFor: (next: S) => string; value: S }Optionaltoolbar?: ReactNodeRendered above the table, inside the selection provider, so it can read the selection.
Optionalexpand?: neverRenders each row's tr around its cells, for a row that marks itself
(e.g. the one whose panel is open). Must render a TableRow with className.
The row a detail panel is showing: highlighted and
aria-current.