Name Description
Content A data structure that contains the Descriptor and a list of Item
Descriptor Data structure that describes content: fields, sorting, filtering, format, etc.
Field Describes a single content field.
Item A data structure that represents a single content record.
KeySet A class that holds multiple KeySet.Key objects.
NestedContentField Describes a content field that contains Nested content.
PresentationError An error type thrown by Presentation APIs.
PresentationRpcInterface Interface used for communication between Presentation backend and frontend.
PropertiesField Describes a content field that's based on one or more similar
RegisteredRuleset A ruleset that is registered in a ruleset manager.
RulesetsFactory A factory class that can be used to create presentation rulesets targeted towards


Name Description
DEFAULT_KEYS_BATCH_SIZE Default (recommended) keyset batch size for cases when it needs to be sent


Name Description
ChildNodeSpecificationTypes Used for serializing array of ChildNodeSpecification
ContentFlags Flags that control content format.
ContentSpecificationTypes Used for serializing array of ContentSpecification
DefaultContentDisplayTypes Displayed content types.
FieldDescriptorType Types of different field descriptors.
GroupingSpecificationTypes Available types of GroupingSpecification
InstanceLabelOverrideValueSpecificationType Types of possible InstanceLabelOverrideValueSpecificationType.InstanceLabelOverride label value.
LoggingNamespaces Enum of logging namespaces used by Presentation library. Deprecated
PresentationStatus Status codes used by Presentation APIs.
PresentationUnitSystem Enumeration of unit systems that can be used when formatting values. Beta
PropertyEditorParameterTypes Used for serializing array of PropertyEditorParameters to JSON
PropertyGroupingValue Used in PropertyGroup to specify the type of value to use
PropertyValueFormat Format of the property value.
QuerySpecificationTypes Used for serializing array of QuerySpecification to JSON.
RelatedPropertiesSpecialValues Special values that can be used in RelatedPropertiesSpecification.propertyNames
RelationshipDirection Defines direction of a relationship that should be followed
RelationshipMeaning Meaning of the relationship
RequestPriority Enumeration of standard request priorities.
RuleTypes Used for serializing Rule objects to JSON.
SameLabelInstanceGroupApplicationStage Specifies hierarchy creation stages used to apply SameLabelInstanceGroup grouping.
SortDirection Data sorting direction
StandardNodeTypes Standard node types
VariableValueType Available value types of user-controllable variables
VariableValueTypes Possible variable value types

Global Functions

Name Description
getInstancesCount Get total number of instances included in the supplied key set.


