UNPKG

@itwin/core-frontend

Version:
72 lines 3.66 kB
/** @packageDocumentation * @module ElementState */ import { GuidString, Id64String } from "@itwin/core-bentley"; import { Code, ElementProps, EntityProps, RelatedElement } from "@itwin/core-common"; import { IModelConnection } from "./IModelConnection"; /** The "state" of an Entity as represented in a web browser. Every subclass of EntityState handles one BIS class. * @public * @extensions */ export declare class EntityState implements EntityProps { /** The name of the BIS schema for this class. * @note Subclasses from other than the BisCore domain must override the static member "schemaName" with their schema name. */ static get schemaName(): string; private get _ctor(); /** The name of the BIS class associated with this class. * @note Every subclass of EntityState **MUST** override this method to identify its BIS class. * Failure to do so will ordinarily result in an error when the class is registered, since there may only * be one JavaScript class for a given BIS class (usually the errant class will collide with its superclass.) */ static get className(): string; /** The name of the BIS class associated with this class. */ get className(): string; /** The Id of this Entity. May be invalid if the Entity has not yet been saved in the database. */ readonly id: Id64String; /** The iModel from which this Entity was loaded */ readonly iModel: IModelConnection; /** The full class name in the form "schema:class". */ readonly classFullName: string; /** Optional [json properties]($docs/bis/guide/fundamentals/element-fundamentals.md#jsonproperties) of this Entity. */ readonly jsonProperties: { [key: string]: any; }; /** Constructor for EntityState * @param props the properties of the Entity for this EntityState * @param iModel the iModel from which this EntityState is to be constructed * @param _state source EntityState for clone */ constructor(props: EntityProps, iModel: IModelConnection, _state?: EntityState); /** @internal */ toJSON(): EntityProps; /** Return true if this EntityState is equal to another one. */ equals(other: this): boolean; /** Make an independent copy of this EntityState */ clone(iModel?: IModelConnection): this; /** Get full BIS class name of this Entity in the form "SchemaName:ClassName". */ static get classFullName(): string; } /** The "state" of an Element as represented in a web browser. * @public * @extensions */ export declare class ElementState extends EntityState implements ElementProps { static get className(): string; /** The ModelId of the [Model]($docs/bis/guide/fundamentals/model-fundamentals.md) containing this element */ readonly model: Id64String; /** The [Code]($docs/bis/guide/fundamentals/codes.md) for this element */ readonly code: Code; /** The parent Element of this, or undefined if no parent. */ readonly parent?: RelatedElement; /** A [FederationGuid]($docs/bis/guide/fundamentals/element-fundamentals.md#federationguid) assigned to this element by some other federated database */ readonly federationGuid?: GuidString; /** A [user-assigned label]($docs/bis/guide/fundamentals/element-fundamentals.md#userlabel) for this element. */ readonly userLabel?: string; constructor(props: ElementProps, iModel: IModelConnection); /** Obtain this element's JSON representation. Subclasses of ElementState typically override this method with a more * specific return type. */ toJSON(): ElementProps; } //# sourceMappingURL=EntityState.d.ts.map