IFClite TypeScript API
    Preparing search index...

    Type Alias IfcAttributeValue

    IfcAttributeValue:
        | string
        | number
        | boolean
        | null
        | { real: number }
        | { typed: { type: string; value: string | number | boolean } }
        | IfcAttributeValue[]

    IFC STEP attribute value as extracted from a STEP argument list.

    Two WRITE-ONLY markers (never produced by extraction) let authoring code pin the exact STEP token for a value whose type a bare JS primitive cannot convey:

    • { real: number } forces a STEP REAL literal with a decimal point for whole numbers (5. not 5), which typed measures like IfcLengthMeasure require. Plain number keeps the historical integer-when-whole behavior.

    • { typed: { type, value } } forces a type-QUALIFIED value IFC<TYPE>(<value>) — required for a SELECT member that is a defined type (IFCBOOLEAN(.T.) in an IfcTranslationalStiffnessSelect slot) and for the IfcValue family (IFCLABEL('x'), IFCLENGTHMEASURE(3.)). type is the IFC type name ('IfcBoolean', 'IfcLengthMeasure'). It generalizes { real } ({ typed: { type: 'IfcReal', value: 450 } }). The exporter also auto-qualifies unambiguous SELECT slots without a marker; this is the escape hatch for the ambiguous ones (a select with several REAL-backed members).