/** @packageDocumentation * @module PropertyGrid */ import { PropertyRecord } from "@bentley/ui-abstract"; import { PropertyCategory } from "../../PropertyDataProvider"; import { MutableCategorizedArrayProperty } from "./MutableCategorizedArrayProperty"; import { MutableCategorizedPrimitiveProperty } from "./MutableCategorizedPrimitiveProperty"; import { MutableCategorizedStructProperty } from "./MutableCategorizedStructProperty"; import { IMutableCategorizedPropertyItem, IMutableGridCategoryItem } from "./MutableFlatGridItem"; import { CategoryRecordsDict } from "./MutableGridCategory"; /** * IMutableGridItemFactory interface for creating MutableGridItem objects * @beta */ export interface IMutableGridItemFactory { createCategorizedProperty: (record: PropertyRecord, parentSelectionKey: string, parentCategorySelectionKey: string, depth: number, overrideName?: string, overrideDisplayLabel?: string) => IMutableCategorizedPropertyItem; createGridCategory: (category: PropertyCategory, recordsDict: CategoryRecordsDict, parentSelectionKey?: string, depth?: number) => IMutableGridCategoryItem; } /** * Implementation of IMutableGridItemFactory for creating MutableGridItem objects. * @beta */ export declare class MutableGridItemFactory implements IMutableGridItemFactory { protected createPrimitiveProperty(record: PropertyRecord, parentSelectionKey: string, parentCategorySelectionKey: string, depth: number, overrideName?: string, overrideDisplayLabel?: string): MutableCategorizedPrimitiveProperty; protected createArrayProperty(record: PropertyRecord, parentSelectionKey: string, parentCategorySelectionKey: string, depth: number, overrideName?: string, overrideDisplayLabel?: string): MutableCategorizedArrayProperty; protected createStructProperty(record: PropertyRecord, parentSelectionKey: string, parentCategorySelectionKey: string, depth: number, overrideName?: string, overrideDisplayLabel?: string): MutableCategorizedStructProperty; /** * Converts record into FlatGridItem. * @param record record to convert to a FlatGridItem. * @param parentSelectionKey parent selection key of provided `record`. * @param parentCategorySelectionKey parent category selection key of provided `record`. * @param depth current depth counting from parent category. * @param overrideName property name that overrides original record property name. * @param overrideDisplayLabel property display label that overrides original record property display label. * @returns converted CategorizedProperty. */ createCategorizedProperty(record: PropertyRecord, parentSelectionKey: string, parentCategorySelectionKey: string, depth: number, overrideName?: string, overrideDisplayLabel?: string): IMutableCategorizedPropertyItem; /** * Converts category into GridCategoryItem. * @param category PropertyCategory to convert. * @param recordsDict dictionary of category records. * @param parentSelectionKey parent selection key of this category. * @param depth current depth counting from root category. * @returns converted GridCategory. */ createGridCategory(category: PropertyCategory, recordsDict: CategoryRecordsDict, parentSelectionKey?: string, depth?: number): IMutableGridCategoryItem; } //# sourceMappingURL=MutableGridItemFactory.d.ts.map