@docx-editor.dev/core 2.27.0 → 2.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. package/dist/automation.cjs +1 -1
  2. package/dist/automation.d.ts +26 -13
  3. package/dist/automation.js +1 -1
  4. package/dist/binding.cjs +1 -1
  5. package/dist/binding.d.ts +20 -9
  6. package/dist/binding.js +1 -1
  7. package/dist/chunk-2GO5T2JU.cjs +1 -0
  8. package/dist/chunk-2RC2EPND.js +3 -0
  9. package/dist/chunk-4GBTELJV.cjs +28 -0
  10. package/dist/chunk-4R3TEXMN.js +18 -0
  11. package/dist/chunk-5CSUYANV.js +1 -0
  12. package/dist/chunk-6APGXLBB.cjs +3 -0
  13. package/dist/chunk-6AWEKBLB.cjs +1 -0
  14. package/dist/chunk-6EYYL7FL.js +1 -0
  15. package/dist/chunk-E7BQA6UP.js +2 -0
  16. package/dist/chunk-EO4C5QJW.cjs +2 -0
  17. package/dist/chunk-ETTO6GK3.js +1 -0
  18. package/dist/chunk-FIJZIQXA.cjs +18 -0
  19. package/dist/chunk-FRXAOVTB.js +28 -0
  20. package/dist/chunk-J6BVWIDB.js +2 -0
  21. package/dist/chunk-JGNVNT2A.cjs +2 -0
  22. package/dist/chunk-K5U2PLDP.cjs +2 -0
  23. package/dist/chunk-KKIJG3C6.js +2 -0
  24. package/dist/chunk-LWDSDCMO.js +27 -0
  25. package/dist/chunk-O2AL2HSJ.cjs +1 -0
  26. package/dist/chunk-QMLCVPCD.cjs +1 -0
  27. package/dist/chunk-RCHS4ZEH.cjs +27 -0
  28. package/dist/chunk-SRPILEWV.cjs +5 -0
  29. package/dist/chunk-TSLBZ26X.js +1 -0
  30. package/dist/chunk-VDNNLG6X.js +2 -0
  31. package/dist/chunk-VHAVHCQY.js +7 -0
  32. package/dist/chunk-VX43VBAX.cjs +7 -0
  33. package/dist/chunk-Z6WBFXJU.js +5 -0
  34. package/dist/{chunk-2GK7YQB2.cjs → chunk-ZUHOMK52.cjs} +1 -1
  35. package/dist/collaboration/replication.cjs +1 -1
  36. package/dist/collaboration/replication.d.ts +41 -5
  37. package/dist/collaboration/replication.js +1 -1
  38. package/dist/collaboration.cjs +1 -1
  39. package/dist/collaboration.d.ts +98 -6
  40. package/dist/collaboration.js +1 -1
  41. package/dist/contracts/document.d.ts +17 -2
  42. package/dist/contracts/editor.d.ts +19 -9
  43. package/dist/contracts/interaction.d.ts +29 -0
  44. package/dist/contracts/modules.d.ts +31 -7
  45. package/dist/contracts/types.d.ts +10 -1
  46. package/dist/{custom-node-writes-Vzpq9I8_.d.ts → custom-node-writes-cvL5rhcD.d.ts} +2 -2
  47. package/dist/{document-protection-9zpIHWTE.d.ts → document-protection-BAGVGqaP.d.ts} +1 -1
  48. package/dist/{editor-B3OBYNrF.d.ts → editor-Ci7IZGmG.d.ts} +392 -140
  49. package/dist/editor.cjs +1 -1
  50. package/dist/editor.css +5 -5
  51. package/dist/editor.d.ts +415 -30
  52. package/dist/editor.js +1 -1
  53. package/dist/export.cjs +2 -2
  54. package/dist/export.d.ts +23 -13
  55. package/dist/export.js +2 -2
  56. package/dist/failure-NS2lsya4.d.ts +115 -0
  57. package/dist/{font-resolver-DN0xNOf_.d.ts → font-resolver-BVQB14qT.d.ts} +1 -1
  58. package/dist/{headless-document-view-ICYqNkQ1.d.ts → headless-document-view-qH331moE.d.ts} +2 -2
  59. package/dist/{image-resources-BDFxcu7W.d.ts → image-resources-BN-hUgCn.d.ts} +9 -9
  60. package/dist/{index-CkQVRJtJ.d.ts → index-Bsg7oIKP.d.ts} +234 -111
  61. package/dist/index.cjs +1 -1
  62. package/dist/index.d.ts +46 -19
  63. package/dist/index.js +1 -1
  64. package/dist/{layout-shaping-BvZD_VKP.d.ts → layout-shaping-BEyuiQOk.d.ts} +1 -1
  65. package/dist/layout.cjs +1 -1
  66. package/dist/layout.d.ts +170 -78
  67. package/dist/layout.js +1 -1
  68. package/dist/{note-properties-CkAk7g-n.d.ts → note-properties-4Y9o6Gyk.d.ts} +1 -1
  69. package/dist/{omml-equation-DuczgG5o.d.ts → omml-equation-CuzBL5DD.d.ts} +1 -1
  70. package/dist/output.cjs +1 -1
  71. package/dist/output.d.ts +18 -8
  72. package/dist/output.js +1 -1
  73. package/dist/{protocol-aKYr8r3u.d.ts → protocol-Bqk4Izjc.d.ts} +44 -4
  74. package/dist/review-pane-D9jm8DcY.d.ts +128 -0
  75. package/dist/{review-paragraph-order-Ddj5d6rp.d.ts → review-paragraph-order-DT-n6ouC.d.ts} +5 -2
  76. package/dist/{revision-projection-CSNFudZY.d.ts → revision-projection-DZ4kKVev.d.ts} +1 -1
  77. package/dist/{semantic-cell-selection-DoqYCz_F.d.ts → semantic-cell-selection-D9D1KSXq.d.ts} +8 -6
  78. package/dist/{semantic-interaction-G0bjmmmk.d.ts → semantic-interaction-CIC-PooQ.d.ts} +25 -34
  79. package/dist/{semantic-paint-CsMzF8-O.d.ts → semantic-paint-BME37OMv.d.ts} +4 -4
  80. package/dist/{semantic-record-queries-1du6lQqS.d.ts → semantic-record-queries-CBlZqZNa.d.ts} +1 -1
  81. package/dist/{semantic-records-B9OolWGN.d.ts → semantic-records-4B3WwFAi.d.ts} +74 -42
  82. package/dist/store.cjs +1 -1
  83. package/dist/store.d.ts +157 -134
  84. package/dist/store.js +1 -1
  85. package/dist/{tree-package-fragment-DYZIk1rY.d.ts → tree-package-fragment-BeeKxDw8.d.ts} +77 -57
  86. package/dist/{tree-session-contract-DQVJOOkv.d.ts → tree-session-contract-CVbmlMlq.d.ts} +7 -5
  87. package/dist/{types-barrel-BFKR8Pzp.d.ts → types-barrel-D3xCgQX6.d.ts} +462 -362
  88. package/package.json +2 -2
  89. package/dist/chunk-4KZ6L5YF.cjs +0 -15
  90. package/dist/chunk-55AT3MOU.cjs +0 -25
  91. package/dist/chunk-6ZQMII6V.js +0 -1
  92. package/dist/chunk-7IGCWG4H.js +0 -2
  93. package/dist/chunk-7MYITTAH.js +0 -5
  94. package/dist/chunk-AVKVRU7Z.cjs +0 -5
  95. package/dist/chunk-CWRBFNK5.cjs +0 -5
  96. package/dist/chunk-DGPA3TST.cjs +0 -27
  97. package/dist/chunk-DNXVNQEO.js +0 -1
  98. package/dist/chunk-FQN4KSFL.cjs +0 -7
  99. package/dist/chunk-GVUOWHTO.cjs +0 -1
  100. package/dist/chunk-GWQJ5774.js +0 -5
  101. package/dist/chunk-HAQ72KD7.js +0 -1
  102. package/dist/chunk-HO5XFO32.cjs +0 -3
  103. package/dist/chunk-IGR23DV2.js +0 -1
  104. package/dist/chunk-JSIX2EOH.js +0 -3
  105. package/dist/chunk-K246T47S.cjs +0 -1
  106. package/dist/chunk-KAXOGCGA.js +0 -1
  107. package/dist/chunk-LZLTN5A3.cjs +0 -1
  108. package/dist/chunk-OHAXVTWG.cjs +0 -1
  109. package/dist/chunk-S74GRBNE.js +0 -7
  110. package/dist/chunk-UBLUVNZR.js +0 -27
  111. package/dist/chunk-UMRSBLO7.js +0 -15
  112. package/dist/chunk-VIPMGGUT.js +0 -25
  113. package/dist/chunk-WG4KMSX2.cjs +0 -2
  114. package/dist/chunk-WRLKVNNR.cjs +0 -1
  115. package/dist/chunk-ZU7IVN6G.js +0 -2
  116. package/dist/failure-BIPVQbRm.d.ts +0 -65
