import { WorldTree } from '../tree/WorldTree.js'; export declare class PropertyManager { private propCache; /** * * @param resourceUrl The target resource's url. This must be an **object url** or null. If null, it will return the props for the whole scene. * @param bypassCache Forces a full rescan if set to true. * @returns a list of property infos containing basic information for filtering purposes. */ getProperties(tree: WorldTree, resourceUrl?: string | null, bypassCache?: boolean): Promise; } /** * PropertyInfo types represent all of the properties that you can filter on in the viewer */ export interface PropertyInfo { /** * Property identifier, flattened */ key: string; /** * Total number of objects that have this property */ objectCount: number; type: 'number' | 'string'; } export interface NumericPropertyInfo extends PropertyInfo { type: 'number'; /** * Absolute min/max values that are available for this property */ min: number; max: number; /** * An array of pairs of object IDs and their actual values for that property */ valueGroups: { value: number; id: string; }[]; /** * User defined/filtered min/max that is bound within min/max above */ passMin: number | null; passMax: number | null; } export interface StringPropertyInfo extends PropertyInfo { type: 'string'; /** * An array of pairs of object IDs and their actual values for that property */ valueGroups: { value: string; ids: string[]; }[]; }