pdf-lite 1.0.0 → 1.0.1-alpha.2

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 (339) hide show
  1. package/.github/workflows/docs.yaml +2 -0
  2. package/EXAMPLES.md +1 -4
  3. package/docs/README.md +127 -0
  4. package/docs/core/README.md +43 -0
  5. package/docs/core/decoder/README.md +11 -0
  6. package/docs/core/decoder/classes/PdfDecoder.md +362 -0
  7. package/docs/core/generators/README.md +14 -0
  8. package/docs/core/generators/functions/bytesToPdfObjects.md +26 -0
  9. package/docs/core/generators/functions/pdfDecoder.md +36 -0
  10. package/docs/core/generators/functions/pdfDecoderAsync.md +26 -0
  11. package/docs/core/generators/functions/stringToPdfObjects.md +25 -0
  12. package/docs/core/incremental-parser/README.md +13 -0
  13. package/docs/core/incremental-parser/classes/EofReachedError.md +55 -0
  14. package/docs/core/incremental-parser/classes/IncrementalParser.md +299 -0
  15. package/docs/core/incremental-parser/classes/NoMoreTokensError.md +55 -0
  16. package/docs/core/objects/pdf-array/README.md +11 -0
  17. package/docs/core/objects/pdf-array/classes/PdfArray.md +305 -0
  18. package/docs/core/objects/pdf-boolean/README.md +11 -0
  19. package/docs/core/objects/pdf-boolean/classes/PdfBoolean.md +265 -0
  20. package/docs/core/objects/pdf-comment/README.md +11 -0
  21. package/docs/core/objects/pdf-comment/classes/PdfComment.md +329 -0
  22. package/docs/core/objects/pdf-date/README.md +11 -0
  23. package/docs/core/objects/pdf-date/classes/PdfDate.md +317 -0
  24. package/docs/core/objects/pdf-dictionary/README.md +17 -0
  25. package/docs/core/objects/pdf-dictionary/classes/PdfDictionary.md +396 -0
  26. package/docs/core/objects/pdf-dictionary/type-aliases/PdfDictionaryEntries.md +9 -0
  27. package/docs/core/objects/pdf-dictionary/type-aliases/PdfDictionaryEntry.md +9 -0
  28. package/docs/core/objects/pdf-dictionary/type-aliases/PdfDictionaryMap.md +9 -0
  29. package/docs/core/objects/pdf-hexadecimal/README.md +11 -0
  30. package/docs/core/objects/pdf-hexadecimal/classes/PdfHexadecimal.md +320 -0
  31. package/docs/core/objects/pdf-indirect-object/README.md +11 -0
  32. package/docs/core/objects/pdf-indirect-object/classes/PdfIndirectObject.md +411 -0
  33. package/docs/core/objects/pdf-name/README.md +11 -0
  34. package/docs/core/objects/pdf-name/classes/PdfName.md +271 -0
  35. package/docs/core/objects/pdf-null/README.md +11 -0
  36. package/docs/core/objects/pdf-null/classes/PdfNull.md +259 -0
  37. package/docs/core/objects/pdf-number/README.md +12 -0
  38. package/docs/core/objects/pdf-number/classes/PdfByteOffsetNumber.md +369 -0
  39. package/docs/core/objects/pdf-number/classes/PdfNumber.md +345 -0
  40. package/docs/core/objects/pdf-object/README.md +11 -0
  41. package/docs/core/objects/pdf-object/classes/PdfObject.md +214 -0
  42. package/docs/core/objects/pdf-object-reference/README.md +11 -0
  43. package/docs/core/objects/pdf-object-reference/classes/PdfObjectReference.md +279 -0
  44. package/docs/core/objects/pdf-start-xref/README.md +11 -0
  45. package/docs/core/objects/pdf-start-xref/classes/PdfStartXRef.md +265 -0
  46. package/docs/core/objects/pdf-stream/README.md +23 -0
  47. package/docs/core/objects/pdf-stream/classes/PdfObjStream.md +699 -0
  48. package/docs/core/objects/pdf-stream/classes/PdfStream.md +570 -0
  49. package/docs/core/objects/pdf-stream/classes/PdfXRefStream.md +723 -0
  50. package/docs/core/objects/pdf-stream/classes/PdfXRefStreamCompressedEntry.md +51 -0
  51. package/docs/core/objects/pdf-stream/type-aliases/PdfXRefStreamEntry.md +9 -0
  52. package/docs/core/objects/pdf-stream/type-aliases/PdfXRefStreamStandardEntry.md +9 -0
  53. package/docs/core/objects/pdf-stream/variables/PdfXRefStreamStandardEntry.md +9 -0
  54. package/docs/core/objects/pdf-string/README.md +11 -0
  55. package/docs/core/objects/pdf-string/classes/PdfString.md +301 -0
  56. package/docs/core/objects/pdf-trailer/README.md +16 -0
  57. package/docs/core/objects/pdf-trailer/classes/PdfTrailer.md +271 -0
  58. package/docs/core/objects/pdf-trailer/type-aliases/PdfTrailerDictionary.md +9 -0
  59. package/docs/core/objects/pdf-trailer/type-aliases/PdfTrailerEntries.md +51 -0
  60. package/docs/core/objects/pdf-xref-table/README.md +13 -0
  61. package/docs/core/objects/pdf-xref-table/classes/PdfXRefTable.md +331 -0
  62. package/docs/core/objects/pdf-xref-table/classes/PdfXRefTableEntry.md +297 -0
  63. package/docs/core/objects/pdf-xref-table/classes/PdfXRefTableSectionHeader.md +277 -0
  64. package/docs/core/parser/README.md +11 -0
  65. package/docs/core/parser/classes/Parser.md +74 -0
  66. package/docs/core/ref/README.md +15 -0
  67. package/docs/core/ref/classes/Ref.md +149 -0
  68. package/docs/core/ref/type-aliases/RefUpdateCallback.md +33 -0
  69. package/docs/core/serializer/README.md +11 -0
  70. package/docs/core/serializer/classes/PdfTokenSerializer.md +106 -0
  71. package/docs/core/streams/object-stream/README.md +11 -0
  72. package/docs/core/streams/object-stream/classes/PdfObjectStream.md +69 -0
  73. package/docs/core/tokeniser/README.md +21 -0
  74. package/docs/core/tokeniser/classes/PdfByteStreamTokeniser.md +366 -0
  75. package/docs/core/tokeniser/classes/PdfObjectTokeniser.md +69 -0
  76. package/docs/core/tokeniser/functions/objectToTokens.md +25 -0
  77. package/docs/core/tokeniser/functions/pdfObjectStreamTokeniser.md +27 -0
  78. package/docs/core/tokeniser/type-aliases/PdfTokeniser.md +11 -0
  79. package/docs/core/tokens/boolean-token/README.md +11 -0
  80. package/docs/core/tokens/boolean-token/classes/PdfBooleanToken.md +139 -0
  81. package/docs/core/tokens/byte-offset-token/README.md +11 -0
  82. package/docs/core/tokens/byte-offset-token/classes/PdfByteOffsetToken.md +153 -0
  83. package/docs/core/tokens/comment-token/README.md +11 -0
  84. package/docs/core/tokens/comment-token/classes/PdfCommentToken.md +161 -0
  85. package/docs/core/tokens/end-array-token/README.md +11 -0
  86. package/docs/core/tokens/end-array-token/classes/PdfEndArrayToken.md +115 -0
  87. package/docs/core/tokens/end-dictionary-token/README.md +11 -0
  88. package/docs/core/tokens/end-dictionary-token/classes/PdfEndDictionaryToken.md +115 -0
  89. package/docs/core/tokens/end-object-token/README.md +11 -0
  90. package/docs/core/tokens/end-object-token/classes/PdfEndObjectToken.md +115 -0
  91. package/docs/core/tokens/end-stream-token/README.md +11 -0
  92. package/docs/core/tokens/end-stream-token/classes/PdfEndStreamToken.md +121 -0
  93. package/docs/core/tokens/hexadecimal-token/README.md +11 -0
  94. package/docs/core/tokens/hexadecimal-token/classes/PdfHexadecimalToken.md +127 -0
  95. package/docs/core/tokens/name-token/README.md +11 -0
  96. package/docs/core/tokens/name-token/classes/PdfNameToken.md +127 -0
  97. package/docs/core/tokens/null-token/README.md +11 -0
  98. package/docs/core/tokens/null-token/classes/PdfNullToken.md +115 -0
  99. package/docs/core/tokens/number-token/README.md +11 -0
  100. package/docs/core/tokens/number-token/classes/PdfNumberToken.md +271 -0
  101. package/docs/core/tokens/object-reference-token/README.md +11 -0
  102. package/docs/core/tokens/object-reference-token/classes/PdfObjectReferenceToken.md +137 -0
  103. package/docs/core/tokens/start-array-token/README.md +11 -0
  104. package/docs/core/tokens/start-array-token/classes/PdfStartArrayToken.md +115 -0
  105. package/docs/core/tokens/start-dictionary-token/README.md +11 -0
  106. package/docs/core/tokens/start-dictionary-token/classes/PdfStartDictionaryToken.md +115 -0
  107. package/docs/core/tokens/start-object-token/README.md +11 -0
  108. package/docs/core/tokens/start-object-token/classes/PdfStartObjectToken.md +147 -0
  109. package/docs/core/tokens/start-stream-token/README.md +11 -0
  110. package/docs/core/tokens/start-stream-token/classes/PdfStartStreamToken.md +147 -0
  111. package/docs/core/tokens/start-xref-token/README.md +11 -0
  112. package/docs/core/tokens/start-xref-token/classes/PdfStartXRefToken.md +115 -0
  113. package/docs/core/tokens/stream-chunk-token/README.md +11 -0
  114. package/docs/core/tokens/stream-chunk-token/classes/PdfStreamChunkToken.md +121 -0
  115. package/docs/core/tokens/string-token/README.md +11 -0
  116. package/docs/core/tokens/string-token/classes/PdfStringToken.md +127 -0
  117. package/docs/core/tokens/token/README.md +11 -0
  118. package/docs/core/tokens/token/classes/PdfToken.md +116 -0
  119. package/docs/core/tokens/trailer-token/README.md +11 -0
  120. package/docs/core/tokens/trailer-token/classes/PdfTrailerToken.md +127 -0
  121. package/docs/core/tokens/whitespace-token/README.md +11 -0
  122. package/docs/core/tokens/whitespace-token/classes/PdfWhitespaceToken.md +161 -0
  123. package/docs/core/tokens/xref-table-entry-token/README.md +11 -0
  124. package/docs/core/tokens/xref-table-entry-token/classes/PdfXRefTableEntryToken.md +157 -0
  125. package/docs/core/tokens/xref-table-section-start-token/README.md +11 -0
  126. package/docs/core/tokens/xref-table-section-start-token/classes/PdfXRefTableSectionStartToken.md +137 -0
  127. package/docs/core/tokens/xref-table-start-token/README.md +11 -0
  128. package/docs/core/tokens/xref-table-start-token/classes/PdfXRefTableStartToken.md +127 -0
  129. package/docs/crypto/ciphers/aes128/README.md +11 -0
  130. package/docs/crypto/ciphers/aes128/functions/aes128.md +39 -0
  131. package/docs/crypto/ciphers/aes256/README.md +11 -0
  132. package/docs/crypto/ciphers/aes256/functions/aes256.md +35 -0
  133. package/docs/crypto/ciphers/rc4/README.md +11 -0
  134. package/docs/crypto/ciphers/rc4/functions/rc4.md +35 -0
  135. package/docs/crypto/constants/README.md +11 -0
  136. package/docs/crypto/constants/variables/DEFAULT_PADDING.md +13 -0
  137. package/docs/crypto/key-derivation/key-derivation/README.md +13 -0
  138. package/docs/crypto/key-derivation/key-derivation/functions/computeMasterKey.md +57 -0
  139. package/docs/crypto/key-derivation/key-derivation/functions/deriveObjectKey.md +50 -0
  140. package/docs/crypto/key-derivation/key-derivation/functions/padPassword.md +33 -0
  141. package/docs/crypto/key-derivation/key-derivation-aes256/README.md +13 -0
  142. package/docs/crypto/key-derivation/key-derivation-aes256/functions/computeAlgorithm2bHash.md +45 -0
  143. package/docs/crypto/key-derivation/key-derivation-aes256/functions/getFileKey.md +66 -0
  144. package/docs/crypto/key-derivation/key-derivation-aes256/functions/validatePasswordHash.md +52 -0
  145. package/docs/crypto/key-gen/key-gen-aes256/README.md +12 -0
  146. package/docs/crypto/key-gen/key-gen-aes256/functions/generateOandOe.md +44 -0
  147. package/docs/crypto/key-gen/key-gen-aes256/functions/generateUandUe.md +38 -0
  148. package/docs/crypto/key-gen/key-gen-rc4-128/README.md +13 -0
  149. package/docs/crypto/key-gen/key-gen-rc4-128/functions/computeOValueRc4_128.md +38 -0
  150. package/docs/crypto/key-gen/key-gen-rc4-128/functions/computeUValueRc4_128.md +62 -0
  151. package/docs/crypto/key-gen/key-gen-rc4-128/functions/decryptUserPasswordRc4_128.md +38 -0
  152. package/docs/crypto/key-gen/key-gen-rc4-40/README.md +14 -0
  153. package/docs/crypto/key-gen/key-gen-rc4-40/functions/computeEncryptionKeyRc4_40.md +49 -0
  154. package/docs/crypto/key-gen/key-gen-rc4-40/functions/computeORc4_40.md +38 -0
  155. package/docs/crypto/key-gen/key-gen-rc4-40/functions/computeURc4_40.md +50 -0
  156. package/docs/crypto/key-gen/key-gen-rc4-40/functions/decryptUserPasswordRc4_40.md +38 -0
  157. package/docs/crypto/types/README.md +11 -0
  158. package/docs/crypto/types/interfaces/Cipher.md +39 -0
  159. package/docs/crypto/utils/README.md +13 -0
  160. package/docs/crypto/utils/functions/int32ToLittleEndianBytes.md +31 -0
  161. package/docs/crypto/utils/functions/padPassword.md +33 -0
  162. package/docs/crypto/utils/functions/removePdfPasswordPadding.md +32 -0
  163. package/docs/filters/ascii85/README.md +11 -0
  164. package/docs/filters/ascii85/functions/ascii85.md +27 -0
  165. package/docs/filters/asciihex/README.md +11 -0
  166. package/docs/filters/asciihex/functions/asciiHex.md +27 -0
  167. package/docs/filters/flate/README.md +11 -0
  168. package/docs/filters/flate/functions/flate.md +26 -0
  169. package/docs/filters/lzw/README.md +11 -0
  170. package/docs/filters/lzw/functions/lzw.md +27 -0
  171. package/docs/filters/pass-through/README.md +11 -0
  172. package/docs/filters/pass-through/functions/passthroughFilter.md +25 -0
  173. package/docs/filters/runlength/README.md +11 -0
  174. package/docs/filters/runlength/functions/runLength.md +27 -0
  175. package/docs/filters/types/README.md +19 -0
  176. package/docs/filters/types/interfaces/PdfFilter.md +39 -0
  177. package/docs/filters/types/type-aliases/PdfStreamFilterType.md +9 -0
  178. package/docs/filters/types/variables/PDF_FILTER_TYPES.md +51 -0
  179. package/docs/index/README.md +235 -0
  180. package/docs/pdf/README.md +31 -0
  181. package/docs/pdf/errors/README.md +11 -0
  182. package/docs/pdf/errors/classes/FoundCompressedObjectError.md +56 -0
  183. package/docs/pdf/pdf-document/README.md +11 -0
  184. package/docs/pdf/pdf-document/classes/PdfDocument.md +876 -0
  185. package/docs/pdf/pdf-reader/README.md +11 -0
  186. package/docs/pdf/pdf-reader/classes/PdfReader.md +82 -0
  187. package/docs/pdf/pdf-revision/README.md +11 -0
  188. package/docs/pdf/pdf-revision/classes/PdfRevision.md +508 -0
  189. package/docs/pdf/pdf-xref-lookup/README.md +11 -0
  190. package/docs/pdf/pdf-xref-lookup/classes/PdfXrefLookup.md +421 -0
  191. package/docs/security/crypt-filters/aesv2/README.md +11 -0
  192. package/docs/security/crypt-filters/aesv2/classes/AesV2CryptFilter.md +274 -0
  193. package/docs/security/crypt-filters/aesv3/README.md +11 -0
  194. package/docs/security/crypt-filters/aesv3/classes/AesV3CryptFilter.md +275 -0
  195. package/docs/security/crypt-filters/base/README.md +15 -0
  196. package/docs/security/crypt-filters/base/classes/PdfCryptFilter.md +221 -0
  197. package/docs/security/crypt-filters/base/type-aliases/CryptFilterOptions.md +43 -0
  198. package/docs/security/crypt-filters/identity/README.md +11 -0
  199. package/docs/security/crypt-filters/identity/classes/IdentityCryptFilter.md +249 -0
  200. package/docs/security/crypt-filters/v2/README.md +11 -0
  201. package/docs/security/crypt-filters/v2/classes/V2CryptFilter.md +279 -0
  202. package/docs/security/handlers/base/README.md +17 -0
  203. package/docs/security/handlers/base/classes/PdfSecurityHandler.md +384 -0
  204. package/docs/security/handlers/base/classes/PdfStandardSecurityHandler.md +694 -0
  205. package/docs/security/handlers/base/type-aliases/PdfSecurityHandlerOptions.md +27 -0
  206. package/docs/security/handlers/base/type-aliases/PdfStandardSecurityHandlerOptions.md +43 -0
  207. package/docs/security/handlers/pubSec/README.md +11 -0
  208. package/docs/security/handlers/pubSec/classes/PdfPublicKeySecurityHandler.md +503 -0
  209. package/docs/security/handlers/utils/README.md +14 -0
  210. package/docs/security/handlers/utils/functions/createFromDictionary.md +56 -0
  211. package/docs/security/handlers/utils/functions/createFromEncryptionOptions.md +40 -0
  212. package/docs/security/handlers/utils/functions/createStandardSecurityHandlerFromDictionary.md +55 -0
  213. package/docs/security/handlers/utils/functions/getCryptFilter.md +35 -0
  214. package/docs/security/handlers/v1/README.md +11 -0
  215. package/docs/security/handlers/v1/classes/PdfV1SecurityHandler.md +779 -0
  216. package/docs/security/handlers/v2/README.md +11 -0
  217. package/docs/security/handlers/v2/classes/PdfV2SecurityHandler.md +783 -0
  218. package/docs/security/handlers/v4/README.md +11 -0
  219. package/docs/security/handlers/v4/classes/PdfV4SecurityHandler.md +907 -0
  220. package/docs/security/handlers/v5/README.md +11 -0
  221. package/docs/security/handlers/v5/classes/PdfV5SecurityHandler.md +926 -0
  222. package/docs/security/types/README.md +19 -0
  223. package/docs/security/types/type-aliases/CryptFilterType.md +15 -0
  224. package/docs/security/types/type-aliases/PdfCryptFilterDictionary.md +12 -0
  225. package/docs/security/types/type-aliases/PdfEncryptionAlgorithmOptions.md +11 -0
  226. package/docs/security/types/type-aliases/PdfEncryptionAlgorithmType.md +17 -0
  227. package/docs/security/types/type-aliases/PdfEncryptionDictionary.md +13 -0
  228. package/docs/security/types/type-aliases/PdfEncryptionDictionaryObject.md +11 -0
  229. package/docs/security/types/type-aliases/PdfEncryptionOptions.md +90 -0
  230. package/docs/security/types/type-aliases/PdfEncryptionRecipient.md +24 -0
  231. package/docs/security/types/type-aliases/PdfId.md +13 -0
  232. package/docs/signing/README.md +127 -0
  233. package/docs/signing/document-security-store/README.md +19 -0
  234. package/docs/signing/document-security-store/classes/PdfCertObject.md +443 -0
  235. package/docs/signing/document-security-store/classes/PdfCrlObject.md +443 -0
  236. package/docs/signing/document-security-store/classes/PdfDocumentSecurityStoreDictionary.md +416 -0
  237. package/docs/signing/document-security-store/classes/PdfDocumentSecurityStoreObject.md +563 -0
  238. package/docs/signing/document-security-store/classes/PdfOcspObject.md +443 -0
  239. package/docs/signing/document-security-store/type-aliases/PdfVriObject.md +12 -0
  240. package/docs/signing/signatures/README.md +55 -0
  241. package/docs/signing/signatures/adbe-pkcs7-detached/README.md +11 -0
  242. package/docs/signing/signatures/adbe-pkcs7-detached/classes/PdfAdbePkcs7DetachedSignatureObject.md +669 -0
  243. package/docs/signing/signatures/adbe-pkcs7-sha1/README.md +11 -0
  244. package/docs/signing/signatures/adbe-pkcs7-sha1/classes/PdfAdbePkcs7Sha1SignatureObject.md +667 -0
  245. package/docs/signing/signatures/adbe-x509-rsa-sha1/README.md +11 -0
  246. package/docs/signing/signatures/adbe-x509-rsa-sha1/classes/PdfAdbePkcsX509RsaSha1SignatureObject.md +651 -0
  247. package/docs/signing/signatures/base/README.md +16 -0
  248. package/docs/signing/signatures/base/classes/PdfSignatureDictionary.md +420 -0
  249. package/docs/signing/signatures/base/classes/PdfSignatureObject.md +584 -0
  250. package/docs/signing/signatures/base/type-aliases/PdfSignatureSignOptions.md +51 -0
  251. package/docs/signing/signatures/etsi-cades-detached/README.md +11 -0
  252. package/docs/signing/signatures/etsi-cades-detached/classes/PdfEtsiCadesDetachedSignatureObject.md +693 -0
  253. package/docs/signing/signatures/etsi-rfc3161/README.md +11 -0
  254. package/docs/signing/signatures/etsi-rfc3161/classes/PdfEtsiRfc3161SignatureObject.md +614 -0
  255. package/docs/signing/signer/README.md +11 -0
  256. package/docs/signing/signer/classes/PdfSigner.md +58 -0
  257. package/docs/signing/types/README.md +16 -0
  258. package/docs/signing/types/type-aliases/PdfSignatureDictionaryEntries.md +95 -0
  259. package/docs/signing/types/type-aliases/PdfSignatureSubType.md +17 -0
  260. package/docs/signing/types/type-aliases/PdfSignatureType.md +14 -0
  261. package/docs/signing/types/type-aliases/RevocationInfo.md +43 -0
  262. package/docs/signing/types/type-aliases/SignaturePolicyDocument.md +35 -0
  263. package/docs/signing/types/type-aliases/TimeStampAuthority.md +35 -0
  264. package/docs/signing/utils/README.md +11 -0
  265. package/docs/signing/utils/functions/fetchRevocationInfo.md +70 -0
  266. package/docs/types/README.md +21 -0
  267. package/docs/types/type-aliases/ByteArray.md +9 -0
  268. package/docs/types/type-aliases/ChangeType.md +9 -0
  269. package/docs/types/type-aliases/DecodeParms.md +33 -0
  270. package/docs/types/type-aliases/HashAlgorithm.md +9 -0
  271. package/docs/types/type-aliases/PdfEncryptionAlgorithm.md +9 -0
  272. package/docs/types/type-aliases/PdfPermissions.md +63 -0
  273. package/docs/types/type-aliases/PdfVersion.md +9 -0
  274. package/docs/types/variables/PERMISSION_FLAGS.md +9 -0
  275. package/docs/utils/IterableReadableStream/README.md +11 -0
  276. package/docs/utils/IterableReadableStream/classes/IterableReadableStream.md +103 -0
  277. package/docs/utils/algos/README.md +28 -0
  278. package/docs/utils/algos/functions/aes128CbcNoPaddingEncrypt.md +43 -0
  279. package/docs/utils/algos/functions/aes128cbcDecrypt.md +47 -0
  280. package/docs/utils/algos/functions/aes128cbcEncrypt.md +47 -0
  281. package/docs/utils/algos/functions/aes256CbcNoPaddingDecrypt.md +43 -0
  282. package/docs/utils/algos/functions/aes256CbcNoPaddingEncrypt.md +43 -0
  283. package/docs/utils/algos/functions/aes256cbcDecrypt.md +43 -0
  284. package/docs/utils/algos/functions/aes256cbcEncrypt.md +43 -0
  285. package/docs/utils/algos/functions/aes256ecbDecrypt.md +41 -0
  286. package/docs/utils/algos/functions/aes256ecbEncrypt.md +41 -0
  287. package/docs/utils/algos/functions/deflateData.md +31 -0
  288. package/docs/utils/algos/functions/getRandomBytes.md +35 -0
  289. package/docs/utils/algos/functions/hash.md +41 -0
  290. package/docs/utils/algos/functions/inflateData.md +35 -0
  291. package/docs/utils/algos/functions/md5.md +31 -0
  292. package/docs/utils/algos/functions/sha1.md +31 -0
  293. package/docs/utils/algos/functions/sha256.md +31 -0
  294. package/docs/utils/algos/functions/sha384.md +31 -0
  295. package/docs/utils/algos/functions/sha512.md +31 -0
  296. package/docs/utils/assert/README.md +12 -0
  297. package/docs/utils/assert/functions/assert.md +39 -0
  298. package/docs/utils/assert/functions/assertIfDefined.md +46 -0
  299. package/docs/utils/bytesToHex/README.md +11 -0
  300. package/docs/utils/bytesToHex/functions/bytesToHex.md +31 -0
  301. package/docs/utils/bytesToHexBytes/README.md +11 -0
  302. package/docs/utils/bytesToHexBytes/functions/bytesToHexBytes.md +32 -0
  303. package/docs/utils/bytesToString/README.md +11 -0
  304. package/docs/utils/bytesToString/functions/bytesToString.md +31 -0
  305. package/docs/utils/concatUint8Arrays/README.md +11 -0
  306. package/docs/utils/concatUint8Arrays/functions/concatUint8Arrays.md +31 -0
  307. package/docs/utils/escapeString/README.md +11 -0
  308. package/docs/utils/escapeString/functions/escapeString.md +32 -0
  309. package/docs/utils/hexBytesToBytes/README.md +11 -0
  310. package/docs/utils/hexBytesToBytes/functions/hexBytesToBytes.md +33 -0
  311. package/docs/utils/hexBytesToString/README.md +11 -0
  312. package/docs/utils/hexBytesToString/functions/hexBytesToString.md +31 -0
  313. package/docs/utils/hexToBytes/README.md +11 -0
  314. package/docs/utils/hexToBytes/functions/hexToBytes.md +31 -0
  315. package/docs/utils/padBytes/README.md +11 -0
  316. package/docs/utils/padBytes/functions/padBytes.md +41 -0
  317. package/docs/utils/predictors/README.md +11 -0
  318. package/docs/utils/predictors/classes/Predictor.md +306 -0
  319. package/docs/utils/replaceInBuffer/README.md +11 -0
  320. package/docs/utils/replaceInBuffer/functions/replaceInBuffer.md +65 -0
  321. package/docs/utils/stringToBytes/README.md +11 -0
  322. package/docs/utils/stringToBytes/functions/stringToBytes.md +32 -0
  323. package/docs/utils/stringToHexBytes/README.md +11 -0
  324. package/docs/utils/stringToHexBytes/functions/stringToHexBytes.md +33 -0
  325. package/docs/utils/unescapeString/README.md +11 -0
  326. package/docs/utils/unescapeString/functions/unescapeString.md +34 -0
  327. package/package.json +63 -71
  328. package/packages/pdf-lite/node_modules/.bin/playwright +16 -0
  329. package/packages/pdf-lite/node_modules/.bin/tsc +16 -0
  330. package/packages/pdf-lite/node_modules/.bin/tsserver +16 -0
  331. package/packages/pdf-lite/node_modules/.bin/vitest +16 -0
  332. package/packages/pdf-lite/package.json +2 -2
  333. package/packages/pdf-lite/scripts/create-encryption-tests.sh +0 -0
  334. package/packages/pdf-lite/scripts/gen-signing-keys.sh +0 -0
  335. package/packages/pdf-lite/scripts/generate-all-signing-keys.sh +0 -0
  336. package/scripts/bump-version.sh +0 -0
  337. package/scripts/gen-html-docs.sh +0 -0
  338. package/scripts/gen-md-docs.sh +0 -0
  339. package/scripts/prepare-release.sh +0 -0
