@laminapdf/sdk 0.2.0-alpha.2 → 0.2.0-alpha.4

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 (454) hide show
  1. package/README.md +63 -8
  2. package/dist/api.d.ts +8 -3
  3. package/dist/api.d.ts.map +1 -1
  4. package/dist/api.js +4 -2
  5. package/dist/api.js.map +1 -1
  6. package/dist/builder.d.ts +43 -22
  7. package/dist/builder.d.ts.map +1 -1
  8. package/dist/builder.js +122 -83
  9. package/dist/builder.js.map +1 -1
  10. package/dist/document.d.ts +89 -22
  11. package/dist/document.d.ts.map +1 -1
  12. package/dist/document.js +177 -67
  13. package/dist/document.js.map +1 -1
  14. package/dist/errors.d.ts +5 -5
  15. package/dist/errors.d.ts.map +1 -1
  16. package/dist/errors.js +10 -16
  17. package/dist/errors.js.map +1 -1
  18. package/dist/extract-job.d.ts +100 -0
  19. package/dist/extract-job.d.ts.map +1 -0
  20. package/dist/extract-job.js +177 -0
  21. package/dist/extract-job.js.map +1 -0
  22. package/dist/extract.d.ts +57 -0
  23. package/dist/extract.d.ts.map +1 -0
  24. package/dist/extract.js +5 -0
  25. package/dist/extract.js.map +1 -0
  26. package/dist/font.d.ts +13 -6
  27. package/dist/font.d.ts.map +1 -1
  28. package/dist/font.js +50 -20
  29. package/dist/font.js.map +1 -1
  30. package/dist/generated/builder-enums.d.ts +3 -3
  31. package/dist/generated/builder-enums.d.ts.map +1 -1
  32. package/dist/generated/builder-enums.js +10 -0
  33. package/dist/generated/builder-enums.js.map +1 -1
  34. package/dist/generated/codes.d.ts +18 -6
  35. package/dist/generated/codes.d.ts.map +1 -1
  36. package/dist/generated/codes.js +114 -5
  37. package/dist/generated/codes.js.map +1 -1
  38. package/dist/generated/explain.d.ts.map +1 -1
  39. package/dist/generated/explain.js +45 -11
  40. package/dist/generated/explain.js.map +1 -1
  41. package/dist/generated/extract.d.ts +282 -0
  42. package/dist/generated/extract.d.ts.map +1 -0
  43. package/dist/generated/extract.js +4 -0
  44. package/dist/generated/extract.js.map +1 -0
  45. package/dist/init.d.ts +13 -5
  46. package/dist/init.d.ts.map +1 -1
  47. package/dist/init.js +23 -11
  48. package/dist/init.js.map +1 -1
  49. package/dist/internal/handle.d.ts +58 -0
  50. package/dist/internal/handle.d.ts.map +1 -0
  51. package/dist/internal/handle.js +113 -0
  52. package/dist/internal/handle.js.map +1 -0
  53. package/dist/internal/instance.d.ts +56 -0
  54. package/dist/internal/instance.d.ts.map +1 -0
  55. package/dist/internal/instance.js +125 -0
  56. package/dist/internal/instance.js.map +1 -0
  57. package/dist/source/http.d.ts +1 -1
  58. package/dist/source/http.js +2 -2
  59. package/dist/source/http.js.map +1 -1
  60. package/dist/source/range.d.ts +6 -1
  61. package/dist/source/range.d.ts.map +1 -1
  62. package/dist/source/range.js +10 -6
  63. package/dist/source/range.js.map +1 -1
  64. package/dist/text.d.ts +3 -3
  65. package/dist/text.d.ts.map +1 -1
  66. package/dist/text.js +3 -3
  67. package/dist/text.js.map +1 -1
  68. package/dist/types.d.ts +19 -1
  69. package/dist/types.d.ts.map +1 -1
  70. package/dist/version.d.ts +1 -1
  71. package/dist/version.js +2 -2
  72. package/dist/version.js.map +1 -1
  73. package/dist/worker/client.d.ts +3 -2
  74. package/dist/worker/client.d.ts.map +1 -1
  75. package/dist/worker/client.js +6 -4
  76. package/dist/worker/client.js.map +1 -1
  77. package/dist/worker/entry.js +1 -1
  78. package/dist/worker/entry.js.map +1 -1
  79. package/dist/worker/server.d.ts.map +1 -1
  80. package/dist/worker/server.js +42 -9
  81. package/dist/worker/server.js.map +1 -1
  82. package/dist/worker/support.d.ts +13 -3
  83. package/dist/worker/support.d.ts.map +1 -1
  84. package/dist/worker/support.js +5 -0
  85. package/dist/worker/support.js.map +1 -1
  86. package/dist/worker/types.d.ts +8 -1
  87. package/dist/worker/types.d.ts.map +1 -1
  88. package/docs/AGENTS.md +14 -0
  89. package/docs/api/README.md +166 -0
  90. package/docs/api/classes/Builder.md +467 -0
  91. package/docs/api/classes/Document.md +854 -0
  92. package/docs/api/classes/ExtractJob.md +236 -0
  93. package/docs/api/classes/Font.md +74 -0
  94. package/docs/api/classes/Image.md +140 -0
  95. package/docs/api/classes/LaminaPdfError.md +189 -0
  96. package/docs/api/classes/Page.md +178 -0
  97. package/docs/api/classes/PageRef.md +253 -0
  98. package/docs/api/classes/PageText.md +129 -0
  99. package/docs/api/classes/PageTextRun.md +167 -0
  100. package/docs/api/classes/PendingPath.md +97 -0
  101. package/docs/api/classes/SaveJob.md +205 -0
  102. package/docs/api/classes/Surface.md +331 -0
  103. package/docs/api/classes/Transaction.md +111 -0
  104. package/docs/api/functions/callbackSource.md +33 -0
  105. package/docs/api/functions/extractWithModels.md +70 -0
  106. package/docs/api/functions/httpRangeSource.md +48 -0
  107. package/docs/api/functions/init.md +36 -0
  108. package/docs/api/functions/isExtractLoaded.md +21 -0
  109. package/docs/api/functions/isInitialized.md +19 -0
  110. package/docs/api/functions/isLaminaPdfError.md +41 -0
  111. package/docs/api/functions/isTextLoaded.md +19 -0
  112. package/docs/api/functions/loadExtract.md +28 -0
  113. package/docs/api/functions/loadText.md +28 -0
  114. package/docs/api/functions/onLeak.md +29 -0
  115. package/docs/api/functions/reset.md +22 -0
  116. package/docs/api/functions/wasmMemory.md +22 -0
  117. package/docs/api/interfaces/BuilderOptions.md +108 -0
  118. package/docs/api/interfaces/ByteRange.md +29 -0
  119. package/docs/api/interfaces/ChunkOptions.md +37 -0
  120. package/docs/api/interfaces/Diagnostic.md +67 -0
  121. package/docs/api/interfaces/ExtractOptions.md +92 -0
  122. package/docs/api/interfaces/ExtractResult.md +37 -0
  123. package/docs/api/interfaces/FontInfo.md +37 -0
  124. package/docs/api/interfaces/HostModels.md +57 -0
  125. package/docs/api/interfaces/HttpRangeOptions.md +78 -0
  126. package/docs/api/interfaces/InitOptions.md +40 -0
  127. package/docs/api/interfaces/LayoutRegion.md +38 -0
  128. package/docs/api/interfaces/Leak.md +21 -0
  129. package/docs/api/interfaces/Location.md +53 -0
  130. package/docs/api/interfaces/ModelInfo.md +45 -0
  131. package/docs/api/interfaces/ModelRequest.md +45 -0
  132. package/docs/api/interfaces/Models.md +45 -0
  133. package/docs/api/interfaces/OcrWord.md +37 -0
  134. package/docs/api/interfaces/OpLog.md +25 -0
  135. package/docs/api/interfaces/OpenOptions.md +37 -0
  136. package/docs/api/interfaces/PageTextOptions.md +21 -0
  137. package/docs/api/interfaces/PathBuilder.md +195 -0
  138. package/docs/api/interfaces/QuadPoint.md +25 -0
  139. package/docs/api/interfaces/RangeOptions.md +54 -0
  140. package/docs/api/interfaces/RangeSource.md +59 -0
  141. package/docs/api/interfaces/StrokeStyle.md +61 -0
  142. package/docs/api/interfaces/TagSpec.md +69 -0
  143. package/docs/api/interfaces/TextBoxOptions.md +93 -0
  144. package/docs/api/interfaces/TextGlyph.md +29 -0
  145. package/docs/api/interfaces/TextOptions.md +101 -0
  146. package/docs/api/interfaces/WasmMemory.md +37 -0
  147. package/docs/api/type-aliases/AfRelationship.md +15 -0
  148. package/docs/api/type-aliases/Align.md +15 -0
  149. package/docs/api/type-aliases/ArtifactKind.md +15 -0
  150. package/docs/api/type-aliases/AttachmentOptions.md +15 -0
  151. package/docs/api/type-aliases/BlendMode.md +15 -0
  152. package/docs/api/type-aliases/BoxRect.md +15 -0
  153. package/docs/api/type-aliases/BuildOptions.md +15 -0
  154. package/docs/api/type-aliases/Cell.md +71 -0
  155. package/docs/api/type-aliases/Chunk.md +79 -0
  156. package/docs/api/type-aliases/Color.md +16 -0
  157. package/docs/api/type-aliases/Coordinates.md +55 -0
  158. package/docs/api/type-aliases/Direction.md +15 -0
  159. package/docs/api/type-aliases/DocumentInfo.md +15 -0
  160. package/docs/api/type-aliases/DropReason.md +15 -0
  161. package/docs/api/type-aliases/Dropped.md +59 -0
  162. package/docs/api/type-aliases/Edited.md +15 -0
  163. package/docs/api/type-aliases/ErrorCode.md +15 -0
  164. package/docs/api/type-aliases/ErrorKind.md +15 -0
  165. package/docs/api/type-aliases/ExtractFormat.md +15 -0
  166. package/docs/api/type-aliases/ExtractJobOptions.md +31 -0
  167. package/docs/api/type-aliases/ExtractStep.md +61 -0
  168. package/docs/api/type-aliases/ExtractedBlock.md +94 -0
  169. package/docs/api/type-aliases/ExtractedPage.md +73 -0
  170. package/docs/api/type-aliases/ExtractedSource.md +48 -0
  171. package/docs/api/type-aliases/Extraction.md +22 -0
  172. package/docs/api/type-aliases/FillRule.md +15 -0
  173. package/docs/api/type-aliases/Fit.md +15 -0
  174. package/docs/api/type-aliases/Flags.md +15 -0
  175. package/docs/api/type-aliases/Generator.md +43 -0
  176. package/docs/api/type-aliases/GlyphQuad.md +15 -0
  177. package/docs/api/type-aliases/InfoPatch.md +15 -0
  178. package/docs/api/type-aliases/LaminaPdfWarning.md +16 -0
  179. package/docs/api/type-aliases/LimitName.md +15 -0
  180. package/docs/api/type-aliases/Limits.md +15 -0
  181. package/docs/api/type-aliases/LineBox.md +15 -0
  182. package/docs/api/type-aliases/LineCap.md +15 -0
  183. package/docs/api/type-aliases/LineJoin.md +15 -0
  184. package/docs/api/type-aliases/LinkTarget.md +15 -0
  185. package/docs/api/type-aliases/Metadata.md +15 -0
  186. package/docs/api/type-aliases/ModelResult.md +15 -0
  187. package/docs/api/type-aliases/Op.md +15 -0
  188. package/docs/api/type-aliases/OutlineEntry.md +15 -0
  189. package/docs/api/type-aliases/OutlineNode.md +15 -0
  190. package/docs/api/type-aliases/Overflow.md +15 -0
  191. package/docs/api/type-aliases/PageInfo.md +15 -0
  192. package/docs/api/type-aliases/PageLabel.md +15 -0
  193. package/docs/api/type-aliases/PageSizeName.md +15 -0
  194. package/docs/api/type-aliases/Point.md +15 -0
  195. package/docs/api/type-aliases/Profile.md +15 -0
  196. package/docs/api/type-aliases/Progress.md +15 -0
  197. package/docs/api/type-aliases/ReadingOrder.md +15 -0
  198. package/docs/api/type-aliases/Rect.md +15 -0
  199. package/docs/api/type-aliases/Region.md +31 -0
  200. package/docs/api/type-aliases/RegionLabel.md +15 -0
  201. package/docs/api/type-aliases/RenderMode.md +15 -0
  202. package/docs/api/type-aliases/Rotation.md +15 -0
  203. package/docs/api/type-aliases/SaveOptions.md +15 -0
  204. package/docs/api/type-aliases/SaveReport.md +15 -0
  205. package/docs/api/type-aliases/Span.md +74 -0
  206. package/docs/api/type-aliases/SplitOn.md +15 -0
  207. package/docs/api/type-aliases/Standard14.md +15 -0
  208. package/docs/api/type-aliases/StructRef.md +41 -0
  209. package/docs/api/type-aliases/StructSource.md +17 -0
  210. package/docs/api/type-aliases/StructureKid.md +15 -0
  211. package/docs/api/type-aliases/StructureNode.md +16 -0
  212. package/docs/api/type-aliases/TableDetector.md +15 -0
  213. package/docs/api/type-aliases/TableMode.md +15 -0
  214. package/docs/api/type-aliases/TableScope.md +15 -0
  215. package/docs/api/type-aliases/Tag.md +15 -0
  216. package/docs/api/type-aliases/TagName.md +15 -0
  217. package/docs/api/type-aliases/Target.md +15 -0
  218. package/docs/api/type-aliases/TargetView.md +18 -0
  219. package/docs/api/type-aliases/TextLayer.md +72 -0
  220. package/docs/api/type-aliases/TextLayerStatus.md +15 -0
  221. package/docs/api/type-aliases/TextLayout.md +15 -0
  222. package/docs/api/type-aliases/TextRange.md +33 -0
  223. package/docs/api/type-aliases/TextRunInfo.md +15 -0
  224. package/docs/api/type-aliases/Transform.md +15 -0
  225. package/docs/api/type-aliases/UndoOutcome.md +15 -0
  226. package/docs/api/type-aliases/ViewerPreferences.md +15 -0
  227. package/docs/api/type-aliases/WarningCode.md +15 -0
  228. package/docs/api/type-aliases/WasmSource.md +16 -0
  229. package/docs/api/variables/Matrix.md +99 -0
  230. package/docs/api/variables/PAGE_SIZES.md +15 -0
  231. package/docs/api/variables/TAG_NAMES.md +15 -0
  232. package/docs/errors/README.md +173 -0
  233. package/docs/errors/aes-padding-invalid.md +34 -0
  234. package/docs/errors/already-initialized.md +34 -0
  235. package/docs/errors/binary-output-to-terminal.md +35 -0
  236. package/docs/errors/builder-finished.md +35 -0
  237. package/docs/errors/cancelled.md +35 -0
  238. package/docs/errors/cmap-invalid.md +42 -0
  239. package/docs/errors/collection-index.md +33 -0
  240. package/docs/errors/color-components.md +33 -0
  241. package/docs/errors/content-bad-operands.md +36 -0
  242. package/docs/errors/content-path-unpainted.md +36 -0
  243. package/docs/errors/content-resource-missing.md +37 -0
  244. package/docs/errors/content-syntax.md +36 -0
  245. package/docs/errors/content-unbalanced-bt.md +36 -0
  246. package/docs/errors/content-unbalanced-marked.md +36 -0
  247. package/docs/errors/content-unbalanced-q.md +36 -0
  248. package/docs/errors/content-unknown-operator.md +37 -0
  249. package/docs/errors/covered-text.md +33 -0
  250. package/docs/errors/data-pending.md +34 -0
  251. package/docs/errors/decompress.md +34 -0
  252. package/docs/errors/device-color-without-output-intent.md +33 -0
  253. package/docs/errors/direct-page.md +34 -0
  254. package/docs/errors/disposed.md +34 -0
  255. package/docs/errors/document-changed.md +34 -0
  256. package/docs/errors/embedded-file-forbidden.md +35 -0
  257. package/docs/errors/embedded-file-without-mime-type.md +36 -0
  258. package/docs/errors/encoding-full.md +34 -0
  259. package/docs/errors/encrypted-base.md +33 -0
  260. package/docs/errors/extract-column-order-uncertain.md +38 -0
  261. package/docs/errors/extract-limit-blocks.md +35 -0
  262. package/docs/errors/extract-module-not-loaded.md +37 -0
  263. package/docs/errors/extract-needs-ocr.md +37 -0
  264. package/docs/errors/extract-reading-order-ambiguous.md +32 -0
  265. package/docs/errors/extract-struct-tree-ignored.md +32 -0
  266. package/docs/errors/extract-table-ambiguous.md +32 -0
  267. package/docs/errors/extract-table-limit.md +35 -0
  268. package/docs/errors/extract-untagged-content.md +32 -0
  269. package/docs/errors/fetch-failed.md +34 -0
  270. package/docs/errors/flate-truncated.md +34 -0
  271. package/docs/errors/flow-content-too-large.md +34 -0
  272. package/docs/errors/flow-keep-broken.md +34 -0
  273. package/docs/errors/flow-layout-unstable.md +38 -0
  274. package/docs/errors/font-invalid.md +36 -0
  275. package/docs/errors/font-mismatch.md +34 -0
  276. package/docs/errors/font-not-embeddable.md +34 -0
  277. package/docs/errors/font-not-embedded.md +35 -0
  278. package/docs/errors/font-not-shapable.md +33 -0
  279. package/docs/errors/glyph-out-of-range.md +34 -0
  280. package/docs/errors/glyph-without-unicode.md +37 -0
  281. package/docs/errors/heading-level-skipped.md +36 -0
  282. package/docs/errors/image-data-length.md +33 -0
  283. package/docs/errors/image-too-large.md +32 -0
  284. package/docs/errors/inline-image-unterminated.md +36 -0
  285. package/docs/errors/input-unreadable.md +37 -0
  286. package/docs/errors/instance-reset.md +34 -0
  287. package/docs/errors/invalid-argument.md +33 -0
  288. package/docs/errors/invalid-axis-value.md +32 -0
  289. package/docs/errors/invalid-box.md +34 -0
  290. package/docs/errors/invalid-color.md +32 -0
  291. package/docs/errors/invalid-command-line.md +44 -0
  292. package/docs/errors/invalid-date.md +34 -0
  293. package/docs/errors/invalid-entry.md +34 -0
  294. package/docs/errors/invalid-feature.md +32 -0
  295. package/docs/errors/invalid-font.md +32 -0
  296. package/docs/errors/invalid-geometry.md +32 -0
  297. package/docs/errors/invalid-icc-profile.md +32 -0
  298. package/docs/errors/invalid-image.md +33 -0
  299. package/docs/errors/invalid-op-log.md +33 -0
  300. package/docs/errors/invalid-page-label.md +34 -0
  301. package/docs/errors/invalid-page-labels.md +32 -0
  302. package/docs/errors/invalid-page-range.md +37 -0
  303. package/docs/errors/invalid-rotate.md +34 -0
  304. package/docs/errors/invalid-spans.md +39 -0
  305. package/docs/errors/invalid-structure-nesting.md +38 -0
  306. package/docs/errors/invalid-structure.md +34 -0
  307. package/docs/errors/invalid-text-range.md +33 -0
  308. package/docs/errors/job-finished.md +34 -0
  309. package/docs/errors/limit-exceeded.md +38 -0
  310. package/docs/errors/link-without-contents.md +33 -0
  311. package/docs/errors/link-without-structure.md +37 -0
  312. package/docs/errors/markdown-html-ignored.md +33 -0
  313. package/docs/errors/markdown-image-missing.md +34 -0
  314. package/docs/errors/missing-alt-text.md +33 -0
  315. package/docs/errors/missing-glyph.md +33 -0
  316. package/docs/errors/missing-header.md +37 -0
  317. package/docs/errors/missing-lang.md +32 -0
  318. package/docs/errors/missing-root.md +34 -0
  319. package/docs/errors/missing-title.md +32 -0
  320. package/docs/errors/model-failed.md +33 -0
  321. package/docs/errors/model-needs-host.md +40 -0
  322. package/docs/errors/model-result-unexpected.md +36 -0
  323. package/docs/errors/name-tree-node-skipped.md +34 -0
  324. package/docs/errors/nested-transaction.md +34 -0
  325. package/docs/errors/no-pending-save.md +32 -0
  326. package/docs/errors/no-transaction.md +33 -0
  327. package/docs/errors/not-initialized.md +35 -0
  328. package/docs/errors/not-pdf.md +33 -0
  329. package/docs/errors/not-rebased.md +35 -0
  330. package/docs/errors/object-number-out-of-range.md +38 -0
  331. package/docs/errors/objstm-index-mismatch.md +36 -0
  332. package/docs/errors/out-of-memory.md +38 -0
  333. package/docs/errors/outline-cycle.md +34 -0
  334. package/docs/errors/outline-item-skipped.md +34 -0
  335. package/docs/errors/output-unwritable.md +37 -0
  336. package/docs/errors/overwrite-refused.md +36 -0
  337. package/docs/errors/page-count-mismatch.md +34 -0
  338. package/docs/errors/page-index-out-of-range.md +34 -0
  339. package/docs/errors/page-tree-node-skipped.md +35 -0
  340. package/docs/errors/password-required.md +36 -0
  341. package/docs/errors/path-outside-roots.md +32 -0
  342. package/docs/errors/perms-mismatch.md +34 -0
  343. package/docs/errors/profile-version-conflict.md +35 -0
  344. package/docs/errors/redaction-not-applied.md +32 -0
  345. package/docs/errors/reference-cycle.md +35 -0
  346. package/docs/errors/render-backend-unavailable.md +32 -0
  347. package/docs/errors/render-failed.md +33 -0
  348. package/docs/errors/render-too-large.md +36 -0
  349. package/docs/errors/repaired-base.md +34 -0
  350. package/docs/errors/requires-rewrite.md +38 -0
  351. package/docs/errors/revision-index-out-of-range.md +34 -0
  352. package/docs/errors/saved-not-rebased.md +34 -0
  353. package/docs/errors/sink-not-empty.md +33 -0
  354. package/docs/errors/sink.md +31 -0
  355. package/docs/errors/source-budget-exceeded.md +34 -0
  356. package/docs/errors/source-changed.md +33 -0
  357. package/docs/errors/source.md +30 -0
  358. package/docs/errors/stale-generation.md +34 -0
  359. package/docs/errors/stream-length-recovered.md +37 -0
  360. package/docs/errors/strict.md +34 -0
  361. package/docs/errors/subset-failed.md +31 -0
  362. package/docs/errors/syntax.md +34 -0
  363. package/docs/errors/tag-element-not-open.md +41 -0
  364. package/docs/errors/tag-element-unclosed.md +34 -0
  365. package/docs/errors/text-in-earlier-revision.md +36 -0
  366. package/docs/errors/text-module-not-loaded.md +36 -0
  367. package/docs/errors/text-overflow.md +34 -0
  368. package/docs/errors/tounicode-conflict.md +32 -0
  369. package/docs/errors/type.md +34 -0
  370. package/docs/errors/unexpected-eof.md +34 -0
  371. package/docs/errors/unknown-axis.md +33 -0
  372. package/docs/errors/unknown-code.md +36 -0
  373. package/docs/errors/unknown-destination.md +33 -0
  374. package/docs/errors/unknown-font.md +33 -0
  375. package/docs/errors/unknown-option.md +33 -0
  376. package/docs/errors/unknown-page.md +34 -0
  377. package/docs/errors/unmapped-glyph.md +36 -0
  378. package/docs/errors/unnumbered-heading-misused.md +34 -0
  379. package/docs/errors/unset-object.md +30 -0
  380. package/docs/errors/unsupported-filter.md +34 -0
  381. package/docs/errors/unsupported-image.md +33 -0
  382. package/docs/errors/unsupported-layout-option.md +33 -0
  383. package/docs/errors/unsupported-security-handler.md +34 -0
  384. package/docs/errors/unsupported-version.md +32 -0
  385. package/docs/errors/untagged-content.md +35 -0
  386. package/docs/errors/warnings-truncated.md +35 -0
  387. package/docs/errors/wasm-trap.md +37 -0
  388. package/docs/errors/whole-font-rebuilt.md +30 -0
  389. package/docs/errors/worker-crashed.md +33 -0
  390. package/docs/errors/worker-failed.md +32 -0
  391. package/docs/errors/worker-version-mismatch.md +34 -0
  392. package/docs/errors/would-invalidate-signatures.md +38 -0
  393. package/docs/errors/wrong-document.md +33 -0
  394. package/docs/errors/wrong-password.md +34 -0
  395. package/docs/errors/xobject-cycle.md +36 -0
  396. package/docs/errors/xref-repaired.md +36 -0
  397. package/docs/errors/xrefstm-ignored.md +34 -0
  398. package/docs/llms.txt +94 -0
  399. package/docs/pages/concepts/dependencies.md +44 -0
  400. package/docs/pages/concepts/drawing-pages.md +76 -0
  401. package/docs/pages/concepts/errors-and-warnings.md +68 -0
  402. package/docs/pages/concepts/how-lamina-thinks.md +98 -0
  403. package/docs/pages/concepts/pages-and-coordinates.md +75 -0
  404. package/docs/pages/guides/accessible-pdfs.md +262 -0
  405. package/docs/pages/guides/archival-pdfs.md +433 -0
  406. package/docs/pages/guides/edit-a-pdf.md +143 -0
  407. package/docs/pages/guides/flowing-pages.md +379 -0
  408. package/docs/pages/guides/fonts-and-text.md +204 -0
  409. package/docs/pages/guides/images-and-vectors.md +221 -0
  410. package/docs/pages/guides/keep-the-page-responsive.md +85 -0
  411. package/docs/pages/guides/links-outlines-and-metadata.md +224 -0
  412. package/docs/pages/guides/open-large-files.md +69 -0
  413. package/docs/pages/guides/password-protected-files.md +70 -0
  414. package/docs/pages/guides/save-a-pdf.md +154 -0
  415. package/docs/pages/guides/test-generated-pdfs.md +324 -0
  416. package/docs/pages/guides/untrusted-files.md +82 -0
  417. package/docs/pages/index.md +33 -0
  418. package/docs/pages/install.md +79 -0
  419. package/docs/pages/quick-start/browser.md +71 -0
  420. package/docs/pages/quick-start/bun.md +64 -0
  421. package/docs/pages/quick-start/deno.md +62 -0
  422. package/docs/pages/quick-start/node.md +65 -0
  423. package/docs/pages/quick-start/rust.md +62 -0
  424. package/docs/pages/quick-start/workers.md +139 -0
  425. package/docs/pages/recipes/cloudflare-worker.md +115 -0
  426. package/docs/pages/recipes/element-flow.md +248 -0
  427. package/docs/pages/recipes/extract-markdown.md +152 -0
  428. package/docs/pages/recipes/generate-then-edit.md +142 -0
  429. package/docs/pages/recipes/hello.md +101 -0
  430. package/docs/pages/recipes/images-and-vectors.md +216 -0
  431. package/docs/pages/recipes/invoice.md +233 -0
  432. package/docs/pages/recipes/links-and-outlines.md +222 -0
  433. package/docs/pages/recipes/multilingual.md +196 -0
  434. package/docs/pages/recipes/open-untrusted.md +65 -0
  435. package/docs/pages/recipes/pdf-a-archive.md +212 -0
  436. package/docs/pages/recipes/pdf-a3-invoice-with-xml.md +229 -0
  437. package/docs/pages/recipes/pdf-ua-report.md +244 -0
  438. package/docs/pages/recipes/report.md +125 -0
  439. package/docs/pages/recipes/web-worker-client.md +64 -0
  440. package/docs/pages/recipes.md +48 -0
  441. package/docs/pages/reference/benchmarks.md +93 -0
  442. package/docs/pages/reference/changelog.md +134 -0
  443. package/docs/pages/reference/codes.md +14 -0
  444. package/docs/pages/reference/glossary.md +108 -0
  445. package/docs/pages/reference/rust.md +36 -0
  446. package/docs/pages/reference/stability.md +59 -0
  447. package/docs/pages/start/coding-agents.md +45 -0
  448. package/docs/pages/start/first-pdf.md +81 -0
  449. package/docs/pages/troubleshooting.md +74 -0
  450. package/docs/renames.json +86 -0
  451. package/docs/schemas/error.schema.json +322 -0
  452. package/docs/schemas/renames.schema.json +29 -0
  453. package/package.json +7 -3
  454. package/schemas/error.schema.json +37 -3
