Public API barrel for the `DataTable` compound component. Assembles all sub-components into a single composable primitive, re-exports named pieces, utility hooks, constants, and proxied TanStack Table primitives so consumers need only one import path. ## Key Components | Export | Description | |---|---| | `DataTable` | Compound component (`DataTableRoot` + `Header`, `Body`, `Row`, `Skeleton`, `Empty`, `InfiniteFooter`, `CursorFooter`, `RowCount`) | | `useDataTable` | Hook to build the TanStack `Table` instance passed to `` | | `useDataTableContext` | React context accessor for nested sub-components | | `alignJustify` / `getHideClasses` / `multiSelectFilterFn` | Column layout and filtering utilities | | `ROW_HEIGHT_DESKTOP` / `ROW_HEIGHT_MOBILE` | Skeleton row height constants | | TanStack re-exports | `flexRender`, `createColumnHelper`, `getCoreRowModel`, and all standard row model getters | ## Usage Example ```typescript import { DataTable, useDataTable, createColumnHelper, getCoreRowModel, } from '@/components/data-table' const col = createColumnHelper() const columns = [ col.accessor('name', { header: 'Name' }), col.accessor('status', { header: 'Status' }), ] function DeviceTable({ data, hasNext, loadNext, isLoading }) { const table = useDataTable({ data, columns, getCoreRowModel: getCoreRowModel(), }) return ( `/devices/${d.id}`} /> loadNext(50)} /> ) } ``` > Both compound (`DataTable.Header`) and named (`DataTableHeader`) import styles are supported — use whichever fits your codebase conventions.