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.
PresentationStatus Status codes used by Presentation APIs.
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
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.
isSingleElementPropertiesRequestOptions Checks if supplied request options are for single or multiple element properties. Beta


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
BaseNodeKeyJSON Serialized BaseNodeKey JSON representation.
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.
CategoryDescription A data structure that describes a Field category.
CategoryDescriptionJSON Serialized 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.
ClassInfo Information about an ECClass
ClassInfoJSON A serialized version of ClassInfo
CompressedClassInfoJSON A serialized and compressed version of ClassInfo
ConditionContainer Container of a ConditionContainer.condition property.
ContentDescriptorRequestOptions Request type for content descriptor requests.
ContentInstanceKeysRequestOptions Request type for content instance keys' requests. Beta
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.
ContentRelatedInstancesSpecification Creates content for ECInstance(s) related to current selection.
ContentRequestOptions Request type for content requests.
ContentRule Defines content that's displayed in content controls (table view,
ContentSourcesRequestOptions Request type for content sources requests. Beta
ContentSourcesRpcResult Data structure for content sources RPC response. Beta
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.
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
DisplayValueGroup A group of raw values and their common display value.
DisplayValueGroupJSON JSON representation of 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
ECClassGroupingNodeKeyJSON Serialized ECClassGroupingNodeKey JSON representation.
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
ECPropertyGroupingNodeKeyJSON Serialized ECPropertyGroupingNodeKey JSON representation.
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
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
ExtendedDataRule Rule used to inject some extended data into presentation data
FieldDescriptorBase Base for a field descriptor
FilterByInstancePathsHierarchyRequestOptions Request type of filtering hierarchies by given ECInstance paths.
FilterByTextHierarchyRequestOptions Request type of filtering hierarchies by given text.
GroupingNodeKey Data structure that describes a grouping node key
GroupingNodeKeyJSON Serialized GroupingNodeKey JSON representation.
GroupingRule Grouping rule is an advanced way to configure node grouping.
GroupingSpecificationBase Base interface for all GroupingSpecification implementations.
HierarchyCompareInfo Information about hierarchy modification / differences.
HierarchyCompareInfoJSON JSON representation of HierarchyCompareInfo.
HierarchyCompareOptions Data structure for comparing a hierarchy after ruleset or ruleset variable changes.
HierarchyRequestOptions Request type for hierarchy requests.
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
InstanceKey A key that uniquely identifies an instance in an iModel
InstanceKeyJSON A serialized version of 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
LabelCompositeValue Data structure that describes raw composite label value.
LabelCompositeValueJSON JSON representation of LabelCompositeValue
LabelDefinition Data structure that describes label definition.
LabelDefinitionJSON JSON representation of LabelDefinition
LabelGroupingNodeKey Data structure that describes a display label grouping node key
LabelGroupingNodeKeyJSON Serialized LabelGroupingNodeKey JSON representation.
LabelOverride Rule to override labels and descriptions of nodes which pass rule's
MultiElementPropertiesRequestOptions Request type for multiple elements properties requests. Beta
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.
NestedContentValue Data structure that describes nested content value.
NestedContentValueJSON JSON representation of NestedContentValue
NoCategoryIdentifier Identifier for no category.
Node Data structure that describes a tree node.
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 Node JSON representation.
NodePathElement Describes a single step in the nodes path.
NodePathElementJSON Serialized NodePathElement JSON representation.
NodePathFilteringData Data related to node hierarchy filtering
NodePathFilteringDataJSON Serialized 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.
PresentationRpcResponseData Data structure for presentation RPC responses
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.
Property Data structure that describes a single ECProperty that's
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
PropertyInfo A structure that describes an ECProperty
PropertyInfoJSON A serialized version of 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.
RelatedClassInfo A structure that describes a related class and the properties of that relationship.
RelatedClassInfoJSON A serialized version of RelatedClassInfo
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.
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
SelectClassInfo Data structure that describes an ECClass in content Descriptor.
SelectClassInfoJSON Serialized 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
SingleElementPropertiesRequestOptions Request type for single element properties requests. Beta
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 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.
ContentDescriptorRpcRequestOptions Data structure for content descriptor RPC request options.
ContentInstanceKeysRpcRequestOptions Data structure for content instance keys' request options. Beta
ContentRpcRequestOptions Data structure for content RPC request options.
ContentSourcesRpcRequestOptions Data structure for content sources RPC request options. Beta
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.
DisplayValue Display value type.
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
ElementPropertiesRequestOptions Request type for element properties requests Beta
FieldDescriptor A union of all possible field descriptor types
FieldJSON JSON representation of a Field
FilterByInstancePathsHierarchyRpcRequestOptions Data structure for filtering hierarchy by ECInstance paths request options.
FilterByTextHierarchyRpcRequestOptions Data structure for filtering hierarchy by text request options.
GroupingSpecification Grouping rule specifications
HierarchyRpcRequestOptions Data structure for hierarchy request options.
InstanceId Type of an ECInstance ID.
InstanceLabelOverrideValueSpecification Specification to define how the label for InstanceLabelOverrideValueSpecification.InstanceLabelOverride should be created.
Key A single key that identifies something in an iTwin.js application
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
NavigationRule Navigation rules define the hierarchy that's created for navigation controls.
NodeKey One of the node key types
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
PartialBy Create a type from given type T and make specified properties optional.
PartialHierarchyModification Information about a hierarchy change: insertion, deletion or node update.
PartialHierarchyModificationJSON JSON representation of PartialHierarchyModificationJSON.PartialHierarchyModification.
PartialNode Partial node definition.
PartialNodeJSON Serialized PartialNode JSON representation.
PresentationRpcRequestOptions Base options for all presentation RPC requests.
PresentationRpcResponse A promise of PresentationRpcResponseData.
PrimitivePropertyValue Value of a primitive property.
Prioritized A wrapper type that injects priority into supplied type.
PropertyAccessorPath Describes path to a property.
PropertyEditorParameters Parameters for PropertyEditorSpecification
QuerySpecification Query specifications used in CustomQueryInstanceNodesSpecification.
RelatedClassInfoWithOptionalRelationship A structure that describes a relationship between source and target classes where
RelationshipPath A structure that describes a related class path.
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.
RulesetVariable Data structure for representing ruleset variables.
RulesetVariableJSON JSON representation of RulesetVariableJSON.RulesetVariable.
SelectionScopeRpcRequestOptions Data structure for selection scope request options.
SingleElementPropertiesRpcRequestOptions Data structure for single element properties RPC request options. Beta
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.
Value Raw value type
ValueJSON JSON representation of ValueJSON.Value
VariableValue Union of all supported variable value types
VariableValueJSON JSON representation of VariableValue

Last Updated: 06 January, 2022