pdf-lite 1.0.1-alpha.2 → 1.0.1-alpha.3

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 (721) hide show
  1. package/dist/core/decoder.d.ts +39 -0
  2. package/dist/core/decoder.js +367 -0
  3. package/dist/core/generators.d.ts +37 -0
  4. package/{packages/pdf-lite/src/core/generators.ts → dist/core/generators.js} +36 -67
  5. package/dist/core/incremental-parser.d.ts +103 -0
  6. package/{packages/pdf-lite/src/core/incremental-parser.ts → dist/core/incremental-parser.js} +63 -100
  7. package/dist/core/index.d.ts +2 -0
  8. package/dist/core/index.js +2 -0
  9. package/dist/core/objects/pdf-array.d.ts +12 -0
  10. package/dist/core/objects/pdf-array.js +42 -0
  11. package/dist/core/objects/pdf-boolean.d.ts +8 -0
  12. package/dist/core/objects/pdf-boolean.js +15 -0
  13. package/dist/core/objects/pdf-comment.d.ts +18 -0
  14. package/dist/core/objects/pdf-comment.js +39 -0
  15. package/dist/core/objects/pdf-date.d.ts +5 -0
  16. package/dist/core/objects/pdf-date.js +40 -0
  17. package/dist/core/objects/pdf-dictionary.d.ts +22 -0
  18. package/dist/core/objects/pdf-dictionary.js +136 -0
  19. package/dist/core/objects/pdf-hexadecimal.d.ts +17 -0
  20. package/dist/core/objects/pdf-hexadecimal.js +42 -0
  21. package/dist/core/objects/pdf-indirect-object.d.ts +27 -0
  22. package/dist/core/objects/pdf-indirect-object.js +100 -0
  23. package/dist/core/objects/pdf-name.d.ts +8 -0
  24. package/dist/core/objects/pdf-name.js +15 -0
  25. package/dist/core/objects/pdf-null.d.ts +7 -0
  26. package/dist/core/objects/pdf-null.js +11 -0
  27. package/dist/core/objects/pdf-number.d.ts +25 -0
  28. package/dist/core/objects/pdf-number.js +77 -0
  29. package/dist/core/objects/pdf-object-reference.d.ts +9 -0
  30. package/dist/core/objects/pdf-object-reference.js +19 -0
  31. package/dist/core/objects/pdf-object.d.ts +30 -0
  32. package/dist/core/objects/pdf-object.js +77 -0
  33. package/dist/core/objects/pdf-start-xref.d.ts +10 -0
  34. package/dist/core/objects/pdf-start-xref.js +32 -0
  35. package/dist/core/objects/pdf-stream.d.ts +100 -0
  36. package/dist/core/objects/pdf-stream.js +521 -0
  37. package/dist/core/objects/pdf-string.d.ts +15 -0
  38. package/dist/core/objects/pdf-string.js +30 -0
  39. package/dist/core/objects/pdf-trailer.d.ts +26 -0
  40. package/dist/core/objects/pdf-trailer.js +33 -0
  41. package/dist/core/objects/pdf-xref-table.d.ts +48 -0
  42. package/dist/core/objects/pdf-xref-table.js +183 -0
  43. package/{packages/pdf-lite/src/core/parser.ts → dist/core/parser.d.ts} +3 -4
  44. package/dist/core/parser.js +9 -0
  45. package/dist/core/ref.d.ts +59 -0
  46. package/{packages/pdf-lite/src/core/ref.ts → dist/core/ref.js} +23 -41
  47. package/dist/core/serializer.d.ts +36 -0
  48. package/{packages/pdf-lite/src/core/serializer.ts → dist/core/serializer.js} +20 -30
  49. package/dist/core/streams/object-stream.d.ts +6 -0
  50. package/dist/core/streams/object-stream.js +15 -0
  51. package/dist/core/tokeniser.d.ts +98 -0
  52. package/dist/core/tokeniser.js +552 -0
  53. package/dist/core/tokens/boolean-token.d.ts +8 -0
  54. package/dist/core/tokens/boolean-token.js +15 -0
  55. package/dist/core/tokens/byte-offset-token.d.ts +8 -0
  56. package/dist/core/tokens/byte-offset-token.js +15 -0
  57. package/dist/core/tokens/comment-token.d.ts +10 -0
  58. package/dist/core/tokens/comment-token.js +26 -0
  59. package/dist/core/tokens/end-array-token.d.ts +4 -0
  60. package/dist/core/tokens/end-array-token.js +8 -0
  61. package/dist/core/tokens/end-dictionary-token.d.ts +4 -0
  62. package/dist/core/tokens/end-dictionary-token.js +8 -0
  63. package/dist/core/tokens/end-object-token.d.ts +4 -0
  64. package/dist/core/tokens/end-object-token.js +8 -0
  65. package/dist/core/tokens/end-stream-token.d.ts +5 -0
  66. package/dist/core/tokens/end-stream-token.js +8 -0
  67. package/dist/core/tokens/hexadecimal-token.d.ts +7 -0
  68. package/dist/core/tokens/hexadecimal-token.js +16 -0
  69. package/dist/core/tokens/name-token.d.ts +6 -0
  70. package/dist/core/tokens/name-token.js +15 -0
  71. package/dist/core/tokens/null-token.d.ts +4 -0
  72. package/dist/core/tokens/null-token.js +8 -0
  73. package/dist/core/tokens/number-token.d.ts +24 -0
  74. package/dist/core/tokens/number-token.js +104 -0
  75. package/dist/core/tokens/object-reference-token.d.ts +7 -0
  76. package/dist/core/tokens/object-reference-token.js +17 -0
  77. package/dist/core/tokens/start-array-token.d.ts +4 -0
  78. package/dist/core/tokens/start-array-token.js +8 -0
  79. package/dist/core/tokens/start-dictionary-token.d.ts +4 -0
  80. package/dist/core/tokens/start-dictionary-token.js +8 -0
  81. package/dist/core/tokens/start-object-token.d.ts +8 -0
  82. package/dist/core/tokens/start-object-token.js +17 -0
  83. package/dist/core/tokens/start-stream-token.d.ts +8 -0
  84. package/dist/core/tokens/start-stream-token.js +38 -0
  85. package/dist/core/tokens/start-xref-token.d.ts +4 -0
  86. package/dist/core/tokens/start-xref-token.js +8 -0
  87. package/dist/core/tokens/stream-chunk-token.d.ts +5 -0
  88. package/dist/core/tokens/stream-chunk-token.js +6 -0
  89. package/dist/core/tokens/string-token.d.ts +7 -0
  90. package/dist/core/tokens/string-token.js +13 -0
  91. package/dist/core/tokens/token.d.ts +10 -0
  92. package/dist/core/tokens/token.js +32 -0
  93. package/dist/core/tokens/trailer-token.d.ts +5 -0
  94. package/dist/core/tokens/trailer-token.js +10 -0
  95. package/dist/core/tokens/whitespace-token.d.ts +11 -0
  96. package/dist/core/tokens/whitespace-token.js +36 -0
  97. package/dist/core/tokens/xref-table-entry-token.d.ts +13 -0
  98. package/dist/core/tokens/xref-table-entry-token.js +40 -0
  99. package/dist/core/tokens/xref-table-section-start-token.d.ts +8 -0
  100. package/dist/core/tokens/xref-table-section-start-token.js +21 -0
  101. package/dist/core/tokens/xref-table-start-token.d.ts +5 -0
  102. package/dist/core/tokens/xref-table-start-token.js +10 -0
  103. package/dist/crypto/ciphers/aes128.d.ts +19 -0
  104. package/{packages/pdf-lite/src/crypto/ciphers/aes128.ts → dist/crypto/ciphers/aes128.js} +17 -27
  105. package/dist/crypto/ciphers/aes256.d.ts +18 -0
  106. package/{packages/pdf-lite/src/crypto/ciphers/aes256.ts → dist/crypto/ciphers/aes256.js} +14 -17
  107. package/dist/crypto/ciphers/rc4.d.ts +18 -0
  108. package/{packages/pdf-lite/src/crypto/ciphers/rc4.ts → dist/crypto/ciphers/rc4.js} +25 -30
  109. package/dist/crypto/constants.d.ts +6 -0
  110. package/{packages/pdf-lite/src/crypto/constants.ts → dist/crypto/constants.js} +1 -1
  111. package/dist/crypto/key-derivation/key-derivation-aes256.d.ts +56 -0
  112. package/dist/crypto/key-derivation/key-derivation-aes256.js +156 -0
  113. package/dist/crypto/key-derivation/key-derivation.d.ts +42 -0
  114. package/{packages/pdf-lite/src/crypto/key-derivation/key-derivation.ts → dist/crypto/key-derivation/key-derivation.js} +35 -66
  115. package/dist/crypto/key-gen/key-gen-aes256.d.ts +36 -0
  116. package/{packages/pdf-lite/src/crypto/key-gen/key-gen-aes256.ts → dist/crypto/key-gen/key-gen-aes256.js} +25 -50
  117. package/dist/crypto/key-gen/key-gen-rc4-128.d.ts +47 -0
  118. package/{packages/pdf-lite/src/crypto/key-gen/key-gen-rc4-128.ts → dist/crypto/key-gen/key-gen-rc4-128.js} +45 -106
  119. package/dist/crypto/key-gen/key-gen-rc4-40.d.ts +60 -0
  120. package/{packages/pdf-lite/src/crypto/key-gen/key-gen-rc4-40.ts → dist/crypto/key-gen/key-gen-rc4-40.js} +26 -62
  121. package/dist/crypto/types.d.ts +5 -0
  122. package/dist/crypto/types.js +1 -0
  123. package/dist/crypto/utils.d.ts +40 -0
  124. package/{packages/pdf-lite/src/crypto/utils.ts → dist/crypto/utils.js} +27 -36
  125. package/dist/filters/ascii85.d.ts +16 -0
  126. package/{packages/pdf-lite/src/filters/ascii85.ts → dist/filters/ascii85.js} +41 -65
  127. package/dist/filters/asciihex.d.ts +16 -0
  128. package/{packages/pdf-lite/src/filters/asciihex.ts → dist/filters/asciihex.js} +18 -19
  129. package/dist/filters/flate.d.ts +15 -0
  130. package/{packages/pdf-lite/src/filters/flate.ts → dist/filters/flate.js} +7 -10
  131. package/dist/filters/lzw.d.ts +16 -0
  132. package/dist/filters/lzw.js +150 -0
  133. package/dist/filters/pass-through.d.ts +14 -0
  134. package/{packages/pdf-lite/src/filters/pass-through.ts → dist/filters/pass-through.js} +6 -9
  135. package/dist/filters/runlength.d.ts +16 -0
  136. package/{packages/pdf-lite/src/filters/runlength.ts → dist/filters/runlength.js} +36 -40
  137. package/dist/filters/types.d.ts +18 -0
  138. package/{packages/pdf-lite/src/filters/types.ts → dist/filters/types.js} +1 -10
  139. package/dist/index.d.ts +4 -0
  140. package/dist/index.js +4 -0
  141. package/dist/pdf/errors.d.ts +6 -0
  142. package/{packages/pdf-lite/src/pdf/errors.ts → dist/pdf/errors.js} +2 -1
  143. package/dist/pdf/index.d.ts +4 -0
  144. package/dist/pdf/index.js +4 -0
  145. package/dist/pdf/pdf-document.d.ts +277 -0
  146. package/{packages/pdf-lite/src/pdf/pdf-document.ts → dist/pdf/pdf-document.js} +305 -541
  147. package/dist/pdf/pdf-reader.d.ts +37 -0
  148. package/{packages/pdf-lite/src/pdf/pdf-reader.ts → dist/pdf/pdf-reader.js} +12 -22
  149. package/dist/pdf/pdf-revision.d.ts +101 -0
  150. package/{packages/pdf-lite/src/pdf/pdf-revision.ts → dist/pdf/pdf-revision.js} +70 -105
  151. package/dist/pdf/pdf-xref-lookup.d.ts +149 -0
  152. package/dist/pdf/pdf-xref-lookup.js +402 -0
  153. package/dist/security/crypt-filters/aesv2.d.ts +35 -0
  154. package/{packages/pdf-lite/src/security/crypt-filters/aesv2.ts → dist/security/crypt-filters/aesv2.js} +9 -26
  155. package/dist/security/crypt-filters/aesv3.d.ts +36 -0
  156. package/{packages/pdf-lite/src/security/crypt-filters/aesv3.ts → dist/security/crypt-filters/aesv3.js} +9 -23
  157. package/{packages/pdf-lite/src/security/crypt-filters/base.ts → dist/security/crypt-filters/base.d.ts} +21 -73
  158. package/dist/security/crypt-filters/base.js +93 -0
  159. package/dist/security/crypt-filters/identity.d.ts +28 -0
  160. package/{packages/pdf-lite/src/security/crypt-filters/identity.ts → dist/security/crypt-filters/identity.js} +9 -13
  161. package/dist/security/crypt-filters/v2.d.ts +37 -0
  162. package/{packages/pdf-lite/src/security/crypt-filters/v2.ts → dist/security/crypt-filters/v2.js} +9 -26
  163. package/dist/security/handlers/base.d.ts +304 -0
  164. package/dist/security/handlers/base.js +359 -0
  165. package/dist/security/handlers/pubSec.d.ts +164 -0
  166. package/dist/security/handlers/pubSec.js +299 -0
  167. package/dist/security/handlers/utils.d.ts +77 -0
  168. package/dist/security/handlers/utils.js +244 -0
  169. package/dist/security/handlers/v1.d.ts +81 -0
  170. package/dist/security/handlers/v1.js +135 -0
  171. package/dist/security/handlers/v2.d.ts +63 -0
  172. package/{packages/pdf-lite/src/security/handlers/v2.ts → dist/security/handlers/v2.js} +25 -62
  173. package/dist/security/handlers/v4.d.ts +121 -0
  174. package/dist/security/handlers/v4.js +257 -0
  175. package/dist/security/handlers/v5.d.ts +112 -0
  176. package/dist/security/handlers/v5.js +210 -0
  177. package/{packages/pdf-lite/src/security/types.ts → dist/security/types.d.ts} +72 -94
  178. package/dist/security/types.js +1 -0
  179. package/dist/signing/document-security-store.d.ts +108 -0
  180. package/dist/signing/document-security-store.js +156 -0
  181. package/dist/signing/index.d.ts +3 -0
  182. package/dist/signing/index.js +3 -0
  183. package/dist/signing/signatures/adbe-pkcs7-detached.d.ts +57 -0
  184. package/dist/signing/signatures/adbe-pkcs7-detached.js +117 -0
  185. package/dist/signing/signatures/adbe-pkcs7-sha1.d.ts +55 -0
  186. package/dist/signing/signatures/adbe-pkcs7-sha1.js +121 -0
  187. package/dist/signing/signatures/adbe-x509-rsa-sha1.d.ts +49 -0
  188. package/dist/signing/signatures/adbe-x509-rsa-sha1.js +81 -0
  189. package/dist/signing/signatures/base.d.ts +107 -0
  190. package/dist/signing/signatures/base.js +145 -0
  191. package/dist/signing/signatures/etsi-cades-detached.d.ts +64 -0
  192. package/dist/signing/signatures/etsi-cades-detached.js +159 -0
  193. package/dist/signing/signatures/etsi-rfc3161.d.ts +37 -0
  194. package/{packages/pdf-lite/src/signing/signatures/etsi-rfc3161.ts → dist/signing/signatures/etsi-rfc3161.js} +21 -43
  195. package/dist/signing/signatures/index.d.ts +6 -0
  196. package/dist/signing/signatures/index.js +6 -0
  197. package/dist/signing/signer.d.ts +23 -0
  198. package/dist/signing/signer.js +92 -0
  199. package/{packages/pdf-lite/src/signing/types.ts → dist/signing/types.d.ts} +40 -48
  200. package/dist/signing/types.js +1 -0
  201. package/dist/signing/utils.d.ts +32 -0
  202. package/{packages/pdf-lite/src/signing/utils.ts → dist/signing/utils.js} +12 -31
  203. package/dist/types.d.ts +23 -0
  204. package/dist/types.js +11 -0
  205. package/dist/utils/IterableReadableStream.d.ts +24 -0
  206. package/{packages/pdf-lite/src/utils/IterableReadableStream.ts → dist/utils/IterableReadableStream.js} +6 -6
  207. package/dist/utils/algos.d.ts +242 -0
  208. package/{packages/pdf-lite/src/utils/algos.ts → dist/utils/algos.js} +63 -136
  209. package/dist/utils/assert.d.ts +28 -0
  210. package/{packages/pdf-lite/src/utils/assert.ts → dist/utils/assert.js} +5 -10
  211. package/dist/utils/bytesToHex.d.ts +13 -0
  212. package/{packages/pdf-lite/src/utils/bytesToHex.ts → dist/utils/bytesToHex.js} +4 -6
  213. package/dist/utils/bytesToHexBytes.d.ts +14 -0
  214. package/{packages/pdf-lite/src/utils/bytesToHexBytes.ts → dist/utils/bytesToHexBytes.js} +7 -12
  215. package/dist/utils/bytesToString.d.ts +13 -0
  216. package/{packages/pdf-lite/src/utils/bytesToString.ts → dist/utils/bytesToString.js} +3 -5
  217. package/dist/utils/concatUint8Arrays.d.ts +16 -0
  218. package/{packages/pdf-lite/src/utils/concatUint8Arrays.ts → dist/utils/concatUint8Arrays.js} +7 -9
  219. package/dist/utils/escapeString.d.ts +14 -0
  220. package/dist/utils/escapeString.js +43 -0
  221. package/dist/utils/hexBytesToBytes.d.ts +15 -0
  222. package/{packages/pdf-lite/src/utils/hexBytesToBytes.ts → dist/utils/hexBytesToBytes.js} +4 -6
  223. package/dist/utils/hexBytesToString.d.ts +13 -0
  224. package/{packages/pdf-lite/src/utils/hexBytesToString.ts → dist/utils/hexBytesToString.js} +5 -7
  225. package/dist/utils/hexToBytes.d.ts +13 -0
  226. package/{packages/pdf-lite/src/utils/hexToBytes.ts → dist/utils/hexToBytes.js} +4 -6
  227. package/dist/utils/padBytes.d.ts +15 -0
  228. package/{packages/pdf-lite/src/utils/padBytes.ts → dist/utils/padBytes.js} +5 -9
  229. package/dist/utils/predictors.d.ts +113 -0
  230. package/{packages/pdf-lite/src/utils/predictors.ts → dist/utils/predictors.js} +103 -156
  231. package/dist/utils/replaceInBuffer.d.ts +22 -0
  232. package/{packages/pdf-lite/src/utils/replaceInBuffer.ts → dist/utils/replaceInBuffer.js} +18 -27
  233. package/dist/utils/stringToBytes.d.ts +14 -0
  234. package/{packages/pdf-lite/src/utils/stringToBytes.ts → dist/utils/stringToBytes.js} +6 -7
  235. package/dist/utils/stringToHexBytes.d.ts +15 -0
  236. package/{packages/pdf-lite/src/utils/stringToHexBytes.ts → dist/utils/stringToHexBytes.js} +5 -7
  237. package/dist/utils/unescapeString.d.ts +16 -0
  238. package/dist/utils/unescapeString.js +114 -0
  239. package/package.json +37 -34
  240. package/.commitlintrc.cjs +0 -25
  241. package/.github/ISSUE_TEMPLATE/bug_report.md +0 -40
  242. package/.github/ISSUE_TEMPLATE/feature_request.md +0 -19
  243. package/.github/workflows/docs.yaml +0 -95
  244. package/.github/workflows/prepare-release.yaml +0 -79
  245. package/.github/workflows/release.yaml +0 -80
  246. package/.github/workflows/test.yaml +0 -35
  247. package/.husky/commit-msg +0 -1
  248. package/.husky/pre-commit +0 -1
  249. package/.prettierignore +0 -4
  250. package/.prettierrc +0 -4
  251. package/CONTRIBUTING.md +0 -109
  252. package/EXAMPLES.md +0 -1512
  253. package/docs/README.md +0 -127
  254. package/docs/core/README.md +0 -43
  255. package/docs/core/decoder/README.md +0 -11
  256. package/docs/core/decoder/classes/PdfDecoder.md +0 -362
  257. package/docs/core/generators/README.md +0 -14
  258. package/docs/core/generators/functions/bytesToPdfObjects.md +0 -26
  259. package/docs/core/generators/functions/pdfDecoder.md +0 -36
  260. package/docs/core/generators/functions/pdfDecoderAsync.md +0 -26
  261. package/docs/core/generators/functions/stringToPdfObjects.md +0 -25
  262. package/docs/core/incremental-parser/README.md +0 -13
  263. package/docs/core/incremental-parser/classes/EofReachedError.md +0 -55
  264. package/docs/core/incremental-parser/classes/IncrementalParser.md +0 -299
  265. package/docs/core/incremental-parser/classes/NoMoreTokensError.md +0 -55
  266. package/docs/core/objects/pdf-array/README.md +0 -11
  267. package/docs/core/objects/pdf-array/classes/PdfArray.md +0 -305
  268. package/docs/core/objects/pdf-boolean/README.md +0 -11
  269. package/docs/core/objects/pdf-boolean/classes/PdfBoolean.md +0 -265
  270. package/docs/core/objects/pdf-comment/README.md +0 -11
  271. package/docs/core/objects/pdf-comment/classes/PdfComment.md +0 -329
  272. package/docs/core/objects/pdf-date/README.md +0 -11
  273. package/docs/core/objects/pdf-date/classes/PdfDate.md +0 -317
  274. package/docs/core/objects/pdf-dictionary/README.md +0 -17
  275. package/docs/core/objects/pdf-dictionary/classes/PdfDictionary.md +0 -396
  276. package/docs/core/objects/pdf-dictionary/type-aliases/PdfDictionaryEntries.md +0 -9
  277. package/docs/core/objects/pdf-dictionary/type-aliases/PdfDictionaryEntry.md +0 -9
  278. package/docs/core/objects/pdf-dictionary/type-aliases/PdfDictionaryMap.md +0 -9
  279. package/docs/core/objects/pdf-hexadecimal/README.md +0 -11
  280. package/docs/core/objects/pdf-hexadecimal/classes/PdfHexadecimal.md +0 -320
  281. package/docs/core/objects/pdf-indirect-object/README.md +0 -11
  282. package/docs/core/objects/pdf-indirect-object/classes/PdfIndirectObject.md +0 -411
  283. package/docs/core/objects/pdf-name/README.md +0 -11
  284. package/docs/core/objects/pdf-name/classes/PdfName.md +0 -271
  285. package/docs/core/objects/pdf-null/README.md +0 -11
  286. package/docs/core/objects/pdf-null/classes/PdfNull.md +0 -259
  287. package/docs/core/objects/pdf-number/README.md +0 -12
  288. package/docs/core/objects/pdf-number/classes/PdfByteOffsetNumber.md +0 -369
  289. package/docs/core/objects/pdf-number/classes/PdfNumber.md +0 -345
  290. package/docs/core/objects/pdf-object/README.md +0 -11
  291. package/docs/core/objects/pdf-object/classes/PdfObject.md +0 -214
  292. package/docs/core/objects/pdf-object-reference/README.md +0 -11
  293. package/docs/core/objects/pdf-object-reference/classes/PdfObjectReference.md +0 -279
  294. package/docs/core/objects/pdf-start-xref/README.md +0 -11
  295. package/docs/core/objects/pdf-start-xref/classes/PdfStartXRef.md +0 -265
  296. package/docs/core/objects/pdf-stream/README.md +0 -23
  297. package/docs/core/objects/pdf-stream/classes/PdfObjStream.md +0 -699
  298. package/docs/core/objects/pdf-stream/classes/PdfStream.md +0 -570
  299. package/docs/core/objects/pdf-stream/classes/PdfXRefStream.md +0 -723
  300. package/docs/core/objects/pdf-stream/classes/PdfXRefStreamCompressedEntry.md +0 -51
  301. package/docs/core/objects/pdf-stream/type-aliases/PdfXRefStreamEntry.md +0 -9
  302. package/docs/core/objects/pdf-stream/type-aliases/PdfXRefStreamStandardEntry.md +0 -9
  303. package/docs/core/objects/pdf-stream/variables/PdfXRefStreamStandardEntry.md +0 -9
  304. package/docs/core/objects/pdf-string/README.md +0 -11
  305. package/docs/core/objects/pdf-string/classes/PdfString.md +0 -301
  306. package/docs/core/objects/pdf-trailer/README.md +0 -16
  307. package/docs/core/objects/pdf-trailer/classes/PdfTrailer.md +0 -271
  308. package/docs/core/objects/pdf-trailer/type-aliases/PdfTrailerDictionary.md +0 -9
  309. package/docs/core/objects/pdf-trailer/type-aliases/PdfTrailerEntries.md +0 -51
  310. package/docs/core/objects/pdf-xref-table/README.md +0 -13
  311. package/docs/core/objects/pdf-xref-table/classes/PdfXRefTable.md +0 -331
  312. package/docs/core/objects/pdf-xref-table/classes/PdfXRefTableEntry.md +0 -297
  313. package/docs/core/objects/pdf-xref-table/classes/PdfXRefTableSectionHeader.md +0 -277
  314. package/docs/core/parser/README.md +0 -11
  315. package/docs/core/parser/classes/Parser.md +0 -74
  316. package/docs/core/ref/README.md +0 -15
  317. package/docs/core/ref/classes/Ref.md +0 -149
  318. package/docs/core/ref/type-aliases/RefUpdateCallback.md +0 -33
  319. package/docs/core/serializer/README.md +0 -11
  320. package/docs/core/serializer/classes/PdfTokenSerializer.md +0 -106
  321. package/docs/core/streams/object-stream/README.md +0 -11
  322. package/docs/core/streams/object-stream/classes/PdfObjectStream.md +0 -69
  323. package/docs/core/tokeniser/README.md +0 -21
  324. package/docs/core/tokeniser/classes/PdfByteStreamTokeniser.md +0 -366
  325. package/docs/core/tokeniser/classes/PdfObjectTokeniser.md +0 -69
  326. package/docs/core/tokeniser/functions/objectToTokens.md +0 -25
  327. package/docs/core/tokeniser/functions/pdfObjectStreamTokeniser.md +0 -27
  328. package/docs/core/tokeniser/type-aliases/PdfTokeniser.md +0 -11
  329. package/docs/core/tokens/boolean-token/README.md +0 -11
  330. package/docs/core/tokens/boolean-token/classes/PdfBooleanToken.md +0 -139
  331. package/docs/core/tokens/byte-offset-token/README.md +0 -11
  332. package/docs/core/tokens/byte-offset-token/classes/PdfByteOffsetToken.md +0 -153
  333. package/docs/core/tokens/comment-token/README.md +0 -11
  334. package/docs/core/tokens/comment-token/classes/PdfCommentToken.md +0 -161
  335. package/docs/core/tokens/end-array-token/README.md +0 -11
  336. package/docs/core/tokens/end-array-token/classes/PdfEndArrayToken.md +0 -115
  337. package/docs/core/tokens/end-dictionary-token/README.md +0 -11
  338. package/docs/core/tokens/end-dictionary-token/classes/PdfEndDictionaryToken.md +0 -115
  339. package/docs/core/tokens/end-object-token/README.md +0 -11
  340. package/docs/core/tokens/end-object-token/classes/PdfEndObjectToken.md +0 -115
  341. package/docs/core/tokens/end-stream-token/README.md +0 -11
  342. package/docs/core/tokens/end-stream-token/classes/PdfEndStreamToken.md +0 -121
  343. package/docs/core/tokens/hexadecimal-token/README.md +0 -11
  344. package/docs/core/tokens/hexadecimal-token/classes/PdfHexadecimalToken.md +0 -127
  345. package/docs/core/tokens/name-token/README.md +0 -11
  346. package/docs/core/tokens/name-token/classes/PdfNameToken.md +0 -127
  347. package/docs/core/tokens/null-token/README.md +0 -11
  348. package/docs/core/tokens/null-token/classes/PdfNullToken.md +0 -115
  349. package/docs/core/tokens/number-token/README.md +0 -11
  350. package/docs/core/tokens/number-token/classes/PdfNumberToken.md +0 -271
  351. package/docs/core/tokens/object-reference-token/README.md +0 -11
  352. package/docs/core/tokens/object-reference-token/classes/PdfObjectReferenceToken.md +0 -137
  353. package/docs/core/tokens/start-array-token/README.md +0 -11
  354. package/docs/core/tokens/start-array-token/classes/PdfStartArrayToken.md +0 -115
  355. package/docs/core/tokens/start-dictionary-token/README.md +0 -11
  356. package/docs/core/tokens/start-dictionary-token/classes/PdfStartDictionaryToken.md +0 -115
  357. package/docs/core/tokens/start-object-token/README.md +0 -11
  358. package/docs/core/tokens/start-object-token/classes/PdfStartObjectToken.md +0 -147
  359. package/docs/core/tokens/start-stream-token/README.md +0 -11
  360. package/docs/core/tokens/start-stream-token/classes/PdfStartStreamToken.md +0 -147
  361. package/docs/core/tokens/start-xref-token/README.md +0 -11
  362. package/docs/core/tokens/start-xref-token/classes/PdfStartXRefToken.md +0 -115
  363. package/docs/core/tokens/stream-chunk-token/README.md +0 -11
  364. package/docs/core/tokens/stream-chunk-token/classes/PdfStreamChunkToken.md +0 -121
  365. package/docs/core/tokens/string-token/README.md +0 -11
  366. package/docs/core/tokens/string-token/classes/PdfStringToken.md +0 -127
  367. package/docs/core/tokens/token/README.md +0 -11
  368. package/docs/core/tokens/token/classes/PdfToken.md +0 -116
  369. package/docs/core/tokens/trailer-token/README.md +0 -11
  370. package/docs/core/tokens/trailer-token/classes/PdfTrailerToken.md +0 -127
  371. package/docs/core/tokens/whitespace-token/README.md +0 -11
  372. package/docs/core/tokens/whitespace-token/classes/PdfWhitespaceToken.md +0 -161
  373. package/docs/core/tokens/xref-table-entry-token/README.md +0 -11
  374. package/docs/core/tokens/xref-table-entry-token/classes/PdfXRefTableEntryToken.md +0 -157
  375. package/docs/core/tokens/xref-table-section-start-token/README.md +0 -11
  376. package/docs/core/tokens/xref-table-section-start-token/classes/PdfXRefTableSectionStartToken.md +0 -137
  377. package/docs/core/tokens/xref-table-start-token/README.md +0 -11
  378. package/docs/core/tokens/xref-table-start-token/classes/PdfXRefTableStartToken.md +0 -127
  379. package/docs/crypto/ciphers/aes128/README.md +0 -11
  380. package/docs/crypto/ciphers/aes128/functions/aes128.md +0 -39
  381. package/docs/crypto/ciphers/aes256/README.md +0 -11
  382. package/docs/crypto/ciphers/aes256/functions/aes256.md +0 -35
  383. package/docs/crypto/ciphers/rc4/README.md +0 -11
  384. package/docs/crypto/ciphers/rc4/functions/rc4.md +0 -35
  385. package/docs/crypto/constants/README.md +0 -11
  386. package/docs/crypto/constants/variables/DEFAULT_PADDING.md +0 -13
  387. package/docs/crypto/key-derivation/key-derivation/README.md +0 -13
  388. package/docs/crypto/key-derivation/key-derivation/functions/computeMasterKey.md +0 -57
  389. package/docs/crypto/key-derivation/key-derivation/functions/deriveObjectKey.md +0 -50
  390. package/docs/crypto/key-derivation/key-derivation/functions/padPassword.md +0 -33
  391. package/docs/crypto/key-derivation/key-derivation-aes256/README.md +0 -13
  392. package/docs/crypto/key-derivation/key-derivation-aes256/functions/computeAlgorithm2bHash.md +0 -45
  393. package/docs/crypto/key-derivation/key-derivation-aes256/functions/getFileKey.md +0 -66
  394. package/docs/crypto/key-derivation/key-derivation-aes256/functions/validatePasswordHash.md +0 -52
  395. package/docs/crypto/key-gen/key-gen-aes256/README.md +0 -12
  396. package/docs/crypto/key-gen/key-gen-aes256/functions/generateOandOe.md +0 -44
  397. package/docs/crypto/key-gen/key-gen-aes256/functions/generateUandUe.md +0 -38
  398. package/docs/crypto/key-gen/key-gen-rc4-128/README.md +0 -13
  399. package/docs/crypto/key-gen/key-gen-rc4-128/functions/computeOValueRc4_128.md +0 -38
  400. package/docs/crypto/key-gen/key-gen-rc4-128/functions/computeUValueRc4_128.md +0 -62
  401. package/docs/crypto/key-gen/key-gen-rc4-128/functions/decryptUserPasswordRc4_128.md +0 -38
  402. package/docs/crypto/key-gen/key-gen-rc4-40/README.md +0 -14
  403. package/docs/crypto/key-gen/key-gen-rc4-40/functions/computeEncryptionKeyRc4_40.md +0 -49
  404. package/docs/crypto/key-gen/key-gen-rc4-40/functions/computeORc4_40.md +0 -38
  405. package/docs/crypto/key-gen/key-gen-rc4-40/functions/computeURc4_40.md +0 -50
  406. package/docs/crypto/key-gen/key-gen-rc4-40/functions/decryptUserPasswordRc4_40.md +0 -38
  407. package/docs/crypto/types/README.md +0 -11
  408. package/docs/crypto/types/interfaces/Cipher.md +0 -39
  409. package/docs/crypto/utils/README.md +0 -13
  410. package/docs/crypto/utils/functions/int32ToLittleEndianBytes.md +0 -31
  411. package/docs/crypto/utils/functions/padPassword.md +0 -33
  412. package/docs/crypto/utils/functions/removePdfPasswordPadding.md +0 -32
  413. package/docs/filters/ascii85/README.md +0 -11
  414. package/docs/filters/ascii85/functions/ascii85.md +0 -27
  415. package/docs/filters/asciihex/README.md +0 -11
  416. package/docs/filters/asciihex/functions/asciiHex.md +0 -27
  417. package/docs/filters/flate/README.md +0 -11
  418. package/docs/filters/flate/functions/flate.md +0 -26
  419. package/docs/filters/lzw/README.md +0 -11
  420. package/docs/filters/lzw/functions/lzw.md +0 -27
  421. package/docs/filters/pass-through/README.md +0 -11
  422. package/docs/filters/pass-through/functions/passthroughFilter.md +0 -25
  423. package/docs/filters/runlength/README.md +0 -11
  424. package/docs/filters/runlength/functions/runLength.md +0 -27
  425. package/docs/filters/types/README.md +0 -19
  426. package/docs/filters/types/interfaces/PdfFilter.md +0 -39
  427. package/docs/filters/types/type-aliases/PdfStreamFilterType.md +0 -9
  428. package/docs/filters/types/variables/PDF_FILTER_TYPES.md +0 -51
  429. package/docs/index/README.md +0 -235
  430. package/docs/pdf/README.md +0 -31
  431. package/docs/pdf/errors/README.md +0 -11
  432. package/docs/pdf/errors/classes/FoundCompressedObjectError.md +0 -56
  433. package/docs/pdf/pdf-document/README.md +0 -11
  434. package/docs/pdf/pdf-document/classes/PdfDocument.md +0 -876
  435. package/docs/pdf/pdf-reader/README.md +0 -11
  436. package/docs/pdf/pdf-reader/classes/PdfReader.md +0 -82
  437. package/docs/pdf/pdf-revision/README.md +0 -11
  438. package/docs/pdf/pdf-revision/classes/PdfRevision.md +0 -508
  439. package/docs/pdf/pdf-xref-lookup/README.md +0 -11
  440. package/docs/pdf/pdf-xref-lookup/classes/PdfXrefLookup.md +0 -421
  441. package/docs/security/crypt-filters/aesv2/README.md +0 -11
  442. package/docs/security/crypt-filters/aesv2/classes/AesV2CryptFilter.md +0 -274
  443. package/docs/security/crypt-filters/aesv3/README.md +0 -11
  444. package/docs/security/crypt-filters/aesv3/classes/AesV3CryptFilter.md +0 -275
  445. package/docs/security/crypt-filters/base/README.md +0 -15
  446. package/docs/security/crypt-filters/base/classes/PdfCryptFilter.md +0 -221
  447. package/docs/security/crypt-filters/base/type-aliases/CryptFilterOptions.md +0 -43
  448. package/docs/security/crypt-filters/identity/README.md +0 -11
  449. package/docs/security/crypt-filters/identity/classes/IdentityCryptFilter.md +0 -249
  450. package/docs/security/crypt-filters/v2/README.md +0 -11
  451. package/docs/security/crypt-filters/v2/classes/V2CryptFilter.md +0 -279
  452. package/docs/security/handlers/base/README.md +0 -17
  453. package/docs/security/handlers/base/classes/PdfSecurityHandler.md +0 -384
  454. package/docs/security/handlers/base/classes/PdfStandardSecurityHandler.md +0 -694
  455. package/docs/security/handlers/base/type-aliases/PdfSecurityHandlerOptions.md +0 -27
  456. package/docs/security/handlers/base/type-aliases/PdfStandardSecurityHandlerOptions.md +0 -43
  457. package/docs/security/handlers/pubSec/README.md +0 -11
  458. package/docs/security/handlers/pubSec/classes/PdfPublicKeySecurityHandler.md +0 -503
  459. package/docs/security/handlers/utils/README.md +0 -14
  460. package/docs/security/handlers/utils/functions/createFromDictionary.md +0 -56
  461. package/docs/security/handlers/utils/functions/createFromEncryptionOptions.md +0 -40
  462. package/docs/security/handlers/utils/functions/createStandardSecurityHandlerFromDictionary.md +0 -55
  463. package/docs/security/handlers/utils/functions/getCryptFilter.md +0 -35
  464. package/docs/security/handlers/v1/README.md +0 -11
  465. package/docs/security/handlers/v1/classes/PdfV1SecurityHandler.md +0 -779
  466. package/docs/security/handlers/v2/README.md +0 -11
  467. package/docs/security/handlers/v2/classes/PdfV2SecurityHandler.md +0 -783
  468. package/docs/security/handlers/v4/README.md +0 -11
  469. package/docs/security/handlers/v4/classes/PdfV4SecurityHandler.md +0 -907
  470. package/docs/security/handlers/v5/README.md +0 -11
  471. package/docs/security/handlers/v5/classes/PdfV5SecurityHandler.md +0 -926
  472. package/docs/security/types/README.md +0 -19
  473. package/docs/security/types/type-aliases/CryptFilterType.md +0 -15
  474. package/docs/security/types/type-aliases/PdfCryptFilterDictionary.md +0 -12
  475. package/docs/security/types/type-aliases/PdfEncryptionAlgorithmOptions.md +0 -11
  476. package/docs/security/types/type-aliases/PdfEncryptionAlgorithmType.md +0 -17
  477. package/docs/security/types/type-aliases/PdfEncryptionDictionary.md +0 -13
  478. package/docs/security/types/type-aliases/PdfEncryptionDictionaryObject.md +0 -11
  479. package/docs/security/types/type-aliases/PdfEncryptionOptions.md +0 -90
  480. package/docs/security/types/type-aliases/PdfEncryptionRecipient.md +0 -24
  481. package/docs/security/types/type-aliases/PdfId.md +0 -13
  482. package/docs/signing/README.md +0 -127
  483. package/docs/signing/document-security-store/README.md +0 -19
  484. package/docs/signing/document-security-store/classes/PdfCertObject.md +0 -443
  485. package/docs/signing/document-security-store/classes/PdfCrlObject.md +0 -443
  486. package/docs/signing/document-security-store/classes/PdfDocumentSecurityStoreDictionary.md +0 -416
  487. package/docs/signing/document-security-store/classes/PdfDocumentSecurityStoreObject.md +0 -563
  488. package/docs/signing/document-security-store/classes/PdfOcspObject.md +0 -443
  489. package/docs/signing/document-security-store/type-aliases/PdfVriObject.md +0 -12
  490. package/docs/signing/signatures/README.md +0 -55
  491. package/docs/signing/signatures/adbe-pkcs7-detached/README.md +0 -11
  492. package/docs/signing/signatures/adbe-pkcs7-detached/classes/PdfAdbePkcs7DetachedSignatureObject.md +0 -669
  493. package/docs/signing/signatures/adbe-pkcs7-sha1/README.md +0 -11
  494. package/docs/signing/signatures/adbe-pkcs7-sha1/classes/PdfAdbePkcs7Sha1SignatureObject.md +0 -667
  495. package/docs/signing/signatures/adbe-x509-rsa-sha1/README.md +0 -11
  496. package/docs/signing/signatures/adbe-x509-rsa-sha1/classes/PdfAdbePkcsX509RsaSha1SignatureObject.md +0 -651
  497. package/docs/signing/signatures/base/README.md +0 -16
  498. package/docs/signing/signatures/base/classes/PdfSignatureDictionary.md +0 -420
  499. package/docs/signing/signatures/base/classes/PdfSignatureObject.md +0 -584
  500. package/docs/signing/signatures/base/type-aliases/PdfSignatureSignOptions.md +0 -51
  501. package/docs/signing/signatures/etsi-cades-detached/README.md +0 -11
  502. package/docs/signing/signatures/etsi-cades-detached/classes/PdfEtsiCadesDetachedSignatureObject.md +0 -693
  503. package/docs/signing/signatures/etsi-rfc3161/README.md +0 -11
  504. package/docs/signing/signatures/etsi-rfc3161/classes/PdfEtsiRfc3161SignatureObject.md +0 -614
  505. package/docs/signing/signer/README.md +0 -11
  506. package/docs/signing/signer/classes/PdfSigner.md +0 -58
  507. package/docs/signing/types/README.md +0 -16
  508. package/docs/signing/types/type-aliases/PdfSignatureDictionaryEntries.md +0 -95
  509. package/docs/signing/types/type-aliases/PdfSignatureSubType.md +0 -17
  510. package/docs/signing/types/type-aliases/PdfSignatureType.md +0 -14
  511. package/docs/signing/types/type-aliases/RevocationInfo.md +0 -43
  512. package/docs/signing/types/type-aliases/SignaturePolicyDocument.md +0 -35
  513. package/docs/signing/types/type-aliases/TimeStampAuthority.md +0 -35
  514. package/docs/signing/utils/README.md +0 -11
  515. package/docs/signing/utils/functions/fetchRevocationInfo.md +0 -70
  516. package/docs/types/README.md +0 -21
  517. package/docs/types/type-aliases/ByteArray.md +0 -9
  518. package/docs/types/type-aliases/ChangeType.md +0 -9
  519. package/docs/types/type-aliases/DecodeParms.md +0 -33
  520. package/docs/types/type-aliases/HashAlgorithm.md +0 -9
  521. package/docs/types/type-aliases/PdfEncryptionAlgorithm.md +0 -9
  522. package/docs/types/type-aliases/PdfPermissions.md +0 -63
  523. package/docs/types/type-aliases/PdfVersion.md +0 -9
  524. package/docs/types/variables/PERMISSION_FLAGS.md +0 -9
  525. package/docs/utils/IterableReadableStream/README.md +0 -11
  526. package/docs/utils/IterableReadableStream/classes/IterableReadableStream.md +0 -103
  527. package/docs/utils/algos/README.md +0 -28
  528. package/docs/utils/algos/functions/aes128CbcNoPaddingEncrypt.md +0 -43
  529. package/docs/utils/algos/functions/aes128cbcDecrypt.md +0 -47
  530. package/docs/utils/algos/functions/aes128cbcEncrypt.md +0 -47
  531. package/docs/utils/algos/functions/aes256CbcNoPaddingDecrypt.md +0 -43
  532. package/docs/utils/algos/functions/aes256CbcNoPaddingEncrypt.md +0 -43
  533. package/docs/utils/algos/functions/aes256cbcDecrypt.md +0 -43
  534. package/docs/utils/algos/functions/aes256cbcEncrypt.md +0 -43
  535. package/docs/utils/algos/functions/aes256ecbDecrypt.md +0 -41
  536. package/docs/utils/algos/functions/aes256ecbEncrypt.md +0 -41
  537. package/docs/utils/algos/functions/deflateData.md +0 -31
  538. package/docs/utils/algos/functions/getRandomBytes.md +0 -35
  539. package/docs/utils/algos/functions/hash.md +0 -41
  540. package/docs/utils/algos/functions/inflateData.md +0 -35
  541. package/docs/utils/algos/functions/md5.md +0 -31
  542. package/docs/utils/algos/functions/sha1.md +0 -31
  543. package/docs/utils/algos/functions/sha256.md +0 -31
  544. package/docs/utils/algos/functions/sha384.md +0 -31
  545. package/docs/utils/algos/functions/sha512.md +0 -31
  546. package/docs/utils/assert/README.md +0 -12
  547. package/docs/utils/assert/functions/assert.md +0 -39
  548. package/docs/utils/assert/functions/assertIfDefined.md +0 -46
  549. package/docs/utils/bytesToHex/README.md +0 -11
  550. package/docs/utils/bytesToHex/functions/bytesToHex.md +0 -31
  551. package/docs/utils/bytesToHexBytes/README.md +0 -11
  552. package/docs/utils/bytesToHexBytes/functions/bytesToHexBytes.md +0 -32
  553. package/docs/utils/bytesToString/README.md +0 -11
  554. package/docs/utils/bytesToString/functions/bytesToString.md +0 -31
  555. package/docs/utils/concatUint8Arrays/README.md +0 -11
  556. package/docs/utils/concatUint8Arrays/functions/concatUint8Arrays.md +0 -31
  557. package/docs/utils/escapeString/README.md +0 -11
  558. package/docs/utils/escapeString/functions/escapeString.md +0 -32
  559. package/docs/utils/hexBytesToBytes/README.md +0 -11
  560. package/docs/utils/hexBytesToBytes/functions/hexBytesToBytes.md +0 -33
  561. package/docs/utils/hexBytesToString/README.md +0 -11
  562. package/docs/utils/hexBytesToString/functions/hexBytesToString.md +0 -31
  563. package/docs/utils/hexToBytes/README.md +0 -11
  564. package/docs/utils/hexToBytes/functions/hexToBytes.md +0 -31
  565. package/docs/utils/padBytes/README.md +0 -11
  566. package/docs/utils/padBytes/functions/padBytes.md +0 -41
  567. package/docs/utils/predictors/README.md +0 -11
  568. package/docs/utils/predictors/classes/Predictor.md +0 -306
  569. package/docs/utils/replaceInBuffer/README.md +0 -11
  570. package/docs/utils/replaceInBuffer/functions/replaceInBuffer.md +0 -65
  571. package/docs/utils/stringToBytes/README.md +0 -11
  572. package/docs/utils/stringToBytes/functions/stringToBytes.md +0 -32
  573. package/docs/utils/stringToHexBytes/README.md +0 -11
  574. package/docs/utils/stringToHexBytes/functions/stringToHexBytes.md +0 -33
  575. package/docs/utils/unescapeString/README.md +0 -11
  576. package/docs/utils/unescapeString/functions/unescapeString.md +0 -34
  577. package/examples/001-create-pdf.ts +0 -112
  578. package/examples/002-create-encrypted-pdf.ts +0 -121
  579. package/examples/003-sign-pdf.ts +0 -347
  580. package/examples/004-incremental-update.ts +0 -206
  581. package/examples/005-modify-acroform.ts +0 -374
  582. package/examples/006-tokeniser-example.ts +0 -131
  583. package/examples/007-decoder-example.ts +0 -197
  584. package/packages/pdf-lite/README.md +0 -3
  585. package/packages/pdf-lite/node_modules/.bin/playwright +0 -16
  586. package/packages/pdf-lite/node_modules/.bin/tsc +0 -16
  587. package/packages/pdf-lite/node_modules/.bin/tsserver +0 -16
  588. package/packages/pdf-lite/node_modules/.bin/vitest +0 -16
  589. package/packages/pdf-lite/package.json +0 -68
  590. package/packages/pdf-lite/scripts/create-encryption-tests.sh +0 -41
  591. package/packages/pdf-lite/scripts/gen-signing-keys.sh +0 -290
  592. package/packages/pdf-lite/scripts/generate-all-signing-keys.sh +0 -70
  593. package/packages/pdf-lite/src/core/decoder.ts +0 -454
  594. package/packages/pdf-lite/src/core/index.ts +0 -2
  595. package/packages/pdf-lite/src/core/objects/pdf-array.ts +0 -54
  596. package/packages/pdf-lite/src/core/objects/pdf-boolean.ts +0 -19
  597. package/packages/pdf-lite/src/core/objects/pdf-comment.ts +0 -50
  598. package/packages/pdf-lite/src/core/objects/pdf-date.ts +0 -74
  599. package/packages/pdf-lite/src/core/objects/pdf-dictionary.ts +0 -171
  600. package/packages/pdf-lite/src/core/objects/pdf-hexadecimal.ts +0 -54
  601. package/packages/pdf-lite/src/core/objects/pdf-indirect-object.ts +0 -137
  602. package/packages/pdf-lite/src/core/objects/pdf-name.ts +0 -19
  603. package/packages/pdf-lite/src/core/objects/pdf-null.ts +0 -15
  604. package/packages/pdf-lite/src/core/objects/pdf-number.ts +0 -98
  605. package/packages/pdf-lite/src/core/objects/pdf-object-reference.ts +0 -30
  606. package/packages/pdf-lite/src/core/objects/pdf-object.ts +0 -107
  607. package/packages/pdf-lite/src/core/objects/pdf-start-xref.ts +0 -39
  608. package/packages/pdf-lite/src/core/objects/pdf-stream.ts +0 -687
  609. package/packages/pdf-lite/src/core/objects/pdf-string.ts +0 -38
  610. package/packages/pdf-lite/src/core/objects/pdf-trailer.ts +0 -57
  611. package/packages/pdf-lite/src/core/objects/pdf-xref-table.ts +0 -264
  612. package/packages/pdf-lite/src/core/streams/object-stream.ts +0 -20
  613. package/packages/pdf-lite/src/core/tokeniser.ts +0 -687
  614. package/packages/pdf-lite/src/core/tokens/boolean-token.ts +0 -20
  615. package/packages/pdf-lite/src/core/tokens/byte-offset-token.ts +0 -20
  616. package/packages/pdf-lite/src/core/tokens/comment-token.ts +0 -32
  617. package/packages/pdf-lite/src/core/tokens/end-array-token.ts +0 -10
  618. package/packages/pdf-lite/src/core/tokens/end-dictionary-token.ts +0 -10
  619. package/packages/pdf-lite/src/core/tokens/end-object-token.ts +0 -10
  620. package/packages/pdf-lite/src/core/tokens/end-stream-token.ts +0 -11
  621. package/packages/pdf-lite/src/core/tokens/hexadecimal-token.ts +0 -22
  622. package/packages/pdf-lite/src/core/tokens/name-token.ts +0 -19
  623. package/packages/pdf-lite/src/core/tokens/null-token.ts +0 -9
  624. package/packages/pdf-lite/src/core/tokens/number-token.ts +0 -164
  625. package/packages/pdf-lite/src/core/tokens/object-reference-token.ts +0 -24
  626. package/packages/pdf-lite/src/core/tokens/start-array-token.ts +0 -10
  627. package/packages/pdf-lite/src/core/tokens/start-dictionary-token.ts +0 -10
  628. package/packages/pdf-lite/src/core/tokens/start-object-token.ts +0 -28
  629. package/packages/pdf-lite/src/core/tokens/start-stream-token.ts +0 -52
  630. package/packages/pdf-lite/src/core/tokens/start-xref-token.ts +0 -10
  631. package/packages/pdf-lite/src/core/tokens/stream-chunk-token.ts +0 -8
  632. package/packages/pdf-lite/src/core/tokens/string-token.ts +0 -17
  633. package/packages/pdf-lite/src/core/tokens/token.ts +0 -43
  634. package/packages/pdf-lite/src/core/tokens/trailer-token.ts +0 -12
  635. package/packages/pdf-lite/src/core/tokens/whitespace-token.ts +0 -43
  636. package/packages/pdf-lite/src/core/tokens/xref-table-entry-token.ts +0 -65
  637. package/packages/pdf-lite/src/core/tokens/xref-table-section-start-token.ts +0 -31
  638. package/packages/pdf-lite/src/core/tokens/xref-table-start-token.ts +0 -13
  639. package/packages/pdf-lite/src/crypto/key-derivation/key-derivation-aes256.ts +0 -213
  640. package/packages/pdf-lite/src/crypto/types.ts +0 -6
  641. package/packages/pdf-lite/src/filters/lzw.ts +0 -144
  642. package/packages/pdf-lite/src/index.ts +0 -4
  643. package/packages/pdf-lite/src/pdf/index.ts +0 -4
  644. package/packages/pdf-lite/src/pdf/pdf-xref-lookup.ts +0 -527
  645. package/packages/pdf-lite/src/security/handlers/base.ts +0 -625
  646. package/packages/pdf-lite/src/security/handlers/pubSec.ts +0 -413
  647. package/packages/pdf-lite/src/security/handlers/utils.ts +0 -304
  648. package/packages/pdf-lite/src/security/handlers/v1.ts +0 -225
  649. package/packages/pdf-lite/src/security/handlers/v4.ts +0 -379
  650. package/packages/pdf-lite/src/security/handlers/v5.ts +0 -298
  651. package/packages/pdf-lite/src/signing/document-security-store.ts +0 -224
  652. package/packages/pdf-lite/src/signing/index.ts +0 -3
  653. package/packages/pdf-lite/src/signing/signatures/adbe-pkcs7-detached.ts +0 -154
  654. package/packages/pdf-lite/src/signing/signatures/adbe-pkcs7-sha1.ts +0 -161
  655. package/packages/pdf-lite/src/signing/signatures/adbe-x509-rsa-sha1.ts +0 -106
  656. package/packages/pdf-lite/src/signing/signatures/base.ts +0 -229
  657. package/packages/pdf-lite/src/signing/signatures/etsi-cades-detached.ts +0 -229
  658. package/packages/pdf-lite/src/signing/signatures/index.ts +0 -6
  659. package/packages/pdf-lite/src/signing/signer.ts +0 -120
  660. package/packages/pdf-lite/src/types.ts +0 -44
  661. package/packages/pdf-lite/src/utils/escapeString.ts +0 -49
  662. package/packages/pdf-lite/src/utils/unescapeString.ts +0 -123
  663. package/packages/pdf-lite/test/acceptance/__snapshots__/versions.node.test.ts.snap +0 -60766
  664. package/packages/pdf-lite/test/acceptance/fixtures/1.3/basic.pdf +0 -0
  665. package/packages/pdf-lite/test/acceptance/fixtures/1.4/basic-aes-128.pdf +0 -0
  666. package/packages/pdf-lite/test/acceptance/fixtures/1.4/basic-aes-256.pdf +0 -0
  667. package/packages/pdf-lite/test/acceptance/fixtures/1.4/basic-rc4-128.pdf +0 -0
  668. package/packages/pdf-lite/test/acceptance/fixtures/1.4/basic-rc4-40.pdf +0 -0
  669. package/packages/pdf-lite/test/acceptance/fixtures/1.4/basic.pdf +0 -0
  670. package/packages/pdf-lite/test/acceptance/fixtures/1.5/basic.pdf +0 -0
  671. package/packages/pdf-lite/test/acceptance/fixtures/1.6/basic.pdf +0 -0
  672. package/packages/pdf-lite/test/acceptance/fixtures/1.7/basic.pdf +0 -0
  673. package/packages/pdf-lite/test/acceptance/fixtures/2.0/basic-aes-128.pdf +0 -43
  674. package/packages/pdf-lite/test/acceptance/fixtures/2.0/basic-aes-256.pdf +0 -43
  675. package/packages/pdf-lite/test/acceptance/fixtures/2.0/basic-rc4-128.pdf +0 -43
  676. package/packages/pdf-lite/test/acceptance/fixtures/2.0/basic-rc4-40.pdf +0 -44
  677. package/packages/pdf-lite/test/acceptance/fixtures/2.0/basic.pdf +0 -79
  678. package/packages/pdf-lite/test/acceptance/versions.node.test.ts +0 -41
  679. package/packages/pdf-lite/test/unit/__snapshots__/decoder.node.test.ts.snap +0 -86947
  680. package/packages/pdf-lite/test/unit/__snapshots__/tokeniser.node.test.ts.snap +0 -131829
  681. package/packages/pdf-lite/test/unit/ciphers.test.ts +0 -61
  682. package/packages/pdf-lite/test/unit/decoder.node.test.ts +0 -21
  683. package/packages/pdf-lite/test/unit/decoder.test.ts +0 -567
  684. package/packages/pdf-lite/test/unit/filters.test.ts +0 -67
  685. package/packages/pdf-lite/test/unit/fixtures/basic.pdf +0 -0
  686. package/packages/pdf-lite/test/unit/fixtures/encrypted_v1/basic-aes-128.pdf +0 -0
  687. package/packages/pdf-lite/test/unit/fixtures/encrypted_v1/basic-aes-256.pdf +0 -0
  688. package/packages/pdf-lite/test/unit/fixtures/encrypted_v1/basic-rc4-128.pdf +0 -0
  689. package/packages/pdf-lite/test/unit/fixtures/encrypted_v1/basic-rc4-40.pdf +0 -43
  690. package/packages/pdf-lite/test/unit/fixtures/protectedAdobeLivecycle.pdf +0 -0
  691. package/packages/pdf-lite/test/unit/fixtures/rsa-2048/index.ts +0 -187
  692. package/packages/pdf-lite/test/unit/fixtures/template.pdf +0 -0
  693. package/packages/pdf-lite/test/unit/incremental-update.test.ts +0 -0
  694. package/packages/pdf-lite/test/unit/objects.test.ts +0 -0
  695. package/packages/pdf-lite/test/unit/pdf-document-signing.test.ts +0 -0
  696. package/packages/pdf-lite/test/unit/pdf-revision.test.ts +0 -195
  697. package/packages/pdf-lite/test/unit/pdf.browser.test.ts +0 -0
  698. package/packages/pdf-lite/test/unit/predictors.test.ts +0 -226
  699. package/packages/pdf-lite/test/unit/ref.test.ts +0 -158
  700. package/packages/pdf-lite/test/unit/security-handlers.test.ts +0 -645
  701. package/packages/pdf-lite/test/unit/serializer.test.ts +0 -81
  702. package/packages/pdf-lite/test/unit/signature-objects.test.ts +0 -814
  703. package/packages/pdf-lite/test/unit/string-escaping.test.ts +0 -84
  704. package/packages/pdf-lite/test/unit/tokeniser.node.test.ts +0 -38
  705. package/packages/pdf-lite/test/unit/tokeniser.test.ts +0 -1213
  706. package/packages/pdf-lite/test/unit/utils.test.ts +0 -248
  707. package/packages/pdf-lite/test/unit/xref-lookup.test.ts +0 -72
  708. package/packages/pdf-lite/tsconfig.json +0 -4
  709. package/packages/pdf-lite/tsconfig.prod.json +0 -8
  710. package/packages/pdf-lite/typedoc.json +0 -14
  711. package/packages/pdf-lite/vitest.config.ts +0 -43
  712. package/pnpm-workspace.yaml +0 -2
  713. package/renovate.json +0 -34
  714. package/scripts/build-examples.ts +0 -30
  715. package/scripts/bump-version.sh +0 -56
  716. package/scripts/gen-html-docs.sh +0 -21
  717. package/scripts/gen-md-docs.sh +0 -15
  718. package/scripts/prepare-release.sh +0 -33
  719. package/tsconfig.json +0 -22
  720. package/tsconfig.prod.json +0 -12
  721. package/typedoc.json +0 -34