@@ -1,5 +1,5 @@
1
- import { a6 as AutomationTableMutation, a3 as RevisionBatchResult } from './types-barrel-BFKR8Pzp.js';
2
- import { c as HeaderFooterVariant, N as NoteKind } from './tree-package-fragment-DYZIk1rY.js';
1
+ import { a9 as AutomationTableMutation, a6 as RevisionBatchResult, a3 as RevisionAuthorResult } from './types-barrel-D3xCgQX6.js';
2
+ import { c as HeaderFooterVariant, N as NoteKind } from './tree-package-fragment-BeeKxDw8.js';
3
3
 
4
4
  /** Word's shape types, as `Word.ShapeType` spells them. */
5
5
  type AutomationShapeType = 'TextBox' | 'GeometricShape' | 'Picture' | 'Group' | 'Canvas' | 'Unsupported';
@@ -25,6 +25,11 @@ interface AutomationInlinePictureWrite {
25
25
 
26
26
  /** Alignment as this protocol publishes it. `Mixed`/`Unknown` are read-only answers. */
27
27
  type AutomationAlignment = 'Mixed' | 'Unknown' | 'Left' | 'Centered' | 'Right' | 'Justified';
28
+ /**
29
+ * A paragraph's base direction (`w:bidi`) as this protocol publishes it: the direction the
30
+ * paragraph reads in, after its style cascade.
31
+ */
32
+ type AutomationReadingOrder = 'LeftToRight' | 'RightToLeft';
28
33
  /**
29
34
  * What a range agrees about its characters' formatting.
30
35
  *
@@ -78,6 +83,8 @@ interface AutomationParagraphFormatRead {
78
83
  readonly spaceBefore: number | null;
79
84
  readonly spaceAfter: number | null;
80
85
  readonly widowControl: boolean | null;
86
+ /** The direction the paragraph reads in: its own `w:bidi` if any, else the style cascade's. */
87
+ readonly readingOrder: AutomationReadingOrder;
81
88
  }
82
89
  /**
83
90
  * A paragraph-property write. Every field optional; omitted means "leave alone".
@@ -103,6 +110,12 @@ interface AutomationParagraphFormatWrite {
103
110
  readonly spaceBefore?: number;
104
111
  readonly spaceAfter?: number;
105
112
  readonly widowControl?: boolean;
113
+ /**
114
+ * The direction the paragraph should read in. Nothing is written when it already does. Else the
115
+ * paragraph's own `w:bidi` is removed when that alone set the other direction, or stated:
116
+ * `<w:bidi/>`, or `<w:bidi w:val="0"/>` over a right-to-left style.
117
+ */
118
+ readonly readingOrder?: AutomationReadingOrder;
106
119
  }
107
120
 