Name Description
ArrayTypeDescription Type description for array properties.
BaseFieldJSON Data structure for a Field serialized to JSON.
BaseNodeKey Data structure that describes a basic node key
BaseTypeDescription Data structure for base content field type description.
BooleanRulesetVariable Data structure for representing boolean ruleset variables.
BooleanRulesetVariableJSON JSON representation of BooleanRulesetVariable.
CalculatedPropertiesSpecification Sub-specification to include additional calculated properties into the content.
CategoryDescriptionJSON Serialized CategoryDescriptionJSON.CategoryDescription JSON representation.
CheckBoxRule Rule that allows configuring check boxes for certain nodes.
ChildNodeRule Child node rules define nodes that are displayed at
ChildNodeSpecificationBase Base interface for all ChildNodeSpecification implementations.
ClassGroup Allows grouping ECInstance nodes by their base class.
ClassInfoJSON A serialized version of ClassInfoJSON.ClassInfo
CompressedClassInfoJSON A serialized and compressed version of CompressedClassInfoJSON.ClassInfo
ConditionContainer Container of a ConditionContainer.condition property.
ContentDescriptorRequestOptions Request type for content descriptor requests
ContentInstancesOfSpecificClassesSpecification Creates content for ECInstance(s) of specified classes.
ContentJSON Serialized Content JSON representation.
ContentModifier Rule that allows supplementing content with additional
ContentModifiersList Contains various rule attributes that allow modifying returned content.
ContentRequestOptions Request type for content requests Deprecated
ContentRule Defines content that's displayed in content controls (table view,
ContentSpecificationBase Base interface for all ContentSpecification implementations.
CustomNodeSpecification Creates a custom-defined node.
CustomQueryInstanceNodesSpecification Creates nodes for instances which are returned by an ECSQL query.
CustomRendererSpecification Specification for custom content renderer.
DefaultGroupingPropertiesContainer A container of default grouping properties.
DefaultPropertyCategoryOverride A rule that allows overriding the default property category.
DEPRECATED_AllInstanceNodesSpecification Creates nodes for all available instances filtered only by the Deprecated
DEPRECATED_AllRelatedInstanceNodesSpecification Creates nodes for all related instances for parent ECInstance node. Deprecated
DEPRECATED_ContentRelatedInstancesSpecification Deprecated
DEPRECATED_PropertiesDisplaySpecification Sub-specification to hide / display specified ECInstance properties. Deprecated
DEPRECATED_PropertyEditorsSpecification Sub-specification to specify custom property editor Deprecated
DEPRECATED_RelatedInstanceNodesSpecification Deprecated
DEPRECATED_RelatedInstanceSpecification Deprecated RelatedInstanceSpecification specification. Deprecated
DEPRECATED_RelatedPropertiesSpecification Sub-specification to include additional related instance properties. Deprecated
DescriptorJSON Serialized Descriptor JSON representation.
DescriptorOverrides Descriptor overrides that can be used to customize content
DescriptorSource Descriptor properties
DisabledSortingRule Rule to disable sorting for certain ECInstances in the hierarchy and/or content.
DisplayLabelRequestOptions Request type for label requests
DisplayLabelsRequestOptions Request type for labels requests
DisplayValueGroupJSON JSON representation of DisplayValueGroupJSON.DisplayValueGroup.
DisplayValuesArray An array of display values
DisplayValuesArrayJSON JSON representation of DisplayValuesArray
DisplayValuesMap A map of display values
DisplayValuesMapJSON JSON representation of DisplayValuesMap
DistinctValuesRequestOptions Request type for distinct values' requests
ECClassGroupingNodeKey Data structure that describes an ECClass grouping node key
ECInstancesNodeKey Data structure that describes a node ECInstance node key
ECInstancesNodeKeyJSON Serialized ECInstancesNodeKey JSON representation.
ECPropertyGroupingNodeKey Data structure that describes an ECProperty grouping node key
ECPropertyValueQuerySpecification Specification which specifies the name of the parent instance property whose
EditorDescription A data structure which describes property editor used
ElementProperties Data structure for storing element properties information in a simplified format. Beta
ElementPropertiesArrayPropertyItemBase Base type for all ElementPropertiesArrayPropertyItem types. Beta
ElementPropertiesCategoryItem Definition for a category. Beta
ElementPropertiesItemBase Base type for all ElementPropertiesItem types. Beta
ElementPropertiesPrimitiveArrayPropertyItem Definition for a primitives' array property value. Beta
ElementPropertiesPrimitivePropertyItem Definition for a primitive property value. Beta
ElementPropertiesPropertyItemBase Base type for all ElementPropertiesPropertyItem types. Beta
ElementPropertiesRequestOptions Request type for element properties requests. Beta
ElementPropertiesStructArrayPropertyItem Definition for a structs' array property value. Beta
ElementPropertiesStructPropertyItem Definition for an struct property value. Beta
EnumerationChoice A single choice in enumeration
EnumerationInfo Enumeration information
ExtendedContentRequestOptions Request type for content requests
ExtendedDataRule Rule used to inject some extended data into presentation data
ExtendedHierarchyRequestOptions Request type for hierarchy requests
FieldDescriptorBase Base for a field descriptor
GroupingNodeKey Data structure that describes a grouping node key
GroupingRule Grouping rule is an advanced way to configure node grouping.
GroupingSpecificationBase Base interface for all GroupingSpecification implementations.
HierarchyCompareInfoJSON JSON representation of HierarchyCompareInfoJSON.HierarchyCompareInfo.
HierarchyCompareOptions Data structure for comparing a hierarchy after ruleset or ruleset variable changes.
HierarchyRequestOptions Base request type for hierarchy requests Deprecated
Id64RulesetVariable Data structure for representing ID ruleset variables.
Id64RulesetVariableJSON JSON representation of Id64RulesetVariable.
Id64sRulesetVariable Data structure for representing ID array ruleset variables.
Id64sRulesetVariableJSON JSON representation of Id64sRulesetVariable.
IdCategoryIdentifier Identifier of a category specified through PropertyCategorySpecification in this scope.
ImageIdOverride Rule that allows overriding default icon and dynamically define an icon
InstanceKeyJSON A serialized version of InstanceKeyJSON.InstanceKey
InstanceLabelOverride Rule to override labels for instances of specific ECClasses.
InstanceLabelOverrideBriefcaseIdSpecification Specification that returns ECInstance's briefcase ID in base36 format.
InstanceLabelOverrideClassLabelSpecification Specification that uses ECClass display label as the label content.
InstanceLabelOverrideClassNameSpecification Specification that uses ECClass name as the label content.
InstanceLabelOverrideCompositeValueSpecification Specification that allows creating a label value composited using
InstanceLabelOverrideLocalIdSpecification Specification that returns ECInstance's local ID in base36 format.
InstanceLabelOverridePropertyValueSpecification Specification that uses property value as the label content.
InstanceLabelOverrideRelatedInstanceLabelSpecification Specification that uses label of a related instance as the label content.
InstanceLabelOverrideStringValueSpecification Specification that uses the specified value as the label content.
InstanceLabelOverrideValueSpecificationBase Base interface for all InstanceLabelOverrideValueSpecification implementations.
InstanceNodesOfSpecificClassesSpecification Creates nodes for all instances of specified ECClasses.
IntRulesetVariable Data structure for representing int ruleset variables.
IntRulesetVariableJSON JSON representation of IntRulesetVariable.
IntsRulesetVariable Data structure for representing int array ruleset variables.
IntsRulesetVariableJSON JSON representation of IntsRulesetVariable.
ItemJSON Serialized Item JSON representation.
KeySetJSON A data structure of serialized KeySet
KindOfQuantityInfo Kind of quantity information
LabelCompositeValueJSON JSON representation of LabelCompositeValueJSON.LabelCompositeValue
LabelDefinitionJSON JSON representation of LabelDefinitionJSON.LabelDefinition
LabelGroupingNodeKey Data structure that describes a display label grouping node key
LabelOverride Rule to override labels and descriptions of nodes which pass rule's Deprecated
LabelRequestOptions Request type for label requests Deprecated
MultiSchemaClassesSpecification Specification for multiple ECClasses that belong to
NamedFieldDescriptor Field descriptor that identifies a content field by its unique name.
NavigationRuleBase Base class for all NavigationRule implementations.
NestedContentFieldJSON Data structure for a NestedContentField serialized to JSON.
NestedContentValueJSON JSON representation of NestedContentValueJSON.NestedContentValue
NoCategoryIdentifier Identifier for no category.
NodeArtifactsRule Rule used to create and assign artifacts to specific nodes.
NodeDeletionInfo Information about node deletion.
NodeDeletionInfoJSON JSON representation of NodeDeletionInfo.
NodeInsertionInfo Information about node insertion.
NodeInsertionInfoJSON JSON representation of NodeInsertionInfo.
NodeJSON Serialized NodeJSON.Node JSON representation.
NodePathElementJSON Serialized NodePathElementJSON.NodePathElement JSON representation.
NodePathFilteringDataJSON Serialized NodePathFilteringDataJSON.NodePathFilteringData JSON representation.
NodeUpdateInfo Information about node update.
NodeUpdateInfoJSON JSON representation of NodeUpdateInfo.
PagedResponse A structure for paged responses
PageOptions Paging options
ParentCategoryIdentifier Identifier of the default parent category.
PrimitiveTypeDescription Type description for primitive properties.
PropertiesFieldDescriptor Field descriptor that identifies a properties field using a list of
PropertiesFieldJSON Data structure for a PropertiesField serialized to JSON.
PropertyAccessor Data structure that describes one step of property
PropertyCategorySpecification Specification to define a custom property category.
PropertyEditorJsonParameters Arbitrary JSON parameters for custom property editors
PropertyEditorMultilineParameters Multiline parameters for property editors that support multiline display
PropertyEditorParametersBase Base interface for PropertyEditorParameters.
PropertyEditorRangeParameters Range parameters for property editors that support ranges
PropertyEditorSliderParameters Slider parameters for property editors that support slider display
PropertyEditorSpecification Specification for custom property editor
PropertyGroup Allows grouping by property of the instance
PropertyInfoJSON A serialized version of PropertyInfoJSON.PropertyInfo
PropertyJSON JSON representation of PropertyJSON.Property
PropertyOverrides A container structure for possible property overrides
PropertyRangeGroupSpecification Describes a grouping range
PropertySortingRule Rule to configure sorting for certain ECInstances in the hierarchy and/or content.
PropertySpecification Specification of an ECProperty and its overrides
QuerySpecificationBase Base interface for all QuerySpecification implementations.
RelatedClassInfoJSON A serialized version of RelatedClassInfoJSON.RelatedClassInfo
RelatedInstanceSpecificationNew Updated RelatedInstanceSpecification specification.
RelatedPropertiesSpecificationNew Sub-specification to include additional related instance properties.
RelationshipStepSpecification Specification of a single relationship path step.
RendererDescription Describes property renderer used for a content Field.
RepeatableRelationshipStepSpecification Specification of a single relationship path step.
RequestOptions A generic request options type used for both hierarchy and content requests
RequestOptionsWithRuleset Options for requests that require presentation ruleset.
RequiredSchemaSpecification A specification for a schema requirement. Beta
RootCategoryIdentifier Identifier of the root category.
RootNodeRule Root node rules define the nodes that are displayed
RuleBase Base interface for all Rule implementations.
Ruleset Presentation ruleset is a list of rules that define tree hierarchy and content provided by
RulesetVariableBase Base data structure for representing ruleset variables.
RulesetVariableBaseJSON JSON representation of RulesetVariableBase.
SameLabelInstanceGroup Allows grouping multiple instances with the same label into one ECInstance node.
SchemasSpecification Specification for a list of ECSchemas
SelectClassInfoJSON Serialized SelectClassInfoJSON.SelectClassInfo JSON representation
SelectedNodeInstancesSpecification Creates content for current selection.
SelectionInfo Data structure that contains selection information.
SelectionScope Data structure that describes a selection scope
SelectionScopeRequestOptions Request options used for selection scope related requests
SingleSchemaClassSpecification Specification for a single ECClass
SortingRuleBase Base class for all SortingRule implementations.
StringQuerySpecification Specification which contains an ECSQL query used to query for instances.
StringRulesetVariable Data structure for representing string ruleset variables.
StringRulesetVariableJSON JSON representation of StringRulesetVariable.
StrippedRelatedClassInfo Data structure that contains a subset of StrippedRelatedClassInfo.RelatedClassInfo required to
StructFieldMemberDescription A data structure that describes a struct member.
StructTypeDescription Type description for struct properties.
StyleOverride Rule to override default node style and dynamically define a foreground/background
SubCondition Defines child node specifications which should only be handled when a condition
SupplementationInfo Contains supplementation-related information for
ValuesArray An array of raw values
ValuesArrayJSON JSON representation of ValuesArray
ValuesDictionary A dictionary data structure.
ValuesMap A map of raw values
ValuesMapJSON JSON representation of ValuesMap
Variable Definition for single user-controllable variable
VariablesGroup Presentation rules support variables that allow having additional customization of the hierarchy


