Skip to content

FlowDoc

Defined in: src/core/ir/flow.ts:41

The semantic IR tree (ir-design §5): everything a reader extracts from the document bytes, format-neutrally — the flow body plus its document-scoped companions (styles, numbering, header/footer bands, notes, charts, binary resources, metadata). Caller-supplied conversion options (fonts, PDF/A profile, signature, …) are deliberately NOT part of the tree; they parameterize transforms, not the document.

body carries FINAL effective properties — readers materialize list markers and resolve the style cascade while building it — so render projections must not re-apply styles/numbering, which remain only as round-trip material.

readonly body: readonly BodyElement[]

Defined in: src/core/ir/flow.ts:45

The document flow content, carrying resolved, effective properties.


readonly optional charts?: ReadonlyMap<string, Chart>

Defined in: src/core/ir/flow.ts:65

Parsed charts keyed by relationship id (ChartBlock.chartRelId).


readonly optional comments?: ReadonlyMap<string, Comment>

Defined in: src/core/ir/flow.ts:63

§17.13.4 review comments by id, anchored from a run’s commentRef.


readonly optional doNotExpandShiftReturn?: boolean

Defined in: src/core/ir/flow.ts:78

ECMA-376 §17.15.1.35 w:doNotExpandShiftReturn — a justified line that ends at a soft line break keeps its natural width.


readonly optional embeddedFonts?: ReadonlyMap<string, FontRegistry>

Defined in: src/core/ir/flow.ts:69

Fonts embedded in the source document itself (docx fontTable), by name.


readonly optional endnotes?: ReadonlyMap<string, readonly BodyElement[]>

Defined in: src/core/ir/flow.ts:61


readonly optional footnotes?: ReadonlyMap<string, readonly BodyElement[]>

Defined in: src/core/ir/flow.ts:60

§17.11 footnotes/endnotes content by id (separator stubs excluded).


readonly optional gutterAtTop?: boolean

Defined in: src/core/ir/flow.ts:95

ECMA-376 §17.15.1.38 w:gutterAtTop — the binding space w:pgMar @w:gutter reserves belongs to the TOP margin rather than the left.


readonly optional headersFooters?: ReadonlyMap<string, readonly BodyElement[]>

Defined in: src/core/ir/flow.ts:58


readonly optional info?: DocumentInfo

Defined in: src/core/ir/flow.ts:71

Document metadata from docProps/core.xml.


readonly kind: "flow"

Defined in: src/core/ir/flow.ts:43

Discriminant for SourceDoc (a FlowDoc passes through projection).


readonly optional language?: string

Defined in: src/core/ir/flow.ts:73

Document natural language hint (BCP-47), e.g. for tagged-PDF /Lang.


readonly optional numbering?: Numbering

Defined in: src/core/ir/flow.ts:57

Raw numbering definitions (round-trip material). body already carries the materialized list markers — readers apply numbering as a FlowDoc transform, so render projections must not re-apply it.


readonly optional pageBackgroundColorHex?: string

Defined in: src/core/ir/flow.ts:84

ECMA-376 §17.2.1 w:background — the colour every page is painted, when the document asks for one AND §17.15.1.28 w:displayBackgroundShape says to draw it.


readonly optional pageBackgroundFill?: ShapeFill

Defined in: src/core/ir/flow.ts:90

ECMA-376 §17.2.1 — the same background as the FILL it is, when that is more than a flat colour: the v:background’s gradient or picture. The colour above stays the flat fallback, for writers that paint only colours.


readonly resources: ResourceStore

Defined in: src/core/ir/flow.ts:67

Content-addressed binary resources (images).


readonly optional section?: SectionProperties

Defined in: src/core/ir/flow.ts:49

Single-section page geometry (xlsx print setup).


readonly sections: readonly Section[]

Defined in: src/core/ir/flow.ts:47

Multi-section page geometry (docx). Empty for single-geometry sources.


readonly styles: StyleSheet

Defined in: src/core/ir/flow.ts:51

Resolved style sheet, kept as round-trip material (already folded into body).