import React from "react" ; import { CollectionSize , Entity , EntityCollection , EntityCollectionResolver , EntitySchemaResolver } from "../../../models" ; category export type OnColumnResizeParams = { width : number ; key : string ; } ; category export interface CollectionTableProps < M extends { [ Key ] : any ; } , AdditionalKey extends string = string > { /**
     * Absolute collection path
     */ path : string ; /**
     * Collection
     */ collection : EntityCollection < M > | EntityCollectionResolver < M > ; /**
     * Use to resolve the schema properties for specific path, entity id or values
     */ schemaResolver : EntitySchemaResolver < M > ; /**
     * Override the title in the toolbar
     */ title ? : React . ReactNode ; /**
     * Can the table be edited inline
     */ inlineEditing : ( ( entity : Entity < any > ) => boolean ) | boolean ; /**
     * List of entities that will be displayed on top, no matter the ordering.
     * This is used for reference fields selection
     */ entitiesDisplayedFirst ? : Entity < M > [ ] ; /**
     * Additional components builder such as buttons in the
     * collection toolbar
     */ toolbarActionsBuilder ? : ( props : { size : CollectionSize ; data : Entity < any > [ ] ; } ) => React . ReactNode ; param entity param size tableRowActionsBuilder ? : ( { entity , size } : { entity : Entity < M > ; size : CollectionSize ; } ) => React . ReactNode ; /**
     * Callback when anywhere on the table is clicked
     */ onEntityClick ? ( entity ) : void ; /**
     * Callback when a column is resized
     */ onColumnResize ? ( params ) : void ; /**
     * Callback when the selected size of the table is changed
     */ onSizeChanged ? ( size ) : void ; /**
     * Should apply a different style to a row when hovering
     */ hoverRow ? : boolean ; }