flow-frame-core 0.1.0

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 (416) hide show
  1. package/README.md +64 -0
  2. package/dist/Dockerfile +86 -0
  3. package/dist/GPU_DEPLOYMENT_README.md +324 -0
  4. package/dist/OPS_AGENT_README.md +174 -0
  5. package/dist/README-H100-VM.md +192 -0
  6. package/dist/README-worker-pools.md +231 -0
  7. package/dist/README.md +8 -0
  8. package/dist/WEB-ELEMENT-REQUESTS-README.md +302 -0
  9. package/dist/append.d.ts +3 -0
  10. package/dist/append.d.ts.map +1 -0
  11. package/dist/append.js +42 -0
  12. package/dist/append.js.map +1 -0
  13. package/dist/audioRoutes.d.ts +2 -0
  14. package/dist/audioRoutes.d.ts.map +1 -0
  15. package/dist/audioRoutes.js +97 -0
  16. package/dist/audioRoutes.js.map +1 -0
  17. package/dist/augment-parallel.d.ts +6 -0
  18. package/dist/augment-parallel.d.ts.map +1 -0
  19. package/dist/augment-parallel.js +128 -0
  20. package/dist/augment-parallel.js.map +1 -0
  21. package/dist/augment-worker.d.ts +2 -0
  22. package/dist/augment-worker.d.ts.map +1 -0
  23. package/dist/augment-worker.js +100 -0
  24. package/dist/augment-worker.js.map +1 -0
  25. package/dist/browerRoutes.d.ts +2 -0
  26. package/dist/browerRoutes.d.ts.map +1 -0
  27. package/dist/browerRoutes.js +323 -0
  28. package/dist/browerRoutes.js.map +1 -0
  29. package/dist/browser-utils/utils.d.ts +6 -0
  30. package/dist/browser-utils/utils.d.ts.map +1 -0
  31. package/dist/browser-utils/utils.js +133 -0
  32. package/dist/browser-utils/utils.js.map +1 -0
  33. package/dist/capture_training_data_endpoints.d.ts +158 -0
  34. package/dist/capture_training_data_endpoints.d.ts.map +1 -0
  35. package/dist/capture_training_data_endpoints.js +1812 -0
  36. package/dist/capture_training_data_endpoints.js.map +1 -0
  37. package/dist/config.json +28 -0
  38. package/dist/configEndpoints.d.ts +2 -0
  39. package/dist/configEndpoints.d.ts.map +1 -0
  40. package/dist/configEndpoints.js +459 -0
  41. package/dist/configEndpoints.js.map +1 -0
  42. package/dist/constants.d.ts +109 -0
  43. package/dist/constants.d.ts.map +1 -0
  44. package/dist/constants.js +110 -0
  45. package/dist/constants.js.map +1 -0
  46. package/dist/docs/workflow_nodes.md +257 -0
  47. package/dist/download.d.ts +11 -0
  48. package/dist/download.d.ts.map +1 -0
  49. package/dist/download.js +31 -0
  50. package/dist/download.js.map +1 -0
  51. package/dist/download.py +61 -0
  52. package/dist/ecosystem.config.json +63 -0
  53. package/dist/email-body-extractor.d.ts +20 -0
  54. package/dist/email-body-extractor.d.ts.map +1 -0
  55. package/dist/email-body-extractor.js +103 -0
  56. package/dist/email-body-extractor.js.map +1 -0
  57. package/dist/express_util.d.ts +2 -0
  58. package/dist/express_util.d.ts.map +1 -0
  59. package/dist/express_util.js +30 -0
  60. package/dist/express_util.js.map +1 -0
  61. package/dist/extension/background.d.ts +2 -0
  62. package/dist/extension/background.d.ts.map +1 -0
  63. package/dist/extension/background.js +268 -0
  64. package/dist/extension/background.js.map +1 -0
  65. package/dist/extension/manifest.json +19 -0
  66. package/dist/extensionUtils.d.ts +2 -0
  67. package/dist/extensionUtils.d.ts.map +1 -0
  68. package/dist/extensionUtils.js +48 -0
  69. package/dist/extensionUtils.js.map +1 -0
  70. package/dist/filter-gmail-poller/README.md +320 -0
  71. package/dist/filter-gmail-poller/demo.d.ts +2 -0
  72. package/dist/filter-gmail-poller/demo.d.ts.map +1 -0
  73. package/dist/filter-gmail-poller/demo.js +79 -0
  74. package/dist/filter-gmail-poller/demo.js.map +1 -0
  75. package/dist/filter-gmail-poller/example-existing-app.d.ts +2 -0
  76. package/dist/filter-gmail-poller/example-existing-app.d.ts.map +1 -0
  77. package/dist/filter-gmail-poller/example-existing-app.js +72 -0
  78. package/dist/filter-gmail-poller/example-existing-app.js.map +1 -0
  79. package/dist/filter-gmail-poller/filter-gmail-poller.d.ts +160 -0
  80. package/dist/filter-gmail-poller/filter-gmail-poller.d.ts.map +1 -0
  81. package/dist/filter-gmail-poller/filter-gmail-poller.js +1048 -0
  82. package/dist/filter-gmail-poller/filter-gmail-poller.js.map +1 -0
  83. package/dist/filter-gmail-poller/index.d.ts +3 -0
  84. package/dist/filter-gmail-poller/index.d.ts.map +1 -0
  85. package/dist/filter-gmail-poller/index.js +18 -0
  86. package/dist/filter-gmail-poller/index.js.map +1 -0
  87. package/dist/filter-gmail-poller/manual-test.d.ts +2 -0
  88. package/dist/filter-gmail-poller/manual-test.d.ts.map +1 -0
  89. package/dist/filter-gmail-poller/manual-test.js +70 -0
  90. package/dist/filter-gmail-poller/manual-test.js.map +1 -0
  91. package/dist/filter-gmail-poller/poller-prompts.d.ts +12 -0
  92. package/dist/filter-gmail-poller/poller-prompts.d.ts.map +1 -0
  93. package/dist/filter-gmail-poller/poller-prompts.js +330 -0
  94. package/dist/filter-gmail-poller/poller-prompts.js.map +1 -0
  95. package/dist/filter-gmail-poller/test.js +69 -0
  96. package/dist/flowframe-auto-firebase-adminsdk.json +13 -0
  97. package/dist/gmail-poller/README-microsoft-email-poller.md +203 -0
  98. package/dist/gmail-poller/README.md +129 -0
  99. package/dist/gmail-poller/example.d.ts +5 -0
  100. package/dist/gmail-poller/example.d.ts.map +1 -0
  101. package/dist/gmail-poller/example.js +83 -0
  102. package/dist/gmail-poller/example.js.map +1 -0
  103. package/dist/gmail-poller/gmail-poller.d.ts +82 -0
  104. package/dist/gmail-poller/gmail-poller.d.ts.map +1 -0
  105. package/dist/gmail-poller/gmail-poller.js +455 -0
  106. package/dist/gmail-poller/gmail-poller.js.map +1 -0
  107. package/dist/gmail-poller/manual-test.d.ts +2 -0
  108. package/dist/gmail-poller/manual-test.d.ts.map +1 -0
  109. package/dist/gmail-poller/manual-test.js +37 -0
  110. package/dist/gmail-poller/manual-test.js.map +1 -0
  111. package/dist/gmail-poller/microsoft-email-example.d.ts +8 -0
  112. package/dist/gmail-poller/microsoft-email-example.d.ts.map +1 -0
  113. package/dist/gmail-poller/microsoft-email-example.js +58 -0
  114. package/dist/gmail-poller/microsoft-email-example.js.map +1 -0
  115. package/dist/gmail-poller/microsoft-email-poller.d.ts +73 -0
  116. package/dist/gmail-poller/microsoft-email-poller.d.ts.map +1 -0
  117. package/dist/gmail-poller/microsoft-email-poller.js +346 -0
  118. package/dist/gmail-poller/microsoft-email-poller.js.map +1 -0
  119. package/dist/gmail-poller/setup-auth.d.ts +3 -0
  120. package/dist/gmail-poller/setup-auth.d.ts.map +1 -0
  121. package/dist/gmail-poller/setup-auth.js +36 -0
  122. package/dist/gmail-poller/setup-auth.js.map +1 -0
  123. package/dist/gmail-poller/test.js +36 -0
  124. package/dist/index.d.ts +10 -0
  125. package/dist/index.d.ts.map +1 -0
  126. package/dist/index.js +28 -0
  127. package/dist/index.js.map +1 -0
  128. package/dist/inference/augment_levels.d.ts +2 -0
  129. package/dist/inference/augment_levels.d.ts.map +1 -0
  130. package/dist/inference/augment_levels.js +1 -0
  131. package/dist/inference/augment_levels.js.map +1 -0
  132. package/dist/inference/capture-overlay.d.ts +13 -0
  133. package/dist/inference/capture-overlay.d.ts.map +1 -0
  134. package/dist/inference/capture-overlay.js +355 -0
  135. package/dist/inference/capture-overlay.js.map +1 -0
  136. package/dist/inference/capturescreenshot.d.ts +12 -0
  137. package/dist/inference/capturescreenshot.d.ts.map +1 -0
  138. package/dist/inference/capturescreenshot.js +157 -0
  139. package/dist/inference/capturescreenshot.js.map +1 -0
  140. package/dist/jsonHandler.d.ts +37 -0
  141. package/dist/jsonHandler.d.ts.map +1 -0
  142. package/dist/jsonHandler.js +191 -0
  143. package/dist/jsonHandler.js.map +1 -0
  144. package/dist/localStorage.json +11 -0
  145. package/dist/media_data_endpoints.d.ts +2 -0
  146. package/dist/media_data_endpoints.d.ts.map +1 -0
  147. package/dist/media_data_endpoints.js +102 -0
  148. package/dist/media_data_endpoints.js.map +1 -0
  149. package/dist/operations/blender-ops.d.ts +4 -0
  150. package/dist/operations/blender-ops.d.ts.map +1 -0
  151. package/dist/operations/blender-ops.js +55 -0
  152. package/dist/operations/blender-ops.js.map +1 -0
  153. package/dist/operations.d.ts +34 -0
  154. package/dist/operations.d.ts.map +1 -0
  155. package/dist/operations.js +1514 -0
  156. package/dist/operations.js.map +1 -0
  157. package/dist/pdfRoutes.d.ts +2 -0
  158. package/dist/pdfRoutes.d.ts.map +1 -0
  159. package/dist/pdfRoutes.js +56 -0
  160. package/dist/pdfRoutes.js.map +1 -0
  161. package/dist/peers.d.ts +9 -0
  162. package/dist/peers.d.ts.map +1 -0
  163. package/dist/peers.js +70 -0
  164. package/dist/peers.js.map +1 -0
  165. package/dist/playparser.d.ts +2 -0
  166. package/dist/playparser.d.ts.map +1 -0
  167. package/dist/playparser.js +281 -0
  168. package/dist/playparser.js.map +1 -0
  169. package/dist/process.d.ts +4 -0
  170. package/dist/process.d.ts.map +1 -0
  171. package/dist/process.js +375 -0
  172. package/dist/process.js.map +1 -0
  173. package/dist/promptRoutes.d.ts +7 -0
  174. package/dist/promptRoutes.d.ts.map +1 -0
  175. package/dist/promptRoutes.js +68 -0
  176. package/dist/promptRoutes.js.map +1 -0
  177. package/dist/queueManager.d.ts +23 -0
  178. package/dist/queueManager.d.ts.map +1 -0
  179. package/dist/queueManager.js +96 -0
  180. package/dist/queueManager.js.map +1 -0
  181. package/dist/run-flow.d.ts +8 -0
  182. package/dist/run-flow.d.ts.map +1 -0
  183. package/dist/run-flow.js +220 -0
  184. package/dist/run-flow.js.map +1 -0
  185. package/dist/scraper.d.ts +2 -0
  186. package/dist/scraper.d.ts.map +1 -0
  187. package/dist/scraper.js +75 -0
  188. package/dist/scraper.js.map +1 -0
  189. package/dist/scraper_endpoints.d.ts +2 -0
  190. package/dist/scraper_endpoints.d.ts.map +1 -0
  191. package/dist/scraper_endpoints.js +40 -0
  192. package/dist/scraper_endpoints.js.map +1 -0
  193. package/dist/server.d.ts +2 -0
  194. package/dist/server.d.ts.map +1 -0
  195. package/dist/server.js +528 -0
  196. package/dist/server.js.map +1 -0
  197. package/dist/services/ModelContext.d.ts +7 -0
  198. package/dist/services/ModelContext.d.ts.map +1 -0
  199. package/dist/services/ModelContext.js +7 -0
  200. package/dist/services/ModelContext.js.map +1 -0
  201. package/dist/services/agenticUiPlanner.d.ts +27 -0
  202. package/dist/services/agenticUiPlanner.d.ts.map +1 -0
  203. package/dist/services/agenticUiPlanner.js +161 -0
  204. package/dist/services/agenticUiPlanner.js.map +1 -0
  205. package/dist/services/apiKeyService.d.ts +3 -0
  206. package/dist/services/apiKeyService.d.ts.map +1 -0
  207. package/dist/services/apiKeyService.js +7 -0
  208. package/dist/services/apiKeyService.js.map +1 -0
  209. package/dist/services/audioService.d.ts +10 -0
  210. package/dist/services/audioService.d.ts.map +1 -0
  211. package/dist/services/audioService.js +140 -0
  212. package/dist/services/audioService.js.map +1 -0
  213. package/dist/services/autoPromptOptimizer.d.ts +44 -0
  214. package/dist/services/autoPromptOptimizer.d.ts.map +1 -0
  215. package/dist/services/autoPromptOptimizer.js +344 -0
  216. package/dist/services/autoPromptOptimizer.js.map +1 -0
  217. package/dist/services/autoPromptOptimizer.manual-test.d.ts +2 -0
  218. package/dist/services/autoPromptOptimizer.manual-test.d.ts.map +1 -0
  219. package/dist/services/autoPromptOptimizer.manual-test.js +27 -0
  220. package/dist/services/autoPromptOptimizer.manual-test.js.map +1 -0
  221. package/dist/services/chainExecutor.d.ts +26 -0
  222. package/dist/services/chainExecutor.d.ts.map +1 -0
  223. package/dist/services/chainExecutor.js +399 -0
  224. package/dist/services/chainExecutor.js.map +1 -0
  225. package/dist/services/classifyImageQuestion.d.ts +55 -0
  226. package/dist/services/classifyImageQuestion.d.ts.map +1 -0
  227. package/dist/services/classifyImageQuestion.js +428 -0
  228. package/dist/services/classifyImageQuestion.js.map +1 -0
  229. package/dist/services/configuration/executor.d.ts +3 -0
  230. package/dist/services/configuration/executor.d.ts.map +1 -0
  231. package/dist/services/configuration/executor.js +795 -0
  232. package/dist/services/configuration/executor.js.map +1 -0
  233. package/dist/services/error.d.ts +13 -0
  234. package/dist/services/error.d.ts.map +1 -0
  235. package/dist/services/error.js +34 -0
  236. package/dist/services/error.js.map +1 -0
  237. package/dist/services/executor.d.ts +11 -0
  238. package/dist/services/executor.d.ts.map +1 -0
  239. package/dist/services/executor.js +1587 -0
  240. package/dist/services/executor.js.map +1 -0
  241. package/dist/services/extractPdf.d.ts +26 -0
  242. package/dist/services/extractPdf.d.ts.map +1 -0
  243. package/dist/services/extractPdf.js +256 -0
  244. package/dist/services/extractPdf.js.map +1 -0
  245. package/dist/services/generateJsTransformFromPrompt.d.ts +11 -0
  246. package/dist/services/generateJsTransformFromPrompt.d.ts.map +1 -0
  247. package/dist/services/generateJsTransformFromPrompt.js +328 -0
  248. package/dist/services/generateJsTransformFromPrompt.js.map +1 -0
  249. package/dist/services/localizeFirebaseMedia.d.ts +20 -0
  250. package/dist/services/localizeFirebaseMedia.d.ts.map +1 -0
  251. package/dist/services/localizeFirebaseMedia.js +135 -0
  252. package/dist/services/localizeFirebaseMedia.js.map +1 -0
  253. package/dist/services/polyfill_canvas.d.ts +2 -0
  254. package/dist/services/polyfill_canvas.d.ts.map +1 -0
  255. package/dist/services/polyfill_canvas.js +19 -0
  256. package/dist/services/polyfill_canvas.js.map +1 -0
  257. package/dist/services/promptRoutes.d.ts +7 -0
  258. package/dist/services/promptRoutes.d.ts.map +1 -0
  259. package/dist/services/promptRoutes.js +70 -0
  260. package/dist/services/promptRoutes.js.map +1 -0
  261. package/dist/services/runPrompt.d.ts +29 -0
  262. package/dist/services/runPrompt.d.ts.map +1 -0
  263. package/dist/services/runPrompt.js +232 -0
  264. package/dist/services/runPrompt.js.map +1 -0
  265. package/dist/services/schemaInference.d.ts +2 -0
  266. package/dist/services/schemaInference.d.ts.map +1 -0
  267. package/dist/services/schemaInference.js +17 -0
  268. package/dist/services/schemaInference.js.map +1 -0
  269. package/dist/services/self-learning/api.d.ts +2 -0
  270. package/dist/services/self-learning/api.d.ts.map +1 -0
  271. package/dist/services/self-learning/api.js +84 -0
  272. package/dist/services/self-learning/api.js.map +1 -0
  273. package/dist/services/self-learning/autolearn.d.ts +23 -0
  274. package/dist/services/self-learning/autolearn.d.ts.map +1 -0
  275. package/dist/services/self-learning/autolearn.js +308 -0
  276. package/dist/services/self-learning/autolearn.js.map +1 -0
  277. package/dist/services/self-learning/discover.d.ts +11 -0
  278. package/dist/services/self-learning/discover.d.ts.map +1 -0
  279. package/dist/services/self-learning/discover.js +446 -0
  280. package/dist/services/self-learning/discover.js.map +1 -0
  281. package/dist/services/self-learning/image.d.ts +10 -0
  282. package/dist/services/self-learning/image.d.ts.map +1 -0
  283. package/dist/services/self-learning/image.js +38 -0
  284. package/dist/services/self-learning/image.js.map +1 -0
  285. package/dist/services/self-learning/injest.d.ts +25 -0
  286. package/dist/services/self-learning/injest.d.ts.map +1 -0
  287. package/dist/services/self-learning/injest.js +110 -0
  288. package/dist/services/self-learning/injest.js.map +1 -0
  289. package/dist/services/self-learning/learn.d.ts +2 -0
  290. package/dist/services/self-learning/learn.d.ts.map +1 -0
  291. package/dist/services/self-learning/learn.js +145 -0
  292. package/dist/services/self-learning/learn.js.map +1 -0
  293. package/dist/services/self-learning/matcher.d.ts +2 -0
  294. package/dist/services/self-learning/matcher.d.ts.map +1 -0
  295. package/dist/services/self-learning/matcher.js +38 -0
  296. package/dist/services/self-learning/matcher.js.map +1 -0
  297. package/dist/services/self-learning/openai.d.ts +8 -0
  298. package/dist/services/self-learning/openai.d.ts.map +1 -0
  299. package/dist/services/self-learning/openai.js +97 -0
  300. package/dist/services/self-learning/openai.js.map +1 -0
  301. package/dist/services/self-learning/phash.d.ts +5 -0
  302. package/dist/services/self-learning/phash.d.ts.map +1 -0
  303. package/dist/services/self-learning/phash.js +68 -0
  304. package/dist/services/self-learning/phash.js.map +1 -0
  305. package/dist/services/self-learning/recognize.d.ts +17 -0
  306. package/dist/services/self-learning/recognize.d.ts.map +1 -0
  307. package/dist/services/self-learning/recognize.js +116 -0
  308. package/dist/services/self-learning/recognize.js.map +1 -0
  309. package/dist/services/self-learning/record_transition.d.ts +8 -0
  310. package/dist/services/self-learning/record_transition.d.ts.map +1 -0
  311. package/dist/services/self-learning/record_transition.js +20 -0
  312. package/dist/services/self-learning/record_transition.js.map +1 -0
  313. package/dist/services/self-learning/registry.d.ts +4 -0
  314. package/dist/services/self-learning/registry.d.ts.map +1 -0
  315. package/dist/services/self-learning/registry.js +19 -0
  316. package/dist/services/self-learning/registry.js.map +1 -0
  317. package/dist/services/self-learning/schema.d.ts +114 -0
  318. package/dist/services/self-learning/schema.d.ts.map +1 -0
  319. package/dist/services/self-learning/schema.js +70 -0
  320. package/dist/services/self-learning/schema.js.map +1 -0
  321. package/dist/services/self-learning/schemaStrictify.d.ts +2 -0
  322. package/dist/services/self-learning/schemaStrictify.d.ts.map +1 -0
  323. package/dist/services/self-learning/schemaStrictify.js +34 -0
  324. package/dist/services/self-learning/schemaStrictify.js.map +1 -0
  325. package/dist/services/self-learning/transition_graph.d.ts +6 -0
  326. package/dist/services/self-learning/transition_graph.d.ts.map +1 -0
  327. package/dist/services/self-learning/transition_graph.js +83 -0
  328. package/dist/services/self-learning/transition_graph.js.map +1 -0
  329. package/dist/services/self-learning/transition_log.d.ts +3 -0
  330. package/dist/services/self-learning/transition_log.d.ts.map +1 -0
  331. package/dist/services/self-learning/transition_log.js +42 -0
  332. package/dist/services/self-learning/transition_log.js.map +1 -0
  333. package/dist/services/self-learning/util.d.ts +3 -0
  334. package/dist/services/self-learning/util.d.ts.map +1 -0
  335. package/dist/services/self-learning/util.js +11 -0
  336. package/dist/services/self-learning/util.js.map +1 -0
  337. package/dist/services/stepByStepAiPlanner.d.ts +39 -0
  338. package/dist/services/stepByStepAiPlanner.d.ts.map +1 -0
  339. package/dist/services/stepByStepAiPlanner.js +379 -0
  340. package/dist/services/stepByStepAiPlanner.js.map +1 -0
  341. package/dist/services/test-genjs.js +39 -0
  342. package/dist/services/test-genjs.manual-test.d.ts +2 -0
  343. package/dist/services/test-genjs.manual-test.d.ts.map +1 -0
  344. package/dist/services/test-genjs.manual-test.js +40 -0
  345. package/dist/services/test-genjs.manual-test.js.map +1 -0
  346. package/dist/services/uiMapPathFinder.d.ts +13 -0
  347. package/dist/services/uiMapPathFinder.d.ts.map +1 -0
  348. package/dist/services/uiMapPathFinder.js +79 -0
  349. package/dist/services/uiMapPathFinder.js.map +1 -0
  350. package/dist/services/uiMapService.d.ts +26 -0
  351. package/dist/services/uiMapService.d.ts.map +1 -0
  352. package/dist/services/uiMapService.js +275 -0
  353. package/dist/services/uiMapService.js.map +1 -0
  354. package/dist/services/uiPlanner.d.ts +54 -0
  355. package/dist/services/uiPlanner.d.ts.map +1 -0
  356. package/dist/services/uiPlanner.js +558 -0
  357. package/dist/services/uiPlanner.js.map +1 -0
  358. package/dist/services/utilityFunctions.d.ts +80 -0
  359. package/dist/services/utilityFunctions.d.ts.map +1 -0
  360. package/dist/services/utilityFunctions.js +352 -0
  361. package/dist/services/utilityFunctions.js.map +1 -0
  362. package/dist/services/variableGenerator.d.ts +39 -0
  363. package/dist/services/variableGenerator.d.ts.map +1 -0
  364. package/dist/services/variableGenerator.js +157 -0
  365. package/dist/services/variableGenerator.js.map +1 -0
  366. package/dist/services/workflow/build-workflow.d.ts +49 -0
  367. package/dist/services/workflow/build-workflow.d.ts.map +1 -0
  368. package/dist/services/workflow/build-workflow.js +119 -0
  369. package/dist/services/workflow/build-workflow.js.map +1 -0
  370. package/dist/standardRoutes.d.ts +2 -0
  371. package/dist/standardRoutes.d.ts.map +1 -0
  372. package/dist/standardRoutes.js +1495 -0
  373. package/dist/standardRoutes.js.map +1 -0
  374. package/dist/stepWorkflowRoutes.d.ts +2 -0
  375. package/dist/stepWorkflowRoutes.d.ts.map +1 -0
  376. package/dist/stepWorkflowRoutes.js +1007 -0
  377. package/dist/stepWorkflowRoutes.js.map +1 -0
  378. package/dist/storage.d.ts +19 -0
  379. package/dist/storage.d.ts.map +1 -0
  380. package/dist/storage.docker.json +61 -0
  381. package/dist/storage.js +131 -0
  382. package/dist/storage.js.map +1 -0
  383. package/dist/storage.json +78 -0
  384. package/dist/storage_cache/boxes.json +48 -0
  385. package/dist/storage_cache/suno_state.json +3 -0
  386. package/dist/suno_download.d.ts +11 -0
  387. package/dist/suno_download.d.ts.map +1 -0
  388. package/dist/suno_download.js +33 -0
  389. package/dist/suno_download.js.map +1 -0
  390. package/dist/suno_download.py +119 -0
  391. package/dist/test-web-element-requests.d.ts +6 -0
  392. package/dist/test-web-element-requests.d.ts.map +1 -0
  393. package/dist/test-web-element-requests.js +114 -0
  394. package/dist/test-web-element-requests.js.map +1 -0
  395. package/dist/test_pdf_render.d.ts +2 -0
  396. package/dist/test_pdf_render.d.ts.map +1 -0
  397. package/dist/test_pdf_render.js +50 -0
  398. package/dist/test_pdf_render.js.map +1 -0
  399. package/dist/training_data_viewer_endpoints.d.ts +2 -0
  400. package/dist/training_data_viewer_endpoints.d.ts.map +1 -0
  401. package/dist/training_data_viewer_endpoints.js +141 -0
  402. package/dist/training_data_viewer_endpoints.js.map +1 -0
  403. package/dist/utils.d.ts +353 -0
  404. package/dist/utils.d.ts.map +1 -0
  405. package/dist/utils.js +1517 -0
  406. package/dist/utils.js.map +1 -0
  407. package/dist/vm-h100.env.template +55 -0
  408. package/dist/web-element-requests.d.ts +102 -0
  409. package/dist/web-element-requests.d.ts.map +1 -0
  410. package/dist/web-element-requests.js +278 -0
  411. package/dist/web-element-requests.js.map +1 -0
  412. package/dist/workflowRoutes.d.ts +2 -0
  413. package/dist/workflowRoutes.d.ts.map +1 -0
  414. package/dist/workflowRoutes.js +441 -0
  415. package/dist/workflowRoutes.js.map +1 -0
  416. package/package.json +109 -0