@@ -0,0 +1,779 @@
1
+ [**pdf-lite**](../../../../README.md)
2
+
3
+ ---
4
+
5
+ [pdf-lite](../../../../README.md) / [security/handlers/v1](../README.md) / PdfV1SecurityHandler
6
+
7
+ # Class: PdfV1SecurityHandler
8
+
9
+ V1 security handler implementing 40-bit RC4 encryption.
10
+ This is the original PDF encryption format (PDF 1.1).
11
+
12
+ ## Example
13
+
14
+ ```typescript
15
+ const handler = new PdfV1SecurityHandler({
16
+ password: 'user123',
17
+ ownerPassword: 'admin456',
18
+ })
19
+ ```
20
+
21
+ ## Extends
22
+
23
+ - [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md)
24
+
25
+ ## Extended by
26
+
27
+ - [`PdfV2SecurityHandler`](../../v2/classes/PdfV2SecurityHandler.md)
28
+
29
+ ## Constructors
30
+
31
+ ### Constructor
32
+
33
+ > **new PdfV1SecurityHandler**(`options`): `PdfV1SecurityHandler`
34
+
35
+ Creates a new standard security handler.
36
+
37
+ #### Parameters
38
+
39
+ ##### options
40
+
41
+ [`PdfStandardSecurityHandlerOptions`](../../base/type-aliases/PdfStandardSecurityHandlerOptions.md)
42
+
43
+ Configuration options including passwords and document ID.
44
+
45
+ #### Returns
46
+
47
+ `PdfV1SecurityHandler`
48
+
49
+ #### Inherited from
50
+
51
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`constructor`](../../base/classes/PdfStandardSecurityHandler.md#constructor)
52
+
53
+ ## Properties
54
+
55
+ ### dict
56
+
57
+ > **dict**: [`PdfEncryptionDictionary`](../../../types/type-aliases/PdfEncryptionDictionary.md)
58
+
59
+ The encryption dictionary containing all encryption parameters.
60
+
61
+ #### Inherited from
62
+
63
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`dict`](../../base/classes/PdfStandardSecurityHandler.md#dict)
64
+
65
+ ---
66
+
67
+ ### documentId?
68
+
69
+ > `protected` `optional` **documentId**: [`PdfId`](../../../types/type-aliases/PdfId.md)
70
+
71
+ Document identifier for key derivation.
72
+
73
+ #### Inherited from
74
+
75
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`documentId`](../../base/classes/PdfStandardSecurityHandler.md#documentid)
76
+
77
+ ---
78
+
79
+ ### encryptMetadata
80
+
81
+ > **encryptMetadata**: `boolean`
82
+
83
+ Whether to encrypt document metadata.
84
+
85
+ #### Inherited from
86
+
87
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`encryptMetadata`](../../base/classes/PdfStandardSecurityHandler.md#encryptmetadata)
88
+
89
+ ---
90
+
91
+ ### masterKey?
92
+
93
+ > `protected` `optional` **masterKey**: [`ByteArray`](../../../../types/type-aliases/ByteArray.md)
94
+
95
+ Derived master encryption key.
96
+
97
+ #### Inherited from
98
+
99
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`masterKey`](../../base/classes/PdfStandardSecurityHandler.md#masterkey)
100
+
101
+ ---
102
+
103
+ ### ownerKey?
104
+
105
+ > `protected` `optional` **ownerKey**: [`ByteArray`](../../../../types/type-aliases/ByteArray.md)
106
+
107
+ Computed owner key (O value).
108
+
109
+ #### Inherited from
110
+
111
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`ownerKey`](../../base/classes/PdfStandardSecurityHandler.md#ownerkey)
112
+
113
+ ---
114
+
115
+ ### ownerPassword?
116
+
117
+ > `protected` `optional` **ownerPassword**: [`ByteArray`](../../../../types/type-aliases/ByteArray.md)
118
+
119
+ Owner password for full access.
120
+
121
+ #### Inherited from
122
+
123
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`ownerPassword`](../../base/classes/PdfStandardSecurityHandler.md#ownerpassword)
124
+
125
+ ---
126
+
127
+ ### password
128
+
129
+ > `protected` **password**: [`ByteArray`](../../../../types/type-aliases/ByteArray.md)
130
+
131
+ User password for authentication.
132
+
133
+ #### Inherited from
134
+
135
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`password`](../../base/classes/PdfStandardSecurityHandler.md#password)
136
+
137
+ ---
138
+
139
+ ### permissions
140
+
141
+ > **permissions**: `number`
142
+
143
+ Numeric permission flags.
144
+
145
+ #### Inherited from
146
+
147
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`permissions`](../../base/classes/PdfStandardSecurityHandler.md#permissions)
148
+
149
+ ---
150
+
151
+ ### userKey?
152
+
153
+ > `protected` `optional` **userKey**: [`ByteArray`](../../../../types/type-aliases/ByteArray.md)
154
+
155
+ Computed user key (U value).
156
+
157
+ #### Inherited from
158
+
159
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`userKey`](../../base/classes/PdfStandardSecurityHandler.md#userkey)
160
+
161
+ ## Methods
162
+
163
+ ### buildPermissions()
164
+
165
+ > `protected` **buildPermissions**(`perm`): `number`
166
+
167
+ Builds the numeric permission flags from a PdfPermissions object.
168
+
169
+ #### Parameters
170
+
171
+ ##### perm
172
+
173
+ [`PdfPermissions`](../../../../types/type-aliases/PdfPermissions.md)
174
+
175
+ The permissions to encode.
176
+
177
+ #### Returns
178
+
179
+ `number`
180
+
181
+ The numeric permission flags.
182
+
183
+ #### Inherited from
184
+
185
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`buildPermissions`](../../base/classes/PdfStandardSecurityHandler.md#buildpermissions)
186
+
187
+ ---
188
+
189
+ ### canEncryptMetadata()
190
+
191
+ > **canEncryptMetadata**(): `boolean`
192
+
193
+ Checks if metadata encryption is enabled.
194
+
195
+ #### Returns
196
+
197
+ `boolean`
198
+
199
+ True if metadata should be encrypted.
200
+
201
+ #### Inherited from
202
+
203
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`canEncryptMetadata`](../../base/classes/PdfStandardSecurityHandler.md#canencryptmetadata)
204
+
205
+ ---
206
+
207
+ ### computeMasterKey()
208
+
209
+ > `protected` **computeMasterKey**(): `Promise`\<[`ByteArray`](../../../../types/type-aliases/ByteArray.md)\>
210
+
211
+ Computes the master encryption key from the password.
212
+
213
+ #### Returns
214
+
215
+ `Promise`\<[`ByteArray`](../../../../types/type-aliases/ByteArray.md)\>
216
+
217
+ The computed master key.
218
+
219
+ #### Throws
220
+
221
+ Error if required parameters are missing or password is incorrect.
222
+
223
+ ---
224
+
225
+ ### computeObjectKey()
226
+
227
+ > **computeObjectKey**(`objectNumber?`, `generationNumber?`, `algorithm?`): `Promise`\<[`ByteArray`](../../../../types/type-aliases/ByteArray.md)\>
228
+
229
+ Computes the object-specific encryption key.
230
+
231
+ #### Parameters
232
+
233
+ ##### objectNumber?
234
+
235
+ `number`
236
+
237
+ The PDF object number.
238
+
239
+ ##### generationNumber?
240
+
241
+ `number`
242
+
243
+ The PDF generation number.
244
+
245
+ ##### algorithm?
246
+
247
+ [`PdfEncryptionAlgorithmType`](../../../types/type-aliases/PdfEncryptionAlgorithmType.md)
248
+
249
+ Optional algorithm type for key derivation.
250
+
251
+ #### Returns
252
+
253
+ `Promise`\<[`ByteArray`](../../../../types/type-aliases/ByteArray.md)\>
254
+
255
+ The computed object key.
256
+
257
+ #### Throws
258
+
259
+ Error if object or generation number is invalid.
260
+
261
+ #### Overrides
262
+
263
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`computeObjectKey`](../../base/classes/PdfStandardSecurityHandler.md#computeobjectkey)
264
+
265
+ ---
266
+
267
+ ### computeOwnerKey()
268
+
269
+ > `protected` **computeOwnerKey**(): `Promise`\<[`ByteArray`](../../../../types/type-aliases/ByteArray.md)\>
270
+
271
+ Computes the owner key (O value) using RC4-40 algorithm.
272
+
273
+ #### Returns
274
+
275
+ `Promise`\<[`ByteArray`](../../../../types/type-aliases/ByteArray.md)\>
276
+
277
+ The computed owner key.
278
+
279
+ #### Overrides
280
+
281
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`computeOwnerKey`](../../base/classes/PdfStandardSecurityHandler.md#computeownerkey)
282
+
283
+ ---
284
+
285
+ ### computeUserKey()
286
+
287
+ > `protected` **computeUserKey**(): `Promise`\<[`ByteArray`](../../../../types/type-aliases/ByteArray.md)\>
288
+
289
+ Computes the user key (U value) using RC4-40 algorithm.
290
+
291
+ #### Returns
292
+
293
+ `Promise`\<[`ByteArray`](../../../../types/type-aliases/ByteArray.md)\>
294
+
295
+ The computed user key.
296
+
297
+ #### Throws
298
+
299
+ Error if document ID, owner key, or permissions are not set.
300
+
301
+ #### Overrides
302
+
303
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`computeUserKey`](../../base/classes/PdfStandardSecurityHandler.md#computeuserkey)
304
+
305
+ ---
306
+
307
+ ### decodePermissions()
308
+
309
+ > **decodePermissions**(): [`PdfPermissions`](../../../../types/type-aliases/PdfPermissions.md)
310
+
311
+ Decodes the numeric permission flags into a PdfPermissions object.
312
+
313
+ #### Returns
314
+
315
+ [`PdfPermissions`](../../../../types/type-aliases/PdfPermissions.md)
316
+
317
+ An object with boolean flags for each permission.
318
+
319
+ #### Inherited from
320
+
321
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`decodePermissions`](../../base/classes/PdfStandardSecurityHandler.md#decodepermissions)
322
+
323
+ ---
324
+
325
+ ### decrypt()
326
+
327
+ > **decrypt**(`type`, `data`, `objectNumber?`, `generationNumber?`): `Promise`\<[`ByteArray`](../../../../types/type-aliases/ByteArray.md)\>
328
+
329
+ Decrypts data using the appropriate cipher.
330
+
331
+ #### Parameters
332
+
333
+ ##### type
334
+
335
+ The type of content being decrypted.
336
+
337
+ `"string"` | `"stream"` | `"file"`
338
+
339
+ ##### data
340
+
341
+ [`ByteArray`](../../../../types/type-aliases/ByteArray.md)
342
+
343
+ The encrypted data.
344
+
345
+ ##### objectNumber?
346
+
347
+ `number`
348
+
349
+ The PDF object number.
350
+
351
+ ##### generationNumber?
352
+
353
+ `number`
354
+
355
+ The PDF generation number.
356
+
357
+ #### Returns
358
+
359
+ `Promise`\<[`ByteArray`](../../../../types/type-aliases/ByteArray.md)\>
360
+
361
+ The decrypted data.
362
+
363
+ #### Inherited from
364
+
365
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`decrypt`](../../base/classes/PdfStandardSecurityHandler.md#decrypt)
366
+
367
+ ---
368
+
369
+ ### decryptObject()
370
+
371
+ > **decryptObject**(`object`): `Promise`\<`void`\>
372
+
373
+ Recursively decrypts all strings and streams within an indirect object.
374
+
375
+ #### Parameters
376
+
377
+ ##### object
378
+
379
+ [`PdfIndirectObject`](../../../../core/objects/pdf-indirect-object/classes/PdfIndirectObject.md)
380
+
381
+ The indirect object to decrypt.
382
+
383
+ #### Returns
384
+
385
+ `Promise`\<`void`\>
386
+
387
+ #### Inherited from
388
+
389
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`decryptObject`](../../base/classes/PdfStandardSecurityHandler.md#decryptobject)
390
+
391
+ ---
392
+
393
+ ### encrypt()
394
+
395
+ > **encrypt**(`type`, `data`, `objectNumber?`, `generationNumber?`): `Promise`\<[`ByteArray`](../../../../types/type-aliases/ByteArray.md)\>
396
+
397
+ Encrypts data using the appropriate cipher.
398
+
399
+ #### Parameters
400
+
401
+ ##### type
402
+
403
+ The type of content being encrypted.
404
+
405
+ `"string"` | `"stream"` | `"file"`
406
+
407
+ ##### data
408
+
409
+ [`ByteArray`](../../../../types/type-aliases/ByteArray.md)
410
+
411
+ The data to encrypt.
412
+
413
+ ##### objectNumber?
414
+
415
+ `number`
416
+
417
+ The PDF object number.
418
+
419
+ ##### generationNumber?
420
+
421
+ `number`
422
+
423
+ The PDF generation number.
424
+
425
+ #### Returns
426
+
427
+ `Promise`\<[`ByteArray`](../../../../types/type-aliases/ByteArray.md)\>
428
+
429
+ The encrypted data.
430
+
431
+ #### Inherited from
432
+
433
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`encrypt`](../../base/classes/PdfStandardSecurityHandler.md#encrypt)
434
+
435
+ ---
436
+
437
+ ### encryptObject()
438
+
439
+ > **encryptObject**(`object`): `Promise`\<`void`\>
440
+
441
+ Recursively encrypts all strings and streams within an indirect object.
442
+
443
+ #### Parameters
444
+
445
+ ##### object
446
+
447
+ [`PdfIndirectObject`](../../../../core/objects/pdf-indirect-object/classes/PdfIndirectObject.md)
448
+
449
+ The indirect object to encrypt.
450
+
451
+ #### Returns
452
+
453
+ `Promise`\<`void`\>
454
+
455
+ #### Inherited from
456
+
457
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`encryptObject`](../../base/classes/PdfStandardSecurityHandler.md#encryptobject)
458
+
459
+ ---
460
+
461
+ ### getCipher()
462
+
463
+ > `protected` **getCipher**(`objectNumber?`, `generationNumber?`): `Promise`\<[`Cipher`](../../../../crypto/types/interfaces/Cipher.md)\>
464
+
465
+ Gets an RC4 cipher for the specified object.
466
+
467
+ #### Parameters
468
+
469
+ ##### objectNumber?
470
+
471
+ `number`
472
+
473
+ The PDF object number.
474
+
475
+ ##### generationNumber?
476
+
477
+ `number`
478
+
479
+ The PDF generation number.
480
+
481
+ #### Returns
482
+
483
+ `Promise`\<[`Cipher`](../../../../crypto/types/interfaces/Cipher.md)\>
484
+
485
+ An RC4 cipher instance.
486
+
487
+ #### Overrides
488
+
489
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`getCipher`](../../base/classes/PdfStandardSecurityHandler.md#getcipher)
490
+
491
+ ---
492
+
493
+ ### getDocumentId()
494
+
495
+ > **getDocumentId**(): [`PdfId`](../../../types/type-aliases/PdfId.md) \| `undefined`
496
+
497
+ Gets the document ID.
498
+
499
+ #### Returns
500
+
501
+ [`PdfId`](../../../types/type-aliases/PdfId.md) \| `undefined`
502
+
503
+ The document ID, or undefined if not set.
504
+
505
+ #### Inherited from
506
+
507
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`getDocumentId`](../../base/classes/PdfStandardSecurityHandler.md#getdocumentid)
508
+
509
+ ---
510
+
511
+ ### getKeyBits()
512
+
513
+ > **getKeyBits**(): `number`
514
+
515
+ Gets the encryption key length in bits.
516
+
517
+ #### Returns
518
+
519
+ `number`
520
+
521
+ 40 for V1 encryption.
522
+
523
+ #### Overrides
524
+
525
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`getKeyBits`](../../base/classes/PdfStandardSecurityHandler.md#getkeybits)
526
+
527
+ ---
528
+
529
+ ### getName()
530
+
531
+ > **getName**(): `string`
532
+
533
+ Gets the security handler filter name.
534
+
535
+ #### Returns
536
+
537
+ `string`
538
+
539
+ 'Standard' for password-based encryption.
540
+
541
+ #### Inherited from
542
+
543
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`getName`](../../base/classes/PdfStandardSecurityHandler.md#getname)
544
+
545
+ ---
546
+
547
+ ### getRevision()
548
+
549
+ > **getRevision**(): `number`
550
+
551
+ Gets the encryption revision number.
552
+
553
+ #### Returns
554
+
555
+ `number`
556
+
557
+ 2 for V1 encryption.
558
+
559
+ #### Overrides
560
+
561
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`getRevision`](../../base/classes/PdfStandardSecurityHandler.md#getrevision)
562
+
563
+ ---
564
+
565
+ ### getVersion()
566
+
567
+ > **getVersion**(): `number`
568
+
569
+ Gets the encryption version number.
570
+
571
+ #### Returns
572
+
573
+ `number`
574
+
575
+ 1 for 40-bit RC4 encryption.
576
+
577
+ #### Overrides
578
+
579
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`getVersion`](../../base/classes/PdfStandardSecurityHandler.md#getversion)
580
+
581
+ ---
582
+
583
+ ### initKeys()
584
+
585
+ > `protected` **initKeys**(): `Promise`\<`void`\>
586
+
587
+ Initializes the user and owner keys if not already set.
588
+
589
+ #### Returns
590
+
591
+ `Promise`\<`void`\>
592
+
593
+ #### Inherited from
594
+
595
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`initKeys`](../../base/classes/PdfStandardSecurityHandler.md#initkeys)
596
+
597
+ ---
598
+
599
+ ### isReady()
600
+
601
+ > **isReady**(): `boolean`
602
+
603
+ Checks if the handler is ready (has document ID).
604
+
605
+ #### Returns
606
+
607
+ `boolean`
608
+
609
+ True if document ID is set.
610
+
611
+ #### Inherited from
612
+
613
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`isReady`](../../base/classes/PdfStandardSecurityHandler.md#isready)
614
+
615
+ ---
616
+
617
+ ### readEncryptionDictionary()
618
+
619
+ > **readEncryptionDictionary**(`encryptionDictionary`): `void`
620
+
621
+ Reads encryption parameters from the encryption dictionary.
622
+
623
+ #### Parameters
624
+
625
+ ##### encryptionDictionary
626
+
627
+ [`PdfEncryptionDictionary`](../../../types/type-aliases/PdfEncryptionDictionary.md)
628
+
629
+ The encryption dictionary from the PDF.
630
+
631
+ #### Returns
632
+
633
+ `void`
634
+
635
+ #### Inherited from
636
+
637
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`readEncryptionDictionary`](../../base/classes/PdfStandardSecurityHandler.md#readencryptiondictionary)
638
+
639
+ ---
640
+
641
+ ### recoverUserPassword()
642
+
643
+ > **recoverUserPassword**(`ownerPassword?`): `Promise`\<`string`\>
644
+
645
+ Recovers the user password from the owner password.
646
+
647
+ #### Parameters
648
+
649
+ ##### ownerPassword?
650
+
651
+ The owner password.
652
+
653
+ `string` | [`ByteArray`](../../../../types/type-aliases/ByteArray.md)
654
+
655
+ #### Returns
656
+
657
+ `Promise`\<`string`\>
658
+
659
+ The recovered user password as a string.
660
+
661
+ #### Overrides
662
+
663
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`recoverUserPassword`](../../base/classes/PdfStandardSecurityHandler.md#recoveruserpassword)
664
+
665
+ ---
666
+
667
+ ### setDocumentId()
668
+
669
+ > **setDocumentId**(`id`): `void`
670
+
671
+ Sets the document ID for key derivation.
672
+
673
+ #### Parameters
674
+
675
+ ##### id
676
+
677
+ [`PdfId`](../../../types/type-aliases/PdfId.md)
678
+
679
+ The document ID array.
680
+
681
+ #### Returns
682
+
683
+ `void`
684
+
685
+ #### Inherited from
686
+
687
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`setDocumentId`](../../base/classes/PdfStandardSecurityHandler.md#setdocumentid)
688
+
689
+ ---
690
+
691
+ ### setMasterKey()
692
+
693
+ > **setMasterKey**(`masterKey`): `void`
694
+
695
+ Sets the master encryption key directly.
696
+
697
+ #### Parameters
698
+
699
+ ##### masterKey
700
+
701
+ [`ByteArray`](../../../../types/type-aliases/ByteArray.md)
702
+
703
+ The master key to use.
704
+
705
+ #### Returns
706
+
707
+ `void`
708
+
709
+ #### Inherited from
710
+
711
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`setMasterKey`](../../base/classes/PdfStandardSecurityHandler.md#setmasterkey)
712
+
713
+ ---
714
+
715
+ ### setOwnerPassword()
716
+
717
+ > **setOwnerPassword**(`ownerPassword`): `void`
718
+
719
+ Sets the owner password.
720
+
721
+ #### Parameters
722
+
723
+ ##### ownerPassword
724
+
725
+ The owner password string or bytes.
726
+
727
+ `string` | [`ByteArray`](../../../../types/type-aliases/ByteArray.md)
728
+
729
+ #### Returns
730
+
731
+ `void`
732
+
733
+ #### Inherited from
734
+
735
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`setOwnerPassword`](../../base/classes/PdfStandardSecurityHandler.md#setownerpassword)
736
+
737
+ ---
738
+
739
+ ### setPassword()
740
+
741
+ > **setPassword**(`password`): `void`
742
+
743
+ Sets the user password.
744
+
745
+ #### Parameters
746
+
747
+ ##### password
748
+
749
+ The user password string or bytes.
750
+
751
+ `string` | [`ByteArray`](../../../../types/type-aliases/ByteArray.md)
752
+
753
+ #### Returns
754
+
755
+ `void`
756
+
757
+ #### Inherited from
758
+
759
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`setPassword`](../../base/classes/PdfStandardSecurityHandler.md#setpassword)
760
+
761
+ ---
762
+
763
+ ### write()
764
+
765
+ > **write**(): `Promise`\<`void`\>
766
+
767
+ Writes the encryption dictionary with all computed keys and parameters.
768
+
769
+ #### Returns
770
+
771
+ `Promise`\<`void`\>
772
+
773
+ #### Throws
774
+
775
+ Error if required keys are not computed.
776
+
777
+ #### Inherited from
778
+
779
+ [`PdfStandardSecurityHandler`](../../base/classes/PdfStandardSecurityHandler.md).[`write`](../../base/classes/PdfStandardSecurityHandler.md#write)