Name Description

Type Aliases

Name Description
CategoryIdentifier Category identifier used to assign properties to a category.
ChildNodeSpecification Navigation rule specifications that define what content the rule results in.
ClassId Type of an ECClass ID.
CompressedDescriptorJSON Serialized Descriptor JSON representation.
ComputeDisplayValueCallback Definition of a function for calculating a display value.
ContentDescriptorRpcRequestOptions Data structure for content descriptor RPC request options.
ContentRelatedInstancesSpecification Creates content for ECInstance(s) related to current selection.
ContentRpcRequestOptions Data structure for content request options. Deprecated
ContentSpecification Content rule specifications which define what content is returned
CustomizationRule Customization rules allow customizing each node or content item separately.
DisplayLabelRpcRequestOptions Data structure for label request options.
DisplayLabelsRpcRequestOptions Data structure for labels request options.
DisplayValueJSON JSON representation of DisplayValueJSON.DisplayValue
DistinctValuesRpcRequestOptions Data structure for distinct values' request options.
ElementPropertiesArrayPropertyItem Definition for an array property value. Beta
ElementPropertiesItem Definition of a property item, including a property category. Beta
ElementPropertiesPropertyItem Definition of a property value. Beta
ElementPropertiesPropertyValueType Available element property types. Beta
ElementPropertiesRpcRequestOptions Data structure for element properties RPC request options. Beta
ExtendedContentRpcRequestOptions Data structure for content RPC request options.
ExtendedHierarchyRpcRequestOptions Data structure for hierarchy request options.
FieldJSON JSON representation of a Field
GroupingSpecification Grouping rule specifications
HierarchyCompareRpcOptions Data structure for comparing presentation data after ruleset or ruleset variable changes.
HierarchyRpcRequestOptions Data structure for base hierarchy request options. Deprecated
InstanceId Type of an ECInstance ID.
InstanceLabelOverrideValueSpecification Specification to define how the label for InstanceLabelOverrideValueSpecification.InstanceLabelOverride should be created.
Keys A type for multiple keys that identify something in iModel.js application
LabelRawValue Type definition of label raw value.
LabelRawValueJSON JSON representation of LabelRawValue
LabelRpcRequestOptions Data structure for label request options. Deprecated
NavigationRule Navigation rules define the hierarchy that's created for navigation controls.
NodeKeyJSON One of the serialized node key types
NodeKeyPath Node key path.
Omit Create a type with T properties excluding properties listed in K.
Paged A wrapper type that injects PageOptions into supplied type
PartialHierarchyModificationJSON JSON representation of PartialHierarchyModificationJSON.PartialHierarchyModification.
PartialNode Partial node definition.
PartialNodeJSON Serialized PartialNode JSON representation.
PresentationDataCompareOptions Data structure for comparing presentation data after ruleset or ruleset variable changes. Deprecated
PresentationRpcRequestOptions Base options for all presentation RPC requests.
PresentationRpcResponse Data structure for presentation RPC responses
PrimitivePropertyValue Value of a primitive property.
PropertyAccessorPath Describes path to a property.
PropertyEditorParameters Parameters for PropertyEditorSpecification
PropertyRendererSpecification Specification for custom property renderer. Deprecated
QuerySpecification Query specifications used in CustomQueryInstanceNodesSpecification.
RelatedInstanceNodesSpecification Creates nodes for related instances of specified ECClasses.
RelatedInstanceSpecification This sub-specification allows joining the primary node instance with any number of related instances and creating
RelatedPropertiesSpecification Sub-specification to include additional related instance properties
RelationshipPathJSON Serialized RelationshipPathJSON.RelationshipPath
RelationshipPathSpecification Specification of a relationship path.
RepeatableRelationshipPathSpecification Specification of a repeatable relationship path.
Rule Presentation rules allow configuring the hierarchy and content.
RulesetVariableJSON JSON representation of RulesetVariableJSON.RulesetVariable.
SelectionScopeRpcRequestOptions Data structure for selection scope request options.
SortingRule Sorting rule implementations
StrippedRelationshipPath Data structure that contains a subset of StrippedRelationshipPath.RelationshipPath required to
Subtract Create a type with T properties excluding all properties in type K.
TypeDescription One of content field type descriptions.
ValueJSON JSON representation of ValueJSON.Value
VariableValue Union of all supported variable value types
VariableValueJSON JSON representation of VariableValue

Last Updated: 25 August, 2021