@@ -0,0 +1,13 @@
1
+ {
2
+ "type": "service_account",
3
+ "project_id": "flowframe-auto",
4
+ "private_key_id": "552b5d6d438459cc8e2ae967553ac9d029c00c1c",
5
+ "private_key": "-----BEGIN PRIVATE KEY-----\nMIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCvHsfj7Mgv3VwU\nASBZqQHgUN6V22HPDXlOpMeLlgQ6eZSxpYHTseaQtAAVfAC125Y6RrfBI+ikd5Lk\ngTuu3l7TcjPapT1DvbxgXG3XbZZMPdK2MJ5sm+7Yq76Go9h3fPEYHvdiqgERhU5D\nP3Awo2nvdg2fdElxAE8uP/KOWDFENurWyh0CxfPw1X37rAVP/rggxnT1qVWnPDmr\nVdonYOXxAz3LivVfUs8K4sjigGWNsxN7FneUY2A+R0ZSuFYO9+KufR7iE/rj9skv\nYvpC1kY3lYzgF9dBUBmRLcc0P/AlcNW/kRr8WNArgvClYzB4vgnA1utJGkfMrmEA\nJ74fWNpTAgMBAAECggEAOFaSwEUA8kUoxlbGbZHtxJi/wz5c7RvMlvx0JfgRTC6p\nI623Yr+tCYifLkpCgD8wyXbOzxgaVC8T1uesp8lqgGQRQpo+Z3i3DdkujUv4Onb5\nPxvNG+ven15BYVd84JQVjEkKFXfT+CsGzqOuGDe6cQttvorOxcfvsVVpV1oQH31z\nMH54bu1vOPhguebDGi9L7M6aIgFddOZMJnuxFk6h9gszp1wYUHIlR8DPSYF8sEgW\nO+QyVYTkCDXR9nSJf1M9eau9duJasHVaNlH9N1vfg4u/XoV59W4tS8xkSE9v6cZf\n9Z8j/Rv1m8JaKQ5jZBq3ctK8PDAN1qkypcMkjwxLoQKBgQDZFwrahz/MitjviDf3\nbwR1LmVFU6gkW4bnq21XYYiBIQEY6pIIhhUa0Rjkj3JoQhUxiD6cwcIrBaJzGkGs\nBDIA97kc9qQ3SFj6oj/PF7YP9RMIbaYX4ZLqgQHOSyDiflEL3R50wzzchvhh3fGv\nJccjAnq4KOsQ/6mLevgZxXPINwKBgQDOgf9bkzPOP2FQTijb/QVCwFMEZneChZqY\nacmghUD054yv2SfxT2y+vepxoM1Ru6cg5Hx41003MvzNocbAuY8WcoNsTKvSuhFd\nidUT1vHkYb9vMgiLUp/EbugfUbDZxJOy0KJrmVKCPaB8q6fxrefyrCtaI3vH1uPK\nzKfqdMp4xQKBgB5lM4fVWAFzj1w6Xluul5kwnc1PIUO17PWS8wRBC7PIwzaR4VCA\nNYRDspCN5R7j4cPFp76bAmyzpUMocfl7vOSVyr1bazKyVoMBJJ4CW+NwFPIhKBg/\n5SogVfhkXH5Z4U8f7pu6mlLmMvDA+o3jZDZqqnQOhpsisMJuvT4ef0+RAoGAHcom\n+iDcAk6mTR1ZS5LOZXi1ARd++fcn/ACWs29FlY6pftyGpIrelw1yen3F4Jp/W4Fa\na1wzqVjTmx5RO5AJEiXmy4Kr7rQkuSee80O4lUd8hB/ll6ONpJqTJaF1L5Tp8Yuj\nQn5VprAZLKLekUCTCzDG+DPSMVvQdHrdZjb+1jkCgYAqKH0x+Zsr/MN4bAfNZrWs\nyGTwEXfpi4yNvV+vTTT3hW0qA8/RZ1nfZqUlHaYkEjb/I6KWQMzQvVbwtcjqh1+7\n5eUa474MaSXpK0CeHZJXGA2MHiDhFkXjetFcJYtIEuXW5TXlPHFGwwuXbvNR8ktG\nohei3OvFhzee350WtCwUQQ==\n-----END PRIVATE KEY-----\n",
6
+ "client_email": "firebase-adminsdk-fbsvc@flowframe-auto.iam.gserviceaccount.com",
7
+ "client_id": "107247831545873677217",
8
+ "auth_uri": "https://accounts.google.com/o/oauth2/auth",
9
+ "token_uri": "https://oauth2.googleapis.com/token",
10
+ "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
11
+ "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/firebase-adminsdk-fbsvc%40flowframe-auto.iam.gserviceaccount.com",
12
+ "universe_domain": "googleapis.com"
13
+ }
@@ -0,0 +1,203 @@
1
+ # Microsoft Email Poller
2
+
3
+ A Node.js poller for Microsoft Outlook/Exchange emails using the Microsoft Graph API.
4
+
5
+ ## Features
6
+
7
+ - 📧 Poll for new emails with customizable queries
8
+ - 📁 Create and manage email folders
9
+ - 📦 Move emails between folders
10
+ - 🗑️ Delete emails
11
+ - 🚀 Continuous polling with callbacks
12
+ - 👤 Human-like delays and behavior
13
+ - 📄 Paginated email processing
14
+
15
+ ## Setup
16
+
17
+ ### 1. Azure AD App Registration
18
+
19
+ 1. Go to [Azure Portal](https://portal.azure.com)
20
+ 2. Navigate to "Azure Active Directory" > "App registrations"
21
+ 3. Click "New registration"
22
+ 4. Enter a name (e.g., "Email Poller App")
23
+ 5. Choose account type (Single tenant, Multitenant, or Personal)
24
+ 6. Add redirect URI: `http://localhost` (for device code flow)
25
+ 7. Click "Register"
26
+
27
+ ### 2. API Permissions
28
+
29
+ 1. In your app registration, go to "API permissions"
30
+ 2. Click "Add a permission"
31
+ 3. Select "Microsoft Graph"
32
+ 4. Add these delegated permissions:
33
+ - `Mail.Read` - Read mail in all mailboxes
34
+ - `Mail.ReadWrite` - Read and write mail in all mailboxes
35
+ - `Mail.Send` - Send mail as a user
36
+
37
+ ### 3. Environment Variables
38
+
39
+ Set these environment variables:
40
+
41
+ ```bash
42
+ export MICROSOFT_CLIENT_ID="your-client-id-here"
43
+ export MICROSOFT_TENANT_ID="your-tenant-id-here"
44
+ ```
45
+
46
+ You can find these values in your Azure AD app registration:
47
+ - **Client ID**: Found in "Overview" > "Application (client) ID"
48
+ - **Tenant ID**: Found in "Overview" > "Directory (tenant) ID"
49
+
50
+ ### 4. Install Dependencies
51
+
52
+ ```bash
53
+ npm install @microsoft/microsoft-graph-client @azure/identity
54
+ ```
55
+
56
+ ## Usage
57
+
58
+ ### Basic Example
59
+
60
+ ```javascript
61
+ import MicrosoftEmailPoller from './microsoft-email-poller.js';
62
+
63
+ const poller = new MicrosoftEmailPoller();
64
+
65
+ // Authenticate
66
+ await poller.authenticate();
67
+
68
+ // Poll for emails
69
+ const emails = await poller.pollForEmails('', 'inbox', 10);
70
+ console.log(`Found ${emails.length} emails`);
71
+
72
+ // Process emails
73
+ for (const email of emails) {
74
+ const details = await poller.getEmailDetails(email.id);
75
+ console.log(`Subject: ${details.subject}`);
76
+ console.log(`From: ${details.sender.emailAddress.address}`);
77
+ }
78
+ ```
79
+
80
+ ### Advanced Usage
81
+
82
+ ```javascript
83
+ // Create a processing folder
84
+ await poller.ensureFolderExists('Processed');
85
+
86
+ // Start polling with callback
87
+ await poller.startPolling(async (email) => {
88
+ console.log(`New email: ${email.subject}`);
89
+
90
+ // Move to processed folder
91
+ await poller.moveEmailToFolder(email.id, 'Processed');
92
+ }, '', 'inbox');
93
+ ```
94
+
95
+ ### Step Through Emails
96
+
97
+ ```javascript
98
+ // Process emails in batches
99
+ let hasMore = true;
100
+ let skip = 0;
101
+
102
+ while (hasMore) {
103
+ const result = await poller.stepThroughEmails({
104
+ folder: 'inbox',
105
+ top: 50,
106
+ skip: skip,
107
+ includeDetails: true
108
+ });
109
+
110
+ // Process the batch
111
+ for (const email of result.messages) {
112
+ // Your processing logic here
113
+ console.log(email.subject);
114
+ }
115
+
116
+ hasMore = result.hasMore;
117
+ skip = result.skip;
118
+ }
119
+ ```
120
+
121
+ ## API Reference
122
+
123
+ ### Constructor
124
+
125
+ ```javascript
126
+ const poller = new MicrosoftEmailPoller();
127
+ ```
128
+
129
+ ### Authentication
130
+
131
+ ```javascript
132
+ await poller.authenticate();
133
+ ```
134
+
135
+ ### Email Operations
136
+
137
+ ```javascript
138
+ // Poll for emails
139
+ const emails = await poller.pollForEmails(query, folder, top);
140
+
141
+ // Get email details
142
+ const details = await poller.getEmailDetails(messageId);
143
+
144
+ // Move email
145
+ await poller.moveEmail(messageId, destinationFolderId);
146
+
147
+ // Delete email
148
+ await poller.deleteEmail(messageId);
149
+ ```
150
+
151
+ ### Folder Operations
152
+
153
+ ```javascript
154
+ // Create folder
155
+ const folder = await poller.createFolder(folderName);
156
+
157
+ // Get all folders
158
+ const folders = await poller.getFolders();
159
+
160
+ // Ensure folder exists
161
+ const folder = await poller.ensureFolderExists(folderName);
162
+
163
+ // Move email to folder by name
164
+ await poller.moveEmailToFolder(messageId, folderName);
165
+ ```
166
+
167
+ ### Polling
168
+
169
+ ```javascript
170
+ // Start continuous polling
171
+ await poller.startPolling(callback, query, folder);
172
+
173
+ // Process emails with human-like behavior
174
+ await poller.processEmailsHumanLike(emailProcessor);
175
+ ```
176
+
177
+ ## Running the Example
178
+
179
+ ```bash
180
+ npm run microsoft-email-example
181
+ ```
182
+
183
+ This will demonstrate the basic functionality and help you verify your setup.
184
+
185
+ ## Differences from Gmail Poller
186
+
187
+ - Uses Microsoft Graph API instead of Gmail API
188
+ - Authentication via Azure AD device code flow
189
+ - Folder-based organization instead of labels
190
+ - Different API endpoints and request formats
191
+ - Similar human-like behavior and error handling
192
+
193
+ ## Error Handling
194
+
195
+ The poller includes comprehensive error handling and will provide helpful error messages. Common issues:
196
+
197
+ - **Authentication failed**: Check your Azure AD app registration and environment variables
198
+ - **Permissions denied**: Ensure you've granted the correct API permissions
199
+ - **Rate limiting**: The poller includes human-like delays to avoid rate limits
200
+
201
+ ## Contributing
202
+
203
+ Feel free to contribute improvements or report issues!
@@ -0,0 +1,129 @@
1
+ # Gmail Poller - Human Speed Email Management
2
+
3
+ A Node.js Gmail poller that operates at human-like speeds with full email management capabilities including moving, deleting, and organizing emails into folders.
4
+
5
+ ## Features
6
+
7
+ - 🚀 **Human-speed polling** - Operates with realistic delays to avoid rate limiting
8
+ - 📧 **Email polling** - Continuously monitor Gmail for new messages
9
+ - 📦 **Move emails** - Move emails between folders/labels
10
+ - 🗑️ **Delete emails** - Remove unwanted emails
11
+ - 📁 **Create folders** - Automatically create new Gmail labels/folders
12
+ - 🔄 **Bulk operations** - Process multiple emails with human-like delays
13
+
14
+ ## Setup
15
+
16
+ ### 1. Install Dependencies
17
+
18
+ ```bash
19
+ cd gmail-poller
20
+ npm install
21
+ ```
22
+
23
+ ### 2. Set up Google Cloud Project
24
+
25
+ 1. Go to [Google Cloud Console](https://console.cloud.google.com/)
26
+ 2. Create a new project or select existing
27
+ 3. Enable the Gmail API
28
+ 4. Create OAuth 2.0 credentials
29
+ 5. Download the `client_secret.apps.googleusercontent.com.json` file
30
+
31
+ ### 3. Authentication
32
+
33
+ Place the `client_secret.apps.googleusercontent.com.json` file in the `gmail-poller` directory and run:
34
+
35
+ ```bash
36
+ node setup-auth.js
37
+ ```
38
+
39
+ This will open a browser for authentication and save the token.
40
+
41
+ ## Usage
42
+
43
+ ### Basic Example
44
+
45
+ ```javascript
46
+ const GmailPoller = require('./gmail-poller');
47
+
48
+ async function main() {
49
+ const poller = new GmailPoller();
50
+
51
+ // Authenticate
52
+ await poller.authenticate();
53
+
54
+ // Start polling for new emails
55
+ await poller.processEmailsHumanLike(async (email) => {
56
+ console.log('New email:', email.snippet);
57
+
58
+ // Move work emails to Work folder
59
+ if (email.snippet.includes('work')) {
60
+ const workLabel = await poller.findOrCreateLabel('Work');
61
+ await poller.moveEmail(email.id, workLabel.id, ['INBOX']);
62
+ }
63
+
64
+ // Delete spam
65
+ if (email.snippet.includes('spam')) {
66
+ await poller.deleteEmail(email.id);
67
+ }
68
+ });
69
+ }
70
+
71
+ main();
72
+ ```
73
+
74
+ ### Advanced Operations
75
+
76
+ ```javascript
77
+ // Organize emails by sender
78
+ await organizeEmailsBySender(poller, 'boss@company.com', 'Important');
79
+
80
+ // Bulk delete old emails
81
+ await bulkDeleteEmails(poller, 'older_than:1y');
82
+
83
+ // Create email workflow
84
+ await createEmailWorkflow(poller);
85
+ ```
86
+
87
+ ## API Reference
88
+
89
+ ### GmailPoller Class
90
+
91
+ #### Methods
92
+
93
+ - `authenticate()` - Authenticate with Gmail API
94
+ - `pollForEmails(query, labelIds)` - Poll for emails matching criteria
95
+ - `getEmailDetails(messageId)` - Get full email details
96
+ - `moveEmail(messageId, targetLabelId, removeLabelIds)` - Move email to different label
97
+ - `deleteEmail(messageId)` - Delete an email
98
+ - `createLabel(labelName)` - Create new Gmail label/folder
99
+ - `findOrCreateLabel(labelName)` - Find existing label or create new one
100
+ - `processEmailsHumanLike(callback)` - Start polling with human-like processing
101
+
102
+ ### Configuration
103
+
104
+ - `pollInterval` - Polling frequency (default: 30 seconds)
105
+ - `humanDelayMin/Max` - Random delay range for human-like behavior (1-3 seconds)
106
+
107
+ ## Human Speed Features
108
+
109
+ - Random delays between operations (1-3 seconds)
110
+ - Realistic polling intervals (30 seconds)
111
+ - Sequential processing to avoid rate limits
112
+ - Gmail API quota awareness
113
+
114
+ ## Gmail Labels/Folders
115
+
116
+ The poller works with Gmail labels, which function as folders:
117
+
118
+ - `INBOX` - Main inbox
119
+ - `SPAM` - Spam folder
120
+ - `TRASH` - Deleted emails
121
+ - Custom labels like `Work`, `Personal`, etc.
122
+
123
+ ## Error Handling
124
+
125
+ All operations include proper error handling and logging. Failed operations are logged but don't stop the polling process.
126
+
127
+ ## License
128
+
129
+ MIT
@@ -0,0 +1,5 @@
1
+ declare function organizeEmailsBySender(poller: any, senderEmail: any, targetLabel: any): Promise<void>;
2
+ declare function bulkDeleteEmails(poller: any, query: any): Promise<void>;
3
+ declare function createEmailWorkflow(poller: any): Promise<void>;
4
+ export { organizeEmailsBySender, bulkDeleteEmails, createEmailWorkflow };
5
+ //# sourceMappingURL=example.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"example.d.ts","sourceRoot":"","sources":["../../src/gmail-poller/example.ts"],"names":[],"mappings":"AAoDA,iBAAe,sBAAsB,CAAC,MAAM,KAAA,EAAE,WAAW,KAAA,EAAE,WAAW,KAAA,iBAUrE;AAED,iBAAe,gBAAgB,CAAC,MAAM,KAAA,EAAE,KAAK,KAAA,iBAS5C;AAED,iBAAe,mBAAmB,CAAC,MAAM,KAAA,iBAuBxC;AAGD,OAAO,EACL,sBAAsB,EACtB,gBAAgB,EAChB,mBAAmB,EACpB,CAAC"}
@@ -0,0 +1,83 @@
1
+ import GmailPoller from './gmail-poller.js';
2
+ async function main() {
3
+ const poller = new GmailPoller();
4
+ try {
5
+ // Authenticate
6
+ await poller.authenticate();
7
+ console.log('🎯 Gmail Poller Example - Human Speed Operations');
8
+ console.log('==============================================');
9
+ // Example 1: Poll for new emails and process them
10
+ console.log('\n📧 Starting email poller...');
11
+ await poller.processEmailsHumanLike(async (email) => {
12
+ console.log(`📬 Processing email: ${email.snippet.substring(0, 50)}...`);
13
+ // Example operations:
14
+ // 1. Create a new folder/label if it doesn't exist
15
+ const workLabel = await poller.findOrCreateLabel('Work/Automated');
16
+ // 2. Move email to the new folder
17
+ if (email.snippet.toLowerCase().includes('work') ||
18
+ email.snippet.toLowerCase().includes('meeting')) {
19
+ await poller.moveEmail(email.id, workLabel.id, ['INBOX']);
20
+ console.log('✅ Moved work-related email to Work/Automated folder');
21
+ }
22
+ // 3. Delete spam/unwanted emails
23
+ if (email.snippet.toLowerCase().includes('spam') ||
24
+ email.snippet.toLowerCase().includes('unsubscribe')) {
25
+ await poller.deleteEmail(email.id);
26
+ console.log('🗑️ Deleted spam email');
27
+ }
28
+ // 4. Create category folders
29
+ const categories = ['Personal', 'Finance', 'Shopping', 'News'];
30
+ for (const category of categories) {
31
+ await poller.findOrCreateLabel(`Auto/${category}`);
32
+ }
33
+ console.log('📂 Ensured category folders exist');
34
+ });
35
+ }
36
+ catch (error) {
37
+ console.error('❌ Error:', error);
38
+ }
39
+ }
40
+ // Utility functions for advanced email management
41
+ async function organizeEmailsBySender(poller, senderEmail, targetLabel) {
42
+ console.log(`🔍 Finding emails from ${senderEmail}...`);
43
+ const messages = await poller.pollForEmails(`from:${senderEmail}`);
44
+ for (const message of messages) {
45
+ const email = await poller.getEmailDetails(message.id);
46
+ await poller.moveEmail(email.id, targetLabel, ['INBOX']);
47
+ console.log(`📦 Moved email from ${senderEmail} to ${targetLabel}`);
48
+ }
49
+ }
50
+ async function bulkDeleteEmails(poller, query) {
51
+ console.log(`🗑️ Finding emails to delete: ${query}`);
52
+ const messages = await poller.pollForEmails(query);
53
+ for (const message of messages) {
54
+ await poller.deleteEmail(message.id);
55
+ console.log(`🗑️ Deleted email matching: ${query}`);
56
+ }
57
+ }
58
+ async function createEmailWorkflow(poller) {
59
+ // Create workflow folders
60
+ const folders = [
61
+ 'Inbox/To-Process',
62
+ 'Inbox/Processed',
63
+ 'Archive/Old',
64
+ 'Important/Urgent',
65
+ 'Important/Review'
66
+ ];
67
+ console.log('📁 Creating workflow folders...');
68
+ for (const folder of folders) {
69
+ await poller.findOrCreateLabel(folder);
70
+ }
71
+ // Example workflow: Move old emails to archive
72
+ const oldMessages = await poller.pollForEmails('older_than:30d');
73
+ for (const message of oldMessages) {
74
+ await poller.moveEmail(message.id, 'Archive/Old', ['INBOX']);
75
+ }
76
+ console.log('✅ Workflow completed - old emails archived');
77
+ }
78
+ // Export utility functions
79
+ export { organizeEmailsBySender, bulkDeleteEmails, createEmailWorkflow };
80
+ if (import.meta.url === `file://${process.argv[1]}`) {
81
+ main();
82
+ }
83
+ //# sourceMappingURL=example.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"example.js","sourceRoot":"","sources":["../../src/gmail-poller/example.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,82 @@
1
+ declare class GmailPoller {
2
+ constructor();
3
+ /**
4
+ * Authenticate with Gmail API using OAuth2
5
+ */
6
+ authenticate(): Promise<void>;
7
+ /**
8
+ * Get human-like delay
9
+ */
10
+ getHumanDelay(): any;
11
+ /**
12
+ * Poll for new emails
13
+ */
14
+ pollForEmails(query?: string, labelIds?: string[]): Promise<any>;
15
+ /**
16
+ * Get full email details
17
+ */
18
+ getEmailDetails(messageId: any): Promise<any>;
19
+ /**
20
+ * Move email to different label/folder
21
+ */
22
+ moveEmail(messageId: any, targetLabelId: any, removeLabelIds?: any[]): Promise<any>;
23
+ /**
24
+ * Delete email
25
+ */
26
+ deleteEmail(messageId: any): Promise<void>;
27
+ /**
28
+ * Create new label/folder
29
+ */
30
+ createLabel(labelName: any): Promise<any>;
31
+ /**
32
+ * Get all labels
33
+ */
34
+ getLabels(): Promise<any>;
35
+ /**
36
+ * Find or create label
37
+ */
38
+ findOrCreateLabel(labelName: any): Promise<any>;
39
+ /**
40
+ * Ensure a folder/label exists by name
41
+ * Returns the label object (existing or newly created)
42
+ */
43
+ ensureFolderExists(folderName: any): Promise<any>;
44
+ /**
45
+ * Move an email to a specific folder by name
46
+ * Automatically ensures the folder exists before moving
47
+ */
48
+ moveEmailToFolder(messageId: any, folderName: any, removeFromInbox?: boolean): Promise<any>;
49
+ /**
50
+ * Step through emails manually with pagination
51
+ * Ensures authentication and allows controlled processing of emails
52
+ */
53
+ stepThroughEmails(options?: {}): Promise<{
54
+ messages: any;
55
+ nextPageToken: any;
56
+ hasMore: boolean;
57
+ totalMessages: any;
58
+ }>;
59
+ /**
60
+ * Start polling with callback
61
+ */
62
+ startPolling(callback: any, query?: string, labelIds?: string[]): Promise<void>;
63
+ /**
64
+ * Utility delay function
65
+ */
66
+ delay(ms: any): Promise<unknown>;
67
+ /**
68
+ * Process emails with human-like behavior
69
+ */
70
+ processEmailsHumanLike(emailProcessor: any): Promise<void>;
71
+ isTextMimeType(mimeType?: string): boolean;
72
+ isTextExtension(filename?: string): boolean;
73
+ decodeToBuffer(data: any): Buffer<ArrayBuffer>;
74
+ encodeToBase64Url(str: any): string;
75
+ collectAttachmentParts(part: any, attachments?: any[]): any[];
76
+ fetchAttachmentBuffer(messageId: any, attachmentId: any): Promise<Buffer<ArrayBuffer>>;
77
+ parsePdfAttachment(buffer: any, filename?: string): Promise<any>;
78
+ extractAttachmentText(messageId: any, part: any): Promise<any>;
79
+ includeAttachmentsInBody(message: any): Promise<any>;
80
+ }
81
+ export default GmailPoller;
82
+ //# sourceMappingURL=gmail-poller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gmail-poller.d.ts","sourceRoot":"","sources":["../../src/gmail-poller/gmail-poller.ts"],"names":[],"mappings":"AAsBA,cAAM,WAAW;;IASf;;OAEG;IACG,YAAY;IAiBlB;;OAEG;IACH,aAAa;IAIb;;OAEG;IACG,aAAa,CAAC,KAAK,SAAK,EAAE,QAAQ,WAAY;IAuBpD;;OAEG;IACG,eAAe,CAAC,SAAS,KAAA;IAqB/B;;OAEG;IACG,SAAS,CAAC,SAAS,KAAA,EAAE,aAAa,KAAA,EAAE,cAAc,QAAK;IA0B7D;;OAEG;IACG,WAAW,CAAC,SAAS,KAAA;IAqB3B;;OAEG;IACG,WAAW,CAAC,SAAS,KAAA;IA0B3B;;OAEG;IACG,SAAS;IAiBf;;OAEG;IACG,iBAAiB,CAAC,SAAS,KAAA;IAWjC;;;OAGG;IACG,kBAAkB,CAAC,UAAU,KAAA;IAgBnC;;;OAGG;IACG,iBAAiB,CAAC,SAAS,KAAA,EAAE,UAAU,KAAA,EAAE,eAAe,UAAO;IAwBrE;;;OAGG;IACG,iBAAiB,CAAC,OAAO,KAAK;;;;;;IAmDpC;;OAEG;IACG,YAAY,CAAC,QAAQ,KAAA,EAAE,KAAK,SAAK,EAAE,QAAQ,WAAY;IAyB7D;;OAEG;IACH,KAAK,CAAC,EAAE,KAAA;IAIR;;OAEG;IACG,sBAAsB,CAAC,cAAc,KAAA;IAY3C,cAAc,CAAC,QAAQ,SAAK;IAI5B,eAAe,CAAC,QAAQ,SAAK;IAK7B,cAAc,CAAC,IAAI,KAAA;IAKnB,iBAAiB,CAAC,GAAG,KAAA;IAQrB,sBAAsB,CAAC,IAAI,KAAA,EAAE,WAAW,QAAK;IAgBvC,qBAAqB,CAAC,SAAS,KAAA,EAAE,YAAY,KAAA;IAc7C,kBAAkB,CAAC,MAAM,KAAA,EAAE,QAAQ,SAAmB;IAoBtD,qBAAqB,CAAC,SAAS,KAAA,EAAE,IAAI,KAAA;IA0BrC,wBAAwB,CAAC,OAAO,KAAA;CAiDvC;AAED,eAAe,WAAW,CAAC"}