@embedpdf/engine-core 3.0.0-next.15 → 3.0.0-next.16

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 (91) hide show
  1. package/dist/{AnnotationList-CkijRHet.d.cts → AnnotationList-DcyhF2kU.d.cts} +1836 -1308
  2. package/dist/{AnnotationList-CkijRHet.d.ts → AnnotationList-DcyhF2kU.d.ts} +1836 -1308
  3. package/dist/{Change-CjImsrN0.cjs → Change-Ct-dB8D5.cjs} +115 -2
  4. package/dist/Change-Ct-dB8D5.cjs.map +1 -0
  5. package/dist/{Change-CKoxfTNY.js → Change-tMR34hTU.js} +92 -3
  6. package/dist/Change-tMR34hTU.js.map +1 -0
  7. package/dist/{DocumentRenderService-BfFdFSwI.cjs → DocumentRenderService-9IjSQEIU.cjs} +2 -1
  8. package/dist/{DocumentRenderService-BfFdFSwI.cjs.map → DocumentRenderService-9IjSQEIU.cjs.map} +1 -1
  9. package/dist/{DocumentRenderService-DV3J9lMz.js → DocumentRenderService-DFrZ9wfW.js} +2 -1
  10. package/dist/{DocumentRenderService-DV3J9lMz.js.map → DocumentRenderService-DFrZ9wfW.js.map} +1 -1
  11. package/dist/{DocumentSecurityService-e6vp2de8.d.cts → DocumentSecurityService-D2zA4NKi.d.cts} +2 -2
  12. package/dist/{DocumentSecurityService-CU1M6Q7m.d.ts → DocumentSecurityService-YJV9df8P.d.ts} +2 -2
  13. package/dist/{LocalEngine-DFoBm4B3.d.cts → LocalEngine-DBt2-GWF.d.ts} +102 -18
  14. package/dist/{LocalEngine-DPriFujS.d.ts → LocalEngine-IA9zh3Jh.d.cts} +102 -18
  15. package/dist/{authority-DLMNR7ff.cjs → authority-BFp6XM04.cjs} +373 -52
  16. package/dist/authority-BFp6XM04.cjs.map +1 -0
  17. package/dist/{authority-B3BklsB4.js → authority-PuxpGFhJ.js} +320 -53
  18. package/dist/authority-PuxpGFhJ.js.map +1 -0
  19. package/dist/{builders-CNj0POeY.js → builders-DV62HA3I.js} +6 -2
  20. package/dist/builders-DV62HA3I.js.map +1 -0
  21. package/dist/{builders-Cgdp_YCn.cjs → builders-DgTAj_tP.cjs} +6 -2
  22. package/dist/builders-DgTAj_tP.cjs.map +1 -0
  23. package/dist/{calibrate-DJBXnhLE.cjs → calibrate-DJbi1wuK.cjs} +118 -25
  24. package/dist/calibrate-DJbi1wuK.cjs.map +1 -0
  25. package/dist/{calibrate-7T3fnP8-.js → calibrate-nQFgCuki.js} +83 -26
  26. package/dist/calibrate-nQFgCuki.js.map +1 -0
  27. package/dist/charmap-Cprti1ta.js.map +1 -1
  28. package/dist/charmap-aYlefQP9.cjs.map +1 -1
  29. package/dist/conformance.cjs +1744 -75
  30. package/dist/conformance.cjs.map +1 -1
  31. package/dist/conformance.d.cts +105 -10
  32. package/dist/conformance.d.ts +105 -10
  33. package/dist/conformance.js +1738 -76
  34. package/dist/conformance.js.map +1 -1
  35. package/dist/index.cjs +25 -6
  36. package/dist/index.d.cts +2 -2
  37. package/dist/index.d.ts +2 -2
  38. package/dist/index.js +7 -7
  39. package/dist/public.cjs +6 -4
  40. package/dist/public.d.cts +5 -5
  41. package/dist/public.d.ts +5 -5
  42. package/dist/public.js +5 -5
  43. package/dist/{resolver-CzxmD9Ck.js → resolver-BBggAxQc.js} +6 -3
  44. package/dist/resolver-BBggAxQc.js.map +1 -0
  45. package/dist/{resolver-D2OCtE8F.cjs → resolver-BWSWSF6R.cjs} +6 -3
  46. package/dist/resolver-BWSWSF6R.cjs.map +1 -0
  47. package/dist/{runtime-Cl0v56mm.d.ts → runtime-BaDKjxiu.d.ts} +67 -140
  48. package/dist/{runtime-p1WDzDo4.d.cts → runtime-CWEuiwbk.d.cts} +67 -140
  49. package/dist/runtime.cjs +267 -7
  50. package/dist/runtime.cjs.map +1 -1
  51. package/dist/runtime.d.cts +5 -5
  52. package/dist/runtime.d.ts +5 -5
  53. package/dist/runtime.js +246 -8
  54. package/dist/runtime.js.map +1 -1
  55. package/dist/{schema-DzlUNk38.js → schema-6S2VmlAj.js} +8 -2
  56. package/dist/schema-6S2VmlAj.js.map +1 -0
  57. package/dist/{schema-C-gU4vj7.cjs → schema-miH6tWQC.cjs} +13 -1
  58. package/dist/schema-miH6tWQC.cjs.map +1 -0
  59. package/dist/{schemas-D6xOGjqg.js → schemas-BE2QGOit.js} +256 -59
  60. package/dist/schemas-BE2QGOit.js.map +1 -0
  61. package/dist/{schemas-Berf1swF.cjs → schemas-DljJR9ut.cjs} +397 -80
  62. package/dist/schemas-DljJR9ut.cjs.map +1 -0
  63. package/dist/validation.cjs +1 -1
  64. package/dist/validation.d.cts +1 -1
  65. package/dist/validation.d.ts +1 -1
  66. package/dist/validation.js +1 -1
  67. package/dist/{viewport-DlL5Bxbg.cjs → viewport-CHG9qQUb.cjs} +2 -2
  68. package/dist/{viewport-DlL5Bxbg.cjs.map → viewport-CHG9qQUb.cjs.map} +1 -1
  69. package/dist/{viewport-BJW13EGZ.js → viewport-DQR5LyX3.js} +2 -2
  70. package/dist/{viewport-BJW13EGZ.js.map → viewport-DQR5LyX3.js.map} +1 -1
  71. package/dist/wire.cjs +225 -57
  72. package/dist/wire.cjs.map +1 -1
  73. package/dist/wire.d.cts +3548 -1151
  74. package/dist/wire.d.ts +3548 -1151
  75. package/dist/wire.js +198 -53
  76. package/dist/wire.js.map +1 -1
  77. package/package.json +1 -1
  78. package/dist/Change-CKoxfTNY.js.map +0 -1
  79. package/dist/Change-CjImsrN0.cjs.map +0 -1
  80. package/dist/authority-B3BklsB4.js.map +0 -1
  81. package/dist/authority-DLMNR7ff.cjs.map +0 -1
  82. package/dist/builders-CNj0POeY.js.map +0 -1
  83. package/dist/builders-Cgdp_YCn.cjs.map +0 -1
  84. package/dist/calibrate-7T3fnP8-.js.map +0 -1
  85. package/dist/calibrate-DJBXnhLE.cjs.map +0 -1
  86. package/dist/resolver-CzxmD9Ck.js.map +0 -1
  87. package/dist/resolver-D2OCtE8F.cjs.map +0 -1
  88. package/dist/schema-C-gU4vj7.cjs.map +0 -1
  89. package/dist/schema-DzlUNk38.js.map +0 -1
  90. package/dist/schemas-Berf1swF.cjs.map +0 -1
  91. package/dist/schemas-D6xOGjqg.js.map +0 -1
