pdf-lite 1.0.3 → 1.0.5

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 (191) hide show
  1. package/README.md +3 -0
  2. package/dist/core/generators.d.ts +2 -2
  3. package/dist/core/generators.js +3 -3
  4. package/dist/core/incremental-parser.d.ts +1 -1
  5. package/dist/core/incremental-parser.js +1 -1
  6. package/dist/core/index.d.ts +48 -0
  7. package/dist/core/index.js +48 -0
  8. package/dist/core/objects/pdf-array.d.ts +3 -3
  9. package/dist/core/objects/pdf-array.js +4 -4
  10. package/dist/core/objects/pdf-boolean.d.ts +2 -2
  11. package/dist/core/objects/pdf-boolean.js +2 -2
  12. package/dist/core/objects/pdf-comment.d.ts +3 -3
  13. package/dist/core/objects/pdf-comment.js +4 -4
  14. package/dist/core/objects/pdf-date.d.ts +1 -1
  15. package/dist/core/objects/pdf-date.js +1 -1
  16. package/dist/core/objects/pdf-dictionary.d.ts +3 -3
  17. package/dist/core/objects/pdf-dictionary.js +5 -5
  18. package/dist/core/objects/pdf-hexadecimal.d.ts +3 -3
  19. package/dist/core/objects/pdf-hexadecimal.js +6 -6
  20. package/dist/core/objects/pdf-indirect-object.d.ts +5 -5
  21. package/dist/core/objects/pdf-indirect-object.js +9 -9
  22. package/dist/core/objects/pdf-name.d.ts +2 -2
  23. package/dist/core/objects/pdf-name.js +2 -2
  24. package/dist/core/objects/pdf-null.d.ts +2 -2
  25. package/dist/core/objects/pdf-null.js +2 -2
  26. package/dist/core/objects/pdf-number.d.ts +3 -3
  27. package/dist/core/objects/pdf-number.js +3 -3
  28. package/dist/core/objects/pdf-object-reference.d.ts +2 -2
  29. package/dist/core/objects/pdf-object-reference.js +2 -2
  30. package/dist/core/objects/pdf-start-xref.d.ts +4 -4
  31. package/dist/core/objects/pdf-start-xref.js +4 -4
  32. package/dist/core/objects/pdf-stream.d.ts +8 -8
  33. package/dist/core/objects/pdf-stream.js +19 -19
  34. package/dist/core/objects/pdf-string.d.ts +3 -3
  35. package/dist/core/objects/pdf-string.js +4 -4
  36. package/dist/core/objects/pdf-trailer.d.ts +8 -8
  37. package/dist/core/objects/pdf-trailer.js +6 -6
  38. package/dist/core/objects/pdf-xref-table.d.ts +7 -7
  39. package/dist/core/objects/pdf-xref-table.js +8 -8
  40. package/dist/core/serializer.d.ts +3 -3
  41. package/dist/core/serializer.js +2 -2
  42. package/dist/core/streams/object-stream.d.ts +3 -3
  43. package/dist/core/streams/object-stream.js +2 -2
  44. package/dist/core/tokens/boolean-token.d.ts +1 -1
  45. package/dist/core/tokens/boolean-token.js +1 -1
  46. package/dist/core/tokens/byte-offset-token.d.ts +2 -2
  47. package/dist/core/tokens/byte-offset-token.js +2 -2
  48. package/dist/core/tokens/comment-token.d.ts +2 -2
  49. package/dist/core/tokens/comment-token.js +4 -4
  50. package/dist/core/tokens/end-array-token.d.ts +1 -1
  51. package/dist/core/tokens/end-array-token.js +2 -2
  52. package/dist/core/tokens/end-dictionary-token.d.ts +1 -1
  53. package/dist/core/tokens/end-dictionary-token.js +2 -2
  54. package/dist/core/tokens/end-object-token.d.ts +1 -1
  55. package/dist/core/tokens/end-object-token.js +2 -2
  56. package/dist/core/tokens/end-stream-token.d.ts +2 -2
  57. package/dist/core/tokens/end-stream-token.js +2 -2
  58. package/dist/core/tokens/hexadecimal-token.d.ts +2 -2
  59. package/dist/core/tokens/hexadecimal-token.js +2 -2
  60. package/dist/core/tokens/name-token.d.ts +1 -1
  61. package/dist/core/tokens/name-token.js +2 -2
  62. package/dist/core/tokens/null-token.d.ts +1 -1
  63. package/dist/core/tokens/null-token.js +2 -2
  64. package/dist/core/tokens/number-token.d.ts +3 -3
  65. package/dist/core/tokens/number-token.js +3 -3
  66. package/dist/core/tokens/object-reference-token.d.ts +1 -1
  67. package/dist/core/tokens/object-reference-token.js +2 -2
  68. package/dist/core/tokens/start-array-token.d.ts +1 -1
  69. package/dist/core/tokens/start-array-token.js +2 -2
  70. package/dist/core/tokens/start-dictionary-token.d.ts +1 -1
  71. package/dist/core/tokens/start-dictionary-token.js +2 -2
  72. package/dist/core/tokens/start-object-token.d.ts +1 -1
  73. package/dist/core/tokens/start-object-token.js +2 -2
  74. package/dist/core/tokens/start-stream-token.d.ts +3 -3
  75. package/dist/core/tokens/start-stream-token.js +3 -3
  76. package/dist/core/tokens/start-xref-token.d.ts +1 -1
  77. package/dist/core/tokens/start-xref-token.js +2 -2
  78. package/dist/core/tokens/stream-chunk-token.d.ts +2 -2
  79. package/dist/core/tokens/stream-chunk-token.js +1 -1
  80. package/dist/core/tokens/string-token.d.ts +2 -2
  81. package/dist/core/tokens/string-token.js +3 -3
  82. package/dist/core/tokens/token.d.ts +1 -1
  83. package/dist/core/tokens/token.js +1 -1
  84. package/dist/core/tokens/trailer-token.d.ts +1 -1
  85. package/dist/core/tokens/trailer-token.js +2 -2
  86. package/dist/core/tokens/whitespace-token.d.ts +2 -2
  87. package/dist/core/tokens/whitespace-token.js +1 -1
  88. package/dist/core/tokens/xref-table-entry-token.d.ts +3 -3
  89. package/dist/core/tokens/xref-table-entry-token.js +2 -2
  90. package/dist/core/tokens/xref-table-section-start-token.d.ts +2 -2
  91. package/dist/core/tokens/xref-table-section-start-token.js +3 -3
  92. package/dist/core/tokens/xref-table-start-token.d.ts +1 -1
  93. package/dist/core/tokens/xref-table-start-token.js +2 -2
  94. package/dist/crypto/index.d.ts +11 -0
  95. package/dist/crypto/index.js +11 -0
  96. package/dist/crypto/key-derivation/key-derivation-aes256.d.ts +1 -1
  97. package/dist/crypto/key-derivation/key-derivation-aes256.js +2 -2
  98. package/dist/crypto/key-derivation/key-derivation.d.ts +0 -14
  99. package/dist/crypto/key-derivation/key-derivation.js +1 -26
  100. package/dist/crypto/key-gen/key-gen-rc4-128.d.ts +1 -1
  101. package/dist/crypto/key-gen/key-gen-rc4-128.js +5 -6
  102. package/dist/crypto/key-gen/key-gen-rc4-40.js +1 -2
  103. package/dist/crypto/types.d.ts +1 -1
  104. package/dist/filters/asciihex.d.ts +1 -1
  105. package/dist/filters/asciihex.js +2 -2
  106. package/dist/filters/index.d.ts +7 -0
  107. package/dist/filters/index.js +7 -0
  108. package/dist/filters/lzw.d.ts +1 -1
  109. package/dist/filters/types.d.ts +1 -1
  110. package/dist/index.d.ts +5 -1
  111. package/dist/index.js +5 -1
  112. package/dist/pdf/index.d.ts +5 -4
  113. package/dist/pdf/index.js +5 -4
  114. package/dist/pdf/pdf-document.d.ts +14 -14
  115. package/dist/pdf/pdf-document.js +19 -19
  116. package/dist/pdf/pdf-reader.d.ts +3 -3
  117. package/dist/pdf/pdf-reader.js +2 -2
  118. package/dist/pdf/pdf-revision.d.ts +5 -5
  119. package/dist/pdf/pdf-revision.js +4 -4
  120. package/dist/pdf/pdf-xref-lookup.d.ts +7 -7
  121. package/dist/pdf/pdf-xref-lookup.js +9 -9
  122. package/dist/security/crypt-filters/aesv2.d.ts +2 -2
  123. package/dist/security/crypt-filters/aesv2.js +2 -2
  124. package/dist/security/crypt-filters/aesv3.d.ts +2 -2
  125. package/dist/security/crypt-filters/aesv3.js +2 -2
  126. package/dist/security/crypt-filters/base.d.ts +4 -4
  127. package/dist/security/crypt-filters/base.js +3 -3
  128. package/dist/security/crypt-filters/identity.d.ts +2 -2
  129. package/dist/security/crypt-filters/identity.js +1 -1
  130. package/dist/security/crypt-filters/v2.d.ts +1 -1
  131. package/dist/security/crypt-filters/v2.js +1 -1
  132. package/dist/security/handlers/base.d.ts +4 -4
  133. package/dist/security/handlers/base.js +12 -12
  134. package/dist/security/handlers/pubSec.d.ts +3 -3
  135. package/dist/security/handlers/pubSec.js +10 -10
  136. package/dist/security/handlers/utils.d.ts +4 -4
  137. package/dist/security/handlers/utils.js +12 -12
  138. package/dist/security/handlers/v1.d.ts +4 -4
  139. package/dist/security/handlers/v1.js +7 -7
  140. package/dist/security/handlers/v2.d.ts +3 -3
  141. package/dist/security/handlers/v2.js +5 -5
  142. package/dist/security/handlers/v4.d.ts +6 -6
  143. package/dist/security/handlers/v4.js +11 -11
  144. package/dist/security/handlers/v5.d.ts +5 -5
  145. package/dist/security/handlers/v5.js +9 -9
  146. package/dist/security/index.d.ts +13 -0
  147. package/dist/security/index.js +13 -0
  148. package/dist/security/types.d.ts +9 -9
  149. package/dist/signing/document-security-store.d.ts +11 -11
  150. package/dist/signing/document-security-store.js +4 -4
  151. package/dist/signing/index.d.ts +5 -4
  152. package/dist/signing/index.js +5 -4
  153. package/dist/signing/signatures/adbe-pkcs7-detached.d.ts +4 -4
  154. package/dist/signing/signatures/adbe-pkcs7-detached.js +11 -11
  155. package/dist/signing/signatures/adbe-pkcs7-sha1.d.ts +4 -4
  156. package/dist/signing/signatures/adbe-pkcs7-sha1.js +12 -12
  157. package/dist/signing/signatures/adbe-x509-rsa-sha1.d.ts +4 -4
  158. package/dist/signing/signatures/adbe-x509-rsa-sha1.js +8 -8
  159. package/dist/signing/signatures/base.d.ts +5 -5
  160. package/dist/signing/signatures/base.js +11 -11
  161. package/dist/signing/signatures/etsi-cades-detached.d.ts +4 -4
  162. package/dist/signing/signatures/etsi-cades-detached.js +17 -17
  163. package/dist/signing/signatures/etsi-rfc3161.d.ts +2 -2
  164. package/dist/signing/signatures/etsi-rfc3161.js +9 -9
  165. package/dist/signing/signatures/index.d.ts +6 -6
  166. package/dist/signing/signatures/index.js +6 -6
  167. package/dist/signing/signer.d.ts +3 -3
  168. package/dist/signing/signer.js +10 -10
  169. package/dist/signing/types.d.ts +7 -7
  170. package/dist/signing/utils.d.ts +2 -2
  171. package/dist/signing/utils.js +1 -1
  172. package/dist/utils/algos.js +1 -1
  173. package/dist/utils/bytesToHex.d.ts +1 -1
  174. package/dist/utils/bytesToHex.js +2 -2
  175. package/dist/utils/bytesToHexBytes.d.ts +1 -1
  176. package/dist/utils/bytesToString.d.ts +1 -1
  177. package/dist/utils/concatUint8Arrays.d.ts +1 -1
  178. package/dist/utils/escapeString.d.ts +1 -1
  179. package/dist/utils/escapeString.js +1 -1
  180. package/dist/utils/hexBytesToBytes.d.ts +1 -1
  181. package/dist/utils/hexBytesToString.d.ts +1 -1
  182. package/dist/utils/hexToBytes.d.ts +1 -1
  183. package/dist/utils/hexToBytes.js +2 -2
  184. package/dist/utils/index.d.ts +17 -0
  185. package/dist/utils/index.js +17 -0
  186. package/dist/utils/padBytes.d.ts +1 -1
  187. package/dist/utils/replaceInBuffer.d.ts +1 -1
  188. package/dist/utils/stringToBytes.d.ts +1 -1
  189. package/dist/utils/stringToHexBytes.d.ts +1 -1
  190. package/dist/utils/unescapeString.d.ts +1 -1
  191. package/package.json +3 -3