@@ -0,0 +1,92 @@
1
+ import { PdfCommentToken } from '../core/tokens/comment-token';
2
+ import { PdfHexadecimalToken } from '../core/tokens/hexadecimal-token';
3
+ import { PdfNameToken } from '../core/tokens/name-token';
4
+ import { concatUint8Arrays } from '../utils/concatUint8Arrays';
5
+ import { PdfDocumentSecurityStoreObject } from './document-security-store';
6
+ import { PdfSignatureObject } from './signatures';
7
+ /**
8
+ * Handles digital signing operations for PDF documents.
9
+ * Processes signature objects and optionally stores revocation information in the DSS.
10
+ *
11
+ * @example
12
+ * ```typescript
13
+ * const signer = new PdfSigner()
14
+ * const signedDoc = await signer.sign(document)
15
+ * ```
16
+ */
17
+ export class PdfSigner {
18
+ /** Whether to use the Document Security Store for revocation information. */
19
+ useDocumentSecurityStore = true;
20
+ /**
21
+ * Signs all signature objects in the document.
22
+ * Computes byte ranges, generates signatures, and optionally adds revocation info to DSS.
23
+ *
24
+ * @param document - The PDF document to sign.
25
+ * @returns The signed document.
26
+ */
27
+ async sign(document) {
28
+ const signatures = [
29
+ ...document.objects.filter((x) => x instanceof PdfSignatureObject),
30
+ ];
31
+ const dss = this.useDocumentSecurityStore
32
+ ? (document.objects.find((x) => x instanceof PdfDocumentSecurityStoreObject) ?? new PdfDocumentSecurityStoreObject(document))
33
+ : undefined;
34
+ for (let i = 0; i < signatures.length; i++) {
35
+ const signature = signatures[i];
36
+ const tokens = document.tokensWithObjects();
37
+ const signableTokens = [];
38
+ let contentsOffset = 0;
39
+ let contentsLength = 0;
40
+ let byteCount = 0;
41
+ let seen = 0;
42
+ for (let j = 0; j < tokens.length; j++) {
43
+ let { token, object } = tokens[j];
44
+ if (!(object instanceof PdfSignatureObject)) {
45
+ signableTokens.push(token);
46
+ }
47
+ else if (!(token instanceof PdfNameToken) ||
48
+ token.name !== 'Contents') {
49
+ signableTokens.push(token);
50
+ }
51
+ else {
52
+ while (token instanceof PdfHexadecimalToken === false) {
53
+ byteCount += token.byteLength;
54
+ token = tokens[++j].token;
55
+ }
56
+ const contentsToken = token;
57
+ const tokenStr = contentsToken.toString();
58
+ const start = tokenStr.indexOf('<');
59
+ contentsOffset = byteCount + start;
60
+ contentsLength = tokenStr.indexOf('>') - start + 1;
61
+ seen++;
62
+ }
63
+ byteCount += token.byteLength;
64
+ if (seen === i + 1 &&
65
+ PdfCommentToken.isEofCommentToken(token)) {
66
+ break;
67
+ }
68
+ }
69
+ const byteRange = [
70
+ 0,
71
+ contentsOffset,
72
+ contentsOffset + contentsLength,
73
+ byteCount - (contentsOffset + contentsLength),
74
+ ];
75
+ signature.setByteRange(byteRange);
76
+ const allBytes = document.toBytes();
77
+ const toSign = concatUint8Arrays(allBytes.slice(byteRange[0], byteRange[1]), allBytes.slice(byteRange[2], byteRange[3] + byteRange[2]));
78
+ const { signedBytes, revocationInfo } = await signature.sign({
79
+ bytes: toSign,
80
+ embedRevocationInfo: !Boolean(dss),
81
+ });
82
+ signature.setSignedBytes(signedBytes);
83
+ if (dss && revocationInfo) {
84
+ await dss.addRevocationInfo(revocationInfo);
85
+ }
86
+ }
87
+ if (dss && !dss.isEmpty()) {
88
+ await document.setDocumentSecurityStore(dss);
89
+ }
90
+ return document;
91
+ }
92
+ }
@@ -1,12 +1,11 @@
1
- import { HashAlgorithm } from 'pki-lite/core/crypto/index.js'
2
- import { PdfDictionary } from '../core/objects/pdf-dictionary'
3
- import { PdfName } from '../core/objects/pdf-name'
4
- import { PdfHexadecimal } from '../core/objects/pdf-hexadecimal'
5
- import { PdfArray } from '../core/objects/pdf-array'
6
- import { PdfNumber } from '../core/objects/pdf-number'
7
- import { PdfString } from '../core/objects/pdf-string'
8
- import { ByteArray } from '../types'
9
-
1
+ import { HashAlgorithm } from 'pki-lite/core/crypto/index.js';
2
+ import { PdfDictionary } from '../core/objects/pdf-dictionary';
3
+ import { PdfName } from '../core/objects/pdf-name';
4
+ import { PdfHexadecimal } from '../core/objects/pdf-hexadecimal';
5
+ import { PdfArray } from '../core/objects/pdf-array';
6
+ import { PdfNumber } from '../core/objects/pdf-number';
7
+ import { PdfString } from '../core/objects/pdf-string';
8
+ import { ByteArray } from '../types';
10
9
  /**
11
10
  * PDF signature subfilter types defining the signature format.
12
11
  * - 'adbe.pkcs7.detached': PKCS#7 detached signature
@@ -15,72 +14,65 @@ import { ByteArray } from '../types'
15
14
  * - 'ETSI.CAdES.detached': CAdES detached signature
16
15
  * - 'ETSI.RFC3161': RFC 3161 timestamp signature
17
16
  */
