UNPKG

@itwin/core-backend

Version:
86 lines 3.91 kB
/** @packageDocumentation * @module Elements */ import { Id64String } from "@itwin/core-bentley"; import { FunctionalElementProps, InformationPartitionElementProps, ModelProps, RelatedElement, TypeDefinitionElementProps } from "@itwin/core-common"; import { InformationPartitionElement, RoleElement, TypeDefinitionElement } from "../Element"; import { IModelDb } from "../IModelDb"; import { RoleModel } from "../Model"; import { DrawingGraphicRepresentsElement, ElementRefersToElements } from "../Relationship"; /** A FunctionalPartition element is a key part of the iModel information hierarchy and is always parented * to a Subject and broken down by a FunctionalModel. * @public */ export declare class FunctionalPartition extends InformationPartitionElement { static get className(): string; protected constructor(props: InformationPartitionElementProps, iModel: IModelDb); } /** A container for persisting FunctionalElements. * @public */ export declare class FunctionalModel extends RoleModel { static get className(): string; constructor(props: ModelProps, iModel: IModelDb); /** Insert a FunctionalPartition and a FunctionalModel that breaks it down. * @param iModelDb Insert into this iModel * @param parentSubjectId The FunctionalPartition will be inserted as a child of this Subject element. * @param name The name of the FunctionalPartition that the new FunctionalModel will break down. * @returns The Id of the newly inserted FunctionalPartition and FunctionalModel (same value). * @throws [[IModelError]] if there is an insert problem. */ static insert(iModelDb: IModelDb, parentSubjectId: Id64String, name: string): Id64String; } /** A FunctionalElement captures functional requirements that will ultimately be fulfilled by a PhysicalElement. * @public */ export declare abstract class FunctionalElement extends RoleElement { static get className(): string; protected constructor(props: FunctionalElementProps, iModel: IModelDb); } /** A FunctionalBreakdownElement is a *folder* node in the functional hierarchy. * @public */ export declare abstract class FunctionalBreakdownElement extends FunctionalElement { static get className(): string; protected constructor(props: FunctionalElementProps, iModel: IModelDb); } /** @public */ export declare class FunctionalComposite extends FunctionalBreakdownElement { static get className(): string; protected constructor(props: FunctionalElementProps, iModel: IModelDb); } /** A FunctionalComponentElement is a *leaf* node in the functional hierarchy. * @public */ export declare abstract class FunctionalComponentElement extends FunctionalElement { static get className(): string; protected constructor(props: FunctionalElementProps, iModel: IModelDb); } /** Defines a set of properties (the 'type') that can be associated with a Functional Element. * @public */ export declare abstract class FunctionalType extends TypeDefinitionElement { static get className(): string; protected constructor(props: TypeDefinitionElementProps, iModel: IModelDb); } /** Relates a [[FunctionalElement]] to its [[FunctionalType]] * @public */ export declare class FunctionalElementIsOfType extends RelatedElement { static get className(): string; static classFullName: string; constructor(id: Id64String, relClassName?: string); } /** Relates a [[PhysicalElement]] to the [[FunctionalElement]] elements that it fulfills. * @public */ export declare class PhysicalElementFulfillsFunction extends ElementRefersToElements { static get className(): string; } /** Relates a [[DrawingGraphic]] to the [[FunctionalElement]] that it represents * @public */ export declare class DrawingGraphicRepresentsFunctionalElement extends DrawingGraphicRepresentsElement { static get className(): string; } //# sourceMappingURL=FunctionalElements.d.ts.map