import { ObjectAccessor } from "./ObjectAccessor.js"; import { IfcRootObjectAccessor } from "./IfcRootObjectAccessor.js"; import { IfcTypeObjectAccessor } from "./IfcTypeObjectAccessor.js"; import { IfcPropertyAccessor } from "./IfcPropertyAccessor.js"; import { ExpressionValue } from "../value/ExpressionValue.js"; import { IfcPropertySetAccessor } from "./IfcPropertySetAccessor.js"; export declare abstract class IfcElementAccessor extends IfcRootObjectAccessor { getNestedObjectAccessor(name: string): ObjectAccessor | undefined; getAttribute(name: string): ExpressionValue | undefined; abstract getIfcClass(): string; listNestedObjects(): Array; listAttributes(): Array; abstract listIfcPropertyNames(): Array; abstract listIfcPropertySetNames(): Array; abstract getIfcTypeObjectAccessor(): IfcTypeObjectAccessor | undefined; abstract getIfcPropertyAccessor(propertyName: string): IfcPropertyAccessor | undefined; abstract getIfcPropertySetAccessor(name: string): IfcPropertySetAccessor | undefined; } export declare function isIfcElementAccessor(arg: any): arg is IfcElementAccessor;