pdf-oxide 0.3.24 → 0.3.28

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 (271) hide show
  1. package/lib/builders/annotation-builder.d.ts +199 -0
  2. package/lib/builders/annotation-builder.d.ts.map +1 -0
  3. package/lib/builders/annotation-builder.js +318 -0
  4. package/lib/builders/annotation-builder.js.map +1 -0
  5. package/lib/builders/conversion-options-builder.d.ts +107 -0
  6. package/lib/builders/conversion-options-builder.d.ts.map +1 -0
  7. package/lib/builders/conversion-options-builder.js +215 -0
  8. package/lib/builders/conversion-options-builder.js.map +1 -0
  9. package/{src/builders/index.ts → lib/builders/index.d.ts} +1 -1
  10. package/lib/builders/index.d.ts.map +1 -0
  11. package/lib/builders/index.js +12 -0
  12. package/lib/builders/index.js.map +1 -0
  13. package/lib/builders/metadata-builder.d.ts +202 -0
  14. package/lib/builders/metadata-builder.d.ts.map +1 -0
  15. package/lib/builders/metadata-builder.js +286 -0
  16. package/lib/builders/metadata-builder.js.map +1 -0
  17. package/lib/builders/pdf-builder.d.ts +215 -0
  18. package/lib/builders/pdf-builder.d.ts.map +1 -0
  19. package/lib/builders/pdf-builder.js +339 -0
  20. package/lib/builders/pdf-builder.js.map +1 -0
  21. package/lib/builders/search-options-builder.d.ts +74 -0
  22. package/lib/builders/search-options-builder.d.ts.map +1 -0
  23. package/lib/builders/search-options-builder.js +130 -0
  24. package/lib/builders/search-options-builder.js.map +1 -0
  25. package/lib/document-editor-manager.d.ts +140 -0
  26. package/lib/document-editor-manager.d.ts.map +1 -0
  27. package/lib/document-editor-manager.js +257 -0
  28. package/lib/document-editor-manager.js.map +1 -0
  29. package/lib/errors.d.ts +383 -0
  30. package/lib/errors.d.ts.map +1 -0
  31. package/lib/errors.js +1117 -0
  32. package/lib/errors.js.map +1 -0
  33. package/lib/form-field-manager.d.ts +300 -0
  34. package/lib/form-field-manager.d.ts.map +1 -0
  35. package/lib/form-field-manager.js +567 -0
  36. package/lib/form-field-manager.js.map +1 -0
  37. package/lib/hybrid-ml-manager.d.ts +143 -0
  38. package/lib/hybrid-ml-manager.d.ts.map +1 -0
  39. package/lib/hybrid-ml-manager.js +209 -0
  40. package/lib/hybrid-ml-manager.js.map +1 -0
  41. package/lib/index.d.ts +23 -0
  42. package/lib/index.d.ts.map +1 -0
  43. package/lib/index.js +280 -0
  44. package/lib/index.js.map +1 -0
  45. package/lib/managers/accessibility-manager.d.ts +149 -0
  46. package/lib/managers/accessibility-manager.d.ts.map +1 -0
  47. package/lib/managers/accessibility-manager.js +224 -0
  48. package/lib/managers/accessibility-manager.js.map +1 -0
  49. package/lib/managers/annotation-manager.d.ts +220 -0
  50. package/lib/managers/annotation-manager.d.ts.map +1 -0
  51. package/lib/managers/annotation-manager.js +360 -0
  52. package/lib/managers/annotation-manager.js.map +1 -0
  53. package/lib/managers/barcode-manager.d.ts +80 -0
  54. package/lib/managers/barcode-manager.d.ts.map +1 -0
  55. package/lib/managers/barcode-manager.js +226 -0
  56. package/lib/managers/barcode-manager.js.map +1 -0
  57. package/lib/managers/batch-manager.d.ts +186 -0
  58. package/lib/managers/batch-manager.d.ts.map +1 -0
  59. package/lib/managers/batch-manager.js +389 -0
  60. package/lib/managers/batch-manager.js.map +1 -0
  61. package/lib/managers/cache-manager.d.ts +182 -0
  62. package/lib/managers/cache-manager.d.ts.map +1 -0
  63. package/lib/managers/cache-manager.js +387 -0
  64. package/lib/managers/cache-manager.js.map +1 -0
  65. package/lib/managers/compliance-manager.d.ts +104 -0
  66. package/lib/managers/compliance-manager.d.ts.map +1 -0
  67. package/lib/managers/compliance-manager.js +415 -0
  68. package/lib/managers/compliance-manager.js.map +1 -0
  69. package/lib/managers/content-manager.d.ts +121 -0
  70. package/lib/managers/content-manager.d.ts.map +1 -0
  71. package/lib/managers/content-manager.js +295 -0
  72. package/lib/managers/content-manager.js.map +1 -0
  73. package/lib/managers/document-utility-manager.d.ts +370 -0
  74. package/lib/managers/document-utility-manager.d.ts.map +1 -0
  75. package/lib/managers/document-utility-manager.js +731 -0
  76. package/lib/managers/document-utility-manager.js.map +1 -0
  77. package/lib/managers/dom-pdf-creator.d.ts +105 -0
  78. package/lib/managers/dom-pdf-creator.d.ts.map +1 -0
  79. package/lib/managers/dom-pdf-creator.js +300 -0
  80. package/lib/managers/dom-pdf-creator.js.map +1 -0
  81. package/lib/managers/editing-manager.d.ts +249 -0
  82. package/lib/managers/editing-manager.d.ts.map +1 -0
  83. package/lib/managers/editing-manager.js +388 -0
  84. package/lib/managers/editing-manager.js.map +1 -0
  85. package/lib/managers/enterprise-manager.d.ts +193 -0
  86. package/lib/managers/enterprise-manager.d.ts.map +1 -0
  87. package/lib/managers/enterprise-manager.js +305 -0
  88. package/lib/managers/enterprise-manager.js.map +1 -0
  89. package/lib/managers/extended-managers.d.ts +123 -0
  90. package/lib/managers/extended-managers.d.ts.map +1 -0
  91. package/lib/managers/extended-managers.js +658 -0
  92. package/lib/managers/extended-managers.js.map +1 -0
  93. package/lib/managers/extraction-manager.d.ts +247 -0
  94. package/lib/managers/extraction-manager.d.ts.map +1 -0
  95. package/lib/managers/extraction-manager.js +478 -0
  96. package/lib/managers/extraction-manager.js.map +1 -0
  97. package/lib/managers/final-utilities.d.ts +128 -0
  98. package/lib/managers/final-utilities.d.ts.map +1 -0
  99. package/lib/managers/final-utilities.js +653 -0
  100. package/lib/managers/final-utilities.js.map +1 -0
  101. package/lib/managers/hybrid-ml-advanced.d.ts +137 -0
  102. package/lib/managers/hybrid-ml-advanced.d.ts.map +1 -0
  103. package/lib/managers/hybrid-ml-advanced.js +707 -0
  104. package/lib/managers/hybrid-ml-advanced.js.map +1 -0
  105. package/lib/managers/index.d.ts +65 -0
  106. package/lib/managers/index.d.ts.map +1 -0
  107. package/lib/managers/index.js +70 -0
  108. package/lib/managers/index.js.map +1 -0
  109. package/lib/managers/layer-manager.d.ts +204 -0
  110. package/lib/managers/layer-manager.d.ts.map +1 -0
  111. package/lib/managers/layer-manager.js +403 -0
  112. package/lib/managers/layer-manager.js.map +1 -0
  113. package/lib/managers/metadata-manager.d.ts +149 -0
  114. package/lib/managers/metadata-manager.d.ts.map +1 -0
  115. package/lib/managers/metadata-manager.js +281 -0
  116. package/lib/managers/metadata-manager.js.map +1 -0
  117. package/lib/managers/ocr-manager.d.ts +195 -0
  118. package/lib/managers/ocr-manager.d.ts.map +1 -0
  119. package/lib/managers/ocr-manager.js +583 -0
  120. package/lib/managers/ocr-manager.js.map +1 -0
  121. package/lib/managers/optimization-manager.d.ts +103 -0
  122. package/lib/managers/optimization-manager.d.ts.map +1 -0
  123. package/lib/managers/optimization-manager.js +194 -0
  124. package/lib/managers/optimization-manager.js.map +1 -0
  125. package/lib/managers/outline-manager.d.ts +102 -0
  126. package/lib/managers/outline-manager.d.ts.map +1 -0
  127. package/lib/managers/outline-manager.js +170 -0
  128. package/lib/managers/outline-manager.js.map +1 -0
  129. package/lib/managers/page-manager.d.ts +143 -0
  130. package/lib/managers/page-manager.d.ts.map +1 -0
  131. package/lib/managers/page-manager.js +237 -0
  132. package/lib/managers/page-manager.js.map +1 -0
  133. package/lib/managers/pattern-detection.d.ts +170 -0
  134. package/lib/managers/pattern-detection.d.ts.map +1 -0
  135. package/lib/managers/pattern-detection.js +325 -0
  136. package/lib/managers/pattern-detection.js.map +1 -0
  137. package/lib/managers/rendering-manager.d.ts +354 -0
  138. package/lib/managers/rendering-manager.d.ts.map +1 -0
  139. package/lib/managers/rendering-manager.js +680 -0
  140. package/lib/managers/rendering-manager.js.map +1 -0
  141. package/lib/managers/search-manager.d.ts +236 -0
  142. package/lib/managers/search-manager.d.ts.map +1 -0
  143. package/lib/managers/search-manager.js +330 -0
  144. package/lib/managers/search-manager.js.map +1 -0
  145. package/lib/managers/security-manager.d.ts +162 -0
  146. package/lib/managers/security-manager.d.ts.map +1 -0
  147. package/lib/managers/security-manager.js +293 -0
  148. package/lib/managers/security-manager.js.map +1 -0
  149. package/lib/managers/signature-manager.d.ts +725 -0
  150. package/lib/managers/signature-manager.d.ts.map +1 -0
  151. package/lib/managers/signature-manager.js +1365 -0
  152. package/lib/managers/signature-manager.js.map +1 -0
  153. package/lib/managers/streams.d.ts +263 -0
  154. package/lib/managers/streams.d.ts.map +1 -0
  155. package/lib/managers/streams.js +472 -0
  156. package/lib/managers/streams.js.map +1 -0
  157. package/lib/managers/xfa-manager.d.ts +228 -0
  158. package/lib/managers/xfa-manager.d.ts.map +1 -0
  159. package/lib/managers/xfa-manager.js +490 -0
  160. package/lib/managers/xfa-manager.js.map +1 -0
  161. package/lib/pdf-creator-manager.d.ts +201 -0
  162. package/lib/pdf-creator-manager.d.ts.map +1 -0
  163. package/lib/pdf-creator-manager.js +379 -0
  164. package/lib/pdf-creator-manager.js.map +1 -0
  165. package/lib/properties.d.ts +80 -0
  166. package/lib/properties.d.ts.map +1 -0
  167. package/lib/properties.js +455 -0
  168. package/lib/properties.js.map +1 -0
  169. package/lib/result-accessors-manager.d.ts +347 -0
  170. package/lib/result-accessors-manager.d.ts.map +1 -0
  171. package/lib/result-accessors-manager.js +705 -0
  172. package/lib/result-accessors-manager.js.map +1 -0
  173. package/lib/thumbnail-manager.d.ts +122 -0
  174. package/lib/thumbnail-manager.d.ts.map +1 -0
  175. package/lib/thumbnail-manager.js +206 -0
  176. package/lib/thumbnail-manager.js.map +1 -0
  177. package/lib/types/common.d.ts +93 -0
  178. package/lib/types/common.d.ts.map +1 -0
  179. package/lib/types/common.js +5 -0
  180. package/lib/types/common.js.map +1 -0
  181. package/lib/types/document-types.d.ts +353 -0
  182. package/lib/types/document-types.d.ts.map +1 -0
  183. package/lib/types/document-types.js +83 -0
  184. package/lib/types/document-types.js.map +1 -0
  185. package/{src/types/index.ts → lib/types/index.d.ts} +1 -1
  186. package/lib/types/index.d.ts.map +1 -0
  187. package/lib/types/index.js +6 -0
  188. package/lib/types/index.js.map +1 -0
  189. package/lib/types/manager-types.d.ts +180 -0
  190. package/lib/types/manager-types.d.ts.map +1 -0
  191. package/lib/types/manager-types.js +99 -0
  192. package/lib/types/manager-types.js.map +1 -0
  193. package/lib/types/native-bindings.d.ts +440 -0
  194. package/lib/types/native-bindings.d.ts.map +1 -0
  195. package/lib/types/native-bindings.js +8 -0
  196. package/lib/types/native-bindings.js.map +1 -0
  197. package/{src/workers/index.ts → lib/workers/index.d.ts} +1 -1
  198. package/lib/workers/index.d.ts.map +1 -0
  199. package/lib/workers/index.js +6 -0
  200. package/lib/workers/index.js.map +1 -0
  201. package/lib/workers/pool.d.ts +65 -0
  202. package/lib/workers/pool.d.ts.map +1 -0
  203. package/lib/workers/pool.js +195 -0
  204. package/lib/workers/pool.js.map +1 -0
  205. package/lib/workers/worker.d.ts +6 -0
  206. package/lib/workers/worker.d.ts.map +1 -0
  207. package/lib/workers/worker.js +100 -0
  208. package/lib/workers/worker.js.map +1 -0
  209. package/package.json +12 -22
  210. package/prebuilds/darwin-arm64/pdf_oxide.node +0 -0
  211. package/prebuilds/darwin-x64/pdf_oxide.node +0 -0
  212. package/prebuilds/linux-arm64/pdf_oxide.node +0 -0
  213. package/prebuilds/linux-x64/pdf_oxide.node +0 -0
  214. package/prebuilds/win32-x64/pdf_oxide.node +0 -0
  215. package/binding.gyp +0 -35
  216. package/src/builders/annotation-builder.ts +0 -367
  217. package/src/builders/conversion-options-builder.ts +0 -257
  218. package/src/builders/metadata-builder.ts +0 -317
  219. package/src/builders/pdf-builder.ts +0 -386
  220. package/src/builders/search-options-builder.ts +0 -151
  221. package/src/document-editor-manager.ts +0 -318
  222. package/src/errors.ts +0 -1629
  223. package/src/form-field-manager.ts +0 -666
  224. package/src/hybrid-ml-manager.ts +0 -283
  225. package/src/index.ts +0 -453
  226. package/src/managers/accessibility-manager.ts +0 -338
  227. package/src/managers/annotation-manager.ts +0 -439
  228. package/src/managers/barcode-manager.ts +0 -235
  229. package/src/managers/batch-manager.ts +0 -533
  230. package/src/managers/cache-manager.ts +0 -486
  231. package/src/managers/compliance-manager.ts +0 -375
  232. package/src/managers/content-manager.ts +0 -339
  233. package/src/managers/document-utility-manager.ts +0 -922
  234. package/src/managers/dom-pdf-creator.ts +0 -365
  235. package/src/managers/editing-manager.ts +0 -514
  236. package/src/managers/enterprise-manager.ts +0 -478
  237. package/src/managers/extended-managers.ts +0 -437
  238. package/src/managers/extraction-manager.ts +0 -583
  239. package/src/managers/final-utilities.ts +0 -429
  240. package/src/managers/hybrid-ml-advanced.ts +0 -479
  241. package/src/managers/index.ts +0 -239
  242. package/src/managers/layer-manager.ts +0 -500
  243. package/src/managers/metadata-manager.ts +0 -303
  244. package/src/managers/ocr-manager.ts +0 -756
  245. package/src/managers/optimization-manager.ts +0 -262
  246. package/src/managers/outline-manager.ts +0 -196
  247. package/src/managers/page-manager.ts +0 -289
  248. package/src/managers/pattern-detection.ts +0 -440
  249. package/src/managers/rendering-manager.ts +0 -863
  250. package/src/managers/search-manager.ts +0 -385
  251. package/src/managers/security-manager.ts +0 -345
  252. package/src/managers/signature-manager.ts +0 -1664
  253. package/src/managers/streams.ts +0 -618
  254. package/src/managers/xfa-manager.ts +0 -500
  255. package/src/pdf-creator-manager.ts +0 -494
  256. package/src/properties.ts +0 -522
  257. package/src/result-accessors-manager.ts +0 -867
  258. package/src/tests/advanced-features.test.ts +0 -414
  259. package/src/tests/advanced.test.ts +0 -266
  260. package/src/tests/extended-managers.test.ts +0 -316
  261. package/src/tests/final-utilities.test.ts +0 -455
  262. package/src/tests/foundation.test.ts +0 -315
  263. package/src/tests/high-demand.test.ts +0 -257
  264. package/src/tests/specialized.test.ts +0 -97
  265. package/src/thumbnail-manager.ts +0 -272
  266. package/src/types/common.ts +0 -142
  267. package/src/types/document-types.ts +0 -457
  268. package/src/types/manager-types.ts +0 -284
  269. package/src/types/native-bindings.ts +0 -517
  270. package/src/workers/pool.ts +0 -274
  271. package/src/workers/worker.ts +0 -131
