export type IfcSchemaVersion = 'IFC2X3' | 'IFC4' | 'IFC4X3' | 'IFC5'; /** * Convert an entity type name from one IFC schema version to another. * * @param entityType - UPPERCASE entity type name (e.g., 'IFCWALL') * @param fromSchema - Source schema version * @param toSchema - Target schema version * @returns The mapped entity type name, or the original if no mapping needed */ export declare function convertEntityType(entityType: string, fromSchema: IfcSchemaVersion, toSchema: IfcSchemaVersion): string; /** * Convert a raw STEP entity line from one schema version to another. * * Handles: * 1. Entity type name conversion * 2. Attribute count adjustment (trimming trailing attrs for older schemas) * 3. Skipping entities that have no valid representation in the target schema * * @param line - Raw STEP entity line (e.g., "#1=IFCWALL('guid',...);") * @param fromSchema - Source schema version * @param toSchema - Target schema version * @returns Converted line (entities without valid target representation become IFCPROXY placeholders) */ export declare function convertStepLine(line: string, fromSchema: IfcSchemaVersion, toSchema: IfcSchemaVersion): string; /** * Check if a conversion between two schema versions requires entity type changes. */ export declare function needsConversion(fromSchema: IfcSchemaVersion, toSchema: IfcSchemaVersion): boolean; /** * Get human-readable description of what a conversion entails. */ export declare function describeConversion(fromSchema: IfcSchemaVersion, toSchema: IfcSchemaVersion): string; //# sourceMappingURL=schema-converter.d.ts.map