/** * Get all attribute names for an IFC entity type in STEP positional order. * Walks the inheritance chain (root → leaf) via the generated schema registry. */ export declare function getAttributeNames(type: string): string[]; /** * Check if a type is known in the IFC schema. */ export declare function isKnownType(type: string): boolean; /** * Get the full inheritance chain for an IFC entity type. * Returns PascalCase names, leaf → root order (e.g. `['IfcAirTerminal', * 'IfcFlowTerminal', ..., 'IfcRoot']`). * * Walks the union of every bundled IFC schema (2X3 + 4 + 4X3) so that * IFC4x3 infrastructure leaves (IfcReferent, IfcSignal, IfcAlignment, * IfcPavement, IfcCourse, IfcSign, …) resolve their chain correctly even * though the parser's own codegen pin (`./generated/schema-registry.ts`) * is still on IFC4_ADD2_TC1. Falls back to the IFC4 registry for vendor * extensions that the union map doesn't know. */ export declare function getInheritanceChain(type: string): string[]; /** * Get attribute name at a specific index for a type. */ export declare function getAttributeNameAt(type: string, index: number): string | null; /** * Normalize an IFC entity type name to canonical EXPRESS PascalCase. * * - `'IFCWALL'` → `'IfcWall'` * - `'IfcWall'` → `'IfcWall'` (unchanged) * - `'IfcVendorExtensionFoo'` → `'IfcVendorExtensionFoo'` (unchanged — unknown to registry) * * Used at user-facing API boundaries to keep the public contract on * canonical PascalCase regardless of how the caller spells the type. */ export declare function normalizeIfcTypeName(type: string): string; //# sourceMappingURL=ifc-schema.d.ts.map