@@ -0,0 +1,99 @@
1
+ /**
2
+ * TypeScript type definitions for all PDF Oxide managers
3
+ *
4
+ * Provides comprehensive type safety for Node.js and TypeScript consumers
5
+ * with full FFI integration and proper error handling.
6
+ */
7
+ import { EventEmitter } from 'events';
8
+ // ============================================================
9
+ // OCR Types
10
+ // ============================================================
11
+ export var OcrLanguage;
12
+ (function (OcrLanguage) {
13
+ OcrLanguage["ENGLISH"] = "en";
14
+ OcrLanguage["CHINESE"] = "zh";
15
+ OcrLanguage["JAPANESE"] = "ja";
16
+ OcrLanguage["SPANISH"] = "es";
17
+ OcrLanguage["FRENCH"] = "fr";
18
+ OcrLanguage["PORTUGUESE"] = "pt";
19
+ OcrLanguage["RUSSIAN"] = "ru";
20
+ OcrLanguage["ARABIC"] = "ar";
21
+ OcrLanguage["KOREAN"] = "ko";
22
+ OcrLanguage["VIETNAMESE"] = "vi";
23
+ })(OcrLanguage || (OcrLanguage = {}));
24
+ // ============================================================
25
+ // Compliance Types
26
+ // ============================================================
27
+ export var ComplianceType;
28
+ (function (ComplianceType) {
29
+ ComplianceType["PDF_A_1B"] = "pdf_a_1b";
30
+ ComplianceType["PDF_A_2B"] = "pdf_a_2b";
31
+ ComplianceType["PDF_A_3B"] = "pdf_a_3b";
32
+ ComplianceType["PDF_X_1A"] = "pdf_x_1a";
33
+ ComplianceType["PDF_X_3"] = "pdf_x_3";
34
+ ComplianceType["PDF_UA"] = "pdf_ua";
35
+ })(ComplianceType || (ComplianceType = {}));
36
+ // ============================================================
37
+ // Form Field Types
38
+ // ============================================================
39
+ export var FormFieldType;
40
+ (function (FormFieldType) {
41
+ FormFieldType["TEXT"] = "text";
42
+ FormFieldType["CHECKBOX"] = "checkbox";
43
+ FormFieldType["RADIO"] = "radio";
44
+ FormFieldType["COMBOBOX"] = "combobox";
45
+ FormFieldType["LISTBOX"] = "listbox";
46
+ FormFieldType["SIGNATURE"] = "signature";
47
+ FormFieldType["DATE"] = "date";
48
+ })(FormFieldType || (FormFieldType = {}));
49
+ export class BaseManager extends EventEmitter {
50
+ get initialized() {
51
+ return this._initialized;
52
+ }
53
+ set initialized(value) {
54
+ this._initialized = value;
55
+ }
56
+ constructor(document, options = {}) {
57
+ super();
58
+ this.options = options;
59
+ this._initialized = false;
60
+ this.cache = new Map();
61
+ this.operationCount = 0;
62
+ this.errorCount = 0;
63
+ this.document = document;
64
+ this.initialized = true;
65
+ }
66
+ getState() {
67
+ return {
68
+ initialized: this.initialized,
69
+ hasDocument: !!this.document,
70
+ operationCount: this.operationCount,
71
+ errorCount: this.errorCount,
72
+ };
73
+ }
74
+ recordOperation() {
75
+ this.operationCount++;
76
+ }
77
+ recordError(error) {
78
+ this.errorCount++;
79
+ this.emit('error', { error, timestamp: Date.now() });
80
+ }
81
+ getCached(key) {
82
+ return this.cache.get(key);
83
+ }
84
+ setCached(key, value) {
85
+ if (this.options.enableCache !== false) {
86
+ this.cache.set(key, value);
87
+ }
88
+ }
89
+ invalidateCache(pattern) {
90
+ if (pattern) {
91
+ const keys = Array.from(this.cache.keys()).filter(k => k.includes(pattern));
92
+ keys.forEach(k => this.cache.delete(k));
93
+ }
94
+ else {
95
+ this.cache.clear();
96
+ }
97
+ }
98
+ }
99
+ //# sourceMappingURL=manager-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manager-types.js","sourceRoot":"","sources":["../../src/types/manager-types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AActC,+DAA+D;AAC/D,YAAY;AACZ,+DAA+D;AAE/D,MAAM,CAAN,IAAY,WAWX;AAXD,WAAY,WAAW;IACrB,6BAAc,CAAA;IACd,6BAAc,CAAA;IACd,8BAAe,CAAA;IACf,6BAAc,CAAA;IACd,4BAAa,CAAA;IACb,gCAAiB,CAAA;IACjB,6BAAc,CAAA;IACd,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,gCAAiB,CAAA;AACnB,CAAC,EAXW,WAAW,KAAX,WAAW,QAWtB;AAyBD,+DAA+D;AAC/D,mBAAmB;AACnB,+DAA+D;AAE/D,MAAM,CAAN,IAAY,cAOX;AAPD,WAAY,cAAc;IACxB,uCAAqB,CAAA;IACrB,uCAAqB,CAAA;IACrB,uCAAqB,CAAA;IACrB,uCAAqB,CAAA;IACrB,qCAAmB,CAAA;IACnB,mCAAiB,CAAA;AACnB,CAAC,EAPW,cAAc,KAAd,cAAc,QAOzB;AAmCD,+DAA+D;AAC/D,mBAAmB;AACnB,+DAA+D;AAE/D,MAAM,CAAN,IAAY,aAQX;AARD,WAAY,aAAa;IACvB,8BAAa,CAAA;IACb,sCAAqB,CAAA;IACrB,gCAAe,CAAA;IACf,sCAAqB,CAAA;IACrB,oCAAmB,CAAA;IACnB,wCAAuB,CAAA;IACvB,8BAAa,CAAA;AACf,CAAC,EARW,aAAa,KAAb,aAAa,QAQxB;AAsGD,MAAM,OAAgB,WACpB,SAAQ,YAAY;IAKpB,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,IAAc,WAAW,CAAC,KAAc;QACtC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;IAC5B,CAAC;IAMD,YAAY,QAAW,EAAY,UAA0B,EAAE;QAC7D,KAAK,EAAE,CAAC;QADyB,YAAO,GAAP,OAAO,CAAqB;QAdvD,iBAAY,GAAG,KAAK,CAAC;QAUnB,UAAK,GAAyB,IAAI,GAAG,EAAE,CAAC;QACxC,mBAAc,GAAG,CAAC,CAAC;QACnB,eAAU,GAAG,CAAC,CAAC;QAIvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC;IAID,QAAQ;QACN,OAAO;YACL,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ;YAC5B,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC;IACJ,CAAC;IAES,eAAe;QACvB,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAES,WAAW,CAAC,KAAY;QAChC,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACvD,CAAC;IAES,SAAS,CAAI,GAAW;QAChC,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAkB,CAAC;IAC9C,CAAC;IAES,SAAS,CAAI,GAAW,EAAE,KAAQ;QAC1C,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,KAAK,KAAK,EAAE,CAAC;YACvC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IAES,eAAe,CAAC,OAAgB;QACxC,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;YAC5E,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1C,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACrB,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,440 @@
1
+ /**
2
+ * Type definitions for PDF Oxide native bindings (C++ module via NAPI)
3
+ *
4
+ * These interfaces describe the structure of objects returned from the native module.
5
+ * They are used for type checking and IDE auto-completion when working with the binding layer.
6
+ */
7
+ /**
8
+ * Represents a rectangular area with coordinates and dimensions
9
+ */
10
+ export interface Rect {
11
+ x: number;
12
+ y: number;
13
+ width: number;
14
+ height: number;
15
+ }
16
+ /**
17
+ * Represents a 2D point coordinate
18
+ */
19
+ export interface Point {
20
+ x: number;
21
+ y: number;
22
+ }
23
+ /**
24
+ * Represents an RGB color value
25
+ */
26
+ export interface Color {
27
+ red: number;
28
+ green: number;
29
+ blue: number;
30
+ alpha?: number;
31
+ }
32
+ /**
33
+ * Document metadata and properties
34
+ */
35
+ export interface DocumentInfo {
36
+ title?: string;
37
+ author?: string;
38
+ subject?: string;
39
+ keywords?: string[];
40
+ creator?: string;
41
+ producer?: string;
42
+ creationDate?: Date;
43
+ modificationDate?: Date;
44
+ encrypted?: boolean;
45
+ pages?: number;
46
+ }
47
+ /**
48
+ * PDF document metadata
49
+ */
50
+ export interface Metadata {
51
+ [key: string]: string | number | boolean | Date | undefined;
52
+ }
53
+ /**
54
+ * Embedded file information
55
+ */
56
+ export interface EmbeddedFile {
57
+ filename: string;
58
+ mimeType?: string;
59
+ size?: number;
60
+ data?: Buffer;
61
+ }
62
+ /**
63
+ * Result of a text search operation
64
+ */
65
+ export interface SearchResult {
66
+ pageIndex: number;
67
+ text: string;
68
+ x: number;
69
+ y: number;
70
+ width: number;
71
+ height: number;
72
+ confidence?: number;
73
+ }
74
+ /**
75
+ * Options for text search operations
76
+ */
77
+ export interface SearchOptions {
78
+ caseSensitive?: boolean;
79
+ wholeWords?: boolean;
80
+ regex?: boolean;
81
+ startPage?: number;
82
+ endPage?: number;
83
+ maxResults?: number;
84
+ }
85
+ /**
86
+ * Options for document conversion
87
+ */
88
+ export interface ConversionOptions {
89
+ format?: 'markdown' | 'text' | 'html';
90
+ includeImages?: boolean;
91
+ includeMetadata?: boolean;
92
+ preserveLayout?: boolean;
93
+ encoding?: string;
94
+ }
95
+ /**
96
+ * Base class for PDF elements (text, images, paths, etc.)
97
+ */
98
+ export interface PdfElement {
99
+ type: string;
100
+ bounds: Rect;
101
+ rotation?: number;
102
+ opacity?: number;
103
+ blendMode?: string;
104
+ }
105
+ /**
106
+ * Text element extracted from PDF
107
+ */
108
+ export interface PdfText extends PdfElement {
109
+ type: 'text';
110
+ content: string;
111
+ fontSize?: number;
112
+ fontName?: string;
113
+ fontFamily?: string;
114
+ bold?: boolean;
115
+ italic?: boolean;
116
+ color?: Color;
117
+ }
118
+ /**
119
+ * Image element from PDF
120
+ */
121
+ export interface PdfImage extends PdfElement {
122
+ type: 'image';
123
+ width: number;
124
+ height: number;
125
+ colorSpace?: string;
126
+ bitsPerComponent?: number;
127
+ data?: Buffer;
128
+ }
129
+ /**
130
+ * Vector path (graphics)
131
+ */
132
+ export interface PdfPath extends PdfElement {
133
+ type: 'path';
134
+ points: Point[];
135
+ strokeColor?: Color;
136
+ fillColor?: Color;
137
+ lineWidth?: number;
138
+ }
139
+ /**
140
+ * Table extracted from PDF
141
+ */
142
+ export interface PdfTable extends PdfElement {
143
+ type: 'table';
144
+ rows: number;
145
+ columns: number;
146
+ cells: PdfTableCell[][];
147
+ }
148
+ /**
149
+ * Individual table cell
150
+ */
151
+ export interface PdfTableCell {
152
+ text: string;
153
+ rowSpan?: number;
154
+ colSpan?: number;
155
+ backgroundColor?: Color;
156
+ borderColor?: Color;
157
+ }
158
+ /**
159
+ * Base annotation interface
160
+ */
161
+ export interface Annotation {
162
+ type: string;
163
+ page: number;
164
+ bounds: Rect;
165
+ author?: string;
166
+ content?: string;
167
+ creationDate?: Date;
168
+ modificationDate?: Date;
169
+ flags?: number;
170
+ }
171
+ /**
172
+ * Text annotation (sticky note style)
173
+ */
174
+ export interface TextAnnotation extends Annotation {
175
+ type: 'text';
176
+ icon?: string;
177
+ color?: Color;
178
+ }
179
+ /**
180
+ * Highlight annotation
181
+ */
182
+ export interface HighlightAnnotation extends Annotation {
183
+ type: 'highlight';
184
+ color?: Color;
185
+ quadPoints?: Point[][];
186
+ }
187
+ /**
188
+ * Link annotation
189
+ */
190
+ export interface LinkAnnotation extends Annotation {
191
+ type: 'link';
192
+ url?: string;
193
+ destination?: {
194
+ page: number;
195
+ x?: number;
196
+ y?: number;
197
+ zoom?: number;
198
+ };
199
+ action?: string;
200
+ }
201
+ /**
202
+ * Ink annotation (drawing/handwriting)
203
+ */
204
+ export interface InkAnnotation extends Annotation {
205
+ type: 'ink';
206
+ strokes: Point[][];
207
+ color?: Color;
208
+ thickness?: number;
209
+ }
210
+ /**
211
+ * Square annotation
212
+ */
213
+ export interface SquareAnnotation extends Annotation {
214
+ type: 'square';
215
+ fillColor?: Color;
216
+ strokeColor?: Color;
217
+ lineWidth?: number;
218
+ }
219
+ /**
220
+ * Circle annotation
221
+ */
222
+ export interface CircleAnnotation extends Annotation {
223
+ type: 'circle';
224
+ fillColor?: Color;
225
+ strokeColor?: Color;
226
+ lineWidth?: number;
227
+ }
228
+ /**
229
+ * Line annotation
230
+ */
231
+ export interface LineAnnotation extends Annotation {
232
+ type: 'line';
233
+ startPoint: Point;
234
+ endPoint: Point;
235
+ color?: Color;
236
+ lineWidth?: number;
237
+ startLineStyle?: string;
238
+ endLineStyle?: string;
239
+ }
240
+ /**
241
+ * Polygon annotation
242
+ */
243
+ export interface PolygonAnnotation extends Annotation {
244
+ type: 'polygon';
245
+ vertices: Point[];
246
+ fillColor?: Color;
247
+ strokeColor?: Color;
248
+ lineWidth?: number;
249
+ }
250
+ /**
251
+ * Native PdfDocument class interface
252
+ */
253
+ export interface NativePdfDocument {
254
+ getVersion(): string;
255
+ getPdfOxideVersion(): string;
256
+ getPageCount(): number;
257
+ getTitle(): string | null;
258
+ getAuthor(): string | null;
259
+ getSubject(): string | null;
260
+ getKeywords(): string[] | null;
261
+ getCreationDate(): Date | null;
262
+ getModificationDate(): Date | null;
263
+ isEncrypted(): boolean;
264
+ isLinearized(): boolean;
265
+ getMetadata(): Metadata;
266
+ setMetadata(metadata: Metadata): void;
267
+ getDocumentInfo(): DocumentInfo;
268
+ extractText(pageIndex: number): string;
269
+ extractTextAsync(pageIndex: number): Promise<string>;
270
+ toMarkdown(): string;
271
+ toMarkdownAsync(): Promise<string>;
272
+ toHtml(): string;
273
+ search(text: string, options?: SearchOptions): SearchResult[];
274
+ hasText(text: string, caseSensitive?: boolean): boolean;
275
+ getPage(pageIndex: number): NativePdfPage;
276
+ getPages(): NativePdfPage[];
277
+ saveToPath(path: string): void;
278
+ saveToPdf(format?: string): Buffer;
279
+ save_async(path: string): Promise<void>;
280
+ saveToStream(stream: NodeJS.WritableStream): void;
281
+ getForms(): any;
282
+ fillForms(values: Record<string, string>): void;
283
+ getEmbeddedFiles(): EmbeddedFile[];
284
+ extractEmbeddedFile(filename: string): Buffer;
285
+ encrypt(userPassword: string, ownerPassword?: string, permissions?: number): void;
286
+ decrypt(password: string): boolean;
287
+ setPermissions(permissions: number): void;
288
+ getOutline(): any[];
289
+ setOutline(outline: any[]): void;
290
+ getStructure(): any;
291
+ getPageLabels(): string[];
292
+ setPageLabels(labels: string[]): void;
293
+ getLayers(): any[];
294
+ setLayerVisibility(layerId: string, visible: boolean): void;
295
+ close(): void;
296
+ }
297
+ /**
298
+ * Native Pdf class interface (represents a PDF file)
299
+ */
300
+ export interface NativePdf {
301
+ getPageCount(): number;
302
+ getPageSizes(): Array<{
303
+ width: number;
304
+ height: number;
305
+ }>;
306
+ getPageSize(pageIndex: number): {
307
+ width: number;
308
+ height: number;
309
+ };
310
+ getPage(pageIndex: number): NativePdfPage;
311
+ renderPage(pageIndex: number, options?: any): Buffer;
312
+ renderPageToCanvas(pageIndex: number, canvas: any): void;
313
+ addPage(width: number, height: number): NativePdfPage;
314
+ removePage(pageIndex: number): void;
315
+ insertPage(pageIndex: number, width: number, height: number): NativePdfPage;
316
+ rotatePage(pageIndex: number, rotation: number): void;
317
+ save_async(path: string): Promise<void>;
318
+ saveToBuffer(): Buffer;
319
+ close(): void;
320
+ }
321
+ /**
322
+ * Native PdfPage class interface
323
+ */
324
+ export interface NativePdfPage {
325
+ getIndex(): number;
326
+ getWidth(): number;
327
+ getHeight(): number;
328
+ getRotation(): number;
329
+ getMediaBox(): Rect;
330
+ getCropBox(): Rect;
331
+ extractText(): string;
332
+ extractElements(): PdfElement[];
333
+ getImages(): PdfImage[];
334
+ getTables(): PdfTable[];
335
+ render(options?: any): Buffer;
336
+ renderToCanvas(canvas: any): void;
337
+ getAnnotations(): Annotation[];
338
+ addAnnotation(annotation: Annotation): void;
339
+ removeAnnotation(annotationIndex: number): void;
340
+ setMediaBox(rect: Rect): void;
341
+ setCropBox(rect: Rect): void;
342
+ rotate(rotation: number): void;
343
+ drawText(text: string, x: number, y: number, options?: any): void;
344
+ drawImage(image: Buffer, x: number, y: number, width: number, height: number): void;
345
+ drawPath(points: Point[], options?: any): void;
346
+ searchText(text: string, options?: SearchOptions): SearchResult[];
347
+ close(): void;
348
+ }
349
+ /**
350
+ * Native builder class interface
351
+ */
352
+ export interface NativePdfBuilder {
353
+ title(title: string): NativePdfBuilder;
354
+ author(author: string): NativePdfBuilder;
355
+ subject(subject: string): NativePdfBuilder;
356
+ keywords(keywords: string[]): NativePdfBuilder;
357
+ creator(creator: string): NativePdfBuilder;
358
+ producer(producer: string): NativePdfBuilder;
359
+ build(): NativePdf;
360
+ }
361
+ /**
362
+ * Native text searcher interface
363
+ */
364
+ export interface NativeTextSearcher {
365
+ search(text: string, options?: SearchOptions): SearchResult[];
366
+ replaceAll(searchText: string, replaceText: string): number;
367
+ getMatches(text: string): SearchResult[];
368
+ }
369
+ /**
370
+ * Page size constants
371
+ */
372
+ export interface PageSizeConstants {
373
+ A0: {
374
+ width: number;
375
+ height: number;
376
+ };
377
+ A1: {
378
+ width: number;
379
+ height: number;
380
+ };
381
+ A2: {
382
+ width: number;
383
+ height: number;
384
+ };
385
+ A3: {
386
+ width: number;
387
+ height: number;
388
+ };
389
+ A4: {
390
+ width: number;
391
+ height: number;
392
+ };
393
+ A5: {
394
+ width: number;
395
+ height: number;
396
+ };
397
+ Letter: {
398
+ width: number;
399
+ height: number;
400
+ };
401
+ Legal: {
402
+ width: number;
403
+ height: number;
404
+ };
405
+ Tabloid: {
406
+ width: number;
407
+ height: number;
408
+ };
409
+ }
410
+ /**
411
+ * Complete native module interface
412
+ */
413
+ export interface NativeModule {
414
+ getVersion(): string;
415
+ getPdfOxideVersion(): string;
416
+ PdfDocument: new (...args: any[]) => NativePdfDocument;
417
+ Pdf: new (...args: any[]) => NativePdf;
418
+ PdfPage: new (...args: any[]) => NativePdfPage;
419
+ PdfBuilder: new (...args: any[]) => NativePdfBuilder;
420
+ TextSearcher: new (...args: any[]) => NativeTextSearcher;
421
+ PdfElement: new (...args: any[]) => PdfElement;
422
+ PdfText: new (...args: any[]) => PdfText;
423
+ PdfImage: new (...args: any[]) => PdfImage;
424
+ PdfPath: new (...args: any[]) => PdfPath;
425
+ PdfTable: new (...args: any[]) => PdfTable;
426
+ PdfStructure: new (...args: any[]) => any;
427
+ Annotation: new (...args: any[]) => Annotation;
428
+ TextAnnotation: new (...args: any[]) => TextAnnotation;
429
+ HighlightAnnotation: new (...args: any[]) => HighlightAnnotation;
430
+ LinkAnnotation: new (...args: any[]) => LinkAnnotation;
431
+ PageSize: PageSizeConstants;
432
+ Rect: new (x: number, y: number, width: number, height: number) => Rect;
433
+ Point: new (x: number, y: number) => Point;
434
+ Color: new (red: number, green: number, blue: number, alpha?: number) => Color;
435
+ ConversionOptions: new (...args: any[]) => ConversionOptions;
436
+ SearchOptions: new (...args: any[]) => SearchOptions;
437
+ SearchResult: new (...args: any[]) => SearchResult;
438
+ [key: string]: any;
439
+ }
440
+ //# sourceMappingURL=native-bindings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-bindings.d.ts","sourceRoot":"","sources":["../../src/types/native-bindings.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Type definitions for PDF Oxide native bindings (C++ module via NAPI)
3
+ *
4
+ * These interfaces describe the structure of objects returned from the native module.
5
+ * They are used for type checking and IDE auto-completion when working with the binding layer.
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=native-bindings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-bindings.js","sourceRoot":"","sources":["../../src/types/native-bindings.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
@@ -2,6 +2,6 @@
2
2
  * Worker Threads Module
