InterfaceDataTableProps
Type Alias: InterfaceDataTableProps<T>
InterfaceDataTableProps<
T> =object
Defined in: src/types/shared-components/DataTable/props.ts:101
Complete props for the DataTable component.
Extends base configuration with pagination, filtering, searching, selection, and bulk actions. Supports both client-side and server-side data handling.
Type Parameters
T
T
The type of data for each row in the table
Properties
actionableRows?
optionalactionableRows:ReadonlySet<Key>
Defined in: src/types/shared-components/DataTable/props.ts:182
ariaLabel?
optionalariaLabel:string
Defined in: src/types/shared-components/DataTable/props.ts:139
ARIA label for the table element
bulkActions?
optionalbulkActions:ReadonlyArray<IBulkAction<T>>
Defined in: src/types/shared-components/DataTable/props.ts:181
className?
optionalclassName:string
Defined in: src/types/shared-components/DataTable/props.ts:115
CSS class to apply to the table element
columnFilter?
optionalcolumnFilter:Record<string,unknown>
Defined in: src/types/shared-components/DataTable/props.ts:159
columnFilters?
optionalcolumnFilters:Record<string,unknown>
Defined in: src/types/shared-components/DataTable/props.ts:160
columns
columns:
IColumnDef<T,unknown>[]
Defined in: src/types/shared-components/DataTable/props.ts:103
Array of column definitions specifying how to render each column
currentPage?
optionalcurrentPage:number
Defined in: src/types/shared-components/DataTable/props.ts:167
data
data:
T[]
Defined in: src/types/shared-components/DataTable/props.ts:125
For backward compatibility: use rows instead
disableSort?
optionaldisableSort:boolean
Defined in: src/types/shared-components/DataTable/props.ts:185
emptyMessage?
optionalemptyMessage:string
Defined in: src/types/shared-components/DataTable/props.ts:135
Message to display when table is empty
error?
optionalerror:Error|null
Defined in: src/types/shared-components/DataTable/props.ts:131
Error from the last data fetch operation
globalSearch?
optionalglobalSearch:string
Defined in: src/types/shared-components/DataTable/props.ts:157
initialGlobalSearch?
optionalinitialGlobalSearch:string
Defined in: src/types/shared-components/DataTable/props.ts:156
Initial global search value
initialSelectedKeys?
optionalinitialSelectedKeys:ReadonlySet<Key>
Defined in: src/types/shared-components/DataTable/props.ts:179
initialSortBy?
optionalinitialSortBy:string
Defined in: src/types/shared-components/DataTable/props.ts:149
Initial sort property
initialSortDirection?
optionalinitialSortDirection:SortDirection
Defined in: src/types/shared-components/DataTable/props.ts:150
keysToShowRows?
optionalkeysToShowRows:ReadonlySet<Key>
Defined in: src/types/shared-components/DataTable/props.ts:107
Set of row keys to display; if provided, only these rows are shown
loading?
optionalloading:boolean
Defined in: src/types/shared-components/DataTable/props.ts:127
Whether the table is loading initial data
loadingMore?
optionalloadingMore:boolean
Defined in: src/types/shared-components/DataTable/props.ts:129
Whether additional data is currently loading
loadingOverlay?
optionalloadingOverlay:boolean
Defined in: src/types/shared-components/DataTable/props.ts:145
Whether to show a loading overlay during pagination
noHeader?
optionalnoHeader:boolean
Defined in: src/types/shared-components/DataTable/props.ts:111
Whether to hide the header row
onColumnFilterChange()?
optionalonColumnFilterChange: (filters) =>void
Defined in: src/types/shared-components/DataTable/props.ts:161
Parameters
filters
Record<string, unknown>
Returns
void
onColumnFiltersChange()?
optionalonColumnFiltersChange: (filters) =>void
Defined in: src/types/shared-components/DataTable/props.ts:162
Parameters
filters
Record<string, unknown>
Returns
void
onGlobalSearchChange()?
optionalonGlobalSearchChange: (q) =>void
Defined in: src/types/shared-components/DataTable/props.ts:158
Parameters
q
string
Returns
void
onLoadMore()?
optionalonLoadMore: () =>void
Defined in: src/types/shared-components/DataTable/props.ts:171
Returns
void
onPageChange()?
optionalonPageChange: (page) =>void
Defined in: src/types/shared-components/DataTable/props.ts:168
Parameters
page
number
Returns
void
onSelectedRowsChange()?
optionalonSelectedRowsChange: (next) =>void
Defined in: src/types/shared-components/DataTable/props.ts:178
Parameters
next
ReadonlySet<Key>
Returns
void
onSelectionChange()?
optionalonSelectionChange: (next) =>void
Defined in: src/types/shared-components/DataTable/props.ts:177
Parameters
next
ReadonlySet<Key>
Returns
void
onSortChange()?
optionalonSortChange: (event) =>void
Defined in: src/types/shared-components/DataTable/props.ts:123
Callback fired when sort state changes
Parameters
event
Returns
void
page?
optionalpage:number
Defined in: src/types/shared-components/DataTable/props.ts:166
pageInfo?
optionalpageInfo:InterfacePageInfo|null
Defined in: src/types/shared-components/DataTable/props.ts:170
pageSize?
optionalpageSize:number
Defined in: src/types/shared-components/DataTable/props.ts:165
paginationMode?
optionalpaginationMode:"client"|"server"|"none"
Defined in: src/types/shared-components/DataTable/props.ts:164
refetch?
optionalrefetch:QueryResult<unknown>["refetch"]
Defined in: src/types/shared-components/DataTable/props.ts:184
renderError()?
optionalrenderError: (error) =>ReactNode
Defined in: src/types/shared-components/DataTable/props.ts:137
Custom function to render error state
Parameters
error
Error
Returns
ReactNode
renderRow()?
optionalrenderRow: (row,index) =>ReactNode
Defined in: src/types/shared-components/DataTable/props.ts:133
Custom function to render each row
Parameters
row
T
index
number
Returns
ReactNode
rowActions?
optionalrowActions:ReadonlyArray<IRowAction<T>>
Defined in: src/types/shared-components/DataTable/props.ts:180
rowKey?
optionalrowKey: keyofT| (row) =>Key
Defined in: src/types/shared-components/DataTable/props.ts:113
Key or property name or function to extract unique identifier for each row
rows?
optionalrows:T[]
Defined in: src/types/shared-components/DataTable/props.ts:105
Array of row data to display in the table
searchBarProps?
optionalsearchBarProps:Omit<InterfaceSearchBarProps,"value"|"onChange">
Defined in: src/types/shared-components/DataTable/props.ts:163
searchPlaceholder?
optionalsearchPlaceholder:string
Defined in: src/types/shared-components/DataTable/props.ts:152
Search placeholder text
selectable?
optionalselectable:boolean
Defined in: src/types/shared-components/DataTable/props.ts:174
selectedKeys?
optionalselectedKeys:ReadonlySet<Key>
Defined in: src/types/shared-components/DataTable/props.ts:175
selectedRows?
optionalselectedRows:ReadonlySet<Key>
Defined in: src/types/shared-components/DataTable/props.ts:176
serverFilter?
optionalserverFilter:boolean
Defined in: src/types/shared-components/DataTable/props.ts:173
serverSearch?
optionalserverSearch:boolean
Defined in: src/types/shared-components/DataTable/props.ts:172
serverSort?
optionalserverSort:boolean
Defined in: src/types/shared-components/DataTable/props.ts:141
Whether sorting is handled server-side
showSearch?
optionalshowSearch:boolean
Defined in: src/types/shared-components/DataTable/props.ts:154
Whether to show search bar
showViewMoreButton?
optionalshowViewMoreButton:boolean
Defined in: src/types/shared-components/DataTable/props.ts:183
size?
optionalsize:"sm"|"lg"
Defined in: src/types/shared-components/DataTable/props.ts:109
Bootstrap size variant: 'sm' for small or 'lg' for large
skeletonRows?
optionalskeletonRows:number
Defined in: src/types/shared-components/DataTable/props.ts:143
Number of skeleton rows to show during loading
sortable?
optionalsortable:boolean
Defined in: src/types/shared-components/DataTable/props.ts:119
Whether columns are sortable (default: true)
sortBy?
optionalsortBy:ISortState[]
Defined in: src/types/shared-components/DataTable/props.ts:147
Current sort state as array (controlled sorting)
sortState?
optionalsortState:ISortState
Defined in: src/types/shared-components/DataTable/props.ts:121
Current sort state specifying column and direction
striped?
optionalstriped:boolean
Defined in: src/types/shared-components/DataTable/props.ts:117
Whether to apply striped styling to rows
tableBodyClassName?
optionaltableBodyClassName:string
Defined in: src/types/shared-components/DataTable/props.ts:186
tableClassName?
optionaltableClassName:string
Defined in: src/types/shared-components/DataTable/props.ts:187
totalItems?
optionaltotalItems:number
Defined in: src/types/shared-components/DataTable/props.ts:169