108
121
  declare const MEMBERS: {
@@ -984,6 +997,19 @@ type AutomationOperation = AutomationAuthoringOperation | {
984
997
  readonly action: 'accept' | 'reject';
985
998
  readonly revisions?: readonly AutomationHandle[];
986
999
  }
1000
+ /**
1001
+ * Attribute pending decisions in one story to another author, keeping them pending. Omit
1002
+ * revisions to select every canonical decision. `date` is `xsd:dateTime`; omitted keeps each.
1003
+ */
1004
+ | {
1005
+ readonly op: 'setRevisionAuthorBatch';
1006
+ readonly body: AutomationHandle;
1007
+ readonly author: string;
1008
+ readonly date?: string;
1009
+ readonly revisions?: readonly AutomationHandle[];
1010
+ /** Keep only changes these authors made. Not allowed with `revisions`. */
1011
+ readonly authors?: readonly string[];
1012
+ }
987
1013
  /** Word's name for the kind of change: `Insert`, `Delete`, `Replace`, `Property`, … */
988
1014
  | {
989
1015
  readonly op: 'getRevisionType';
@@ -1329,7 +1355,11 @@ interface AutomationCapabilities {
1329
1355
  * `stale-revision` must not retry an `invalid-handle`.
1330
1356
  */
1331
1357
  type AutomationErrorCode =
1332
- /** `expectedRevision` did not match the host's current revision; nothing was applied. */
1358
+ /**
1359
+ * Nothing was applied because the request was built from an older read: `expectedRevision`
1360
+ * did not match the host's current revision, or an endpoint's `readAt` names a position
1361
+ * that moved since. Read again before retrying; resending the same endpoints fails again.
1362
+ */
1333
1363
  'stale-revision'
1334
1364
  /** A handle this host never minted, or one naming a different kind of object. */
1335
1365
  | 'invalid-handle'
@@ -1406,6 +1436,13 @@ interface AutomationEndpoint {
1406
1436
  */
1407
1437
  readonly paragraph: AutomationHandle;
1408
1438
  readonly offset: number;
1439
+ /**
1440
+ * The host revision this endpoint was read at. Hosts stamp every endpoint they answer with
1441
+ * it; send it back unchanged. An endpoint whose paragraph text changed since then is refused
1442
+ * with `stale-revision` instead of addressing whatever text now sits at its offset. Omit it
1443
+ * for an endpoint built by hand, which the host then takes as current.
1444
+ */
1445
+ readonly readAt?: number;
1409
1446
  }
1410
1447
  /** A stretch of a story between two endpoints, in reading order. */
1411
1448
  interface AutomationSpan {
@@ -1416,6 +1453,9 @@ interface AutomationSpan {
1416
1453
  type AutomationValue = {
1417
1454
  readonly kind: 'revisionBatch';
1418
1455
  readonly result: RevisionBatchResult;
1456
+ } | {
1457
+ readonly kind: 'revisionAuthors';
1458
+ readonly result: RevisionAuthorResult;
1419
1459
  } | {
1420
1460
  readonly kind: 'field';
1421
1461
  readonly field: {
@@ -1608,4 +1648,4 @@ interface AutomationHost {
1608
1648
  dispose(): void;
1609
1649
  }
1610
1650
 
1611
- export type { AutomationOperation as A, AutomationPoint as B, AutomationSaveResult as C, AutomationSearchOptions as D, AutomationSelectionMode as E, AutomationSpan as F, AutomationSpanRef as G, AutomationTextProjection as H, AutomationUnsubscribe as I, AutomationValue as J, AutomationCapabilities as a, AutomationHost as b, AutomationAlignment as c, AutomationBatchRequest as d, AutomationBatchResponse as e, AutomationChangeEvent as f, AutomationContentControlLock as g, AutomationContentControlRangeLocation as h, AutomationContentControlScope as i, AutomationContentControlSubtype as j, AutomationContentControlValue as k, AutomationError as l, AutomationErrorCode as m, AutomationFontRead as n, AutomationFontWrite as o, AutomationHandle as p, AutomationHandleRef as q, AutomationObjectKind as r, AutomationOperationKind as s, AutomationOperationResult as t, AutomationPageOrientation as u, AutomationPageSetupRead as v, AutomationPageSetupWrite as w, AutomationParagraphFormatRead as x, AutomationParagraphFormatWrite as y, AutomationParagraphRef as z };
1651
+ export type { AutomationOperation as A, AutomationPoint as B, AutomationReadingOrder as C, AutomationSaveResult as D, AutomationSearchOptions as E, AutomationSelectionMode as F, AutomationSpan as G, AutomationSpanRef as H, AutomationTextProjection as I, AutomationUnsubscribe as J, AutomationValue as K, AutomationCapabilities as a, AutomationHost as b, AutomationAlignment as c, AutomationBatchRequest as d, AutomationBatchResponse as e, AutomationChangeEvent as f, AutomationContentControlLock as g, AutomationContentControlRangeLocation as h, AutomationContentControlScope as i, AutomationContentControlSubtype as j, AutomationContentControlValue as k, AutomationError as l, AutomationErrorCode as m, AutomationFontRead as n, AutomationFontWrite as o, AutomationHandle as p, AutomationHandleRef as q, AutomationObjectKind as r, AutomationOperationKind as s, AutomationOperationResult as t, AutomationPageOrientation as u, AutomationPageSetupRead as v, AutomationPageSetupWrite as w, AutomationParagraphFormatRead as x, AutomationParagraphFormatWrite as y, AutomationParagraphRef as z };
@@ -0,0 +1,128 @@
1
+ /**
2
+ * When the review pane opens by itself.
3
+ *
4
+ * - `'auto'`: the pane opens when a document with review items loads, and when a tracked
5
+ * change is made while it is closed, in both cases when the pane has items to list. With
6
+ * `revisionsIn: 'balloons'` the pane lists no tracked change and no reply to one, so
7
+ * tracked changes and their replies alone do not open it.
8
+ * - `'manual'`: the pane stays closed until the host or the user opens it. Use it when the
9
+ * host shows review items its own way, such as in balloons or margin markers.
10
+ *
11
+ * @public
12
+ */
13
+ type ReviewPaneOpening = 'auto' | 'manual';
14
+ /**
15
+ * What the open review pane does when its full card column does not fit beside the page at
16
+ * the page's zoom.
17
+ *
18
+ * - `'float'`: the pane shrinks to a strip of markers, and the open card floats over the
19
+ * page.
20
+ * - `'shrinkPage'`: under a fit zoom mode, the page may shrink down to the mode's
21
+ * `minZoom` (or 10%) so that the full column fits. The pane changes to the marker strip
22
+ * only when the column does not fit at that floor either. A fixed zoom behaves as
23
+ * `'float'`.
24
+ * - `'scroll'`: the page keeps the size it has beside the closed pane's marker strip, and
25
+ * the full column stands beside it. The document and the column scroll together: the
26
+ * viewport scrolls sideways to reach the cards.
27
+ *
28
+ * The setting applies to the review pane only. The navigation pane stays docked at its side
29
+ * in every mode: it never scrolls with the document, and it takes its room beside the page
30
+ * exactly as it does with no review pane.
31
+ *
32
+ * @public
33
+ */
34
+ type ReviewPaneOverflow = 'float' | 'shrinkPage' | 'scroll';
35
+ /**
36
+ * Where tracked changes open.
37
+ *
38
+ * - `'pane'`: the review pane lists tracked changes as cards beside the comments.
39
+ * - `'balloons'`: the pane lists comments only, except comments that reply to a tracked
40
+ * change: the change's balloon shows those. A tracked change opens in a balloon at its
41
+ * text when the reader clicks it, or when Next Change, Previous Change, or
42
+ * `setActiveReviewItem(key, { announce: true })` reaches it.
43
+ *
44
+ * @public
45
+ */
46
+ type RevisionDisplay = 'pane' | 'balloons';
47
+ /**
48
+ * How a collapsed comment marker looks.
49
+ *
50
+ * - `'initials'`: a badge with the thread author's initials in the author's color, a reply
51
+ * count, and a check mark when the thread is resolved.
52
+ * - `'icon'`: the comment icon.
53
+ *
54
+ * @public
55
+ */
56
+ type CommentMarkerStyle = 'initials' | 'icon';
57
+ /**
58
+ * Review pane settings to change. Every field is optional, and an omitted field keeps its
59
+ * current value.
60
+ *
61
+ * @public
62
+ */
63
+ interface ReviewPaneOptions {
64
+ /** Default `'auto'`. */
65
+ readonly opening?: ReviewPaneOpening;
66
+ /** Default `'float'`. */
67
+ readonly overflow?: ReviewPaneOverflow;
68
+ /** Default `'pane'`. */
69
+ readonly revisionsIn?: RevisionDisplay;
70
+ /** Default `'icon'`. */
71
+ readonly commentMarkers?: CommentMarkerStyle;
72
+ }
73
+ /**
74
+ * The review pane settings in force, with every field resolved.
75
+ *
76
+ * @public
77
+ */
78
+ interface ResolvedReviewPane {
79
+ /** When the pane opens by itself. */
80
+ readonly opening: ReviewPaneOpening;
81
+ /** What the open pane does when its card column does not fit beside the page. */
82
+ readonly overflow: ReviewPaneOverflow;
83
+ /** Where tracked changes open. */
84
+ readonly revisionsIn: RevisionDisplay;
85
+ /** How a collapsed comment marker looks. */
86
+ readonly commentMarkers: CommentMarkerStyle;
87
+ }
88
+ /** The settings an editor starts with when nothing sets them. @public */
89
+ declare const DEFAULT_REVIEW_PANE: ResolvedReviewPane;
90
+ /**
91
+ * Merge `options` over `base`. Throws a `TypeError` for an unknown field or value, so a
92
+ * misspelled setting fails loudly instead of being ignored. Returns `base` itself when
93
+ * nothing changes, so the snapshot keeps its reference.
94
+ *
95
+ * @public
96
+ */
97
+ declare function resolveReviewPane(options: ReviewPaneOptions | undefined, base?: ResolvedReviewPane): ResolvedReviewPane;
98
+ /**
99
+ * The fields of a review item that decide whether the review pane lists it. A
100
+ * `ReviewItem` and a review item placement both have them.
101
+ *
102
+ * @public
103
+ */
104
+ interface ReviewPaneItemFields {
105
+ /** The item kind, as `ReviewItem.kind` gives it. */
106
+ readonly kind: 'revision' | 'comment' | 'custom';
107
+ /** For a comment, the tracked change it replies to. */
108
+ readonly parentRevisionId?: string;
109
+ }
110
+ /**
111
+ * Whether the review pane lists a card for `item` under `revisionsIn`.
112
+ *
113
+ * With `'balloons'`, a balloon at the text shows every tracked change and every comment
114
+ * that replies to a tracked change, so the pane lists neither. Give the item as an
115
+ * unfiltered `getReviewItems()` read returns it: a query that excludes revision kinds
116
+ * removes `parentRevisionId` from replies to the changes it drops.
117
+ *
118
+ * The engine applies this rule to every review item when it decides whether the pane opens
119
+ * by itself or closes after a settings change. A review pane must apply the same rule before
120
+ * its own filters, such as a hidden kind or a host filter. Those filters can hide every card,
121
+ * and then the pane that the engine opens is empty.
122
+ *
123
+ * @public
124
+ */
125
+ declare function reviewPaneListsItem(revisionsIn: RevisionDisplay, item: ReviewPaneItemFields): boolean;
126
+
127
+ export { DEFAULT_REVIEW_PANE as D, reviewPaneListsItem as f, resolveReviewPane as r };
128
+ export type { CommentMarkerStyle as C, ReviewPaneOptions as R, ResolvedReviewPane as a, ReviewPaneOverflow as b, ReviewPaneItemFields as c, ReviewPaneOpening as d, RevisionDisplay as e };
@@ -1,4 +1,4 @@
1
- import { N as OoxmlNode, Z as OoxmlElement, _ as OoxmlContentControlNode, V as OoxmlGenericElementNode, $ as OoxmlContentControlContentNode, C as CommentRecord, O as OoxmlPart } from './types-barrel-BFKR8Pzp.js';
1
+ import { N as OoxmlNode, Z as OoxmlElement, _ as OoxmlContentControlNode, V as OoxmlGenericElementNode, $ as OoxmlContentControlContentNode, C as CommentRecord, O as OoxmlPart } from './types-barrel-D3xCgQX6.js';
2
2
 
3
3
  /** Nested content-control wrappers deeper than this stop flattening; content stays preserved. */
4
4
  declare const MAX_CONTENT_CONTROL_NESTING = 32;
@@ -63,7 +63,10 @@ declare function walkParagraphInline(children: readonly OoxmlNode[], depth: numb
63
63
  * run walk.
64
64
  */
65
65
  declare function commentBodyText(comment: CommentRecord): string;
66
- /** Author initials for an avatar, from `@w:initials` or the name. */
66
+ /**
67
+ * Author initials for an avatar, from `@w:initials` or the name, at most three characters.
68
+ * Characters are code points, so a surrogate pair is never split.
69
+ */
67
70
  declare function commentInitials(comment: CommentRecord): string;
68
71
 
69
72
  /**
@@ -1,4 +1,4 @@
1
- import { N as OoxmlNode } from './types-barrel-BFKR8Pzp.js';
1
+ import { N as OoxmlNode } from './types-barrel-D3xCgQX6.js';
2
2
 
3
3
  /** Named revision colors. Identifiers are stable and never contain CSS. @public */
4
4
  declare const REVISION_MARKUP_COLORS: readonly ['black', 'blue', 'turquoise', 'green', 'pink', 'red', 'yellow', 'white', 'darkBlue', 'teal', 'darkGreen', 'violet', 'darkRed', 'darkYellow', 'gray50', 'gray25', 'lightBlue', 'lightYellow', 'lightOrange', 'lightPurple', 'lightGreen', 'gray'];
@@ -1,7 +1,7 @@
1
- import { O as OoxmlPart, Z as OoxmlElement, N as OoxmlNode } from './types-barrel-BFKR8Pzp.js';
2
- import { b as RevisionDisplayMode, c as RevisionAuthorFilter } from './revision-projection-CSNFudZY.js';
3
- import { f as SectionPageBorders, I as InlineDrawingRecord, A as AnchoredDrawingRecord, T as TextMeasurer, L as LineRecord, e as StyleSpanRecord, S as SemanticLayout, C as ContentControlBoundaryRecord, g as TableRowFragmentRecord, h as TableCellFragmentRecord } from './semantic-records-B9OolWGN.js';
4
- import { S as SemanticPosition, C as CaretGeometry, a as SemanticSelection } from './semantic-interaction-G0bjmmmk.js';
1
+ import { O as OoxmlPart, Z as OoxmlElement, N as OoxmlNode } from './types-barrel-D3xCgQX6.js';
2
+ import { b as RevisionDisplayMode, c as RevisionAuthorFilter } from './revision-projection-DZ4kKVev.js';
3
+ import { f as SectionPageBorders, I as InlineDrawingRecord, A as AnchoredDrawingRecord, T as TextMeasurer, L as LineRecord, e as StyleSpanRecord, S as SemanticLayout, C as ContentControlBoundaryRecord, g as TableRowFragmentRecord, h as TableCellFragmentRecord } from './semantic-records-4B3WwFAi.js';
4
+ import { S as SemanticPosition, C as CaretGeometry, a as SemanticSelection } from './semantic-interaction-CIC-PooQ.js';
5
5
 
6
6
  /** Page geometry, in points. */
7
7
  interface PageGeometry {
@@ -310,8 +310,10 @@ declare function hitTestSheet(layout: SemanticLayout, point: HitPoint, options?:
310
310
  */
311
311
  declare function contentControlAtPoint(layout: SemanticLayout, pageIndex: number, point: HitPoint): ContentControlBoundaryRecord | null;
312
312
  /**
313
- * Logical line end, excluding the wrap space or hard break whose following position
314
- * belongs to the next line. Page breaks are excluded even on the paragraph's last line.
313
+ * Logical line end, excluding a hard break, whose following position belongs to the next line.
314
+ * Trailing spaces of a soft wrap stay on the line: the end is after them, where End puts the
315
+ * caret, and the caret shows on this line through its line affinity. Page breaks are excluded
316
+ * even on the paragraph's last line.
315
317
  */
316
318
  declare function lineEndOffset(layout: SemanticLayout, line: LineRecord): number;
317
319
  /**
@@ -1,4 +1,17 @@
1
- import { T as TextMeasurer, S as SemanticLayout, B as BlockFragmentRecord, C as ContentControlBoundaryRecord, e as StyleSpanRecord } from './semantic-records-B9OolWGN.js';
1
+ import { T as TextMeasurer, S as SemanticLayout, B as BlockFragmentRecord, C as ContentControlBoundaryRecord, e as StyleSpanRecord } from './semantic-records-4B3WwFAi.js';
2
+
3
+ /** How `moveCaret` resolves a motion. */
4
+ interface MoveCaretOptions {
5
+ /** Precomputed active-story stops; body navigation keeps the indexed default. */
6
+ readonly stops?: readonly CaretGeometry[];
7
+ readonly measurer?: TextMeasurer;
8
+ /**
9
+ * The line the caret shows on (its line affinity), for an offset that ends one wrapped line
10
+ * and starts the next. Home, End, Up, and Down then start from that line. A line that does
11
+ * not hold the offset is ignored, and the default line for the offset applies.
12
+ */
13
+ readonly lineId?: string;
14
+ }
2
15
 
3
16
  /** A caret position in the model. */
4
17
  interface SemanticPosition {
@@ -56,35 +69,12 @@ interface CaretAtOptions {
56
69
  * (shared header/footer copies).
57
70
  */
58
71
  readonly preferredPageIndex?: number;
72
+ /** Prefer this visual line when one model boundary has several painted occurrences. */
73
+ readonly preferredLineId?: string;
59
74
  }
60
75
  /** Geometry for one model position, or null when it is not laid out. */
61
76
  declare function caretAt(layout: SemanticLayout, position: SemanticPosition, measurerOrOptions?: TextMeasurer | CaretAtOptions): CaretGeometry | null;
62
- /**
63
- * The caret position nearest a point, in PAGE-CONTENT coordinates.
64
- *
65
- * Never returns null for a point inside the document: a click in the margin, past the end of
66
- * a line, or below the last line still has an obvious intended caret, and refusing to answer
67
- * would make those clicks do nothing.
68
- *
69
- * The rules live in `semantic-hit-test.ts`, which answers with the cell address and the
70
- * on-glyphs flag a pointer controller needs too; this keeps the geometry-only shape for
71
- * callers that want nothing else.
72
- */
73
- declare function hitTestSemantic(layout: SemanticLayout, point: {
74
- readonly x: number;
75
- readonly y: number;
76
- readonly pageIndex?: number;
77
- }): CaretGeometry | null;
78
- /**
79
- * Innermost content-control boundary at a page-content point, or null outside every control.
80
- *
81
- * Prefers the deepest nesting depth when nested boundaries share geometry.
82
- */
83
- declare function contentControlAtSemantic(layout: SemanticLayout, point: {
84
- readonly x: number;
85
- readonly y: number;
86
- readonly pageIndex?: number;
87
- }): ContentControlBoundaryRecord | null;
77
+
88
78
  /** Layout-published content-control boundaries in document order. */
89
79
  declare function contentControlsInLayout(layout: SemanticLayout): readonly ContentControlBoundaryRecord[];
90
80
  /**
@@ -104,16 +94,17 @@ type NavigationCommand = 'left' | 'right' | 'up' | 'down' | 'wordLeft' | 'wordRi
104
94
  declare function paragraphTextFromLayout(layout: SemanticLayout, paragraphId: string): string;
105
95
  /** Visible deletion boundaries split words without changing canonical text offsets. */
106
96
  declare function deletedTextBoundaries(layout: SemanticLayout, paragraphId: string): ReadonlySet<number>;
107
- /** Story-scoped stops are required when navigating inside an open header or footer. */
108
- interface MoveCaretOptions {
109
- /** Precomputed active-story stops; body navigation keeps the indexed default. */
110
- readonly stops?: readonly CaretGeometry[];
111
- readonly measurer?: TextMeasurer;
112
- }
97
+
113
98
  /** Move a caret; vertical movement carries a desired X through shorter lines. */
114
99
  declare function moveCaret(layout: SemanticLayout, position: SemanticPosition, command: NavigationCommand, desiredX?: number | null, options?: MoveCaretOptions): {
115
100
  position: SemanticPosition;
116
101
  desiredX: number | null;
102
+ /**
103
+ * The line the caret shows on after the motion, when it is not the default line for the
104
+ * position (End at a wrap shows on the upper line). Pass it back as
105
+ * {@link MoveCaretOptions.lineId} and as `CaretAtOptions.preferredLineId`.
106
+ */
107
+ lineId?: string;
117
108
  } | null;
118
109
  /**
119
110
  * The anchor an IME composition is attached to.
@@ -140,5 +131,5 @@ declare function spansInSelection(layout: SemanticLayout, selection: SemanticSel
140
131
  */
141
132
  order: readonly string[]): StyleSpanRecord[];
142
133
 
143
- export { caretAt as d, caretStops as e, caretStopsForBlocks as f, compositionAnchor as g, contentControlAtSemantic as h, contentControlsInLayout as i, deletedTextBoundaries as j, hitTestSemantic as k, moveCaret as m, paragraphTextFromLayout as p, spansInSelection as s };
134
+ export { caretAt as d, caretStops as e, caretStopsForBlocks as f, compositionAnchor as g, contentControlsInLayout as h, deletedTextBoundaries as i, moveCaret as m, paragraphTextFromLayout as p, spansInSelection as s };
144
135
  export type { CaretGeometry as C, MoveCaretOptions as M, NavigationCommand as N, SemanticPosition as S, SemanticSelection as a, SelectionRect as b, CaretAtOptions as c };
@@ -1,7 +1,7 @@
1
- import { d as ResolvedRevisionMarkup } from './revision-projection-CSNFudZY.js';
2
- import { a as PageRecord, C as ContentControlBoundaryRecord, S as SemanticLayout } from './semantic-records-B9OolWGN.js';
3
- import { S as SemanticRootStoryKind } from './semantic-record-queries-1du6lQqS.js';
4
- import { V as ValidatedImageBytesHandle, R as RenderableImageMime } from './image-resources-BDFxcu7W.js';
1
+ import { d as ResolvedRevisionMarkup } from './revision-projection-DZ4kKVev.js';
2
+ import { a as PageRecord, C as ContentControlBoundaryRecord, S as SemanticLayout } from './semantic-records-4B3WwFAi.js';
3
+ import { S as SemanticRootStoryKind } from './semantic-record-queries-CBlZqZNa.js';
4
+ import { V as ValidatedImageBytesHandle, R as RenderableImageMime } from './image-resources-BN-hUgCn.js';
5
5
 
6
6
  /**
7
7
  * Everything a host can say about ONE author's presentation. Every field is optional and
@@ -1,4 +1,4 @@
1
- import { I as InlineDrawingRecord, A as AnchoredDrawingRecord, P as ParagraphFragmentRecord, L as LineRecord, a as PageRecord, N as NoteAreaRecord, b as LayoutBox, H as HeaderFooterStoryRecord, c as NoteStoryRecord, B as BlockFragmentRecord, S as SemanticLayout, C as ContentControlBoundaryRecord, d as ContentControlLock } from './semantic-records-B9OolWGN.js';
1
+ import { I as InlineDrawingRecord, A as AnchoredDrawingRecord, P as ParagraphFragmentRecord, L as LineRecord, a as PageRecord, N as NoteAreaRecord, b as LayoutBox, H as HeaderFooterStoryRecord, c as NoteStoryRecord, B as BlockFragmentRecord, S as SemanticLayout, C as ContentControlBoundaryRecord, d as ContentControlLock } from './semantic-records-4B3WwFAi.js';
2
2
 
3
3
  /**
4
4
  * Depth-first paragraph fragments of one page, in reading order.
@@ -1,7 +1,7 @@
1
- import { o as RevisionAttribution, b as RevisionDisplayMode } from './revision-projection-CSNFudZY.js';
2
- import { X as OoxmlProperty, Z as OoxmlElement, N as OoxmlNode, O as OoxmlPart, aG as TableBorderStyle, aH as DrawingAccessibility, aI as DrawingImageEffects, a8 as SourceCrop, aJ as DrawingTransform, aK as VectorShapeProjection, aj as DrawingHorizontalReferenceFrame, ak as DrawingVerticalReferenceFrame, aa as ImageWrapTarget, a0 as DrawingProjection, aL as OoxmlDrawingNode } from './types-barrel-BFKR8Pzp.js';
3
- import { b as ImageResourceState } from './image-resources-BDFxcu7W.js';
4
- import { O as OmmlEquationProjection } from './omml-equation-DuczgG5o.js';
1
+ import { o as RevisionAttribution, b as RevisionDisplayMode } from './revision-projection-DZ4kKVev.js';
2
+ import { X as OoxmlProperty, Z as OoxmlElement, N as OoxmlNode, O as OoxmlPart, aJ as TableBorderStyle, aK as DrawingAccessibility, aL as DrawingImageEffects, al as SourceCrop, aM as DrawingTransform, aN as VectorShapeProjection, aw as DrawingHorizontalReferenceFrame, ax as DrawingVerticalReferenceFrame, an as ImageWrapTarget, a0 as DrawingProjection, aO as OoxmlDrawingNode } from './types-barrel-D3xCgQX6.js';
3
+ import { b as ImageResourceState } from './image-resources-BN-hUgCn.js';
4
+ import { O as OmmlEquationProjection } from './omml-equation-CuzBL5DD.js';
5
5
 
6
6
  /** A strikeout stroke at the drawn size, in points. `offsetPt` is the stroke TOP. @public */
7
7
  interface StrikeoutStrokePt {
@@ -913,8 +913,8 @@ declare function paragraphLineSpacing(props: readonly OoxmlProperty[]): Paragrap
913
913
  * Exact-height boxes place their baseline at 80% of the height; the legacy
914
914
  * noExtraLineSpacing switch instead preserves the face baseline within the box.
915
915
  *
916
- * An `auto` line of a snapping paragraph under an active line grid takes whole pitches
917
- * instead ({@link gridLineBox}); `trailing` then names the extra below the grid line.
916
+ * An `auto` or `atLeast` line of a snapping paragraph under an active line grid takes whole
917
+ * pitches instead ({@link gridLineBox}); `trailing` then names the box below the glyphs.
918
918
  */
919
919
  declare function applyLineSpacing(spacing: ParagraphLineSpacing, naturalHeight: number, naturalBaseline: number): {
920
920
  height: number;
@@ -1130,6 +1130,8 @@ interface ThemeFonts {
1130
1130
  /** Language-specific theme faces, keyed by ISO 15924 script. */
1131
1131
  readonly majorSupplemental?: Readonly<Record<string, string>>;
1132
1132
  readonly minorSupplemental?: Readonly<Record<string, string>>;
1133
+ /** Lower-cased font table names that declare a Chinese character set. */
1134
+ readonly chineseFontTableFaces?: readonly string[];
1133
1135
  }
1134
1136
  /**
1135
1137
  * Resolve one run's direct formatting.
@@ -1195,6 +1197,29 @@ interface StoryPageFieldNeeds {
1195
1197
  readonly hasPageParity?: boolean;
1196
1198
  }
1197
1199
 
1200
+ interface DrawingPoint {
1201
+ readonly x: number;
1202
+ readonly y: number;
1203
+ }
1204
+ interface DrawingInsets {
1205
+ readonly top: number;
1206
+ readonly right: number;
1207
+ readonly bottom: number;
1208
+ readonly left: number;
1209
+ }
1210
+ type DrawingClipFallback = 'none' | 'unsupported-preset';
1211
+ interface DrawingGeometry {
1212
+ readonly contentBounds: LayoutBox;
1213
+ readonly paintBounds: LayoutBox;
1214
+ readonly hitBounds: LayoutBox;
1215
+ readonly transformedCorners: readonly DrawingPoint[];
1216
+ /** Unclipped image corners for affine encoding; clipping must not stretch the image. */
1217
+ readonly imageTransformCorners?: readonly DrawingPoint[];
1218
+ readonly clipPolygon: readonly DrawingPoint[] | null;
1219
+ readonly clipFallback: DrawingClipFallback;
1220
+ readonly effectInsets: DrawingInsets;
1221
+ }
1222
+
1198
1223
  /**
1199
1224
  * UAX #9 embedding levels, one per UTF-16 code unit, plus the paragraph ranges they were resolved
1200
1225
  * within.
@@ -1443,6 +1468,17 @@ interface FieldAtomMarker {
1443
1468
  * first fragment, gated per field on the calibration verdict.
1444
1469
  */
1445
1470
  readonly pageRef?: PageRefFieldProjection;
1471
+ /**
1472
+ * The first model offset of the editable saved result this piece belongs to.
1473
+ *
1474
+ * Present only when saved results are laid out as text (`fieldResults: 'editable'`). The
1475
+ * result is ordinary text then, so its pieces have their own offsets; every piece of one
1476
+ * result shares this value, which keeps a multi-run link result one anchor and lets the
1477
+ * caret find the whole result it is in.
1478
+ */
1479
+ readonly resultStart?: number;
1480
+ /** The model offset just past the same result, beside {@link resultStart}. */
1481
+ readonly resultEnd?: number;
1446
1482
  }
1447
1483
  /** A half-open model-offset range, in the paragraph's own UTF-16 offset space. */
1448
1484
  interface ModelRange {
@@ -1600,29 +1636,6 @@ interface CjkTypographySettings {
1600
1636
  readonly after: Readonly<Record<string, string>>;
1601
1637
  }
1602
1638
 
1603
- interface DrawingPoint {
1604
- readonly x: number;
1605
- readonly y: number;
1606
- }
1607
- interface DrawingInsets {
1608
- readonly top: number;
1609
- readonly right: number;
1610
- readonly bottom: number;
1611
- readonly left: number;
1612
- }
1613
- type DrawingClipFallback = 'none' | 'unsupported-preset';
1614
- interface DrawingGeometry {
1615
- readonly contentBounds: LayoutBox;
1616
- readonly paintBounds: LayoutBox;
1617
- readonly hitBounds: LayoutBox;
1618
- readonly transformedCorners: readonly DrawingPoint[];
1619
- /** Unclipped image corners for affine encoding; clipping must not stretch the image. */
1620
- readonly imageTransformCorners?: readonly DrawingPoint[];
1621
- readonly clipPolygon: readonly DrawingPoint[] | null;
1622
- readonly clipFallback: DrawingClipFallback;
1623
- readonly effectInsets: DrawingInsets;
1624
- }
1625
-
1626
1639
  /** Test-only mutable counters; omitted by production call sites. Not package-public. */
1627
1640
  interface TableBorderGridResolveWork {
1628
1641
  /** Sparse intervals emitted (not dense column slots). */
@@ -1639,9 +1652,8 @@ type TableBorderSideName = 'top' | 'right' | 'bottom' | 'left';
1639
1652
  /**
1640
1653
  * One border edge in one of three states.
1641
1654
  *
1642
- * Omitted edges inherit. Explicit no-border edges suppress inherited rules; a directly
1643
- * authored opposing edge can still win. This matches the saved Word sample's mixed and
1644
- * borderless tables, including cells authored with `w:val="none"`.
1655
+ * Omitted edges inherit. Explicit no-border edges suppress their own inherited rule.
1656
+ * An opposing edge can still win, including a rule inherited by the neighboring cell.
1645
1657
  */
1646
1658
  type TableBorderSide = {
1647
1659
  readonly state: 'omitted';
@@ -1755,6 +1767,8 @@ interface BorderGridCell {
1755
1767
  readonly borders: CellBorderBox;
1756
1768
  /** Set on restart cells that visually span into later rows. */
1757
1769
  readonly mergeRowSpan?: number;
1770
+ /** The row's `w:tblPrEx` table borders, which replace the table's own for this cell. */
1771
+ readonly rowTableBorders?: TableBorderBox;
1758
1772
  }
1759
1773
  /**
1760
1774
  * The absolute grid a table's borders are drawn on: column widths, and per-row tops and heights.
@@ -1829,8 +1843,13 @@ interface TextboxStoryLayout {
1829
1843
  x: number;
1830
1844
  y: number;
1831
1845
  }>;
1832
- /** Content box width (extent minus horizontal insets). */
1846
+ /** Content box width (extent minus horizontal insets; the widest line when unwrapped). */
1833
1847
  readonly contentWidth: number;
1848
+ /**
1849
+ * Box width (points) that unwrapped text sizes its shape to: the widest line plus the
1850
+ * insets. Placement resolves the shape at this width. Absent when the extent width holds.
1851
+ */
1852
+ readonly extentWidth?: number;
1834
1853
  /** Content box height (extent minus vertical insets). */
1835
1854
  readonly contentHeight: number;
1836
1855
  /** Solid fill of the hosting shape, painted behind the story; null for no fill. */
@@ -1855,6 +1874,21 @@ interface TextboxStoryLayout {
1855
1874
  readonly clippedResourceToken?: string;
1856
1875
  }
1857
1876
 
1877
+ /** One laid-out group member story. */
1878
+ interface GroupTextboxStoryRecord {
1879
+ /** Canonical node id of the member `wps:wsp`. */
1880
+ readonly memberNodeId: string;
1881
+ /** The member box in points, relative to the drawing extent's top-left corner. */
1882
+ readonly box: LayoutBox;
1883
+ /** The member's story, in content-box coordinates inside {@link box}. */
1884
+ readonly story: TextboxStoryLayout;
1885
+ /**
1886
+ * Clockwise turn of the painted member about the center of {@link box}, in degrees. The
1887
+ * story lays out upright; paint and export turn it. Hit testing never maps into it.
1888
+ */
1889
+ readonly rotationDegrees: number;
1890
+ }
1891
+
1858
1892
  /** Clip `box` to a horizontal content band; preserves authored size, zeroes clipped axes. */
1859
1893
  /** How a drawing record holds the picture member of a shape group. */
1860
1894
  interface DrawingGroupPictureRecord {
@@ -1927,6 +1961,8 @@ interface InlineDrawingRecord {
1927
1961
  * inline text box carries one too: its story sits inside the extent the line reserves.
1928
1962
  */
1929
1963
  readonly textboxStory?: TextboxStoryLayout;
1964
+ /** Read-only stories of a group's text box members, each placed in its member box. */
1965
+ readonly groupTextboxStories?: readonly GroupTextboxStoryRecord[];
1930
1966
  }
1931
1967
  interface InlineDrawingLayoutContext {
1932
1968
  readonly ownerPartName: string;
@@ -2051,12 +2087,7 @@ declare function withNumberingStyleLinks(index: NumberingIndex, styleCascade: St
2051
2087
  * in `direct`, and the defaults and that style's bases go in `inherited`.
2052
2088
  */
2053
2089
  declare function mergeListIndent(levelIndent: NumberingLevelIndent, inherited: readonly OoxmlProperty[], direct?: readonly OoxmlProperty[]): NumberingLevelIndent;
2054
- /**
2055
- * Collect paragraphs of a block list in document order, descending into tables.
2056
- *
2057
- * Caps nesting so a hostile nested-table document cannot recurse without bound.
2058
- */
2059
- declare function walkStoryParagraphs(blocks: readonly OoxmlElement[], maxTableDepth?: number): OoxmlElement[];
2090
+
2060
2091
  /**
2061
2092
  * Resolve every list paragraph in a story to a {@link ResolvedListItem}, keyed by node id.
2062
2093
  *
@@ -2798,7 +2829,8 @@ interface LineRecord {
2798
2829
  * nothing, which is why the caret, paint's `padding-bottom` and the content-control
2799
2830
  * boundary all need this published rather than recovered from the box.
2800
2831
  *
2801
- * Zero under exact and atLeast, and on lines holding drawings (the box is authored).
2832
+ * Zero under exact and atLeast. On a line holding drawings, only an auto multiple above
2833
+ * single spacing sets it: the multiple's extra text band below the drawings.
2802
2834
  * Absent on lines published before this was measured; treat as zero.
2803
2835
  */
2804
2836
  readonly trailingSpacing?: number;
@@ -3496,5 +3528,5 @@ interface TextMeasurer {
3496
3528
  };
3497
3529
  }
3498
3530
 
3499
- export { PARAGRAPH_BORDER_SIDES as a$, AUTO_PARAGRAPH_SPACING_PT as a4, HARD_MAX_AGGREGATE_FONT_BYTES as aF, HARD_MAX_FONT_BYTES as aG, HARD_MAX_FONT_SOURCES as aH, MAX_BORDER_SPACE_PT as aN, MAX_BORDER_WIDTH_PT as aO, MAX_LVL_OVERRIDES as aP, MAX_NUMBERING_DEFINITIONS as aQ, MAX_PARAGRAPH_SPACING_PT as aR, MAX_SHAPING_CONTEXT as aS, MAX_STYLE_DEFINITIONS as aT, MAX_TABLE_BORDER_STROKES as aU, MAX_TAB_POSITION_TWIPS as aV, MAX_TAB_STOPS as aW, PAGE_BORDER_SIDES as a_, DEFAULT_RUN_STYLE as ae, DEFAULT_TAB_INTERVAL_PT as af, DEFAULT_TAB_INTERVAL_TWIPS as ag, EMPTY_NUMBERING_INDEX as al, EMPTY_TAB_STOPS as am, FontResolutionError as ax, boundedStructuralFontValidator as b$, TAB_LEADER_GLYPH as bI, UnsupportedScriptError as bT, appliedSpaceBefore as bV, applyLineSpacing as bW, baselineShiftPtOf as bX, borderExtentPt as bY, borderWeight as bZ, bottomBorderExtentPt as b_, SINGLE_LINE_SPACING as bo, buildNumberingIndex as c0, buildStyleCascadeTable as c1, cascadeParagraphFormatting as c2, cascadeRunProperties as c3, cascadedBottomBorder as c4, cascadedParagraphBorders as c5, cascadedTabStops as c6, collapsedSpaceBefore as c7, createFontResourceSnapshot as c8, createShapedRun as c9, readNumPr as cA, readTableBorders as cB, resolveBorderConflict as cC, resolveNumberingLevel as cD, resolveParagraphLayoutInputs as cE, resolveRunStyle as cF, resolveStoryListItems as cG, resolveStoryRefFields as cH, resolveTableCellBorderGrid as cI, runStylesEqual as cJ, shapedRunComparatorInputs as cK, shapingEnvironmentFingerprint as cL, shapingEnvironmentFingerprintInputs as cM, styleForFontSlot as cN, tabAdvanceWidth as cO, tabStopsFingerprint as cP, walkStoryParagraphs as cQ, withDefaultTabInterval as cR, withNumberingStyleLinks as cS, withResolvedListItems as cT, createShapingEnvironment as ca, defaultTabIntervalFromSettings as cb, displayText as cc, fixedPoint as cd, fontRequestKey as ce, glyphSizeFactorOf as cf, isValidStyleId as cg, itemizeScriptFontSlots as ch, layoutEquation as ci, measureDisplayText as cj, mergeListIndent as ck, nextTabDestination as cl, pageBordersFingerprint as cm, paragraphBorderExtentPt as cn, paragraphBorderStrokeWidthPt as co, paragraphBorders as cp, paragraphBordersFingerprint as cq, paragraphBreaksBefore as cr, paragraphContextualSpacing as cs, paragraphLineSpacing as ct, paragraphSpacing as cu, paragraphTabStops as cv, parsePageBorders as cw, parseRefInstruction as cx, readBorderSide as cy, readCellBorders as cz };
3500
- export type { HyperlinkFieldSpec as $, AnchoredDrawingRecord as A, BlockFragmentRecord as B, ContentControlBoundaryRecord as C, DrawingPoint as D, InlineDrawingLayoutContext as E, FontResourceSnapshot as F, CellBorderBox as G, HeaderFooterStoryRecord as H, InlineDrawingRecord as I, TableCellStyleFormatting as J, TableFloatPosition as K, LineRecord as L, ModelRange as M, NoteAreaRecord as N, TableBorderBox as O, ParagraphFragmentRecord as P, StyleCascadeTable as Q, ResolvedRunStyle as R, SemanticLayout as S, TextMeasurer as T, FixedPoint as U, VersionedShapingLibrary as V, FontByteValidator as W, SourceRange as X, HyperlinkProjector as Y, FieldLinkProjector as Z, StoryPageFieldNeeds as _, PageRecord as a, SpanLinkRecord as a0, PageBorderFrameRecord as a1, ParagraphBorderStrokeRecord as a2, StrikeoutStrokePt as a3, AbstractNumDefinition as a5, AnchoredDrawingLayoutFallback as a6, BidiEmbeddingLevels as a7, BorderGridGeometry as a8, CascadedParagraphFormatting as a9, FontResourceInstrumentation as aA, FontResourceSnapshotOptions as aB, FontSlot as aC, FontValidationResult as aD, GlyphOutline as aE, LevelOverride as aI, LineSpacingRule as aJ, ListMarkerAlign as aK, ListMarkerRecord as aL, ListSuffix as aM, NumDefinition as aX, NumberingLevelIndent as aY, NumberingPictureBullet as aZ, CjkTypographySettings as aa, ContentControlGeometryFragment as ab, ContentControlLevel as ac, ContentControlMappedType as ad, DeclaredFontSubstitution as ah, DrawingClipFallback as ai, DrawingGeometry as aj, DrawingGroupPictureRecord as ak, EquationFractionGeometry as an, EquationGeometry as ao, EquationNaryGeometry as ap, EquationRadicalGeometry as aq, EquationRowGeometry as ar, EquationScriptGeometry as as, EquationSpanRecord as at, EquationTextGeometry as au, FieldAtomMarker as av, FontFingerprintInputs as aw, FontResolutionErrorCode as ay, FontResourceDefinition as az, LayoutBox as b, PageBorderDisplay as b0, PageBorderOffsetFrom as b1, PageBorderSide as b2, PageBorderStrokeRecord as b3, PageBorderZOrder as b4, PageRefCalibrationCell as b5, PageRefFieldProjection as b6, ParagraphAutoSpacingContext as b7, ParagraphBorderEdge as b8, ParagraphBorderSide as b9, ShapedFontSpan as bA, ShapedGlyph as bB, ShapedRunComparatorInputs as bC, ShapedVerticalMetrics as bD, ShapingContext as bE, ShapingEnvironment as bF, ShapingEnvironmentFingerprintInputs as bG, StyleDefinition as bH, TabAlignment as bJ, TabDestination as bK, TabLeader as bL, TabStop as bM, TableBorderSideName as bN, TableBorderStrokeRecord as bO, TableFragmentRecord as bP, TextDirection as bQ, TextboxStoryFallbackReason as bR, TextboxStoryLayout as bS, VerticalAlign as bU, ParagraphBorders as ba, ParagraphBottomBorderRecord as bb, ParagraphIndent as bc, ParagraphLayoutInputs as bd, ParagraphLineSpacing as be, ParagraphSpacing as bf, RefFieldSpec as bg, RefNoteParts as bh, ResolvedCellBorders as bi, ResolvedPictureBullet as bj, ResolvedTabStops as bk, ResolvedTableBorderEdge as bl, ResolvedTableBorderEdgeSegment as bm, ResolvedUnderline as bn, ScriptItem as bp, SemanticArtifactRootStoryKind as bq, SemanticArtifactStoryKind as br, SemanticCommentArtifactRecord as bs, SemanticReviewArtifactOccurrence as bt, SemanticReviewArtifactOccurrenceGeometry as bu, SemanticReviewArtifactPosition as bv, SemanticReviewArtifactSource as bw, SemanticTrackedChangeArtifactRecord as bx, ShapeInput as by, ShapedCluster as bz, NoteStoryRecord as c, ContentControlLock as d, StyleSpanRecord as e, SectionPageBorders as f, TableRowFragmentRecord as g, TableCellFragmentRecord as h, ShapingEnvironmentInput as i, TextShaper as j, ResolvedFont as k, NormalizationPolicy as l, FixedPointRoundingMode as m, FontRequest as n, SemanticReviewArtifactRecord as o, ListMarkerPictureRecord as p, FontSubstitution as q, ShapedRun as r, NumberingLevel as s, NumberingIndex as t, DrawingInsets as u, TableBorderSide as v, TableFloatXSpec as w, TableFloatYSpec as x, ResolvedListItem as y, RefFieldContext as z };
3531
+ export { PAGE_BORDER_SIDES as a$, AUTO_PARAGRAPH_SPACING_PT as a4, HARD_MAX_AGGREGATE_FONT_BYTES as aG, HARD_MAX_FONT_BYTES as aH, HARD_MAX_FONT_SOURCES as aI, MAX_BORDER_SPACE_PT as aO, MAX_BORDER_WIDTH_PT as aP, MAX_LVL_OVERRIDES as aQ, MAX_NUMBERING_DEFINITIONS as aR, MAX_PARAGRAPH_SPACING_PT as aS, MAX_SHAPING_CONTEXT as aT, MAX_STYLE_DEFINITIONS as aU, MAX_TABLE_BORDER_STROKES as aV, MAX_TAB_POSITION_TWIPS as aW, MAX_TAB_STOPS as aX, DEFAULT_RUN_STYLE as ae, DEFAULT_TAB_INTERVAL_PT as af, DEFAULT_TAB_INTERVAL_TWIPS as ag, EMPTY_NUMBERING_INDEX as al, EMPTY_TAB_STOPS as am, FontResolutionError as ax, bottomBorderExtentPt as b$, PARAGRAPH_BORDER_SIDES as b0, TAB_LEADER_GLYPH as bJ, UnsupportedScriptError as bU, appliedSpaceBefore as bW, applyLineSpacing as bX, baselineShiftPtOf as bY, borderExtentPt as bZ, borderWeight as b_, SINGLE_LINE_SPACING as bp, boundedStructuralFontValidator as c0, buildNumberingIndex as c1, buildStyleCascadeTable as c2, cascadeParagraphFormatting as c3, cascadeRunProperties as c4, cascadedBottomBorder as c5, cascadedParagraphBorders as c6, cascadedTabStops as c7, collapsedSpaceBefore as c8, createFontResourceSnapshot as c9, readCellBorders as cA, readNumPr as cB, readTableBorders as cC, resolveBorderConflict as cD, resolveNumberingLevel as cE, resolveParagraphLayoutInputs as cF, resolveRunStyle as cG, resolveStoryListItems as cH, resolveStoryRefFields as cI, resolveTableCellBorderGrid as cJ, runStylesEqual as cK, shapedRunComparatorInputs as cL, shapingEnvironmentFingerprint as cM, shapingEnvironmentFingerprintInputs as cN, styleForFontSlot as cO, tabAdvanceWidth as cP, tabStopsFingerprint as cQ, withDefaultTabInterval as cR, withNumberingStyleLinks as cS, withResolvedListItems as cT, createShapedRun as ca, createShapingEnvironment as cb, defaultTabIntervalFromSettings as cc, displayText as cd, fixedPoint as ce, fontRequestKey as cf, glyphSizeFactorOf as cg, isValidStyleId as ch, itemizeScriptFontSlots as ci, layoutEquation as cj, measureDisplayText as ck, mergeListIndent as cl, nextTabDestination as cm, pageBordersFingerprint as cn, paragraphBorderExtentPt as co, paragraphBorderStrokeWidthPt as cp, paragraphBorders as cq, paragraphBordersFingerprint as cr, paragraphBreaksBefore as cs, paragraphContextualSpacing as ct, paragraphLineSpacing as cu, paragraphSpacing as cv, paragraphTabStops as cw, parsePageBorders as cx, parseRefInstruction as cy, readBorderSide as cz };
3532
+ export type { HyperlinkFieldSpec as $, AnchoredDrawingRecord as A, BlockFragmentRecord as B, ContentControlBoundaryRecord as C, DrawingPoint as D, InlineDrawingLayoutContext as E, FontResourceSnapshot as F, CellBorderBox as G, HeaderFooterStoryRecord as H, InlineDrawingRecord as I, TableBorderBox as J, TableCellStyleFormatting as K, LineRecord as L, ModelRange as M, NoteAreaRecord as N, TableFloatPosition as O, ParagraphFragmentRecord as P, StyleCascadeTable as Q, ResolvedRunStyle as R, SemanticLayout as S, TextMeasurer as T, FixedPoint as U, VersionedShapingLibrary as V, FontByteValidator as W, SourceRange as X, HyperlinkProjector as Y, FieldLinkProjector as Z, StoryPageFieldNeeds as _, PageRecord as a, SpanLinkRecord as a0, PageBorderFrameRecord as a1, ParagraphBorderStrokeRecord as a2, StrikeoutStrokePt as a3, AbstractNumDefinition as a5, AnchoredDrawingLayoutFallback as a6, BidiEmbeddingLevels as a7, BorderGridGeometry as a8, CascadedParagraphFormatting as a9, FontResourceInstrumentation as aA, FontResourceSnapshotOptions as aB, FontSlot as aC, FontValidationResult as aD, GlyphOutline as aE, GroupTextboxStoryRecord as aF, LevelOverride as aJ, LineSpacingRule as aK, ListMarkerAlign as aL, ListMarkerRecord as aM, ListSuffix as aN, NumDefinition as aY, NumberingLevelIndent as aZ, NumberingPictureBullet as a_, CjkTypographySettings as aa, ContentControlGeometryFragment as ab, ContentControlLevel as ac, ContentControlMappedType as ad, DeclaredFontSubstitution as ah, DrawingClipFallback as ai, DrawingGeometry as aj, DrawingGroupPictureRecord as ak, EquationFractionGeometry as an, EquationGeometry as ao, EquationNaryGeometry as ap, EquationRadicalGeometry as aq, EquationRowGeometry as ar, EquationScriptGeometry as as, EquationSpanRecord as at, EquationTextGeometry as au, FieldAtomMarker as av, FontFingerprintInputs as aw, FontResolutionErrorCode as ay, FontResourceDefinition as az, LayoutBox as b, PageBorderDisplay as b1, PageBorderOffsetFrom as b2, PageBorderSide as b3, PageBorderStrokeRecord as b4, PageBorderZOrder as b5, PageRefCalibrationCell as b6, PageRefFieldProjection as b7, ParagraphAutoSpacingContext as b8, ParagraphBorderEdge as b9, ShapedCluster as bA, ShapedFontSpan as bB, ShapedGlyph as bC, ShapedRunComparatorInputs as bD, ShapedVerticalMetrics as bE, ShapingContext as bF, ShapingEnvironment as bG, ShapingEnvironmentFingerprintInputs as bH, StyleDefinition as bI, TabAlignment as bK, TabDestination as bL, TabLeader as bM, TabStop as bN, TableBorderSideName as bO, TableBorderStrokeRecord as bP, TableFragmentRecord as bQ, TextDirection as bR, TextboxStoryFallbackReason as bS, TextboxStoryLayout as bT, VerticalAlign as bV, ParagraphBorderSide as ba, ParagraphBorders as bb, ParagraphBottomBorderRecord as bc, ParagraphIndent as bd, ParagraphLayoutInputs as be, ParagraphLineSpacing as bf, ParagraphSpacing as bg, RefFieldSpec as bh, RefNoteParts as bi, ResolvedCellBorders as bj, ResolvedPictureBullet as bk, ResolvedTabStops as bl, ResolvedTableBorderEdge as bm, ResolvedTableBorderEdgeSegment as bn, ResolvedUnderline as bo, ScriptItem as bq, SemanticArtifactRootStoryKind as br, SemanticArtifactStoryKind as bs, SemanticCommentArtifactRecord as bt, SemanticReviewArtifactOccurrence as bu, SemanticReviewArtifactOccurrenceGeometry as bv, SemanticReviewArtifactPosition as bw, SemanticReviewArtifactSource as bx, SemanticTrackedChangeArtifactRecord as by, ShapeInput as bz, NoteStoryRecord as c, ContentControlLock as d, StyleSpanRecord as e, SectionPageBorders as f, TableRowFragmentRecord as g, TableCellFragmentRecord as h, ShapingEnvironmentInput as i, TextShaper as j, ResolvedFont as k, NormalizationPolicy as l, FixedPointRoundingMode as m, FontRequest as n, SemanticReviewArtifactRecord as o, ListMarkerPictureRecord as p, FontSubstitution as q, ShapedRun as r, NumberingLevel as s, NumberingIndex as t, DrawingInsets as u, TableBorderSide as v, TableFloatXSpec as w, TableFloatYSpec as x, ResolvedListItem as y, RefFieldContext as z };