IFClite TypeScript API
    Preparing search index...

    Class ExportNamespace

    bim.export — Data export in multiple formats

    Index
    • Export entities to CSV format. Columns can be entity attributes (name, type, globalId) or property paths (Pset_WallCommon.FireRating).

      Parameters

      Returns string

    • Export the model as a Dragonfly DFJSON energy model — each IfcSpace becomes an extruded Room2D (floor polygon + floor-to-ceiling height) grouped into stories. This is the simpler Ladybug Tools target for mostly-vertical-wall models. Loads via dragonfly.model.Model.from_dfjson.

      Requires a geometry-capable backend (the CLI and browser carry the wasm engine); the data-only SDK never meshes, so this throws on a backend that does not provide it.

      Parameters

      Returns Promise<string>

    • Trigger a browser file download with raw content.

      Parameters

      • content: string
      • filename: string
      • OptionalmimeType: string

      Returns void

    • Export the model as a Honeybee HBJSON energy/daylight model — IfcSpace volumes become watertight rooms, windows/doors become apertures/doors, railings become shades, material layer sets become opaque constructions, and shared interior walls are paired as Surface adjacencies. Loads directly in Honeybee / Ladybug Tools / Pollination.

      Requires a geometry-capable backend (the CLI and browser carry the wasm engine); the data-only SDK never meshes, so this throws on a backend that does not provide it.

      Parameters

      Returns Promise<string>

    • Export entities to IFC STEP format. Supports IFC2X3, IFC4, and IFC4X3 (IFC 4.3) schemas.

      refs carries the same null-vs-empty distinction the wasm exporters got in #4364/#4386/#4659: OMIT it (or pass undefined/null) for "no isolation filter", i.e. the whole model, and pass an array for an ACTIVE filter. An active filter that matched nothing is REFUSED here rather than widened back into a whole-model export — the collapse that let a zero-match filter silently hand the caller the entire model (#4738).

      This is the one home for that rule: every surface (CLI, MCP, the browser playground, sandboxed scripts, the viewer) reaches a STEP export through this method, so no caller has to carry a zero-match guard for the export to fail closed (several keep one anyway, for a better message).

      The absence travels with the call rather than stopping here: a backend receives undefined for "no filter" and never an empty array, which is what ExportBackendMethods.ifc's signature says and what lets a backend that cannot guess a model (export-adapter.ts in the viewer) answer the whole model instead of refusing.

      Parameters

      Returns string | Uint8Array<ArrayBufferLike>

    • Export entities as a JSON array of objects. Each object has the specified columns as keys.

      Parameters

      Returns Record<string, unknown>[]