18
- export type PdfSignatureSubType =
19
- | 'adbe.pkcs7.detached'
20
- | 'adbe.pkcs7.sha1'
21
- | 'adbe.x509.rsa_sha1'
22
- | 'ETSI.CAdES.detached'
23
- | 'ETSI.RFC3161'
24
-
17
+ export type PdfSignatureSubType = 'adbe.pkcs7.detached' | 'adbe.pkcs7.sha1' | 'adbe.x509.rsa_sha1' | 'ETSI.CAdES.detached' | 'ETSI.RFC3161';
25
18
  /**
26
19
  * PDF signature type.
27
20
  * - 'Sig': Standard digital signature
28
21
  * - 'DocTimeStamp': Document timestamp
29
22
  */
30
- export type PdfSignatureType = 'Sig' | 'DocTimeStamp'
31
-
23
+ export type PdfSignatureType = 'Sig' | 'DocTimeStamp';
32
24
  /**
33
25
  * Entries in a PDF signature dictionary.
34
26
  */
35
27
  export type PdfSignatureDictionaryEntries = {
36
- Type: PdfName<PdfSignatureType>
37
- Filter: PdfName
38
- SubFilter: PdfName<PdfSignatureSubType>
39
- Contents: PdfHexadecimal
40
- ByteRange: PdfArray<PdfNumber>
41
- Reason?: PdfString
42
- M?: PdfString
43
- Name?: PdfString
44
- Reference?: PdfArray<PdfDictionary>
45
- Location?: PdfString
46
- ContactInfo?: PdfString
47
- V?: PdfName<'2.2'>
48
- Changes?: PdfArray<PdfNumber>
49
- Cert?: PdfArray<PdfString | PdfHexadecimal> | PdfString | PdfHexadecimal
50
- }
51
-
28
+ Type: PdfName<PdfSignatureType>;
29
+ Filter: PdfName;
30
+ SubFilter: PdfName<PdfSignatureSubType>;
31
+ Contents: PdfHexadecimal;
32
+ ByteRange: PdfArray<PdfNumber>;
33
+ Reason?: PdfString;
34
+ M?: PdfString;
35
+ Name?: PdfString;
36
+ Reference?: PdfArray<PdfDictionary>;
37
+ Location?: PdfString;
38
+ ContactInfo?: PdfString;
39
+ V?: PdfName<'2.2'>;
40
+ Changes?: PdfArray<PdfNumber>;
41
+ Cert?: PdfArray<PdfString | PdfHexadecimal> | PdfString | PdfHexadecimal;
42
+ };
52
43
  /**
53
44
  * Configuration for a timestamp authority (TSA).
54
45
  */