@@ -0,0 +1,97 @@
1
+ ---
2
+ version: "0.2.0-alpha.4"
3
+ ---
4
+
5
+ [**@laminapdf/sdk**](../README.md)
6
+
7
+ ***
8
+
9
+ [@laminapdf/sdk](../README.md) / PendingPath
10
+
11
+ # Class: PendingPath
12
+
13
+ A path waiting to be painted: fill it, stroke it, both, or clip to it.
14
+
15
+ ## Methods
16
+
17
+ ### clip()
18
+
19
+ > **clip**(`rule?`): [`Surface`](Surface.md)
20
+
21
+ Clips what is drawn next to the path, until the next `restore`.
22
+
23
+ #### Parameters
24
+
25
+ ##### rule?
26
+
27
+ `"nonZero"` \| `"evenOdd"` = `"nonZero"`
28
+
29
+ #### Returns
30
+
31
+ [`Surface`](Surface.md)
32
+
33
+ the surface.
34
+
35
+ ***
36
+
37
+ ### fill()
38
+
39
+ > **fill**(`rule?`): [`Surface`](Surface.md)
40
+
41
+ Fills the path with the fill colour.
42
+
43
+ #### Parameters
44
+
45
+ ##### rule?
46
+
47
+ `"nonZero"` \| `"evenOdd"` = `"nonZero"`
48
+
49
+ #### Returns
50
+
51
+ [`Surface`](Surface.md)
52
+
53
+ the surface.
54
+
55
+ ***
56
+
57
+ ### fillStroke()
58
+
59
+ > **fillStroke**(`rule?`, `style?`): [`Surface`](Surface.md)
60
+
61
+ Fills, then strokes the path.
62
+
63
+ #### Parameters
64
+
65
+ ##### rule?
66
+
67
+ `"nonZero"` \| `"evenOdd"` = `"nonZero"`
68
+
69
+ ##### style?
70
+
71
+ [`StrokeStyle`](../interfaces/StrokeStyle.md) = `{}`
72
+
73
+ #### Returns
74
+
75
+ [`Surface`](Surface.md)
76
+
77
+ the surface.
78
+
79
+ ***
80
+
81
+ ### stroke()
82
+
83
+ > **stroke**(`style?`): [`Surface`](Surface.md)
84
+
85
+ Strokes the path with the stroke colour and `style`.
86
+
87
+ #### Parameters
88
+
89
+ ##### style?
90
+
91
+ [`StrokeStyle`](../interfaces/StrokeStyle.md) = `{}`
92
+
93
+ #### Returns
94
+
95
+ [`Surface`](Surface.md)
96
+
97
+ the surface.
@@ -0,0 +1,205 @@
1
+ ---
2
+ version: "0.2.0-alpha.4"
3
+ ---
4
+
5
+ [**@laminapdf/sdk**](../README.md)
6
+
7
+ ***
8
+
9
+ [@laminapdf/sdk](../README.md) / SaveJob
10
+
11
+ # Class: SaveJob
12
+
13
+ A save in progress, stepped by the caller with a budget of work units (ADR 0028 §3). Freed with
14
+ its document; every call after that throws `disposed`.
15
+
16
+ ## Extends
17
+
18
+ - `Handle`\<`BaseGlue`\>
19
+
20
+ ## Accessors
21
+
22
+ ### instance
23
+
24
+ #### Get Signature
25
+
26
+ > **get** `protected` **instance**(): `Instance`\<`G`\>
27
+
28
+ The instance this handle lives in (for the handles it makes).
29
+
30
+ ##### Returns
31
+
32
+ `Instance`\<`G`\>
33
+
34
+ #### Inherited from
35
+
36
+ `Handle.instance`
37
+
38
+ ***
39
+
40
+ ### isFreed
41
+
42
+ #### Get Signature
43
+
44
+ > **get** `protected` **isFreed**(): `boolean`
45
+
46
+ Whether `free()` ran on this handle or its parent.
47
+
48
+ ##### Returns
49
+
50
+ `boolean`
51
+
52
+ #### Inherited from
53
+
54
+ `Handle.isFreed`
55
+
56
+ ***
57
+
58
+ ### owned
59
+
60
+ #### Get Signature
61
+
62
+ > **get** `protected` **owned**(): `boolean`
63
+
64
+ Whether the handle's raw objects can be freed: its instance is current and hasn't trapped.
65
+
66
+ ##### Returns
67
+
68
+ `boolean`
69
+
70
+ #### Inherited from
71
+
72
+ `Handle.owned`
73
+
74
+ ## Methods
75
+
76
+ ### \[dispose\]()
77
+
78
+ > **\[dispose\]**(): `void`
79
+
80
+ Frees the handle at the end of a `using` block (an alias of `free()`).
81
+
82
+ #### Returns
83
+
84
+ `void`
85
+
86
+ #### Inherited from
87
+
88
+ `Handle.[dispose]`
89
+
90
+ ***
91
+
92
+ ### assertLive()
93
+
94
+ > `protected` **assertLive**(): `void`
95
+
96
+ #### Returns
97
+
98
+ `void`
99
+
100
+ #### Throws
101
+
102
+ [LaminaPdfError](LaminaPdfError.md) `disposed` after `free()` (here or on the parent);
103
+ `instance-reset` when the instance was replaced (a trapped one is replaced first).
104
+
105
+ #### Inherited from
106
+
107
+ `Handle.assertLive`
108
+
109
+ ***
110
+
111
+ ### call()
112
+
113
+ > `protected` **call**\<`T`\>(`f`): `T`
114
+
115
+ Runs `f` (calls into the glue) on this live handle; see Instance.call.
116
+
117
+ #### Type Parameters
118
+
119
+ ##### T
120
+
121
+ `T`
122
+
123
+ #### Parameters
124
+
125
+ ##### f
126
+
127
+ (`glue`) => `T`
128
+
129
+ #### Returns
130
+
131
+ `T`
132
+
133
+ #### Inherited from
134
+
135
+ `Handle.call`
136
+
137
+ ***
138
+
139
+ ### cancel()
140
+
141
+ > **cancel**(): `void`
142
+
143
+ Stops the job: its next step fails with `cancelled`.
144
+
145
+ #### Returns
146
+
147
+ `void`
148
+
149
+ ***
150
+
151
+ ### free()
152
+
153
+ > **free**(): `void`
154
+
155
+ Frees the handle's memory now; without it, the garbage collector frees it later. A second
156
+ call does nothing, and any other call afterwards throws `disposed`. Prefer `using`, which
157
+ calls this at the end of the block.
158
+
159
+ #### Returns
160
+
161
+ `void`
162
+
163
+ #### Inherited from
164
+
165
+ `Handle.free`
166
+
167
+ ***
168
+
169
+ ### release()
170
+
171
+ > `protected` **release**(): `void`
172
+
173
+ Frees the WebAssembly side; called at most once, and only while [owned](#owned).
174
+
175
+ #### Returns
176
+
177
+ `void`
178
+
179
+ #### Overrides
180
+
181
+ `Handle.release`
182
+
183
+ ***
184
+
185
+ ### step()
186
+
187
+ > **step**(`budget`): `object` & `ProgressJs` \| \{ `bytes`: `Uint8Array`\<`ArrayBuffer`\>; `report`: `SaveReportJs`; `state`: `"done"`; \}
188
+
189
+ Runs at most `budget` work units.
190
+
191
+ #### Parameters
192
+
193
+ ##### budget
194
+
195
+ `number`
196
+
197
+ #### Returns
198
+
199
+ `object` & `ProgressJs` \| \{ `bytes`: `Uint8Array`\<`ArrayBuffer`\>; `report`: `SaveReportJs`; `state`: `"done"`; \}
200
+
201
+ `{ state: "progress", … }`, or `{ state: "done", bytes, report }` at the end.
202
+
203
+ #### Throws
204
+
205
+ [LaminaPdfError](LaminaPdfError.md) `cancelled`, `document-changed`, `job-finished`, or the save's errors.
@@ -0,0 +1,331 @@
1
+ ---
2
+ version: "0.2.0-alpha.4"
3
+ ---
4
+
5
+ [**@laminapdf/sdk**](../README.md)
6
+
7
+ ***
8
+
9
+ [@laminapdf/sdk](../README.md) / Surface
10
+
11
+ # Class: Surface
12
+
13
+ What a page is drawn with. Methods that set state return the surface, so calls chain; invalid
14
+ geometry is reported by [Page.finish](Page.md#finish) (`invalid-geometry`).
15
+
16
+ ## Methods
17
+
18
+ ### artifact()
19
+
20
+ > **artifact**(`kind`, `draw`): `this`
21
+
22
+ Draws what `draw` draws as an artifact: decoration, running heads and footers, backgrounds;
23
+ content outside the structure tree. `"header"`, `"footer"` and `"watermark"` are pagination
24
+ artifacts that also say which (`/Subtype`), a header attached to the page's top edge and a
25
+ footer to its bottom (`/Attached`).
26
+
27
+ #### Parameters
28
+
29
+ ##### kind
30
+
31
+ `"layout"` \| `"page"` \| `"pagination"` \| `"background"` \| `"header"` \| `"footer"` \| `"watermark"`
32
+
33
+ ##### draw
34
+
35
+ (`s`) => `void`
36
+
37
+ #### Returns
38
+
39
+ `this`
40
+
41
+ ***
42
+
43
+ ### blendMode()
44
+
45
+ > **blendMode**(`mode`): `this`
46
+
47
+ The blend mode.
48
+
49
+ #### Parameters
50
+
51
+ ##### mode
52
+
53
+ `"normal"` \| `"multiply"` \| `"screen"` \| `"overlay"` \| `"darken"` \| `"lighten"` \| `"colorDodge"` \| `"colorBurn"` \| `"hardLight"` \| `"softLight"` \| `"difference"` \| `"exclusion"` \| `"hue"` \| `"saturation"` \| `"color"` \| `"luminosity"`
54
+
55
+ #### Returns
56
+
57
+ `this`
58
+
59
+ ***
60
+
61
+ ### fillColor()
62
+
63
+ > **fillColor**(`color`): `this`
64
+
65
+ The colour fills (and text) use.
66
+
67
+ #### Parameters
68
+
69
+ ##### color
70
+
71
+ [`Color`](../type-aliases/Color.md)
72
+
73
+ #### Returns
74
+
75
+ `this`
76
+
77
+ ***
78
+
79
+ ### image()
80
+
81
+ > **image**(`image`, `rect`, `alt?`): `this`
82
+
83
+ Draws `image` scaled into `rect`; with `alt`, as a `Figure` structure element with that
84
+ alternate text.
85
+
86
+ #### Parameters
87
+
88
+ ##### image
89
+
90
+ [`Image`](Image.md)
91
+
92
+ ##### rect
93
+
94
+ [`Rect`](../type-aliases/Rect.md)
95
+
96
+ ##### alt?
97
+
98
+ `string`
99
+
100
+ #### Returns
101
+
102
+ `this`
103
+
104
+ ***
105
+
106
+ ### link()
107
+
108
+ > **link**(`rect`, `target`, `contents?`): `this`
109
+
110
+ A link annotation over `rect`, with `contents` as its alternate text.
111
+
112
+ #### Parameters
113
+
114
+ ##### rect
115
+
116
+ [`Rect`](../type-aliases/Rect.md)
117
+
118
+ ##### target
119
+
120
+ `LinkTargetInit`
121
+
122
+ ##### contents?
123
+
124
+ `string`
125
+
126
+ #### Returns
127
+
128
+ `this`
129
+
130
+ ***
131
+
132
+ ### opacity()
133
+
134
+ > **opacity**(`fill`, `stroke`): `this`
135
+
136
+ Fill and stroke opacity, 0 to 1.
137
+
138
+ #### Parameters
139
+
140
+ ##### fill
141
+
142
+ `number`
143
+
144
+ ##### stroke
145
+
146
+ `number`
147
+
148
+ #### Returns
149
+
150
+ `this`
151
+
152
+ ***
153
+
154
+ ### path()
155
+
156
+ > **path**(`build`): [`PendingPath`](PendingPath.md)
157
+
158
+ A path, built by `build`, to paint.
159
+
160
+ #### Parameters
161
+
162
+ ##### build
163
+
164
+ (`p`) => `void`
165
+
166
+ #### Returns
167
+
168
+ [`PendingPath`](PendingPath.md)
169
+
170
+ #### Example
171
+
172
+ ```ts
173
+ surface.path((p) => p.moveTo(56, 590).lineTo(539, 590)).stroke({ width: 0.5 });
174
+ ```
175
+
176
+ ***
177
+
178
+ ### restore()
179
+
180
+ > **restore**(): `this`
181
+
182
+ Restores the graphics state (`Q`).
183
+
184
+ #### Returns
185
+
186
+ `this`
187
+
188
+ ***
189
+
190
+ ### save()
191
+
192
+ > **save**(): `this`
193
+
194
+ Saves the graphics state (`q`).
195
+
196
+ #### Returns
197
+
198
+ `this`
199
+
200
+ ***
201
+
202
+ ### strokeColor()
203
+
204
+ > **strokeColor**(`color`): `this`
205
+
206
+ The colour strokes use.
207
+
208
+ #### Parameters
209
+
210
+ ##### color
211
+
212
+ [`Color`](../type-aliases/Color.md)
213
+
214
+ #### Returns
215
+
216
+ `this`
217
+
218
+ ***
219
+
220
+ ### tag()
221
+
222
+ > **tag**(`tag`, `draw`): `this`
223
+
224
+ Draws what `draw` draws inside the structure element `tag`: its text, paths and images
225
+ become the element's content, elements opened inside it its children, links its `Link`
226
+ children, in reading order. Elements and artifacts `draw` leaves open end with it, also when
227
+ it throws. A page using an element makes the document tagged.
228
+
229
+ #### Parameters
230
+
231
+ ##### tag
232
+
233
+ [`Tag`](../type-aliases/Tag.md)
234
+
235
+ ##### draw
236
+
237
+ (`s`) => `void`
238
+
239
+ #### Returns
240
+
241
+ `this`
242
+
243
+ #### Example
244
+
245
+ ```ts
246
+ s.tag("Sect", (s) => {
247
+ s.text("Results", { font, size: 18, at: [56, 96], tag: "H1" });
248
+ s.tag({ type: "P", lang: "en-GB" }, (s) => s.textBox(summary, { font, size: 11, box }));
249
+ });
250
+ ```
251
+
252
+ #### Throws
253
+
254
+ [LaminaPdfError](LaminaPdfError.md) `invalid-argument` for an unknown type without a `role`.
255
+
256
+ ***
257
+
258
+ ### text()
259
+
260
+ > **text**(`text`, `options`): `TextRunJs`
261
+
262
+ Draws `text`: shaped, bidi-resolved, one line per line break (needs the text module).
263
+
264
+ #### Parameters
265
+
266
+ ##### text
267
+
268
+ `string`
269
+
270
+ ##### options
271
+
272
+ [`TextOptions`](../interfaces/TextOptions.md)
273
+
274
+ #### Returns
275
+
276
+ `TextRunJs`
277
+
278
+ what the run measures, with `bottom`: where the next element can start (the next text box's top), the
279
+ descent below the last line that draws something, before the surface's transform; left out when nothing is.
280
+
281
+ #### Throws
282
+
283
+ [LaminaPdfError](LaminaPdfError.md) `text-module-not-loaded`, `missing-glyph`, `font-not-shapable`, …
284
+
285
+ ***
286
+
287
+ ### textBox()
288
+
289
+ > **textBox**(`text`, `options`): `TextLayoutJs`
290
+
291
+ Lays `text` out in `options.box`, breaking lines at Unicode line-break opportunities.
292
+
293
+ #### Parameters
294
+
295
+ ##### text
296
+
297
+ `string`
298
+
299
+ ##### options
300
+
301
+ [`TextBoxOptions`](../interfaces/TextBoxOptions.md)
302
+
303
+ #### Returns
304
+
305
+ `TextLayoutJs`
306
+
307
+ the lines drawn, where the overflow starts (UTF-16 offsets; test it with `!== undefined`, as `0` means no
308
+ line fitted) and `bottom`: the last line that draws something, before the surface's transform; left out when none
309
+ does.
310
+
311
+ #### Throws
312
+
313
+ [LaminaPdfError](LaminaPdfError.md) as [Surface.text](#text); `text-overflow` with `overflow: "error"`.
314
+
315
+ ***
316
+
317
+ ### transform()
318
+
319
+ > **transform**(`matrix`): `this`
320
+
321
+ Applies `matrix` (page space) to what is drawn next. See [Matrix](../variables/Matrix.md).
322
+
323
+ #### Parameters
324
+
325
+ ##### matrix
326
+
327
+ [`Transform`](../type-aliases/Transform.md)
328
+
329
+ #### Returns
330
+
331
+ `this`
@@ -0,0 +1,111 @@
1
+ ---
2
+ version: "0.2.0-alpha.4"
3
+ ---
4
+
5
+ [**@laminapdf/sdk**](../README.md)
6
+
7
+ ***
8
+
9
+ [@laminapdf/sdk](../README.md) / Transaction
10
+
11
+ # Class: Transaction
12
+
13
+ Collects the ops of one [Document.transact](Document.md#transact) call.
14
+
15
+ ## Constructors
16
+
17
+ ### Constructor
18
+
19
+ > **new Transaction**(): `Transaction`
20
+
21
+ #### Returns
22
+
23
+ `Transaction`
24
+
25
+ ## Accessors
26
+
27
+ ### ops
28
+
29
+ #### Get Signature
30
+
31
+ > **get** **ops**(): readonly `Op`[]
32
+
33
+ The ops collected so far.
34
+
35
+ ##### Returns
36
+
37
+ readonly `Op`[]
38
+
39
+ ## Methods
40
+
41
+ ### apply()
42
+
43
+ > **apply**(`op`): `this`
44
+
45
+ Adds `op` to the transaction.
46
+
47
+ #### Parameters
48
+
49
+ ##### op
50
+
51
+ `Op`
52
+
53
+ #### Returns
54
+
55
+ `this`
56
+
57
+ #### Throws
58
+
59
+ [LaminaPdfError](LaminaPdfError.md) `no-transaction` after `transact` returned.
60
+
61
+ ***
62
+
63
+ ### rotatePage()
64
+
65
+ > **rotatePage**(`page`, `rotate`): `this`
66
+
67
+ Sets a page's `/Rotate` (`rotatePage`).
68
+
69
+ #### Parameters
70
+
71
+ ##### page
72
+
73
+ `string`
74
+
75
+ the page's ID (`doc.page(0).id`).
76
+
77
+ ##### rotate
78
+
79
+ [`Rotation`](../type-aliases/Rotation.md)
80
+
81
+ 0, 90, 180 or 270 degrees.
82
+
83
+ #### Returns
84
+
85
+ `this`
86
+
87
+ ***
88
+
89
+ ### setInfo()
90
+
91
+ > **setInfo**(`patch`, `at?`): `this`
92
+
93
+ Patches the Info dictionary (`setInfo`).
94
+
95
+ #### Parameters
96
+
97
+ ##### patch
98
+
99
+ [`InfoPatch`](../type-aliases/InfoPatch.md)
100
+
101
+ the entries to set (a string) or remove (`null`).
102
+
103
+ ##### at?
104
+
105
+ `string`
106
+
107
+ the modification date to write (`D:20261030120000Z`); omitted, none is written.
108
+
109
+ #### Returns
110
+
111
+ `this`