@@ -1,5 +1,5 @@
1
- import { $c as FormMutationMeta, $f as DownloadOptions, $h as SignatureCompleteResult, $l as PageFlattenResult, $n as PageDeleteResult, Aa as FormFieldValue, Bh as BaseVersionInfo, Bl as AnnotationImportResult, Bu as AttachmentContent, Dl as WidgetPatch, Gl as FormFieldCreateOptions, Gn as RedactionApplyResult, Gu as AttachmentRef, Hl as AnnotationCreateOptions, Ho as SearchSlice, I_ as DocumentActionsSnapshot, Jf as FontHandle, Jl as WriteOptions, Jm as CustomMetadata, Kl as FormWidgetAddOptions, Kn as RedactionApplyScope, Ko as TextLayout, Mc as AttachmentDeleteResult, Md as AnnotationResourceRole, Mi as FormSubmissionReceipt, Ng as PageBox, Np as TextRange, P_ as AbortablePromise, Pa as FormFieldPatch, Pi as FormSubmissionRequest, Qc as FormFieldUpdateResult, Qh as SignatureCompleteInput, Qn as PageInsertResult, Qp as PageRenderImage, Rc as FormImportOptions, Sa as CustomMetadataUpdateResult, To as WidgetPlacement, Uc as FormValuesImportOptions, Ul as AnnotationUpdateOptions, Up as PageImageOptions, Uu as AttachmentFileSource, Vh as DigestAlgorithm, Vm as PageListSnapshot, Vo as SearchRequest, Wc as FormValuesImportResult, Wl as FlattenWriteOptions, Wu as AttachmentList, Xc as FormFieldCreateResult, Xf as FontKey, Xh as SignatureAppearanceInput, Xm as OpenInput, Yc as FormCalculationsReorderResult, Yg as PdfRotation, Ym as MetadataPatch, Zc as FormFieldDeleteResult, Zf as FontSpec, Zg as FormFieldRef, Zh as SignatureCancelResult, Zi as Change, Zn as PageInsertBlankSpec, _a as PagePosition, _g as FormFieldDTO, _v as DocumentMetadata, ah as OpenOptions, al as FormWidgetRestoreResult, ap as AnnotationAppearanceImageOptions, au as AnnotationUpdateResult, bs as AnnotationDraft, bv as IsoDateTime, cg as SignatureSnapshot, cl as FormWidgetsReorderResult, cr as PageNameInput, dp as AnnotationAppearancesResult, ef as ObjectNumberPool, el as FormRepairResult, em as PageRenderOptions, fg as MutationMeta, fl as FormExportSelection, gl as FormSnapshot, gu as AnnotationExportSelection, ha as FieldPosition, hd as PdfMeasure, hi as ChangeAnalysis, hn as PageScaleResult, hu as AnnotationListMutationMeta, ig as SignaturePrepared, il as FormWidgetLinkResult, im as PageRenderViewport, iu as AnnotationReorderResult, jc as AttachmentCreateResult, lp as AnnotationAppearanceRenderOptions, lr as PageRemoveNameInput, ma as AnnotationPosition, n as AnnotationListOptions, na as ChangeResult, nl as FormSetValueResult, nm as PageRenderRaster, nu as AnnotationCreateResult, o_ as AnnotationRef, op as AnnotationAppearanceImagesResult, or as AnnotationFlattenResult, pa as MetadataUpdateResult, pd as PageMeasurementViewportList, pi as AnalyzeInput, ql as PageInsertBlankOptions, qm as CustomMetadataPatch, rg as SignaturePrepareInput, rl as FormWidgetDeleteResult, ru as AnnotationDeleteResult, sl as FormWidgetUpdateResult, sr as PageNameResult, t as AnnotationList, tl as FormResetResult, tr as PageRotateResult, tu as PageFlattenUsage, ur as PageReorderResult, uv as PageRef, vl as FormBundle, vo as FormFieldDraft, vs as Annotation, vu as AnnotationBundle, wl as WidgetAnnotation, wp as PageTextSnapshot, xs as AnnotationPatch, zc as FormImportResult, zl as AnnotationImportOptions } from "./AnnotationList-CkijRHet.cjs";
2
- import { c as DocumentSecurityService } from "./DocumentSecurityService-e6vp2de8.cjs";
1
+ import { $g as MutationMeta, $l as AnnotationImportResult, $u as AttachmentRef, Ah as OutlineItemRef, Ba as FormFieldValue, Bd as AnnotationResourceRole, Bg as SignatureCompleteResult, Bl as WidgetPatch, Bo as WidgetPlacement, Ca as AnnotationPosition, Cd as PdfMeasure, Cu as AnnotationExportSelection, Cv as DocumentActionsSnapshot, Da as PagePosition, Dg as BaseVersionInfo, Ea as OutlinePosition, Ei as FormSubmissionReceipt, Fs as AnnotationDraft, Gg as SignaturePrepared, Gi as Change, Gn as RedactionApplyResult, I_ as PdfRotation, Is as AnnotationPatch, Kc as AttachmentRestoreResult, Kh as OpenOptions, Kn as RedactionApplyScope, Kp as TextRange, Lg as SignatureAppearanceInput, Lh as OpenInput, Ll as WidgetAnnotation, Lp as PageTextSnapshot, Ma as CustomMetadataUpdateResult, Mm as PageFlattenResult, No as FormFieldDraft, Ns as Annotation, Og as DigestAlgorithm, Oh as OutlineItemDraft, Oi as FormSubmissionRequest, Pm as PageFlattenUsage, Qc as FormImportResult, Ql as AnnotationImportOptions, Qu as AttachmentList, R_ as FormFieldRef, Rg as SignatureCancelResult, Sa as MetadataUpdateResult, Su as AnnotationListMutationMeta, Th as DocumentOutline, Tl as FormExportSelection, Tp as PageExtractOptions, Tu as AnnotationBundle, Uc as AttachmentCreateResult, Wa as FormFieldPatch, Wc as AttachmentDeleteResult, Wg as SignaturePrepareInput, Xi as ChangeResult, Yg as SignatureSnapshot, Zc as FormImportOptions, Zu as AttachmentFileSource, Zv as PageRef, _l as FormWidgetLinkResult, _p as AnnotationAppearanceRenderOptions, ap as FontSpec, au as FormWidgetAddOptions, b_ as PageBox, ba as OutlineUpdateResult, bh as CustomMetadata, bl as FormWidgetUpdateResult, bm as PageRenderViewport, ca as PageRestoreResult, cf as ObjectNumberPool, cl as FormCalculationsReorderResult, dl as FormFieldUpdateResult, du as AnnotationReorderResult, fa as PageInsertBlankSpec, fl as FormMutationMeta, fu as AnnotationUpdateResult, ga as OutlineMoveResult, gl as FormWidgetDeleteResult, gm as PageRenderOptions, ha as OutlineDeleteResult, hl as FormSetValueResult, hn as PageScaleResult, i_ as FormFieldDTO, im as PageImageOptions, ip as FontKey, ir as PageRemoveNameInput, iu as FormFieldCreateOptions, iy as DocumentMetadata, jl as FormBundle, kh as OutlineItemPatch, kl as FormSnapshot, la as PageReorderResult, li as ChangeAnalysis, ll as FormFieldCreateResult, lu as AnnotationCreateResult, ma as OutlineCreateResult, ml as FormResetResult, mm as PageRenderImage, mp as AnnotationAppearanceImagesResult, n as AnnotationListOptions, nl as FormValuesImportOptions, np as FontHandle, nr as PageNameResult, ns as SearchRequest, nu as AnnotationUpdateOptions, ou as PageInsertBlankOptions, pa as PageDeleteResult, ph as PageListSnapshot, pl as FormRepairResult, pp as AnnotationAppearanceImageOptions, q_ as AnnotationRef, rl as FormValuesImportResult, rr as PageNameInput, rs as SearchSlice, ru as FlattenWriteOptions, sa as PageRotateResult, si as AnalyzeInput, sp as DownloadOptions, ss as TextLayout, su as WriteOptions, sy as IsoDateTime, t as AnnotationList, tr as AnnotationFlattenResult, tu as AnnotationCreateOptions, ua as PageInsertResult, ul as FormFieldDeleteResult, uu as AnnotationDeleteResult, vl as FormWidgetRestoreResult, vm as PageRenderRaster, wa as FieldPosition, xd as PageMeasurementViewportList, xh as MetadataPatch, xl as FormWidgetsReorderResult, xv as AbortablePromise, ya as OutlineRestoreResult, yh as CustomMetadataPatch, yp as AnnotationAppearancesResult, zg as SignatureCompleteInput } from "./AnnotationList-DcyhF2kU.js";
2
+ import { c as DocumentSecurityService } from "./DocumentSecurityService-YJV9df8P.js";
3
3
  //#region src/engine/DocumentActionsService.d.ts
