@itwin/core-backend
Version:
iTwin.js backend components
238 lines • 9.85 kB
JavaScript
/*---------------------------------------------------------------------------------------------
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
* See LICENSE.md in the project root for license terms and full copyright notice.
*--------------------------------------------------------------------------------------------*/
/** @packageDocumentation
* @module Relationships
*/
import { RelatedElement, TypeDefinition } from "@itwin/core-common";
/** Relates a parent Element to child Elements which represent parts of the Entity modeled by the parent Element.
* @public
*/
export class ElementOwnsChildElements extends RelatedElement {
static classFullName = "BisCore:ElementOwnsChildElements";
constructor(parentId, relClassName = ElementOwnsChildElements.classFullName) {
super({ id: parentId, relClassName });
}
}
/** Relates a parent [[Subject]] to [[Subject]] child elements.
* @public
*/
export class SubjectOwnsSubjects extends ElementOwnsChildElements {
static classFullName = "BisCore:SubjectOwnsSubjects";
constructor(parentId, relClassName = SubjectOwnsSubjects.classFullName) {
super(parentId, relClassName);
}
}
/** Relates a parent [[Subject]] to [[InformationPartitionElement]] child elements.
* @public
*/
export class SubjectOwnsPartitionElements extends ElementOwnsChildElements {
static classFullName = "BisCore:SubjectOwnsPartitionElements";
constructor(parentId, relClassName = SubjectOwnsPartitionElements.classFullName) {
super(parentId, relClassName);
}
}
/** Relates a parent [[Category]] to [[SubCategory]] child elements.
* @public
*/
export class CategoryOwnsSubCategories extends ElementOwnsChildElements {
static classFullName = "BisCore:CategoryOwnsSubCategories";
constructor(parentId, relClassName = CategoryOwnsSubCategories.classFullName) {
super(parentId, relClassName);
}
}
/** Relates a parent [[RenderMaterial]] to [[RenderMaterial]] child elements.
* @public
*/
export class RenderMaterialOwnsRenderMaterials extends ElementOwnsChildElements {
static classFullName = "BisCore:RenderMaterialOwnsRenderMaterials";
constructor(parentId, relClassName = RenderMaterialOwnsRenderMaterials.classFullName) {
super(parentId, relClassName);
}
}
/** Relates a parent Element to child Elements which represent **hidden** parts of the Entity.
* @public
*/
export class ElementEncapsulatesElements extends ElementOwnsChildElements {
static classFullName = "BisCore:ElementEncapsulatesElements";
constructor(parentId, relClassName = ElementEncapsulatesElements.classFullName) {
super(parentId, relClassName);
}
}
/** Relates a parent [[PhysicalElement]] to [[PhysicalElement]] children that it assembles.
* @public
*/
export class PhysicalElementAssemblesElements extends ElementOwnsChildElements {
static classFullName = "BisCore:PhysicalElementAssemblesElements";
constructor(parentId, relClassName = PhysicalElementAssemblesElements.classFullName) {
super(parentId, relClassName);
}
}
/** Relates a parent [[ExternalSource]] to its [[ExternalSourceAttachment]] children.
* @note The associated ECClass was added to the BisCore schema in version 1.0.13
* @beta
*/
export class ExternalSourceOwnsAttachments extends ElementOwnsChildElements {
static classFullName = "BisCore:ExternalSourceOwnsAttachments";
constructor(parentId, relClassName = ExternalSourceOwnsAttachments.classFullName) {
super(parentId, relClassName);
}
}
/** Relates a parent [[FolderLink]] to its [[RepositoryLink]] children.
* @note The associated ECClass was added to the BisCore schema in version 1.0.13
* @beta
*/
export class FolderContainsRepositories extends ElementOwnsChildElements {
static classFullName = "BisCore:FolderContainsRepositories";
constructor(parentId, relClassName = FolderContainsRepositories.classFullName) {
super(parentId, relClassName);
}
}
/** Relates a [[SheetIndexFolder]] to the [[SheetIndexEntry]]'s that it contains.
* @beta
*/
export class SheetIndexFolderOwnsEntries extends ElementOwnsChildElements {
static classFullName = "BisCore:SheetIndexFolderOwnsEntries";
constructor(parentId, relClassName = SheetIndexFolderOwnsEntries.classFullName) {
super(parentId, relClassName);
}
}
/** Relates a [[SheetIndex]] to the [SheetIndexEntry]]'s that it contains.
* @beta
*/
export class SheetIndexOwnsEntries extends ElementOwnsChildElements {
static classFullName = "BisCore:SheetIndexOwnsEntries";
constructor(parentId, relClassName = SheetIndexOwnsEntries.classFullName) {
super(parentId, relClassName);
}
}
/** Relates a [[GeometricElement2d]] to its [[TypeDefinitionElement]]
* @public
*/
export class GeometricElement2dHasTypeDefinition extends TypeDefinition {
static classFullName = "BisCore:GeometricElement2dHasTypeDefinition";
constructor(id, relClassName = GeometricElement2dHasTypeDefinition.classFullName) {
super({ id, relClassName });
}
}
/** Relates a [[GraphicalElement2d]] to its [[GraphicalType2d]]
* @public
*/
export class GraphicalElement2dIsOfType extends GeometricElement2dHasTypeDefinition {
static classFullName = "BisCore:GraphicalElement2dIsOfType";
constructor(id, relClassName = GraphicalElement2dIsOfType.classFullName) {
super(id, relClassName);
}
}
/** Relates a [[GeometricElement3d]] to its [[TypeDefinitionElement]]
* @public
*/
export class GeometricElement3dHasTypeDefinition extends TypeDefinition {
static classFullName = "BisCore:GeometricElement3dHasTypeDefinition";
constructor(id, relClassName = GeometricElement3dHasTypeDefinition.classFullName) {
super({ id, relClassName });
}
}
/** Relates a [[SpatialLocationElement]] to its [[SpatialLocationType]]
* @public
*/
export class SpatialLocationIsOfType extends GeometricElement3dHasTypeDefinition {
static classFullName = "BisCore:SpatialLocationIsOfType";
constructor(id, relClassName = SpatialLocationIsOfType.classFullName) {
super(id, relClassName);
}
}
/** Relates a [[PhysicalElement]] to its [[PhysicalType]]
* @public
*/
export class PhysicalElementIsOfType extends GeometricElement3dHasTypeDefinition {
static classFullName = "BisCore:PhysicalElementIsOfType";
constructor(id, relClassName = PhysicalElementIsOfType.classFullName) {
super(id, relClassName);
}
}
/** Relates a [[PhysicalElement]] to its [[PhysicalMaterial]]
* @public
*/
export class PhysicalElementIsOfPhysicalMaterial extends RelatedElement {
static classFullName = "BisCore:PhysicalElementIsOfPhysicalMaterial";
constructor(id) {
super({ id });
}
}
/** Relates a [[PhysicalType]] to its [[PhysicalMaterial]]
* @public
*/
export class PhysicalTypeIsOfPhysicalMaterial extends RelatedElement {
static classFullName = "BisCore:PhysicalTypeIsOfPhysicalMaterial";
constructor(id) {
super({ id });
}
}
/** Relates an [[Element]] and an [[ElementUniqueAspect]] that it owns.
* @public
*/
export class ElementOwnsUniqueAspect extends RelatedElement {
static classFullName = "BisCore:ElementOwnsUniqueAspect";
constructor(elementId, relClassName = ElementOwnsUniqueAspect.classFullName) {
super({ id: elementId, relClassName });
}
}
/** Relates an [[Element]] and an [[ElementMultiAspect]] that it owns.
* @public
*/
export class ElementOwnsMultiAspects extends RelatedElement {
static classFullName = "BisCore:ElementOwnsMultiAspects";
constructor(elementId, relClassName = ElementOwnsMultiAspects.classFullName) {
super({ id: elementId, relClassName });
}
}
/** Relates an [[Element]] and an [[ExternalSourceAspect]] that it owns.
* @public
*/
export class ElementOwnsExternalSourceAspects extends ElementOwnsMultiAspects {
static classFullName = "BisCore:ElementOwnsExternalSourceAspects";
constructor(elementId, relClassName = ElementOwnsExternalSourceAspects.classFullName) {
super(elementId, relClassName);
}
}
/** Relates an [[ExternalSource]] to the [[RepositoryLink]] that it is persisted in.
* @note The associated ECClass was added to the BisCore schema in version 1.0.13
* @beta
*/
export class ExternalSourceIsInRepository extends RelatedElement {
static classFullName = "BisCore:ExternalSourceIsInRepository";
constructor(repositoryId, relClassName = ExternalSourceIsInRepository.classFullName) {
super({ id: repositoryId, relClassName });
}
}
/** Relates an [[ExternalSource]] to the [[RepositoryLink]] that it is persisted in.
* @note The associated ECClass was added to the BisCore schema in version 1.0.13
* @beta
*/
export class ExternalSourceAttachmentAttachesSource extends RelatedElement {
static classFullName = "BisCore:ExternalSourceAttachmentAttachesSource";
constructor(externalSourceId, relClassName = ExternalSourceAttachmentAttachesSource.classFullName) {
super({ id: externalSourceId, relClassName });
}
}
/** Relates a [[SheetReference]] and [[Sheet]] that it refers.
* @beta
*/
export class SheetReferenceRefersToSheet extends RelatedElement {
static classFullName = "BisCore:SheetReferenceRefersToSheet";
constructor(sheetId, relClassName = SheetReferenceRefersToSheet.classFullName) {
super({ id: sheetId, relClassName });
}
}
/** Relates a [[SheetIndexReference]] to a [[SheetIndex]] it refers.
* @beta
*/
export class SheetIndexReferenceRefersToSheetIndex extends RelatedElement {
static classFullName = "BisCore:SheetIndexReferenceRefersToSheetIndex";
constructor(sheetIndexId, relClassName = SheetIndexReferenceRefersToSheetIndex.classFullName) {
super({ id: sheetIndexId, relClassName });
}
}
//# sourceMappingURL=NavigationRelationship.js.map