55
46
  export type TimeStampAuthority = {
56
47
  /** URL of the timestamp authority service. */
57
- url: string
48
+ url: string;
58
49
  /** Optional username for authentication. */
59
- username?: string
50
+ username?: string;
60
51
  /** Optional password for authentication. */
61
- password?: string
62
- }
63
-
52
+ password?: string;
53
+ };
64
54
  /**
65
55
  * Revocation information for certificate validation.
66
56
  */
67
57
  export type RevocationInfo = {
68
58
  /** Certificate Revocation Lists (CRLs). */
69
- crls?: ByteArray[]
59
+ crls?: ByteArray[];
70
60
  /** OCSP responses. */
71
- ocsps?: ByteArray[]
61
+ ocsps?: ByteArray[];
72
62
  /** Other revocation information types. */
73
- otherRevInfo?: { type: string; value: ByteArray }[]
74
- }
75
-
63
+ otherRevInfo?: {
64
+ type: string;
65
+ value: ByteArray;
66
+ }[];
67
+ };
76
68
  /**
77
69
  * Signature policy document reference for CAdES signatures.
78
70
  */
79
71
  export type SignaturePolicyDocument = {
80
72
  /** Object Identifier for the signature policy. */
81
- oid: string
73
+ oid: string;
82
74
  /** Hash of the policy document. */
83
- hash: ByteArray
75
+ hash: ByteArray;
84
76
  /** Hash algorithm used for the policy document. */
85
- hashAlgorithm: HashAlgorithm
86
- }
77
+ hashAlgorithm: HashAlgorithm;
78
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,32 @@
1
+ import { RevocationInfo } from './types';
2
+ import { ByteArray } from '../types';
3
+ /**
4
+ * Fetches revocation information (CRLs and OCSPs) for certificates.
5
+ * Uses the certificate's embedded URLs to retrieve revocation data.
6
+ *
7
+ * @param options - Configuration for fetching revocation info.
8
+ * @param options.certificates - Array of DER-encoded certificates.
9
+ * @param options.issuerCertificate - Optional issuer certificate for OCSP requests.
10
+ * @param options.ocspUrls - Optional additional OCSP URLs.
11
+ * @param options.crlUrls - Optional additional CRL URLs.
12
+ * @param options.retrieveOcsps - Whether to fetch OCSP responses (default: true).
13
+ * @param options.retrieveCrls - Whether to fetch CRLs (default: true).
14
+ * @returns The fetched revocation information.
15
+ *
16
+ * @example
17
+ * ```typescript
18
+ * const revInfo = await fetchRevocationInfo({
19
+ * certificates: [certBytes],
20
+ * retrieveCrls: true,
21
+ * retrieveOcsps: true
22
+ * })
23
+ * ```
24
+ */
25
+ export declare function fetchRevocationInfo(options: {
26
+ certificates: ByteArray[];
27
+ issuerCertificate?: ByteArray;
28
+ ocspUrls?: string[];
29
+ crlUrls?: string[];
30
+ retrieveOcsps?: boolean;
31
+ retrieveCrls?: boolean;
32
+ }): Promise<RevocationInfo>;
@@ -1,7 +1,4 @@
1
- import { Certificate } from 'pki-lite/x509/Certificate'
2
- import { RevocationInfo } from './types'
3
- import { ByteArray } from '../types'
4
-
1
+ import { Certificate } from 'pki-lite/x509/Certificate';
5
2
  /**
6
3
  * Fetches revocation information (CRLs and OCSPs) for certificates.
7
4
  * Uses the certificate's embedded URLs to retrieve revocation data.
@@ -24,48 +21,32 @@ import { ByteArray } from '../types'
24
21
  * })
25
22
  * ```
26
23
  */