@@ -1,4 +1,4 @@
1
- import { ByteArray } from '../types';
1
+ import { ByteArray } from '../types.js';
2
2
  export interface Cipher {
3
3
  encrypt(data: ByteArray): Promise<ByteArray>;
4
4
  decrypt(data: ByteArray): Promise<ByteArray>;
@@ -1,4 +1,4 @@
1
- import { PdfFilter } from './types';
1
+ import { PdfFilter } from './types.js';
2
2
  /**
3
3
  * Creates an ASCIIHex filter for encoding and decoding PDF stream data.
4
4
  * ASCIIHex encodes binary data as pairs of hexadecimal digits,
@@ -1,5 +1,5 @@
1
- import { bytesToString } from '../utils/bytesToString';
2
- import { stringToBytes } from '../utils/stringToBytes';
1
+ import { bytesToString } from '../utils/bytesToString.js';
2
+ import { stringToBytes } from '../utils/stringToBytes.js';
3
3
  /**
4
4
  * Creates an ASCIIHex filter for encoding and decoding PDF stream data.
5
5
  * ASCIIHex encodes binary data as pairs of hexadecimal digits,
@@ -0,0 +1,7 @@
1
+ export * from './ascii85.js';
2
+ export * from './asciihex.js';
3
+ export * from './flate.js';
4
+ export * from './lzw.js';
5
+ export * from './pass-through.js';
6
+ export * from './runlength.js';
7
+ export * from './types.js';
@@ -0,0 +1,7 @@
1
+ export * from './ascii85.js';
2
+ export * from './asciihex.js';
3
+ export * from './flate.js';
4
+ export * from './lzw.js';
5
+ export * from './pass-through.js';
6
+ export * from './runlength.js';
7
+ export * from './types.js';
@@ -1,4 +1,4 @@
1
- import { PdfFilter } from './types';
1
+ import { PdfFilter } from './types.js';
2
2
  /**
3
3
  * Creates an LZW filter for encoding and decoding PDF stream data.
4
4
  * LZW (Lempel-Ziv-Welch) is a lossless compression algorithm.
@@ -1,4 +1,4 @@
1
- import { ByteArray } from '../types';
1
+ import { ByteArray } from '../types.js';
2
2
  export interface PdfFilter {
3
3
  encode(data: ByteArray): ByteArray;
4
4
  decode(data: ByteArray): ByteArray;
package/dist/index.d.ts CHANGED
@@ -1,4 +1,8 @@
1
1
  export * from './types.js';
2
- export * from './pdf/index.js';
3
2
  export * from './core/index.js';
3
+ export * from './crypto/index.js';
4
+ export * from './filters/index.js';
5
+ export * from './pdf/index.js';
6
+ export * from './security/index.js';
4
7
  export * from './signing/index.js';
8
+ export * from './utils/index.js';
package/dist/index.js CHANGED
@@ -1,4 +1,8 @@
1
1
  export * from './types.js';
2
- export * from './pdf/index.js';
3
2
  export * from './core/index.js';
3
+ export * from './crypto/index.js';
4
+ export * from './filters/index.js';
5
+ export * from './pdf/index.js';
6
+ export * from './security/index.js';
4
7
  export * from './signing/index.js';
8
+ export * from './utils/index.js';
@@ -1,4 +1,5 @@
1
- export * from './pdf-document';
2
- export * from './pdf-reader';
3
- export * from './pdf-revision';
4
- export * from './pdf-xref-lookup';
1
+ export * from './errors.js';
2
+ export * from './pdf-document.js';
3
+ export * from './pdf-reader.js';
4
+ export * from './pdf-revision.js';
5
+ export * from './pdf-xref-lookup.js';
package/dist/pdf/index.js CHANGED
@@ -1,4 +1,5 @@
1
- export * from './pdf-document';
2
- export * from './pdf-reader';
3
- export * from './pdf-revision';
4
- export * from './pdf-xref-lookup';
1
+ export * from './errors.js';
2
+ export * from './pdf-document.js';
3
+ export * from './pdf-reader.js';
4
+ export * from './pdf-revision.js';
5
+ export * from './pdf-xref-lookup.js';
@@ -1,17 +1,17 @@
1
- import { PdfObject } from '../core/objects/pdf-object';
2
- import { PdfSecurityHandler } from '../security/handlers/base';
3
- import { PdfIndirectObject } from '../core/objects/pdf-indirect-object';
4
- import { PdfComment } from '../core/objects/pdf-comment';
5
- import { PdfToken } from '../core/tokens/token';
6
- import { PdfDictionary } from '../core/objects/pdf-dictionary';
7
- import { PdfObjectReference } from '../core/objects/pdf-object-reference';
8
- import { PdfXrefLookup } from './pdf-xref-lookup';
9
- import { PdfRevision } from './pdf-revision';
10
- import { PdfEncryptionDictionaryObject } from '../security/types';
11
- import { PdfTrailerEntries } from '../core/objects/pdf-trailer';
12
- import { PdfDocumentSecurityStoreObject } from '../signing/document-security-store';
13
- import { ByteArray } from '../types';
14
- import { PdfDocumentVerificationResult, PdfSigner } from '../signing/signer';
1
+ import { PdfObject } from '../core/objects/pdf-object.js';
2
+ import { PdfSecurityHandler } from '../security/handlers/base.js';
3
+ import { PdfIndirectObject } from '../core/objects/pdf-indirect-object.js';
4
+ import { PdfComment } from '../core/objects/pdf-comment.js';
5
+ import { PdfToken } from '../core/tokens/token.js';
6
+ import { PdfDictionary } from '../core/objects/pdf-dictionary.js';
7
+ import { PdfObjectReference } from '../core/objects/pdf-object-reference.js';
8
+ import { PdfXrefLookup } from './pdf-xref-lookup.js';
9
+ import { PdfRevision } from './pdf-revision.js';
10
+ import { PdfEncryptionDictionaryObject } from '../security/types.js';
11
+ import { PdfTrailerEntries } from '../core/objects/pdf-trailer.js';
12
+ import { PdfDocumentSecurityStoreObject } from '../signing/document-security-store.js';
13
+ import { ByteArray } from '../types.js';
14
+ import { PdfDocumentVerificationResult, PdfSigner } from '../signing/signer.js';
15
15
  /**
16
16
  * Represents a PDF document with support for reading, writing, and modifying PDF files.
17
17
  * Handles document structure, revisions, encryption, and digital signatures.
@@ -1,22 +1,22 @@
1
- import { PdfObject } from '../core/objects/pdf-object';
2
- import { PdfStandardSecurityHandler, } from '../security/handlers/base';
3
- import { createFromDictionary } from '../security/handlers/utils';
4
- import { PdfIndirectObject } from '../core/objects/pdf-indirect-object';
5
- import { PdfComment } from '../core/objects/pdf-comment';
6
- import { PdfWhitespaceToken } from '../core/tokens/whitespace-token';
7
- import { PdfObjStream, PdfStream, PdfXRefStreamCompressedEntry, } from '../core/objects/pdf-stream';
8
- import { PdfDictionary } from '../core/objects/pdf-dictionary';
9
- import { PdfObjectReference } from '../core/objects/pdf-object-reference';
10
- import { PdfTokenSerializer } from '../core/serializer';
11
- import { PdfRevision } from './pdf-revision';
12
- import { PdfV5SecurityHandler } from '../security/handlers/v5';
13
- import { PdfByteOffsetToken } from '../core/tokens/byte-offset-token';
14
- import { PdfNumberToken } from '../core/tokens/number-token';
15
- import { PdfXRefTableEntryToken } from '../core/tokens/xref-table-entry-token';
16
- import { PdfStartXRef } from '../core/objects/pdf-start-xref';
17
- import { FoundCompressedObjectError } from './errors';
18
- import { PdfReader } from './pdf-reader';
19
- import { PdfSigner } from '../signing/signer';
1
+ import { PdfObject } from '../core/objects/pdf-object.js';
2
+ import { PdfStandardSecurityHandler, } from '../security/handlers/base.js';
3
+ import { createFromDictionary } from '../security/handlers/utils.js';
4
+ import { PdfIndirectObject } from '../core/objects/pdf-indirect-object.js';
5
+ import { PdfComment } from '../core/objects/pdf-comment.js';
6
+ import { PdfWhitespaceToken } from '../core/tokens/whitespace-token.js';
7
+ import { PdfObjStream, PdfStream, PdfXRefStreamCompressedEntry, } from '../core/objects/pdf-stream.js';
8
+ import { PdfDictionary } from '../core/objects/pdf-dictionary.js';
9
+ import { PdfObjectReference } from '../core/objects/pdf-object-reference.js';
10
+ import { PdfTokenSerializer } from '../core/serializer.js';
11
+ import { PdfRevision } from './pdf-revision.js';
12
+ import { PdfV5SecurityHandler } from '../security/handlers/v5.js';
13
+ import { PdfByteOffsetToken } from '../core/tokens/byte-offset-token.js';
14
+ import { PdfNumberToken } from '../core/tokens/number-token.js';
15
+ import { PdfXRefTableEntryToken } from '../core/tokens/xref-table-entry-token.js';
16
+ import { PdfStartXRef } from '../core/objects/pdf-start-xref.js';
17
+ import { FoundCompressedObjectError } from './errors.js';
18
+ import { PdfReader } from './pdf-reader.js';
19
+ import { PdfSigner } from '../signing/signer.js';
20
20
  /**
21
21
  * Represents a PDF document with support for reading, writing, and modifying PDF files.
22
22
  * Handles document structure, revisions, encryption, and digital signatures.
@@ -1,6 +1,6 @@
1
- import { PdfObject } from '../core/objects/pdf-object';
2
- import { ByteArray } from '../types';
3
- import { PdfDocument } from './pdf-document';
1
+ import { PdfObject } from '../core/objects/pdf-object.js';
2
+ import { ByteArray } from '../types.js';
3
+ import { PdfDocument } from './pdf-document.js';
4
4
  /**
5
5
  * A reader for parsing PDF data into PdfDocument instances.
6
6
  * Processes streams of PDF objects and constructs documents from them.
@@ -1,5 +1,5 @@
1
- import { PdfObjectStream } from '../core/streams/object-stream';
2
- import { PdfDocument } from './pdf-document';
1
+ import { PdfObjectStream } from '../core/streams/object-stream.js';
2
+ import { PdfDocument } from './pdf-document.js';
3
3
  /**
4
4
  * A reader for parsing PDF data into PdfDocument instances.
5
5
  * Processes streams of PDF objects and constructs documents from them.
@@ -1,8 +1,8 @@
1
- import { PdfDictionary } from '../core/objects/pdf-dictionary';
2
- import { PdfObject } from '../core/objects/pdf-object';
3
- import { PdfTrailerEntries } from '../core/objects/pdf-trailer';
4
- import { PdfToken } from '../core/tokens/token';
5
- import { PdfXrefLookup } from './pdf-xref-lookup';
1
+ import { PdfDictionary } from '../core/objects/pdf-dictionary.js';
2
+ import { PdfObject } from '../core/objects/pdf-object.js';
3
+ import { PdfTrailerEntries } from '../core/objects/pdf-trailer.js';
4
+ import { PdfToken } from '../core/tokens/token.js';
5
+ import { PdfXrefLookup } from './pdf-xref-lookup.js';
6
6
  /**
7
7
  * Represents a single revision of a PDF document.
8
8
  * PDF documents can have multiple revisions for incremental updates,
@@ -1,7 +1,7 @@
1
- import { PdfIndirectObject } from '../core/objects/pdf-indirect-object';
2
- import { PdfObject } from '../core/objects/pdf-object';
3
- import { PdfWhitespaceToken } from '../core/tokens/whitespace-token';
4
- import { PdfXrefLookup } from './pdf-xref-lookup';
1
+ import { PdfIndirectObject } from '../core/objects/pdf-indirect-object.js';
2
+ import { PdfObject } from '../core/objects/pdf-object.js';
3
+ import { PdfWhitespaceToken } from '../core/tokens/whitespace-token.js';
4
+ import { PdfXrefLookup } from './pdf-xref-lookup.js';
5
5
  /**
6
6
  * Represents a single revision of a PDF document.
7
7
  * PDF documents can have multiple revisions for incremental updates,
@@ -1,10 +1,10 @@
1
- import { PdfObject } from '../core/objects/pdf-object';
2
- import { PdfIndirectObject } from '../core/objects/pdf-indirect-object';
3
- import { PdfXRefTable } from '../core/objects/pdf-xref-table';
4
- import { PdfTrailer, PdfTrailerEntries } from '../core/objects/pdf-trailer';
5
- import { PdfStream, PdfXRefStream, PdfXRefStreamEntry } from '../core/objects/pdf-stream';
6
- import { PdfDictionary } from '../core/objects/pdf-dictionary';
7
- import { Ref } from '../core/ref';
1
+ import { PdfObject } from '../core/objects/pdf-object.js';
2
+ import { PdfIndirectObject } from '../core/objects/pdf-indirect-object.js';
3
+ import { PdfXRefTable } from '../core/objects/pdf-xref-table.js';
4
+ import { PdfTrailer, PdfTrailerEntries } from '../core/objects/pdf-trailer.js';
5
+ import { PdfStream, PdfXRefStream, PdfXRefStreamEntry } from '../core/objects/pdf-stream.js';
6
+ import { PdfDictionary } from '../core/objects/pdf-dictionary.js';
7
+ import { Ref } from '../core/ref.js';
8
8
  /**
9
9
  * Manages cross-reference (xref) lookup for PDF objects.
10
10
  * Handles both traditional xref tables and xref streams, including hybrid documents.
@@ -1,12 +1,12 @@
1
- import { PdfIndirectObject } from '../core/objects/pdf-indirect-object';
2
- import { PdfXRefTable, PdfXRefTableEntry } from '../core/objects/pdf-xref-table';
3
- import { PdfStartXRef } from '../core/objects/pdf-start-xref';
4
- import { PdfTrailer } from '../core/objects/pdf-trailer';
5
- import { PdfNumber } from '../core/objects/pdf-number';
6
- import { PdfComment } from '../core/objects/pdf-comment';
7
- import { PdfObjStream, PdfStream, PdfXRefStream, PdfXRefStreamCompressedEntry, } from '../core/objects/pdf-stream';
8
- import { PdfDictionary } from '../core/objects/pdf-dictionary';
9
- import { PdfObjectReference } from '../core/objects/pdf-object-reference';
1
+ import { PdfIndirectObject } from '../core/objects/pdf-indirect-object.js';
2
+ import { PdfXRefTable, PdfXRefTableEntry, } from '../core/objects/pdf-xref-table.js';
3
+ import { PdfStartXRef } from '../core/objects/pdf-start-xref.js';
4
+ import { PdfTrailer } from '../core/objects/pdf-trailer.js';
5
+ import { PdfNumber } from '../core/objects/pdf-number.js';
6
+ import { PdfComment } from '../core/objects/pdf-comment.js';
7
+ import { PdfObjStream, PdfStream, PdfXRefStream, PdfXRefStreamCompressedEntry, } from '../core/objects/pdf-stream.js';
8
+ import { PdfDictionary } from '../core/objects/pdf-dictionary.js';
9
+ import { PdfObjectReference } from '../core/objects/pdf-object-reference.js';
10
10
  /**
11
11
  * Manages cross-reference (xref) lookup for PDF objects.
12
12
  * Handles both traditional xref tables and xref streams, including hybrid documents.
@@ -1,5 +1,5 @@
1
- import { PdfCryptFilter, CryptFilterOptions } from './base';
2
- import { Cipher } from '../../crypto/types';
1
+ import { PdfCryptFilter, CryptFilterOptions } from './base.js';
2
+ import { Cipher } from '../../crypto/types.js';
3
3
  /**
4
4
  * AESV2 crypt filter using AES-128-CBC encryption.
5
5
  * Implements 128-bit AES encryption in CBC mode for PDF content.
@@ -1,5 +1,5 @@
1
- import { PdfCryptFilter } from './base';
2
- import { aes128 } from '../../crypto/ciphers/aes128';
1
+ import { PdfCryptFilter } from './base.js';
2
+ import { aes128 } from '../../crypto/ciphers/aes128.js';
3
3
  /**
4
4
  * AESV2 crypt filter using AES-128-CBC encryption.
5
5
  * Implements 128-bit AES encryption in CBC mode for PDF content.
@@ -1,5 +1,5 @@
1
- import { Cipher } from '../../crypto/types';
2
- import { PdfCryptFilter, CryptFilterOptions } from './base';
1
+ import { Cipher } from '../../crypto/types.js';
2
+ import { PdfCryptFilter, CryptFilterOptions } from './base.js';
3
3
  /**
4
4
  * AESV3 crypt filter using AES-256-CBC encryption.
5
5
  * Implements 256-bit AES encryption in CBC mode for PDF content.
@@ -1,5 +1,5 @@
1
- import { aes256 } from '../../crypto/ciphers/aes256';
2
- import { PdfCryptFilter } from './base';
1
+ import { aes256 } from '../../crypto/ciphers/aes256.js';
2
+ import { PdfCryptFilter } from './base.js';
3
3
  /**
4
4
  * AESV3 crypt filter using AES-256-CBC encryption.
5
5
  * Implements 256-bit AES encryption in CBC mode for PDF content.
@@ -1,7 +1,7 @@
1
- import { Cipher } from '../../crypto/types';
2
- import { ByteArray } from '../../types';
3
- import { PdfSecurityHandler } from '../handlers/base';
4
- import { PdfCryptFilterDictionary } from '../types';
1
+ import { Cipher } from '../../crypto/types.js';
2
+ import { ByteArray } from '../../types.js';
3
+ import { PdfSecurityHandler } from '../handlers/base.js';
4
+ import { PdfCryptFilterDictionary } from '../types.js';
5
5
  /**
6
6
  * Configuration options for creating a crypt filter.
7
7
  */
@@ -1,6 +1,6 @@
1
- import { PdfDictionary } from '../../core/objects/pdf-dictionary';
2
- import { PdfName } from '../../core/objects/pdf-name';
3
- import { PdfNumber } from '../../core/objects/pdf-number';
1
+ import { PdfDictionary } from '../../core/objects/pdf-dictionary.js';
2
+ import { PdfName } from '../../core/objects/pdf-name.js';
3
+ import { PdfNumber } from '../../core/objects/pdf-number.js';
4
4
  /**
5
5
  * Abstract base class for PDF crypt filters.
6
6
  * Crypt filters define how specific types of data (strings, streams, files) are encrypted.
@@ -1,5 +1,5 @@
1
- import { Cipher } from '../../crypto/types';
2
- import { PdfCryptFilter, CryptFilterOptions } from './base';
1
+ import { Cipher } from '../../crypto/types.js';
2
+ import { PdfCryptFilter, CryptFilterOptions } from './base.js';
3
3
  /**
4
4
  * Identity crypt filter that passes data through without encryption.
5
5
  * Used when no encryption is needed for specific content types.
@@ -1,4 +1,4 @@
1
- import { PdfCryptFilter } from './base';
1
+ import { PdfCryptFilter } from './base.js';
2
2
  /**
3
3
  * Identity crypt filter that passes data through without encryption.
4
4
  * Used when no encryption is needed for specific content types.
@@ -1,5 +1,5 @@
1
1
  import { Cipher } from '../../crypto/types.js';
2
- import { PdfCryptFilter, CryptFilterOptions } from './base';
2
+ import { PdfCryptFilter, CryptFilterOptions } from './base.js';
3
3
  /**
4
4
  * V2 crypt filter using RC4 encryption.
5
5
  * Implements the legacy RC4 stream cipher for PDF encryption.
@@ -1,5 +1,5 @@
1
1
  import { rc4 } from '../../crypto/ciphers/rc4.js';
2
- import { PdfCryptFilter } from './base';
2
+ import { PdfCryptFilter } from './base.js';
3
3
  /**
4
4
  * V2 crypt filter using RC4 encryption.
5
5
  * Implements the legacy RC4 stream cipher for PDF encryption.
@@ -1,7 +1,7 @@
1
- import { PdfIndirectObject } from '../../core/objects/pdf-indirect-object';
2
- import { Cipher } from '../../crypto/types';
3
- import { ByteArray, PdfPermissions } from '../../types';
4
- import { PdfEncryptionAlgorithmType, PdfEncryptionDictionary, PdfId } from '../types';
1
+ import { PdfIndirectObject } from '../../core/objects/pdf-indirect-object.js';
2
+ import { Cipher } from '../../crypto/types.js';
3
+ import { ByteArray, PdfPermissions } from '../../types.js';
4
+ import { PdfEncryptionAlgorithmType, PdfEncryptionDictionary, PdfId } from '../types.js';
5
5
  /**
6
6
  * Base options for creating a security handler.
7
7
  */
@@ -1,15 +1,15 @@
1
- import { PdfArray } from '../../core/objects/pdf-array';
2
- import { PdfBoolean } from '../../core/objects/pdf-boolean';
3
- import { PdfDictionary } from '../../core/objects/pdf-dictionary';
4
- import { PdfHexadecimal } from '../../core/objects/pdf-hexadecimal';
5
- import { PdfIndirectObject } from '../../core/objects/pdf-indirect-object';
6
- import { PdfName } from '../../core/objects/pdf-name';
7
- import { PdfNumber } from '../../core/objects/pdf-number';
8
- import { PdfStream } from '../../core/objects/pdf-stream';
9
- import { PdfString } from '../../core/objects/pdf-string';
10
- import { PERMISSION_FLAGS } from '../../types';
11
- import { assert, assertIfDefined } from '../../utils/assert';
12
- import { stringToBytes } from '../../utils/stringToBytes';
1
+ import { PdfArray } from '../../core/objects/pdf-array.js';
2
+ import { PdfBoolean } from '../../core/objects/pdf-boolean.js';
3
+ import { PdfDictionary } from '../../core/objects/pdf-dictionary.js';
4
+ import { PdfHexadecimal } from '../../core/objects/pdf-hexadecimal.js';
5
+ import { PdfIndirectObject } from '../../core/objects/pdf-indirect-object.js';
6
+ import { PdfName } from '../../core/objects/pdf-name.js';
7
+ import { PdfNumber } from '../../core/objects/pdf-number.js';
8
+ import { PdfStream } from '../../core/objects/pdf-stream.js';
9
+ import { PdfString } from '../../core/objects/pdf-string.js';
10
+ import { PERMISSION_FLAGS } from '../../types.js';
11
+ import { assert, assertIfDefined } from '../../utils/assert.js';
12
+ import { stringToBytes } from '../../utils/stringToBytes.js';
13
13
  /**
14
14
  * Abstract base class for PDF security handlers.
15
15
  * Security handlers manage encryption, decryption, and access permissions for PDF documents.
@@ -1,6 +1,6 @@
1
- import { ByteArray, PdfPermissions } from '../../types';
2
- import { PdfEncryptionDictionary, PdfEncryptionRecipient, PdfId } from '../types';
3
- import { PdfSecurityHandler, PdfStandardSecurityHandler } from './base';
1
+ import { ByteArray, PdfPermissions } from '../../types.js';
2
+ import { PdfEncryptionDictionary, PdfEncryptionRecipient, PdfId } from '../types.js';
3
+ import { PdfSecurityHandler, PdfStandardSecurityHandler } from './base.js';
4
4
  /**
5
5
  * Public key security handler implementing certificate-based encryption.
6
6
  * Uses PKCS#7 enveloped data to encrypt the file key for each recipient.
@@ -1,13 +1,13 @@
1
- import { Certificate } from 'pki-lite/x509/Certificate';
2
- import { EnvelopedData } from 'pki-lite/pkcs7/EnvelopedData';
3
- import { PrivateKeyInfo } from 'pki-lite/keys/PrivateKeyInfo';
4
- import { getRandomBytes, sha1, sha256 } from '../../utils/algos';
5
- import { PdfV5SecurityHandler } from './v5';
6
- import { PdfSecurityHandler } from './base';
7
- import { createStandardSecurityHandlerFromDictionary } from './utils';
8
- import { PdfName } from '../../core/objects/pdf-name';
9
- import { PdfArray } from '../../core/objects/pdf-array';
10
- import { PdfHexadecimal } from '../../core/objects/pdf-hexadecimal';
1
+ import { Certificate } from 'pki-lite/x509/Certificate.js';
2
+ import { EnvelopedData } from 'pki-lite/pkcs7/EnvelopedData.js';
3
+ import { PrivateKeyInfo } from 'pki-lite/keys/PrivateKeyInfo.js';
4
+ import { getRandomBytes, sha1, sha256 } from '../../utils/algos.js';
5
+ import { PdfV5SecurityHandler } from './v5.js';
6
+ import { PdfSecurityHandler } from './base.js';
7
+ import { createStandardSecurityHandlerFromDictionary } from './utils.js';
8
+ import { PdfName } from '../../core/objects/pdf-name.js';
9
+ import { PdfArray } from '../../core/objects/pdf-array.js';
10
+ import { PdfHexadecimal } from '../../core/objects/pdf-hexadecimal.js';
11
11
  /**
12
12
  * Public key security handler implementing certificate-based encryption.
13
13
  * Uses PKCS#7 enveloped data to encrypt the file key for each recipient.
@@ -1,7 +1,7 @@
1
- import { PdfEncryptionAlgorithmType, PdfEncryptionDictionary, PdfEncryptionOptions, PdfEncryptionRecipient, PdfId } from '../types';
2
- import { PdfSecurityHandler, PdfStandardSecurityHandler } from './base';
3
- import { ByteArray } from '../../types';
4
- import { PdfCryptFilter } from '../crypt-filters/base';
1
+ import { PdfEncryptionAlgorithmType, PdfEncryptionDictionary, PdfEncryptionOptions, PdfEncryptionRecipient, PdfId } from '../types.js';
2
+ import { PdfSecurityHandler, PdfStandardSecurityHandler } from './base.js';
3
+ import { ByteArray } from '../../types.js';
4
+ import { PdfCryptFilter } from '../crypt-filters/base.js';
5
5
  /**
6
6
  * Creates a security handler from an encryption dictionary.
7
7
  * Automatically detects the handler type (Standard or Adobe.PubSec) and version.
@@ -1,15 +1,15 @@
1
- import { assert, assertIfDefined } from '../../utils/assert';
2
- import { PdfV1SecurityHandler } from './v1';
3
- import { PdfV2SecurityHandler } from './v2';
4
- import { PdfV4SecurityHandler } from './v4';
5
- import { PdfV5SecurityHandler } from './v5';
6
- import { V2CryptFilter } from '../crypt-filters/v2';
7
- import { AesV2CryptFilter } from '../crypt-filters/aesv2';
8
- import { AesV3CryptFilter } from '../crypt-filters/aesv3';
9
- import { IdentityCryptFilter } from '../crypt-filters/identity';
10
- import { PdfName } from '../../core/objects/pdf-name';
11
- import { PdfNumber } from '../../core/objects/pdf-number';
12
- import { PdfPublicKeySecurityHandler } from './pubSec';
1
+ import { assert, assertIfDefined } from '../../utils/assert.js';
2
+ import { PdfV1SecurityHandler } from './v1.js';
3
+ import { PdfV2SecurityHandler } from './v2.js';
4
+ import { PdfV4SecurityHandler } from './v4.js';
5
+ import { PdfV5SecurityHandler } from './v5.js';
6
+ import { V2CryptFilter } from '../crypt-filters/v2.js';
7
+ import { AesV2CryptFilter } from '../crypt-filters/aesv2.js';
8
+ import { AesV3CryptFilter } from '../crypt-filters/aesv3.js';
9
+ import { IdentityCryptFilter } from '../crypt-filters/identity.js';
10
+ import { PdfName } from '../../core/objects/pdf-name.js';
11
+ import { PdfNumber } from '../../core/objects/pdf-number.js';
12
+ import { PdfPublicKeySecurityHandler } from './pubSec.js';
13
13
  /**
14
14
  * Creates a security handler from an encryption dictionary.
15
15
  * Automatically detects the handler type (Standard or Adobe.PubSec) and version.
@@ -1,7 +1,7 @@
1
- import { Cipher } from '../../crypto/types';
2
- import { ByteArray } from '../../types';
3
- import { PdfEncryptionAlgorithmType } from '../types';
4
- import { PdfStandardSecurityHandler } from './base';
1
+ import { Cipher } from '../../crypto/types.js';
2
+ import { ByteArray } from '../../types.js';
3
+ import { PdfEncryptionAlgorithmType } from '../types.js';
4
+ import { PdfStandardSecurityHandler } from './base.js';
5
5
  /**
6
6
  * V1 security handler implementing 40-bit RC4 encryption.
7
7
  * This is the original PDF encryption format (PDF 1.1).
@@ -1,10 +1,10 @@
1
- import { rc4 } from '../../crypto/ciphers/rc4';
2
- import { computeMasterKey, deriveObjectKey, } from '../../crypto/key-derivation/key-derivation';
3
- import { computeORc4_40, computeURc4_40, decryptUserPasswordRc4_40, } from '../../crypto/key-gen/key-gen-rc4-40';
4
- import { assert } from '../../utils/assert';
5
- import { bytesToString } from '../../utils/bytesToString';
6
- import { stringToBytes } from '../../utils/stringToBytes';
7
- import { PdfStandardSecurityHandler } from './base';
1
+ import { rc4 } from '../../crypto/ciphers/rc4.js';
2
+ import { computeMasterKey, deriveObjectKey, } from '../../crypto/key-derivation/key-derivation.js';
3
+ import { computeORc4_40, computeURc4_40, decryptUserPasswordRc4_40, } from '../../crypto/key-gen/key-gen-rc4-40.js';
4
+ import { assert } from '../../utils/assert.js';
5
+ import { bytesToString } from '../../utils/bytesToString.js';
6
+ import { stringToBytes } from '../../utils/stringToBytes.js';
7
+ import { PdfStandardSecurityHandler } from './base.js';
8
8
  /**
9
9
  * V1 security handler implementing 40-bit RC4 encryption.
10
10
  * This is the original PDF encryption format (PDF 1.1).
@@ -1,6 +1,6 @@
1
- import { Cipher } from '../../crypto/types';
2
- import { ByteArray } from '../../types';
3
- import { PdfV1SecurityHandler } from './v1';
1
+ import { Cipher } from '../../crypto/types.js';
2
+ import { ByteArray } from '../../types.js';
3
+ import { PdfV1SecurityHandler } from './v1.js';
4
4
  /**
5
5
  * V2 security handler implementing 128-bit RC4 encryption.
6
6
  * Extends V1 with stronger key length (PDF 1.4).
@@ -1,8 +1,8 @@
1
- import { rc4 } from '../../crypto/ciphers/rc4';
2
- import { computeOValueRc4_128, computeUValueRc4_128, decryptUserPasswordRc4_128, } from '../../crypto/key-gen/key-gen-rc4-128';
3
- import { bytesToString } from '../../utils/bytesToString';
4
- import { stringToBytes } from '../../utils/stringToBytes';
5
- import { PdfV1SecurityHandler } from './v1';
1
+ import { rc4 } from '../../crypto/ciphers/rc4.js';
2
+ import { computeOValueRc4_128, computeUValueRc4_128, decryptUserPasswordRc4_128, } from '../../crypto/key-gen/key-gen-rc4-128.js';
3
+ import { bytesToString } from '../../utils/bytesToString.js';
4
+ import { stringToBytes } from '../../utils/stringToBytes.js';
5
+ import { PdfV1SecurityHandler } from './v1.js';
6
6
  /**
7
7
  * V2 security handler implementing 128-bit RC4 encryption.
8
8
  * Extends V1 with stronger key length (PDF 1.4).
@@ -1,9 +1,9 @@
1
- import { Cipher } from '../../crypto/types';
2
- import { ByteArray } from '../../types';
3
- import { PdfCryptFilter } from '../crypt-filters/base';
4
- import { CryptFilterType, PdfEncryptionAlgorithmType, PdfEncryptionDictionary } from '../types';
5
- import { PdfStandardSecurityHandlerOptions } from './base';
6
- import { PdfV2SecurityHandler } from './v2';
1
+ import { Cipher } from '../../crypto/types.js';
2
+ import { ByteArray } from '../../types.js';
3
+ import { PdfCryptFilter } from '../crypt-filters/base.js';
4
+ import { CryptFilterType, PdfEncryptionAlgorithmType, PdfEncryptionDictionary } from '../types.js';
5
+ import { PdfStandardSecurityHandlerOptions } from './base.js';
6
+ import { PdfV2SecurityHandler } from './v2.js';
7
7
  /**
8
8
  * V4 security handler implementing AES-128-CBC encryption with crypt filters.
9
9
  * Supports different encryption methods for strings, streams, and embedded files (PDF 1.5).
@@ -1,14 +1,14 @@
1
- import { PdfDictionary } from '../../core/objects/pdf-dictionary';
2
- import { PdfName } from '../../core/objects/pdf-name';
3
- import { PdfNumber } from '../../core/objects/pdf-number';
4
- import { aes128 } from '../../crypto/ciphers/aes128';
5
- import { deriveObjectKey } from '../../crypto/key-derivation/key-derivation';
6
- import { assert, assertIfDefined } from '../../utils/assert';
7
- import { AesV2CryptFilter } from '../crypt-filters/aesv2';
8
- import { AesV3CryptFilter } from '../crypt-filters/aesv3';
9
- import { IdentityCryptFilter } from '../crypt-filters/identity';
10
- import { V2CryptFilter } from '../crypt-filters/v2';
11
- import { PdfV2SecurityHandler } from './v2';
1
+ import { PdfDictionary } from '../../core/objects/pdf-dictionary.js';
2
+ import { PdfName } from '../../core/objects/pdf-name.js';
3
+ import { PdfNumber } from '../../core/objects/pdf-number.js';
4
+ import { aes128 } from '../../crypto/ciphers/aes128.js';
5
+ import { deriveObjectKey } from '../../crypto/key-derivation/key-derivation.js';
6
+ import { assert, assertIfDefined } from '../../utils/assert.js';
7
+ import { AesV2CryptFilter } from '../crypt-filters/aesv2.js';
8
+ import { AesV3CryptFilter } from '../crypt-filters/aesv3.js';
9
+ import { IdentityCryptFilter } from '../crypt-filters/identity.js';
10
+ import { V2CryptFilter } from '../crypt-filters/v2.js';
11
+ import { PdfV2SecurityHandler } from './v2.js';
12
12
  const IDENTITY_CRYPT_FILTER = new IdentityCryptFilter({ authEvent: 'DocOpen' });
13
13
  /**
14
14
  * V4 security handler implementing AES-128-CBC encryption with crypt filters.