4
4
  /** Lazy, catalog-owned PDF action read. This API extracts; it never executes. */
5
5
  interface DocumentActionsService {
@@ -50,18 +50,24 @@ interface DocumentAnnotationsService {
50
50
  * construction (see the ref's doc comment). `list()` returns metadata only;
51
51
  * bytes leave the engine exclusively through {@link download}. The
52
52
  * annotation-level counterpart is
53
- * `PageAnnotationsService.downloadResource(ref, 'file')`.
53
+ * `PageAnnotationsService.downloadResource(ref, 'file')`, which answers the
54
+ * same way: the bytes, the name and type being what the listing says.
55
+ *
56
+ * `create` and `delete` are each one op of a change (`attachments.create`,
57
+ * `attachments.delete`): their `opId` undoes them, and an undo of a delete
58
+ * brings the same file back (`attachments.restored`).
54
59
  */
55
60
  interface DocumentAttachmentsService {
56
61
  /** Snapshot of the `/EmbeddedFiles` name tree, in tree (key-sorted) order. */
57
62
  list(): AbortablePromise<AttachmentList>;
58
63
  /**
59
- * Decode and return one embedded file's bytes plus the metadata needed
60
- * to hand it to a user (name, mime type). Throws
61
- * `EngineError(NotFound)` when no entry has the ref's key and
62
- * `EngineError(InvalidArg)` when the entry has no embedded file stream.
64
+ * Decode and return one embedded file's bytes. Throws
65
+ * `EngineError(NotFound)` when no entry has the ref's key,
66
+ * `EngineError(InvalidArg)` when the entry has no embedded file stream,
67
+ * and `EngineError(PayloadTooLarge)` when the file decodes to more than
68
+ * `ATTACHMENT_LIMITS.decodedBytes` on an engine that holds it in memory.
63
69
  */
64
- download(ref: AttachmentRef): AbortablePromise<AttachmentContent>;
70
+ download(ref: AttachmentRef): AbortablePromise<Uint8Array>;
65
71
  /**
66
72
  * Create an embedded file in the name tree. The file's `name` becomes
67
73
  * the tree key (`/UF` = `/F` = key); a duplicate key rejects with
@@ -276,6 +282,39 @@ interface DocumentFormsService {
276
282
  repair(options?: FormRepairOptions): AbortablePromise<FormRepairResult>;
277
283
  }
278
284
  //#endregion
285
+ //#region src/engine/DocumentOutlineService.d.ts
286
+ /** Where `create` puts a new item, and the name it gets. */
287
+ interface OutlineCreateOptions extends WriteOptions {
288
+ /** The item it goes under; the top level when left out or `null`. */
289
+ parent?: OutlineItemRef | null;
290
+ /** Its place among `parent`'s children; the end when left out. */
291
+ position?: OutlinePosition;
292
+ /** Its object number, taken from `doc.objectNumbers`; the engine picks one when left out. */
293
+ objectNumber?: number;
294
+ }
295
+ /**
296
+ * The document's outline (`/Root /Outlines`, the bookmarks). Reading it is
297
+ * part of opening the document (`doc.open`); writing takes
298
+ * `doc.outline.modify`. Each write is a one-op change: the same op, checks
299
+ * and undo as `doc.apply`, its events `outline.*`.
300
+ */
301
+ interface DocumentOutlineService {
302
+ /** Every item, depth first. */
303
+ get(): AbortablePromise<DocumentOutline>;
304
+ /** A new item; `'outline.create'` in a change. */
305
+ create(data: OutlineItemDraft, options?: OutlineCreateOptions): AbortablePromise<OutlineCreateResult>;
306
+ /** Change the fields `patch` names; `'outline.update'` in a change. */
307
+ update(ref: OutlineItemRef, patch: OutlineItemPatch, options?: WriteOptions): AbortablePromise<OutlineUpdateResult>;
308
+ /**
309
+ * Move items, each with the items under it, under `parent` (`null`: the
310
+ * top level) at `position` among its children; `'outline.move'` in a
311
+ * change.
312
+ */
313
+ move(refs: readonly OutlineItemRef[], parent: OutlineItemRef | null, position: OutlinePosition, options?: WriteOptions): AbortablePromise<OutlineMoveResult>;
314
+ /** Delete an item and the items under it; `'outline.delete'` in a change. */
315
+ delete(ref: OutlineItemRef, options?: WriteOptions): AbortablePromise<OutlineDeleteResult>;
316
+ }
317
+ //#endregion
279
318
  //#region src/engine/DocumentPagesService.d.ts
280
319
  /**
281
320
  * Document-scoped page service exposed via `DocumentHandle.pages`.
@@ -289,6 +328,10 @@ interface DocumentFormsService {
289
328
  * number) everywhere except `list()`, which exposes display order through
290
329
  * `PageLayout.index`. Structure verbs never change the names of the
291
330
  * annotations on surviving pages.
331
+ *
332
+ * Each structure verb is a one-op change through `doc.apply` (`pageVerbs`):
333
+ * its `opId` undoes it, and an undo of a delete brings the same pages back
334
+ * (`pages.restored`).
292
335
  */
293
336
  interface DocumentPagesService {
294
337
  /**
@@ -352,17 +395,25 @@ interface DocumentPagesService {
352
395
  * resource. Gated by `doc.download` (it egresses content), not
353
396
  * `doc.pages.assemble`.
354
397
  *
398
+ * With `flatten`, the copy is the pages as they draw for its `usage`: the
399
+ * annotations and form fields painted in, nothing interactive left, layers
400
+ * in their state for `usage` (`{ usage: 'print' }` is a print copy). It
401
+ * takes `doc.download` or `doc.download.flattened`, and paints only what
402
+ * the caller may read; `includeAnnotations` and `includeFormFields` choose
403
+ * what it paints, and are refused without `flatten`. The copy keeps the
404
+ * document's title.
405
+ *
355
406
  * Required-parity, delivered: the local engine runs it in the worker,
356
407
  * the cloud engine as POST /pages/extract.
357
408
  */
358
- extract(pages: PageRef[]): AbortablePromise<Uint8Array>;
409
+ extract(pages: PageRef[], options?: PageExtractOptions): AbortablePromise<Uint8Array>;
359
410
  /**
360
411
  * Insert every page of a standalone PDF (`bytes`) at `position`
361
412
  * (default `'end'`). The pages are copied in; the inserted copies get
362
413
  * fresh object numbers, returned in insertion order. Bytes are a call
363
414
  * argument (the same law as annotation binaries): the local engine
364
- * transfers them to its worker, the cloud engine ships them as a
365
- * multipart mutation (POST /pages/insert).
415
+ * transfers them to its worker, the cloud engine ships them as a part of
416
+ * its change request.
366
417
  *
367
418
  * Required-parity, delivered — a cloud viewer must be able to add pages,
368
419
  * so this is a mandatory member: any engine implements it or is not a
@@ -373,9 +424,9 @@ interface DocumentPagesService {
373
424
  * Create `spec.count` (default 1) blank pages of `spec.size` (PDF points)
374
425
  * at `position` (default `'end'`). The blank-page sibling of `insert`:
375
426
  * same gate (`doc.pages.assemble`), same result shape, same
376
- * `pages.inserted` event — it is a separate verb because its wire is pure
377
- * parameters where `insert`'s is a binary payload (cloud: JSON
378
- * POST /pages/insert-blank). Every pre-existing page keeps its identity.
427
+ * `pages.inserted` event — it is a separate verb because it takes pure
428
+ * parameters where `insert` takes a binary payload. Every pre-existing
429
+ * page keeps its identity.
379
430
  * Mandatory, like `insert`.
380
431
  *
381
432
  * `options.objectNumbers` names the new pages, one number per page in
@@ -944,7 +995,12 @@ type DocumentEvent = ({
944
995
  } & PageDeleteResult) | ({
945
996
  type: 'pages.inserted';
946
997
  origin: EventOrigin;
947
- } & PageInsertResult) | ({
998
+ } & PageInsertResult) |
999
+ /** An undo brought deleted pages back, or a redo brought inserted pages back. */
1000
+ ({
1001
+ type: 'pages.restored';
1002
+ origin: EventOrigin;
1003
+ } & PageRestoreResult) | ({
948
1004
  type: 'pages.named';
949
1005
  /** The decoded key that was registered, renamed, or removed. */
950
1006
  name: string;
@@ -959,13 +1015,39 @@ type DocumentEvent = ({
959
1015
  origin: EventOrigin;
960
1016
  /** What was deleted (see `deletedAttachmentOf`). */
961
1017
  deleted: AttachmentRef | null;
962
- } & AttachmentDeleteResult) | ({
1018
+ } & AttachmentDeleteResult) |
1019
+ /** An undo brought a deleted file back, under the key it had. */
1020
+ ({
1021
+ type: 'attachments.restored';
1022
+ origin: EventOrigin;
1023
+ } & AttachmentRestoreResult) | ({
963
1024
  type: 'metadata.updated';
964
1025
  origin: EventOrigin;
965
1026
  } & MetadataUpdateResult) | ({
966
1027
  type: 'metadata.customUpdated';
967
1028
  origin: EventOrigin;
968
1029
  } & CustomMetadataUpdateResult) | ({
1030
+ type: 'outline.created';
1031
+ origin: EventOrigin;
1032
+ } & OutlineCreateResult) | ({
1033
+ type: 'outline.updated';
1034
+ origin: EventOrigin;
1035
+ } & OutlineUpdateResult) | ({
1036
+ type: 'outline.moved';
1037
+ origin: EventOrigin;
1038
+ } & OutlineMoveResult) | ({
1039
+ type: 'outline.deleted';
1040
+ origin: EventOrigin;
1041
+ /** What was deleted: the item first, then the items under it (see `deletedOutlineItemsOf`). */
1042
+ deleted: OutlineItemRef[];
1043
+ } & OutlineDeleteResult) | ({
1044
+ /**
1045
+ * An undo brought deleted outline items back: the same items, under the
1046
+ * refs they had, at the place the item had among its parent's children.
1047
+ */
1048
+ type: 'outline.restored';
1049
+ origin: EventOrigin;
1050
+ } & OutlineRestoreResult) | ({
969
1051
  type: 'forms.valueSet';
970
1052
  origin: EventOrigin;
971
1053
  } & FormSetValueResult) | ({
@@ -1173,6 +1255,8 @@ interface DocumentHandle {
1173
1255
  readonly attachments: DocumentAttachmentsService;
1174
1256
  /** The document's interactive form (AcroForm): fields, values, interchange. */
1175
1257
  readonly forms: DocumentFormsService;
1258
+ /** The document's outline (`/Root /Outlines`, the bookmarks): its items, read and written. */
1259
+ readonly outline: DocumentOutlineService;
1176
1260
  /** Document text search: budgeted, cursor-resumable slices. */
1177
1261
  readonly search: DocumentSearchService;
1178
1262
  /**
@@ -1561,5 +1645,5 @@ interface LocalEngine extends Engine {
1561
1645
  /** Whether `engine` is the local engine, with its fonts and `warmup()`. */
1562
1646
  declare function isLocalEngine(engine: Engine): engine is LocalEngine;
1563
1647
  //#endregion
1564
- export { FormRepairOptions as $, PageHandle as A, CustomMetadataService as B, DocumentEventStream as C, DocumentEventOf as D, DocumentEventInit as E, LocalPageFormsService as F, EngineRenderPolicy as G, DocumentSearchService as H, PageFormsService as I, snapFullPageViewport as J, appearanceLatticeScale as K, LocalPageAnnotationsService as L, PageTextService as M, LocalPageRenderService as N, DocumentEventType as O, PageRenderService as P, DocumentFormsService as Q, PageAnnotationsService as R, WorkingSetPage as S, DocumentEvent as T, CONTINUOUS_RENDER_POLICY as U, DocumentSignaturesService as V, DocumentRenderService as W, DocumentRedactionService as X, snapTileScale as Y, DocumentPagesService as Z, Engine as _, LocalPageHandle as a, CallFacts as b, PieceInfoService as c, PieceInfoPatch as d, DocumentAttachmentsService as et, PieceInfoPatchValue as f, FontService as g, FontEmbeddingPolicy as h, isLocalDocument as i, PageMeasureService as j, EventOrigin as k, PieceInfoUpdateResult as l, DocumentFontSettings as m, isLocalEngine as n, DocumentActionsService as nt, isLocalPage as o, PieceInfoSnapshot as p, snapAppearanceScale as q, LocalDocumentHandle as r, PieceInfoDeleteResult as s, LocalEngine as t, DocumentAnnotationsService as tt, PieceInfoEntry as u, EngineFactory as v, subscribeToType as w, CallPriority as x, DocumentHandle as y, MetadataService as z };
1565
- //# sourceMappingURL=LocalEngine-DFoBm4B3.d.cts.map
1648
+ export { OutlineCreateOptions as $, PageHandle as A, CustomMetadataService as B, DocumentEventStream as C, DocumentEventOf as D, DocumentEventInit as E, LocalPageFormsService as F, EngineRenderPolicy as G, DocumentSearchService as H, PageFormsService as I, snapFullPageViewport as J, appearanceLatticeScale as K, LocalPageAnnotationsService as L, PageTextService as M, LocalPageRenderService as N, DocumentEventType as O, PageRenderService as P, DocumentOutlineService as Q, PageAnnotationsService as R, WorkingSetPage as S, DocumentEvent as T, CONTINUOUS_RENDER_POLICY as U, DocumentSignaturesService as V, DocumentRenderService as W, DocumentRedactionService as X, snapTileScale as Y, DocumentPagesService as Z, Engine as _, LocalPageHandle as a, CallFacts as b, PieceInfoService as c, PieceInfoPatch as d, DocumentFormsService as et, PieceInfoPatchValue as f, FontService as g, FontEmbeddingPolicy as h, isLocalDocument as i, DocumentActionsService as it, PageMeasureService as j, EventOrigin as k, PieceInfoUpdateResult as l, DocumentFontSettings as m, isLocalEngine as n, DocumentAttachmentsService as nt, isLocalPage as o, PieceInfoSnapshot as p, snapAppearanceScale as q, LocalDocumentHandle as r, DocumentAnnotationsService as rt, PieceInfoDeleteResult as s, LocalEngine as t, FormRepairOptions as tt, PieceInfoEntry as u, EngineFactory as v, subscribeToType as w, CallPriority as x, DocumentHandle as y, MetadataService as z };
1649
+ //# sourceMappingURL=LocalEngine-DBt2-GWF.d.ts.map
@@ -1,5 +1,5 @@
1
- import { $c as FormMutationMeta, $f as DownloadOptions, $h as SignatureCompleteResult, $l as PageFlattenResult, $n as PageDeleteResult, Aa as FormFieldValue, Bh as BaseVersionInfo, Bl as AnnotationImportResult, Bu as AttachmentContent, Dl as WidgetPatch, Gl as FormFieldCreateOptions, Gn as RedactionApplyResult, Gu as AttachmentRef, Hl as AnnotationCreateOptions, Ho as SearchSlice, I_ as DocumentActionsSnapshot, Jf as FontHandle, Jl as WriteOptions, Jm as CustomMetadata, Kl as FormWidgetAddOptions, Kn as RedactionApplyScope, Ko as TextLayout, Mc as AttachmentDeleteResult, Md as AnnotationResourceRole, Mi as FormSubmissionReceipt, Ng as PageBox, Np as TextRange, P_ as AbortablePromise, Pa as FormFieldPatch, Pi as FormSubmissionRequest, Qc as FormFieldUpdateResult, Qh as SignatureCompleteInput, Qn as PageInsertResult, Qp as PageRenderImage, Rc as FormImportOptions, Sa as CustomMetadataUpdateResult, To as WidgetPlacement, Uc as FormValuesImportOptions, Ul as AnnotationUpdateOptions, Up as PageImageOptions, Uu as AttachmentFileSource, Vh as DigestAlgorithm, Vm as PageListSnapshot, Vo as SearchRequest, Wc as FormValuesImportResult, Wl as FlattenWriteOptions, Wu as AttachmentList, Xc as FormFieldCreateResult, Xf as FontKey, Xh as SignatureAppearanceInput, Xm as OpenInput, Yc as FormCalculationsReorderResult, Yg as PdfRotation, Ym as MetadataPatch, Zc as FormFieldDeleteResult, Zf as FontSpec, Zg as FormFieldRef, Zh as SignatureCancelResult, Zi as Change, Zn as PageInsertBlankSpec, _a as PagePosition, _g as FormFieldDTO, _v as DocumentMetadata, ah as OpenOptions, al as FormWidgetRestoreResult, ap as AnnotationAppearanceImageOptions, au as AnnotationUpdateResult, bs as AnnotationDraft, bv as IsoDateTime, cg as SignatureSnapshot, cl as FormWidgetsReorderResult, cr as PageNameInput, dp as AnnotationAppearancesResult, ef as ObjectNumberPool, el as FormRepairResult, em as PageRenderOptions, fg as MutationMeta, fl as FormExportSelection, gl as FormSnapshot, gu as AnnotationExportSelection, ha as FieldPosition, hd as PdfMeasure, hi as ChangeAnalysis, hn as PageScaleResult, hu as AnnotationListMutationMeta, ig as SignaturePrepared, il as FormWidgetLinkResult, im as PageRenderViewport, iu as AnnotationReorderResult, jc as AttachmentCreateResult, lp as AnnotationAppearanceRenderOptions, lr as PageRemoveNameInput, ma as AnnotationPosition, n as AnnotationListOptions, na as ChangeResult, nl as FormSetValueResult, nm as PageRenderRaster, nu as AnnotationCreateResult, o_ as AnnotationRef, op as AnnotationAppearanceImagesResult, or as AnnotationFlattenResult, pa as MetadataUpdateResult, pd as PageMeasurementViewportList, pi as AnalyzeInput, ql as PageInsertBlankOptions, qm as CustomMetadataPatch, rg as SignaturePrepareInput, rl as FormWidgetDeleteResult, ru as AnnotationDeleteResult, sl as FormWidgetUpdateResult, sr as PageNameResult, t as AnnotationList, tl as FormResetResult, tr as PageRotateResult, tu as PageFlattenUsage, ur as PageReorderResult, uv as PageRef, vl as FormBundle, vo as FormFieldDraft, vs as Annotation, vu as AnnotationBundle, wl as WidgetAnnotation, wp as PageTextSnapshot, xs as AnnotationPatch, zc as FormImportResult, zl as AnnotationImportOptions } from "./AnnotationList-CkijRHet.js";
2
- import { c as DocumentSecurityService } from "./DocumentSecurityService-CU1M6Q7m.js";
1
+ import { $g as MutationMeta, $l as AnnotationImportResult, $u as AttachmentRef, Ah as OutlineItemRef, Ba as FormFieldValue, Bd as AnnotationResourceRole, Bg as SignatureCompleteResult, Bl as WidgetPatch, Bo as WidgetPlacement, Ca as AnnotationPosition, Cd as PdfMeasure, Cu as AnnotationExportSelection, Cv as DocumentActionsSnapshot, Da as PagePosition, Dg as BaseVersionInfo, Ea as OutlinePosition, Ei as FormSubmissionReceipt, Fs as AnnotationDraft, Gg as SignaturePrepared, Gi as Change, Gn as RedactionApplyResult, I_ as PdfRotation, Is as AnnotationPatch, Kc as AttachmentRestoreResult, Kh as OpenOptions, Kn as RedactionApplyScope, Kp as TextRange, Lg as SignatureAppearanceInput, Lh as OpenInput, Ll as WidgetAnnotation, Lp as PageTextSnapshot, Ma as CustomMetadataUpdateResult, Mm as PageFlattenResult, No as FormFieldDraft, Ns as Annotation, Og as DigestAlgorithm, Oh as OutlineItemDraft, Oi as FormSubmissionRequest, Pm as PageFlattenUsage, Qc as FormImportResult, Ql as AnnotationImportOptions, Qu as AttachmentList, R_ as FormFieldRef, Rg as SignatureCancelResult, Sa as MetadataUpdateResult, Su as AnnotationListMutationMeta, Th as DocumentOutline, Tl as FormExportSelection, Tp as PageExtractOptions, Tu as AnnotationBundle, Uc as AttachmentCreateResult, Wa as FormFieldPatch, Wc as AttachmentDeleteResult, Wg as SignaturePrepareInput, Xi as ChangeResult, Yg as SignatureSnapshot, Zc as FormImportOptions, Zu as AttachmentFileSource, Zv as PageRef, _l as FormWidgetLinkResult, _p as AnnotationAppearanceRenderOptions, ap as FontSpec, au as FormWidgetAddOptions, b_ as PageBox, ba as OutlineUpdateResult, bh as CustomMetadata, bl as FormWidgetUpdateResult, bm as PageRenderViewport, ca as PageRestoreResult, cf as ObjectNumberPool, cl as FormCalculationsReorderResult, dl as FormFieldUpdateResult, du as AnnotationReorderResult, fa as PageInsertBlankSpec, fl as FormMutationMeta, fu as AnnotationUpdateResult, ga as OutlineMoveResult, gl as FormWidgetDeleteResult, gm as PageRenderOptions, ha as OutlineDeleteResult, hl as FormSetValueResult, hn as PageScaleResult, i_ as FormFieldDTO, im as PageImageOptions, ip as FontKey, ir as PageRemoveNameInput, iu as FormFieldCreateOptions, iy as DocumentMetadata, jl as FormBundle, kh as OutlineItemPatch, kl as FormSnapshot, la as PageReorderResult, li as ChangeAnalysis, ll as FormFieldCreateResult, lu as AnnotationCreateResult, ma as OutlineCreateResult, ml as FormResetResult, mm as PageRenderImage, mp as AnnotationAppearanceImagesResult, n as AnnotationListOptions, nl as FormValuesImportOptions, np as FontHandle, nr as PageNameResult, ns as SearchRequest, nu as AnnotationUpdateOptions, ou as PageInsertBlankOptions, pa as PageDeleteResult, ph as PageListSnapshot, pl as FormRepairResult, pp as AnnotationAppearanceImageOptions, q_ as AnnotationRef, rl as FormValuesImportResult, rr as PageNameInput, rs as SearchSlice, ru as FlattenWriteOptions, sa as PageRotateResult, si as AnalyzeInput, sp as DownloadOptions, ss as TextLayout, su as WriteOptions, sy as IsoDateTime, t as AnnotationList, tr as AnnotationFlattenResult, tu as AnnotationCreateOptions, ua as PageInsertResult, ul as FormFieldDeleteResult, uu as AnnotationDeleteResult, vl as FormWidgetRestoreResult, vm as PageRenderRaster, wa as FieldPosition, xd as PageMeasurementViewportList, xh as MetadataPatch, xl as FormWidgetsReorderResult, xv as AbortablePromise, ya as OutlineRestoreResult, yh as CustomMetadataPatch, yp as AnnotationAppearancesResult, zg as SignatureCompleteInput } from "./AnnotationList-DcyhF2kU.cjs";
2
+ import { c as DocumentSecurityService } from "./DocumentSecurityService-D2zA4NKi.cjs";
3
3
  //#region src/engine/DocumentActionsService.d.ts
4
4
  /** Lazy, catalog-owned PDF action read. This API extracts; it never executes. */
5
5
  interface DocumentActionsService {
@@ -50,18 +50,24 @@ interface DocumentAnnotationsService {
50
50
  * construction (see the ref's doc comment). `list()` returns metadata only;
51
51
  * bytes leave the engine exclusively through {@link download}. The
52
52
  * annotation-level counterpart is
53
- * `PageAnnotationsService.downloadResource(ref, 'file')`.
53
+ * `PageAnnotationsService.downloadResource(ref, 'file')`, which answers the
54
+ * same way: the bytes, the name and type being what the listing says.
55
+ *
56
+ * `create` and `delete` are each one op of a change (`attachments.create`,
57
+ * `attachments.delete`): their `opId` undoes them, and an undo of a delete
58
+ * brings the same file back (`attachments.restored`).
54
59
  */
55
60
  interface DocumentAttachmentsService {
56
61
  /** Snapshot of the `/EmbeddedFiles` name tree, in tree (key-sorted) order. */
57
62
  list(): AbortablePromise<AttachmentList>;
58
63
  /**
59
- * Decode and return one embedded file's bytes plus the metadata needed
60
- * to hand it to a user (name, mime type). Throws
61
- * `EngineError(NotFound)` when no entry has the ref's key and
62
- * `EngineError(InvalidArg)` when the entry has no embedded file stream.
64
+ * Decode and return one embedded file's bytes. Throws
65
+ * `EngineError(NotFound)` when no entry has the ref's key,
66
+ * `EngineError(InvalidArg)` when the entry has no embedded file stream,
67
+ * and `EngineError(PayloadTooLarge)` when the file decodes to more than
68
+ * `ATTACHMENT_LIMITS.decodedBytes` on an engine that holds it in memory.
63
69
  */
64
- download(ref: AttachmentRef): AbortablePromise<AttachmentContent>;
70
+ download(ref: AttachmentRef): AbortablePromise<Uint8Array>;
65
71
  /**
66
72
  * Create an embedded file in the name tree. The file's `name` becomes
67
73
  * the tree key (`/UF` = `/F` = key); a duplicate key rejects with
@@ -276,6 +282,39 @@ interface DocumentFormsService {
276
282
  repair(options?: FormRepairOptions): AbortablePromise<FormRepairResult>;
277
283
  }
278
284
  //#endregion
285
+ //#region src/engine/DocumentOutlineService.d.ts
286
+ /** Where `create` puts a new item, and the name it gets. */
287
+ interface OutlineCreateOptions extends WriteOptions {
288
+ /** The item it goes under; the top level when left out or `null`. */
289
+ parent?: OutlineItemRef | null;
290
+ /** Its place among `parent`'s children; the end when left out. */
291
+ position?: OutlinePosition;
292
+ /** Its object number, taken from `doc.objectNumbers`; the engine picks one when left out. */
293
+ objectNumber?: number;
294
+ }
295
+ /**
296
+ * The document's outline (`/Root /Outlines`, the bookmarks). Reading it is
297
+ * part of opening the document (`doc.open`); writing takes
298
+ * `doc.outline.modify`. Each write is a one-op change: the same op, checks
299
+ * and undo as `doc.apply`, its events `outline.*`.
300
+ */
301
+ interface DocumentOutlineService {
302
+ /** Every item, depth first. */
303
+ get(): AbortablePromise<DocumentOutline>;
304
+ /** A new item; `'outline.create'` in a change. */
305
+ create(data: OutlineItemDraft, options?: OutlineCreateOptions): AbortablePromise<OutlineCreateResult>;
306
+ /** Change the fields `patch` names; `'outline.update'` in a change. */
307
+ update(ref: OutlineItemRef, patch: OutlineItemPatch, options?: WriteOptions): AbortablePromise<OutlineUpdateResult>;
308
+ /**
309
+ * Move items, each with the items under it, under `parent` (`null`: the
310
+ * top level) at `position` among its children; `'outline.move'` in a
311
+ * change.
312
+ */
313
+ move(refs: readonly OutlineItemRef[], parent: OutlineItemRef | null, position: OutlinePosition, options?: WriteOptions): AbortablePromise<OutlineMoveResult>;
314
+ /** Delete an item and the items under it; `'outline.delete'` in a change. */
315
+ delete(ref: OutlineItemRef, options?: WriteOptions): AbortablePromise<OutlineDeleteResult>;
316
+ }
317
+ //#endregion
279
318
  //#region src/engine/DocumentPagesService.d.ts
280
319
  /**
281
320
  * Document-scoped page service exposed via `DocumentHandle.pages`.
@@ -289,6 +328,10 @@ interface DocumentFormsService {
289
328
  * number) everywhere except `list()`, which exposes display order through
290
329
  * `PageLayout.index`. Structure verbs never change the names of the
291
330
  * annotations on surviving pages.
331
+ *
332
+ * Each structure verb is a one-op change through `doc.apply` (`pageVerbs`):
333
+ * its `opId` undoes it, and an undo of a delete brings the same pages back
334
+ * (`pages.restored`).
292
335
  */
293
336
  interface DocumentPagesService {
294
337
  /**
@@ -352,17 +395,25 @@ interface DocumentPagesService {
352
395
  * resource. Gated by `doc.download` (it egresses content), not
353
396
  * `doc.pages.assemble`.
354
397
  *
398
+ * With `flatten`, the copy is the pages as they draw for its `usage`: the
399
+ * annotations and form fields painted in, nothing interactive left, layers
400
+ * in their state for `usage` (`{ usage: 'print' }` is a print copy). It
401
+ * takes `doc.download` or `doc.download.flattened`, and paints only what
402
+ * the caller may read; `includeAnnotations` and `includeFormFields` choose
403
+ * what it paints, and are refused without `flatten`. The copy keeps the
404
+ * document's title.
405
+ *
355
406
  * Required-parity, delivered: the local engine runs it in the worker,
356
407
  * the cloud engine as POST /pages/extract.
357
408
  */
358
- extract(pages: PageRef[]): AbortablePromise<Uint8Array>;
409
+ extract(pages: PageRef[], options?: PageExtractOptions): AbortablePromise<Uint8Array>;
359
410
  /**
360
411
  * Insert every page of a standalone PDF (`bytes`) at `position`
361
412
  * (default `'end'`). The pages are copied in; the inserted copies get
362
413
  * fresh object numbers, returned in insertion order. Bytes are a call
363
414
  * argument (the same law as annotation binaries): the local engine
364
- * transfers them to its worker, the cloud engine ships them as a
365
- * multipart mutation (POST /pages/insert).
415
+ * transfers them to its worker, the cloud engine ships them as a part of
416
+ * its change request.
366
417
  *
367
418
  * Required-parity, delivered — a cloud viewer must be able to add pages,
368
419
  * so this is a mandatory member: any engine implements it or is not a
@@ -373,9 +424,9 @@ interface DocumentPagesService {
373
424
  * Create `spec.count` (default 1) blank pages of `spec.size` (PDF points)
374
425
  * at `position` (default `'end'`). The blank-page sibling of `insert`:
375
426
  * same gate (`doc.pages.assemble`), same result shape, same
376
- * `pages.inserted` event — it is a separate verb because its wire is pure
377
- * parameters where `insert`'s is a binary payload (cloud: JSON
378
- * POST /pages/insert-blank). Every pre-existing page keeps its identity.
427
+ * `pages.inserted` event — it is a separate verb because it takes pure
428
+ * parameters where `insert` takes a binary payload. Every pre-existing
429
+ * page keeps its identity.
379
430
  * Mandatory, like `insert`.
380
431
  *
381
432
  * `options.objectNumbers` names the new pages, one number per page in
@@ -944,7 +995,12 @@ type DocumentEvent = ({
944
995
  } & PageDeleteResult) | ({
945
996
  type: 'pages.inserted';
946
997
  origin: EventOrigin;
947
- } & PageInsertResult) | ({
998
+ } & PageInsertResult) |
999
+ /** An undo brought deleted pages back, or a redo brought inserted pages back. */
1000
+ ({
1001
+ type: 'pages.restored';
1002
+ origin: EventOrigin;
1003
+ } & PageRestoreResult) | ({
948
1004
  type: 'pages.named';
949
1005
  /** The decoded key that was registered, renamed, or removed. */
950
1006
  name: string;
@@ -959,13 +1015,39 @@ type DocumentEvent = ({
959
1015
  origin: EventOrigin;
960
1016
  /** What was deleted (see `deletedAttachmentOf`). */
961
1017
  deleted: AttachmentRef | null;
962
- } & AttachmentDeleteResult) | ({
1018
+ } & AttachmentDeleteResult) |
1019
+ /** An undo brought a deleted file back, under the key it had. */
1020
+ ({
1021
+ type: 'attachments.restored';
1022
+ origin: EventOrigin;
1023
+ } & AttachmentRestoreResult) | ({
963
1024
  type: 'metadata.updated';
964
1025
  origin: EventOrigin;
965
1026
  } & MetadataUpdateResult) | ({
966
1027
  type: 'metadata.customUpdated';
967
1028
  origin: EventOrigin;
968
1029
  } & CustomMetadataUpdateResult) | ({
1030
+ type: 'outline.created';
1031
+ origin: EventOrigin;
1032
+ } & OutlineCreateResult) | ({
1033
+ type: 'outline.updated';
1034
+ origin: EventOrigin;
1035
+ } & OutlineUpdateResult) | ({
1036
+ type: 'outline.moved';
1037
+ origin: EventOrigin;
1038
+ } & OutlineMoveResult) | ({
1039
+ type: 'outline.deleted';
1040
+ origin: EventOrigin;
1041
+ /** What was deleted: the item first, then the items under it (see `deletedOutlineItemsOf`). */
1042
+ deleted: OutlineItemRef[];
1043
+ } & OutlineDeleteResult) | ({
1044
+ /**
1045
+ * An undo brought deleted outline items back: the same items, under the
1046
+ * refs they had, at the place the item had among its parent's children.
1047
+ */
1048
+ type: 'outline.restored';
1049
+ origin: EventOrigin;
1050
+ } & OutlineRestoreResult) | ({
969
1051
  type: 'forms.valueSet';
970
1052
  origin: EventOrigin;
971
1053
  } & FormSetValueResult) | ({
@@ -1173,6 +1255,8 @@ interface DocumentHandle {
1173
1255
  readonly attachments: DocumentAttachmentsService;
1174
1256
  /** The document's interactive form (AcroForm): fields, values, interchange. */
1175
1257
  readonly forms: DocumentFormsService;
1258
+ /** The document's outline (`/Root /Outlines`, the bookmarks): its items, read and written. */
1259
+ readonly outline: DocumentOutlineService;
1176
1260
  /** Document text search: budgeted, cursor-resumable slices. */
1177
1261
  readonly search: DocumentSearchService;
1178
1262
  /**
@@ -1561,5 +1645,5 @@ interface LocalEngine extends Engine {
1561
1645
  /** Whether `engine` is the local engine, with its fonts and `warmup()`. */
1562
1646
  declare function isLocalEngine(engine: Engine): engine is LocalEngine;
1563
1647
  //#endregion
1564
- export { FormRepairOptions as $, PageHandle as A, CustomMetadataService as B, DocumentEventStream as C, DocumentEventOf as D, DocumentEventInit as E, LocalPageFormsService as F, EngineRenderPolicy as G, DocumentSearchService as H, PageFormsService as I, snapFullPageViewport as J, appearanceLatticeScale as K, LocalPageAnnotationsService as L, PageTextService as M, LocalPageRenderService as N, DocumentEventType as O, PageRenderService as P, DocumentFormsService as Q, PageAnnotationsService as R, WorkingSetPage as S, DocumentEvent as T, CONTINUOUS_RENDER_POLICY as U, DocumentSignaturesService as V, DocumentRenderService as W, DocumentRedactionService as X, snapTileScale as Y, DocumentPagesService as Z, Engine as _, LocalPageHandle as a, CallFacts as b, PieceInfoService as c, PieceInfoPatch as d, DocumentAttachmentsService as et, PieceInfoPatchValue as f, FontService as g, FontEmbeddingPolicy as h, isLocalDocument as i, PageMeasureService as j, EventOrigin as k, PieceInfoUpdateResult as l, DocumentFontSettings as m, isLocalEngine as n, DocumentActionsService as nt, isLocalPage as o, PieceInfoSnapshot as p, snapAppearanceScale as q, LocalDocumentHandle as r, PieceInfoDeleteResult as s, LocalEngine as t, DocumentAnnotationsService as tt, PieceInfoEntry as u, EngineFactory as v, subscribeToType as w, CallPriority as x, DocumentHandle as y, MetadataService as z };
1565
- //# sourceMappingURL=LocalEngine-DPriFujS.d.ts.map
1648
+ export { OutlineCreateOptions as $, PageHandle as A, CustomMetadataService as B, DocumentEventStream as C, DocumentEventOf as D, DocumentEventInit as E, LocalPageFormsService as F, EngineRenderPolicy as G, DocumentSearchService as H, PageFormsService as I, snapFullPageViewport as J, appearanceLatticeScale as K, LocalPageAnnotationsService as L, PageTextService as M, LocalPageRenderService as N, DocumentEventType as O, PageRenderService as P, DocumentOutlineService as Q, PageAnnotationsService as R, WorkingSetPage as S, DocumentEvent as T, CONTINUOUS_RENDER_POLICY as U, DocumentSignaturesService as V, DocumentRenderService as W, DocumentRedactionService as X, snapTileScale as Y, DocumentPagesService as Z, Engine as _, LocalPageHandle as a, CallFacts as b, PieceInfoService as c, PieceInfoPatch as d, DocumentFormsService as et, PieceInfoPatchValue as f, FontService as g, FontEmbeddingPolicy as h, isLocalDocument as i, DocumentActionsService as it, PageMeasureService as j, EventOrigin as k, PieceInfoUpdateResult as l, DocumentFontSettings as m, isLocalEngine as n, DocumentAttachmentsService as nt, isLocalPage as o, PieceInfoSnapshot as p, snapAppearanceScale as q, LocalDocumentHandle as r, DocumentAnnotationsService as rt, PieceInfoDeleteResult as s, LocalEngine as t, FormRepairOptions as tt, PieceInfoEntry as u, EngineFactory as v, subscribeToType as w, CallPriority as x, DocumentHandle as y, MetadataService as z };
1649
+ //# sourceMappingURL=LocalEngine-IA9zh3Jh.d.cts.map