import React from "react"; import type { CollectionPropertyConfig, CollectionDataController, CellRendererOverride, CollectionViewSize, CollectionSelectionController } from "./CollectionViewTypes"; /** * Props for the {@link CollectionTableView} component. * @group Collection View */ export type CollectionTableViewProps> = { dataController: CollectionDataController; properties: Record; propertiesOrder?: string[]; displayedColumnIds?: string[]; idProperty?: string; titleProperty?: string; onRowClick?: (row: T) => void; cellRenderer?: CellRendererOverride; size?: CollectionViewSize; selectionEnabled?: boolean; selectionController?: CollectionSelectionController; highlightedItems?: T[]; emptyComponent?: React.ReactNode; hoverRow?: boolean; className?: string; onColumnResize?: (params: { key: string; width: number; }) => void; onColumnsOrderChange?: (keys: string[]) => void; }; /** * Headless table view that wraps {@link VirtualTable}. * * Converts property configurations into virtual table columns and wires up * sorting, pagination, and cell rendering without coupling to any data layer. * * @group Collection View */ export declare function CollectionTableView = Record>({ dataController, properties, propertiesOrder, displayedColumnIds, onRowClick, cellRenderer, size, emptyComponent, hoverRow, className, onColumnResize, onColumnsOrderChange, }: CollectionTableViewProps): React.JSX.Element;