3
3
  * Exports worker pool and types for parallel PDF processing
4
4
  */
5
-
6
5
  export { WorkerPool, workerPool } from './pool.js';
7
6
  export type { WorkerTask, WorkerResult } from './pool.js';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/workers/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACnD,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Worker Threads Module
3
+ * Exports worker pool and types for parallel PDF processing
4
+ */
5
+ export { WorkerPool, workerPool } from './pool.js';
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/workers/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * Worker Thread Pool Manager
3
+ * Enables non-blocking parallel PDF processing
4
+ */
5
+ /**
6
+ * Represents a task to be processed by a worker
7
+ */
8
+ export interface WorkerTask<T = any> {
9
+ operation: 'extract' | 'search' | 'render' | 'analyze';
10
+ documentPath: string;
11
+ params: Record<string, any>;
12
+ }
13
+ /**
14
+ * Result returned from a worker
15
+ */
16
+ export interface WorkerResult<T = any> {
17
+ success: boolean;
18
+ data?: T;
19
+ error?: Error | string;
20
+ duration: number;
21
+ }
22
+ /**
23
+ * Thread pool for parallel PDF processing
24
+ */
25
+ export declare class WorkerPool {
26
+ private poolSize;
27
+ private workers;
28
+ private queue;
29
+ private activeCount;
30
+ private terminated;
31
+ private readonly defaultTimeout;
32
+ /**
33
+ * Initialize the worker pool
34
+ * @param poolSize - Number of worker threads to create
35
+ */
36
+ constructor(poolSize?: number);
37
+ private validatePoolSize;
38
+ private initializeWorkers;
39
+ /**
40
+ * Run a task in the worker pool
41
+ * @param task - The task to run
42
+ * @param timeout - Optional timeout in milliseconds
43
+ * @returns Promise that resolves with the result
44
+ */
45
+ runTask<T = any>(task: WorkerTask<T>, timeout?: number): Promise<WorkerResult<T>>;
46
+ private processQueue;
47
+ private handleWorkerError;
48
+ /**
49
+ * Terminate all workers
50
+ * @returns Promise that resolves when all workers are terminated
51
+ */
52
+ terminate(): Promise<void>;
53
+ private cleanup;
54
+ /**
55
+ * Get current pool statistics
56
+ */
57
+ getStats(): {
58
+ poolSize: number;
59
+ activeWorkers: number;
60
+ queuedTasks: number;
61
+ terminated: boolean;
62
+ };
63
+ }
64
+ export declare const workerPool: WorkerPool;
65
+ //# sourceMappingURL=pool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pool.d.ts","sourceRoot":"","sources":["../../src/workers/pool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AASH;;GAEG;AACH,MAAM,WAAW,UAAU,CAAC,CAAC,GAAG,GAAG;IACjC,SAAS,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;IACvD,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,GAAG;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;CAClB;AASD;;GAEG;AACH,qBAAa,UAAU;IAWT,OAAO,CAAC,QAAQ;IAV5B,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,KAAK,CAAoB;IACjC,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IAExC;;;OAGG;gBACiB,QAAQ,GAAE,MAAU;IAKxC,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,iBAAiB;IA4BzB;;;;;OAKG;IACU,OAAO,CAAC,CAAC,GAAG,GAAG,EAC1B,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,EACnB,OAAO,GAAE,MAA4B,GACpC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IA8B3B,OAAO,CAAC,YAAY;IAuDpB,OAAO,CAAC,iBAAiB;IAYzB;;;OAGG;IACU,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IA0BvC,OAAO,CAAC,OAAO;IAMf;;OAEG;IACI,QAAQ,IAAI;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,aAAa,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,OAAO,CAAC;KACrB;CAQF;AAQD,eAAO,MAAM,UAAU,YAEtB,CAAC"}