27
- export async function fetchRevocationInfo(options: {
28
- certificates: ByteArray[]
29
- issuerCertificate?: ByteArray
30
- ocspUrls?: string[] // URLs to fetch OCSPs from
31
- crlUrls?: string[] // URLs to fetch CRLs from
32
- retrieveOcsps?: boolean // Whether to fetch OCSPs
33
- retrieveCrls?: boolean // Whether to fetch CRLs
34
- }): Promise<RevocationInfo> {
35
- const { certificates, retrieveCrls = true, retrieveOcsps = true } = options
36
-
37
- const crls: ByteArray[] = []
38
- const ocsps: ByteArray[] = []
39
-
24
+ export async function fetchRevocationInfo(options) {
25
+ const { certificates, retrieveCrls = true, retrieveOcsps = true } = options;
26
+ const crls = [];
27
+ const ocsps = [];
40
28
  for (const certificateBytes of certificates) {
41
- const certificate = Certificate.fromDer(certificateBytes)
42
-
29
+ const certificate = Certificate.fromDer(certificateBytes);
43
30
  if (retrieveCrls) {
44
- const crl = await certificate.requestCrl()
45
-
31
+ const crl = await certificate.requestCrl();
46
32
  if (crl) {
47
- crls.push(crl.toDer())
33
+ crls.push(crl.toDer());
48
34
  }
49
35
  }
50
-
51
36
  if (retrieveOcsps) {
52
37
  const ocsp = await certificate.requestOcsp({
53
38
  issuerCertificate: options.issuerCertificate
54
- ? Certificate.fromDer(
55
- options.issuerCertificate as ByteArray,
56
- )
39
+ ? Certificate.fromDer(options.issuerCertificate)
57
40
  : undefined,
58
- })
59
-
41
+ });
60
42
  if (ocsp) {
61
- ocsps.push(ocsp.toDer())
43
+ ocsps.push(ocsp.toDer());
62
44
  }
63
45
  }
64
46
  }
