/** @packageDocumentation * @module PropertyGrid */ import { immerable } from "immer"; import { PropertyData } from "../PropertyDataProvider"; import { FlatGridItem, GridCategoryItem } from "./flat-items/FlatGridItem"; import { IMutableFlatGridItem, IMutableGridCategoryItem } from "./flat-items/MutableFlatGridItem"; import { IMutableGridItemFactory } from "./flat-items/MutableGridItemFactory"; /** * PropertyGridModel interface for working with immutable FlatGridItems * @beta */ export interface IPropertyGridModel { getItem: (selectionKey: string) => FlatGridItem; getRootCategories: () => GridCategoryItem[]; getFlatGrid: () => FlatGridItem[]; getVisibleFlatGrid: () => FlatGridItem[]; } /** * PropertyGridModel interface for working with mutable FlatGridItems * @beta */ export interface IMutablePropertyGridModel { getItem: (selectionKey: string) => IMutableFlatGridItem; getRootCategories: () => IMutableGridCategoryItem[]; getFlatGrid: () => IMutableFlatGridItem[]; getVisibleFlatGrid: () => IMutableFlatGridItem[]; } /** * Implementation of PropertyGridModel for working with and converting PropertyData to mutable FlatGridItems * @beta */ export declare class MutablePropertyGridModel implements IPropertyGridModel, IMutablePropertyGridModel { private _gridItemFactory; [immerable]: boolean; private _categories; constructor(propertyData: PropertyData, _gridItemFactory: IMutableGridItemFactory); /** * Retrieves grid item from model. * @param selectionKey unique key for identifying item to retrieve. */ getItem(selectionKey: string): IMutableFlatGridItem; /** * Walks the grid item hierarchy and finds item matching key * @param items items and their descendants to check * @param selectionKey unique key for identifying item * @returns FlatGridItem if items with key exists, undefined otherwise */ private findItem; /** * Gets all GridCategoryItems that do not have parent categories. * @returns array of GridCategoryItems */ getRootCategories(): IMutableGridCategoryItem[]; /** * Gets an array of all FlatGridItems. * @returns 1-Dimensional array of GridCategories and CategorizedProperties */ getFlatGrid(): IMutableFlatGridItem[]; /** * Gets an array of all currently visible FlatGridItems. * @returns 1-Dimensional array of GridCategories and CategorizedProperties */ getVisibleFlatGrid(): IMutableFlatGridItem[]; } //# sourceMappingURL=PropertyGridModel.d.ts.map