ecschema-metadata

Classes

Name Description
ArrayProperty  
Constant A Constant is a specific type of Unit that represents a number.  
CustomAttributeClass A Typescript class representation of an ECCustomAttributeClass.  
ECClass A common abstract class for all of the ECClass types.  
ECName The name of an item in a Schema, encoded to meet restrictions on the characters usable in such names.  
ECVersion  
EntityClass A Typescript class representation of an ECEntityClass.  
Enumeration A Typescript class representation of an ECEnumeration.  
EnumerationArrayProperty  
EnumerationProperty  
Format  
InvertedUnit An InvertedUnit is a specific type of Unit that describes the inverse of a single Unit whose dimensional derivation is unit-less.  
KindOfQuantity A Typescript class representation of a KindOfQuantity.  
Mixin A Typescript class representation of a Mixin.  
NavigationProperty  
OverrideFormat Overrides of a Format, from a Schema, and is SchemaItem that is used specifically on KindOfQuantity.  
Phenomenon  
PrimitiveArrayProperty  
PrimitiveOrEnumPropertyBase  
PrimitiveProperty  
Property A common abstract class for all ECProperty types.  
PropertyCategory  
RelationshipClass A Typescript class representation of a ECRelationshipClass.  
RelationshipConstraint A Typescript class representation of a ECRelationshipConstraint.  
RelationshipMultiplicity  
Schema  
SchemaContext The SchemaContext, context object is used to facilitate schema and schema item location.  
SchemaFormatsProvider Provides default formats and kind of quantities from a given SchemaContext or SchemaLocater.  
SchemaItem An abstract class that supplies all of the common parts of a SchemaItem.  
SchemaItemKey The SchemaItemKey contains a SchemaItem's name and SchemaKey.  
SchemaJsonLocater An ISchemaLocater implementation for locating and retrieving EC Schema objects using a function  
SchemaKey The SchemaKey contains a Schemas name and version.  
SchemaLoader A utility class for loading EC Schema objects using a function that returns schema json for a given schema name.  
SchemaPartVisitorDelegate A helper class to call methods on the provided ISchemaPartVisitor.  
SchemaUnitProvider Class used to find Units in SchemaContext by attributes such as Phenomenon and DisplayLabel.  
StructArrayProperty  
StructClass A Typescript class representation of an ECStructClass.  
StructProperty  
Unit An abstract class that adds the ability to define Units and everything that goes with them, within an ECSchema as a  
UnitSystem  

Enumerations

Name Description
AbstractSchemaItemType Additional Schema Item Types which define classes of item types  
CustomAttributeContainerType Defines the valid CustomAttribute container types.  
ECClassModifier Identifies a class as abstract or sealed  
ECSchemaStatus  
PrimitiveType Primitive data types for ECProperties.  
PropertyType  
RelationshipEnd Identifer for an ECRelationshipConstraint.  
SchemaItemType An enumeration that has all the schema item type names as values  
SchemaMatchType Defines what sort of match should be used when locating a schema.  
StrengthDirection Defines the which side of the relationship is the starting point of the relationship.  
StrengthType Defines the how the lifetime of the source and target are related.  

Global Functions

Name Description
classModifierToString  
containerTypeToString Creates a string representing a valid CustomAttributeContainerType.  
isSupportedSchemaItemType Compares a SchemaItemType against supported type.  
parseClassModifier Parses the provided string into an ECClassModifier if the string is a valid modifier.  
parseCustomAttributeContainerType Parses the given string into the appropriate CustomAttributeContainerType if the string is valid.  
parsePrimitiveType Tries to parse the given string as one of the 10 primitive types.  
parseRelationshipEnd  
parseSchemaItemType Tries to parse the given string as one of the 8 schema item types.  
parseStrength Takes a string representing a StrengthType, will parse it and return the corresponding StrengthType.  
parseStrengthDirection  
primitiveTypeToString  
relationshipEndToString  
schemaItemTypeToString Converts a valid SchemaItemType to a display string. Deprecated
strengthDirectionToString  
strengthToString  

Interfaces

Name Description
ArrayPropertyProps  
ClassProps  
ConstantProps  
CustomAttribute  
CustomAttributeClassProps  
CustomAttributeContainerProps  
EntityClassProps  
EnumerationPropertyProps  
EnumerationProps  
Enumerator  
EnumeratorProps  
FormatSet This interface defines properties necessary to support persistence of a set of formats.  
HasMixins This is needed to break a circular dependency between Class and EntityClass.  
InvertedUnitProps  
ISchemaLocater The interface defines what is needed to be an ISchemaLocater.  
ISchemaPartVisitor Interface to allow schema traversal/deserialization workflows to visit  
KindOfQuantityProps  
MixinProps  
NavigationPropertyProps  
OverrideFormatProps  
PhenomenonProps  
PrimitiveArrayPropertyProps  
PrimitiveOrEnumPropertyBaseProps  
PrimitivePropertyProps  
PropertyCategoryProps  
PropertyProps  
RelationshipClassProps  
RelationshipConstraintProps  
SchemaInfo Holds the SchemaKeys for a schema and it's references.  
SchemaItemOverrideFormatProps  
SchemaItemProps  
SchemaItemUnitProps  
SchemaKeyProps JSON Object interface used to deserialize into a SchemaKey.  
SchemaProps  
SchemaReferenceProps  
StructArrayPropertyProps  
StructPropertyProps  
WithSchemaKey  

Type Aliases

Name Description
AnyArrayProperty  
AnyClass  
AnyClassProps  
AnyECType  
AnyEnumerationProperty  
AnyEnumerator  
AnyPrimitiveProperty  
AnyProperty  
AnyPropertyProps  
AnySchemaItem  
AnySchemaItemProps  
AnyStructProperty  
LazyLoadedECClass  
LazyLoadedEntityClass  
LazyLoadedEnumeration  
LazyLoadedFormat  
LazyLoadedInvertedUnit  
LazyLoadedKindOfQuantity  
LazyLoadedMixin  
LazyLoadedPhenomenon  
LazyLoadedPropertyCategory  
LazyLoadedRelationshipClass  
LazyLoadedRelationshipConstraintClass  
LazyLoadedSchema  
LazyLoadedSchemaItem  
LazyLoadedStructClass  
LazyLoadedUnit  
LazyLoadedUnitSystem  
SchemaItemFormatProps  
SchemaPropsGetter Gets the full schema Json for the input schema name or undefined if not found  
StructClassProps  
SupportedSchemaItemType Defines types of items that may be provided to identify supported items  
UnitSystemProps  

Last Updated: 01 August, 2025