65
-
66
47
  return {
67
48
  crls,
68
49
  ocsps,
69
50
  otherRevInfo: [],
70
- }
51
+ };
71
52
  }
@@ -0,0 +1,23 @@
1
+ export type ByteArray = Uint8Array<ArrayBuffer>;
2
+ export type HashAlgorithm = 'SHA-1' | 'SHA-256' | 'SHA-384' | 'SHA-512';
3
+ export type ChangeType = 'add' | 'update' | 'delete';
4
+ export type PdfEncryptionAlgorithm = 'RC4-40' | 'RC4-128' | 'AES-128-CBC' | 'AES-256-CBC' | 'none';
5
+ export type DecodeParms = {
6
+ Predictor?: number;
7
+ Columns?: number;
8
+ Colors?: number;
9
+ BitsPerComponent?: number;
10
+ };
11
+ export type PdfPermissions = {
12
+ all?: boolean;
13
+ print?: boolean;
14
+ modify?: boolean;
15
+ copy?: boolean;
16
+ annotate?: boolean;
17
+ fill?: boolean;
18
+ extract?: boolean;
19
+ assemble?: boolean;
20
+ printHighQuality?: boolean;
21
+ };
22
+ export declare const PERMISSION_FLAGS: Record<keyof PdfPermissions, number>;
23
+ export type PdfVersion = 1.3 | 1.4 | 1.5 | 1.6 | 1.7 | 2.0;
package/dist/types.js ADDED
@@ -0,0 +1,11 @@
1
+ export const PERMISSION_FLAGS = {
2
+ all: 0xffffffff,
3
+ print: 0x00000004,
4
+ modify: 0x00000008,
5
+ copy: 0x00000010,
6
+ annotate: 0x00000020,
7
+ fill: 0x00000100,
8
+ extract: 0x00000200,
9
+ assemble: 0x00000400,
10
+ printHighQuality: 0x00000800,
11
+ };
@@ -0,0 +1,24 @@
1
+ /**
2
+ * A ReadableStream that supports async iteration.
3
+ * Extends the standard ReadableStream with Symbol.asyncIterator support.
4
+ *
5
+ * @typeParam T - The type of chunks yielded by the stream.
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * const stream = new IterableReadableStream<Uint8Array>(...)
10
+ * for await (const chunk of stream) {
11
+ * console.log(chunk)
12
+ * }
13
+ * ```
14
+ */
15
+ export declare class IterableReadableStream<T> extends ReadableStream<T> {
16
+ /**
17
+ * Returns an async iterator for the stream.
18
+ *
19
+ * @returns An async iterator that yields chunks from the stream.
20
+ */
21
+ [Symbol.asyncIterator](): {
22
+ next(): Promise<IteratorResult<T>>;
23
+ };
24
+ }
@@ -12,19 +12,19 @@
12
12
  * }
13
13
  * ```
14
14
  */
15
- export class IterableReadableStream<T> extends ReadableStream<T> {
15
+ export class IterableReadableStream extends ReadableStream {
16
16
  /**
17
17
  * Returns an async iterator for the stream.
18
18
  *
19
19
  * @returns An async iterator that yields chunks from the stream.
20
20
  */
21
21
  [Symbol.asyncIterator]() {
22
- const reader = this.getReader()
22
+ const reader = this.getReader();
23
23
  return {
24
- async next(): Promise<IteratorResult<T>> {
25
- const result = await reader.read()
26
- return result as IteratorResult<T>
24
+ async next() {
25
+ const result = await reader.read();
26
+ return result;
27
27
  },
28
- }
28
+ };
29
29
  }
30
30
  }
@@ -0,0 +1,242 @@
1
+ import 'pki-lite-crypto-extended';
2
+ import { ByteArray } from '../types.js';
3
+ /**
4
+ * Computes the SHA-1 hash of the input data.
5
+ *
6
+ * @param input - The data to hash.
7
+ * @returns A promise that resolves to the SHA-1 hash as a byte array.
8
+ *
9
+ * @example
10
+ * ```typescript
11
+ * const hash = await sha1(new Uint8Array([1, 2, 3]))
12
+ * ```
13
+ */
14
+ export declare function sha1(input: ByteArray): Promise<ByteArray>;
15
+ /**
16
+ * Computes the SHA-256 hash of the input data.
17
+ *
18
+ * @param input - The data to hash.
19
+ * @returns A promise that resolves to the SHA-256 hash as a byte array.
20
+ *
21
+ * @example
22
+ * ```typescript
23
+ * const hash = await sha256(new Uint8Array([1, 2, 3]))
24
+ * ```
25
+ */
26
+ export declare function sha256(input: ByteArray): Promise<ByteArray>;
27
+ /**
28
+ * Computes the SHA-384 hash of the input data.
29
+ *
30
+ * @param input - The data to hash.
31
+ * @returns A promise that resolves to the SHA-384 hash as a byte array.
32
+ *
33
+ * @example
34
+ * ```typescript
35
+ * const hash = await sha384(new Uint8Array([1, 2, 3]))
36
+ * ```
37
+ */
38
+ export declare function sha384(input: ByteArray): Promise<ByteArray>;
39
+ /**
40
+ * Computes the SHA-512 hash of the input data.
41
+ *
42
+ * @param input - The data to hash.
43
+ * @returns A promise that resolves to the SHA-512 hash as a byte array.
44
+ *
45
+ * @example
46
+ * ```typescript
47
+ * const hash = await sha512(new Uint8Array([1, 2, 3]))
48
+ * ```
49
+ */
50
+ export declare function sha512(input: ByteArray): Promise<ByteArray>;
51
+ /**
52
+ * Computes the MD5 hash of the input data.
53
+ *
54
+ * @param input - The data to hash.
55
+ * @returns A promise that resolves to the MD5 hash as a byte array.
56
+ *
57
+ * @example
58
+ * ```typescript
59
+ * const hash = await md5(new Uint8Array([1, 2, 3]))
60
+ * ```
61
+ */
62
+ export declare function md5(input: ByteArray): Promise<ByteArray>;
63
+ /**
64
+ * Computes a cryptographic hash of the input data using the specified algorithm.
65
+ *
66
+ * @param input - The data to hash.
67
+ * @param algorithm - The hash algorithm to use. Defaults to 'SHA-256'.
68
+ * @returns A promise that resolves to the hash as a byte array.
69
+ * @throws Error if an unsupported hash algorithm is specified.
70
+ *
71
+ * @example
72
+ * ```typescript
73
+ * const hash = await hash(data, 'SHA-256')
74
+ * ```
75
+ */
76
+ export declare function hash(input: ByteArray, algorithm?: 'SHA-256' | 'SHA-384' | 'SHA-512' | 'MD5' | 'SHA-1'): Promise<ByteArray>;
77
+ /**
78
+ * Generates cryptographically secure random bytes.
79
+ *
80
+ * @param length - The number of random bytes to generate.
81
+ * @returns A byte array containing random bytes.
82
+ * @throws Error if length is not a positive integer.
83
+ *
84
+ * @example
85
+ * ```typescript
86
+ * const randomBytes = getRandomBytes(16) // 16 random bytes
87
+ * ```
88
+ */
89
+ export declare function getRandomBytes(length: number): ByteArray;
90
+ /**
91
+ * Encrypts data using AES-128-CBC mode.
92
+ *
93
+ * @param key - The 16-byte encryption key.
94
+ * @param data - The data to encrypt.
95
+ * @param iv - The 16-byte initialization vector. Defaults to zero IV.
96
+ * @returns A promise that resolves to the encrypted data.
97
+ * @throws Error if the key is not exactly 16 bytes.
98
+ *
99
+ * @example
100
+ * ```typescript
101
+ * const encrypted = await aes128cbcEncrypt(key, plaintext, iv)
102
+ * ```
103
+ */
104
+ export declare function aes128cbcEncrypt(key: ByteArray, data: ByteArray, iv?: ByteArray): Promise<ByteArray>;
105
+ /**
106
+ * Decrypts data using AES-128-CBC mode.
107
+ *
108
+ * @param key - The 16-byte decryption key.
109
+ * @param encrypted - The encrypted data to decrypt.
110
+ * @param iv - The 16-byte initialization vector. Defaults to zero IV.
111
+ * @returns A promise that resolves to the decrypted data.
112
+ * @throws Error if the key is not exactly 16 bytes or encrypted data is too short.
113
+ *
114
+ * @example
115
+ * ```typescript
116
+ * const decrypted = await aes128cbcDecrypt(key, ciphertext, iv)
117
+ * ```
118
+ */
119
+ export declare function aes128cbcDecrypt(key: ByteArray, encrypted: ByteArray, iv?: ByteArray): Promise<ByteArray>;
120
+ /**
121
+ * Encrypts data using AES-256-CBC mode.
122
+ *
123
+ * @param fileKey - The 32-byte encryption key.
124
+ * @param block - The data to encrypt.
125
+ * @param iv - The 16-byte initialization vector. Defaults to zero IV.
126
+ * @returns A promise that resolves to the encrypted data.
127
+ *
128
+ * @example
129
+ * ```typescript
130
+ * const encrypted = await aes256cbcEncrypt(key, plaintext, iv)
131
+ * ```
132
+ */
133
+ export declare function aes256cbcEncrypt(fileKey: ByteArray, block: ByteArray, iv?: ByteArray): Promise<ByteArray>;
134
+ /**
135
+ * Decrypts data using AES-256-CBC mode.
136
+ *
137
+ * @param fileKey - The 32-byte decryption key.
138
+ * @param ciphertext - The encrypted data to decrypt.
139
+ * @param iv - The 16-byte initialization vector. Defaults to zero IV.
140
+ * @returns A promise that resolves to the decrypted data.
141
+ *
142
+ * @example
143
+ * ```typescript
144
+ * const decrypted = await aes256cbcDecrypt(key, ciphertext, iv)
145
+ * ```
146
+ */
147
+ export declare function aes256cbcDecrypt(fileKey: ByteArray, ciphertext: ByteArray, iv?: ByteArray): Promise<ByteArray>;
148
+ /**
149
+ * Encrypts data using AES-256-ECB mode.
150
+ *
151
+ * @param fileKey - The 32-byte encryption key.
152
+ * @param data - The data to encrypt.
153
+ * @returns A promise that resolves to the encrypted data.
154
+ * @throws Error if the key is not exactly 32 bytes.
155
+ *
156
+ * @example
157
+ * ```typescript
158
+ * const encrypted = await aes256ecbEncrypt(key, plaintext)
159
+ * ```
160
+ */
161
+ export declare function aes256ecbEncrypt(fileKey: ByteArray, data: ByteArray): Promise<ByteArray>;
162
+ /**
163
+ * Decrypts data using AES-256-ECB mode.
164
+ *
165
+ * @param fileKey - The 32-byte decryption key.
166
+ * @param encrypted - The encrypted data to decrypt.
167
+ * @returns A promise that resolves to the decrypted data.
168
+ * @throws Error if the key is not exactly 32 bytes.
169
+ *
170
+ * @example
171
+ * ```typescript
172
+ * const decrypted = await aes256ecbDecrypt(key, ciphertext)
173
+ * ```
174
+ */
175
+ export declare function aes256ecbDecrypt(fileKey: ByteArray, encrypted: ByteArray): Promise<ByteArray>;
176
+ /**
177
+ * Encrypts data using AES-128-CBC mode without PKCS#7 padding.
178
+ *
179
+ * @param key - The 16-byte encryption key.
180
+ * @param data - The data to encrypt. Must be a multiple of 16 bytes.
181
+ * @param iv - The 16-byte initialization vector.
182
+ * @returns A promise that resolves to the encrypted data.
183
+ *
184
+ * @example
185
+ * ```typescript
186
+ * const encrypted = await aes128CbcNoPaddingEncrypt(key, data, iv)
187
+ * ```
188
+ */
189
+ export declare function aes128CbcNoPaddingEncrypt(key: ByteArray, data: ByteArray, iv: ByteArray): Promise<ByteArray>;
190
+ /**
191
+ * Encrypts data using AES-256-CBC mode without PKCS#7 padding.
192
+ *
193
+ * @param key - The 32-byte encryption key.
194
+ * @param data - The data to encrypt. Must be a multiple of 16 bytes.
195
+ * @param iv - The 16-byte initialization vector.
196
+ * @returns A promise that resolves to the encrypted data.
197
+ *
198
+ * @example
199
+ * ```typescript
200
+ * const encrypted = await aes256CbcNoPaddingEncrypt(key, data, iv)
201
+ * ```
202
+ */
203
+ export declare function aes256CbcNoPaddingEncrypt(key: ByteArray, data: ByteArray, iv: ByteArray): Promise<ByteArray>;
204
+ /**
205
+ * Decrypts data using AES-256-CBC mode without PKCS#7 padding.
206
+ *
207
+ * @param key - The 32-byte decryption key.
208
+ * @param ciphertext - The encrypted data to decrypt.
209
+ * @param iv - The 16-byte initialization vector. Defaults to zero IV.
210
+ * @returns A promise that resolves to the decrypted data.
211
+ *
212
+ * @example
213
+ * ```typescript
214
+ * const decrypted = await aes256CbcNoPaddingDecrypt(key, ciphertext, iv)
215
+ * ```
216
+ */
217
+ export declare function aes256CbcNoPaddingDecrypt(key: ByteArray, ciphertext: ByteArray, iv?: ByteArray): Promise<ByteArray>;
218
+ /**
219
+ * Compresses data using the DEFLATE algorithm.
220
+ *
221
+ * @param data - The data to compress.
222
+ * @returns The compressed data as a byte array.
223
+ *
224
+ * @example
225
+ * ```typescript
226
+ * const compressed = deflateData(rawData)
227
+ * ```
228
+ */
229
+ export declare function deflateData(data: ByteArray): ByteArray;
230
+ /**
231
+ * Decompresses data using the INFLATE algorithm (reverses DEFLATE).
232
+ *
233
+ * @param data - The compressed data to decompress.
234
+ * @returns The decompressed data as a byte array.
235
+ * @throws Error if inflation fails due to invalid or corrupted data.
236
+ *
237
+ * @example
238
+ * ```typescript
239
+ * const decompressed = inflateData(compressedData)
240
+ * ```
241
+ */
242
+ export declare function inflateData(data: ByteArray): ByteArray;