@juspay/neurolink 9.5.3 → 9.7.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 (423) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/README.md +29 -25
  3. package/dist/adapters/video/vertexVideoHandler.js +3 -3
  4. package/dist/agent/directTools.d.ts +5 -5
  5. package/dist/cli/commands/config.d.ts +9 -9
  6. package/dist/cli/commands/serve.d.ts +37 -0
  7. package/dist/cli/commands/serve.js +302 -229
  8. package/dist/cli/commands/setup-anthropic.d.ts +2 -2
  9. package/dist/cli/commands/setup-azure.d.ts +2 -2
  10. package/dist/cli/commands/setup-bedrock.d.ts +2 -2
  11. package/dist/cli/commands/setup-gcp.d.ts +2 -2
  12. package/dist/cli/commands/setup-google-ai.d.ts +2 -2
  13. package/dist/cli/commands/setup-huggingface.d.ts +2 -2
  14. package/dist/cli/commands/setup-mistral.d.ts +2 -2
  15. package/dist/cli/commands/setup-openai.d.ts +2 -2
  16. package/dist/cli/commands/setup.d.ts +2 -2
  17. package/dist/cli/factories/commandFactory.js +16 -2
  18. package/dist/cli/loop/optionsSchema.d.ts +2 -2
  19. package/dist/cli/loop/optionsSchema.js +4 -0
  20. package/dist/cli/loop/session.d.ts +4 -0
  21. package/dist/cli/loop/session.js +49 -4
  22. package/dist/cli/utils/interactiveSetup.d.ts +4 -4
  23. package/dist/config/conversationMemory.d.ts +2 -0
  24. package/dist/config/conversationMemory.js +5 -5
  25. package/dist/constants/contextWindows.d.ts +46 -0
  26. package/dist/constants/contextWindows.js +156 -0
  27. package/dist/context/budgetChecker.d.ts +18 -0
  28. package/dist/context/budgetChecker.js +71 -0
  29. package/dist/context/contextCompactor.d.ts +22 -0
  30. package/dist/context/contextCompactor.js +106 -0
  31. package/dist/context/effectiveHistory.d.ts +52 -0
  32. package/dist/context/effectiveHistory.js +105 -0
  33. package/dist/context/errorDetection.d.ts +14 -0
  34. package/dist/context/errorDetection.js +124 -0
  35. package/dist/context/fileSummarizationService.d.ts +54 -0
  36. package/dist/context/fileSummarizationService.js +255 -0
  37. package/dist/context/fileSummarizer.d.ts +56 -0
  38. package/dist/context/fileSummarizer.js +145 -0
  39. package/dist/context/fileTokenBudget.d.ts +53 -0
  40. package/dist/context/fileTokenBudget.js +127 -0
  41. package/dist/context/prompts/summarizationPrompt.d.ts +17 -0
  42. package/dist/context/prompts/summarizationPrompt.js +110 -0
  43. package/dist/context/stages/fileReadDeduplicator.d.ts +10 -0
  44. package/dist/context/stages/fileReadDeduplicator.js +66 -0
  45. package/dist/context/stages/slidingWindowTruncator.d.ts +11 -0
  46. package/dist/context/stages/slidingWindowTruncator.js +42 -0
  47. package/dist/context/stages/structuredSummarizer.d.ts +10 -0
  48. package/dist/context/stages/structuredSummarizer.js +49 -0
  49. package/dist/context/stages/toolOutputPruner.d.ts +10 -0
  50. package/dist/context/stages/toolOutputPruner.js +52 -0
  51. package/dist/context/summarizationEngine.d.ts +45 -0
  52. package/dist/context/summarizationEngine.js +110 -0
  53. package/dist/context/toolOutputLimits.d.ts +17 -0
  54. package/dist/context/toolOutputLimits.js +84 -0
  55. package/dist/context/toolPairRepair.d.ts +16 -0
  56. package/dist/context/toolPairRepair.js +66 -0
  57. package/dist/core/analytics.js +11 -4
  58. package/dist/core/baseProvider.d.ts +6 -0
  59. package/dist/core/baseProvider.js +83 -14
  60. package/dist/core/conversationMemoryManager.d.ts +14 -11
  61. package/dist/core/conversationMemoryManager.js +36 -68
  62. package/dist/core/dynamicModels.js +3 -2
  63. package/dist/core/modules/GenerationHandler.js +2 -0
  64. package/dist/core/modules/MessageBuilder.d.ts +1 -1
  65. package/dist/core/modules/MessageBuilder.js +2 -0
  66. package/dist/core/modules/TelemetryHandler.d.ts +2 -3
  67. package/dist/core/modules/TelemetryHandler.js +3 -3
  68. package/dist/core/modules/ToolsManager.d.ts +2 -2
  69. package/dist/core/redisConversationMemoryManager.d.ts +19 -14
  70. package/dist/core/redisConversationMemoryManager.js +94 -86
  71. package/dist/factories/providerFactory.d.ts +2 -2
  72. package/dist/files/fileReferenceRegistry.d.ts +276 -0
  73. package/dist/files/fileReferenceRegistry.js +1543 -0
  74. package/dist/files/fileTools.d.ts +423 -0
  75. package/dist/files/fileTools.js +449 -0
  76. package/dist/files/index.d.ts +14 -0
  77. package/dist/files/index.js +13 -0
  78. package/dist/files/streamingReader.d.ts +93 -0
  79. package/dist/files/streamingReader.js +321 -0
  80. package/dist/files/types.d.ts +23 -0
  81. package/dist/files/types.js +23 -0
  82. package/dist/image-gen/imageGenTools.d.ts +2 -2
  83. package/dist/image-gen/types.d.ts +12 -12
  84. package/dist/index.d.ts +4 -0
  85. package/dist/index.js +5 -0
  86. package/dist/lib/adapters/video/vertexVideoHandler.js +3 -3
  87. package/dist/lib/agent/directTools.d.ts +7 -7
  88. package/dist/lib/config/conversationMemory.d.ts +2 -0
  89. package/dist/lib/config/conversationMemory.js +5 -5
  90. package/dist/lib/constants/contextWindows.d.ts +46 -0
  91. package/dist/lib/constants/contextWindows.js +157 -0
  92. package/dist/lib/context/budgetChecker.d.ts +18 -0
  93. package/dist/lib/context/budgetChecker.js +72 -0
  94. package/dist/lib/context/contextCompactor.d.ts +22 -0
  95. package/dist/lib/context/contextCompactor.js +107 -0
  96. package/dist/lib/context/effectiveHistory.d.ts +52 -0
  97. package/dist/lib/context/effectiveHistory.js +106 -0
  98. package/dist/lib/context/errorDetection.d.ts +14 -0
  99. package/dist/lib/context/errorDetection.js +125 -0
  100. package/dist/lib/context/fileSummarizationService.d.ts +54 -0
  101. package/dist/lib/context/fileSummarizationService.js +256 -0
  102. package/dist/lib/context/fileSummarizer.d.ts +56 -0
  103. package/dist/lib/context/fileSummarizer.js +146 -0
  104. package/dist/lib/context/fileTokenBudget.d.ts +53 -0
  105. package/dist/lib/context/fileTokenBudget.js +128 -0
  106. package/dist/lib/context/prompts/summarizationPrompt.d.ts +17 -0
  107. package/dist/lib/context/prompts/summarizationPrompt.js +111 -0
  108. package/dist/lib/context/stages/fileReadDeduplicator.d.ts +10 -0
  109. package/dist/lib/context/stages/fileReadDeduplicator.js +67 -0
  110. package/dist/lib/context/stages/slidingWindowTruncator.d.ts +11 -0
  111. package/dist/lib/context/stages/slidingWindowTruncator.js +43 -0
  112. package/dist/lib/context/stages/structuredSummarizer.d.ts +10 -0
  113. package/dist/lib/context/stages/structuredSummarizer.js +50 -0
  114. package/dist/lib/context/stages/toolOutputPruner.d.ts +10 -0
  115. package/dist/lib/context/stages/toolOutputPruner.js +53 -0
  116. package/dist/lib/context/summarizationEngine.d.ts +45 -0
  117. package/dist/lib/context/summarizationEngine.js +111 -0
  118. package/dist/lib/context/toolOutputLimits.d.ts +17 -0
  119. package/dist/lib/context/toolOutputLimits.js +85 -0
  120. package/dist/lib/context/toolPairRepair.d.ts +16 -0
  121. package/dist/lib/context/toolPairRepair.js +67 -0
  122. package/dist/lib/core/analytics.js +11 -4
  123. package/dist/lib/core/baseProvider.d.ts +6 -0
  124. package/dist/lib/core/baseProvider.js +83 -14
  125. package/dist/lib/core/conversationMemoryManager.d.ts +14 -11
  126. package/dist/lib/core/conversationMemoryManager.js +36 -68
  127. package/dist/lib/core/dynamicModels.js +3 -2
  128. package/dist/lib/core/modules/GenerationHandler.js +2 -0
  129. package/dist/lib/core/modules/MessageBuilder.d.ts +1 -1
  130. package/dist/lib/core/modules/MessageBuilder.js +2 -0
  131. package/dist/lib/core/modules/TelemetryHandler.d.ts +2 -3
  132. package/dist/lib/core/modules/TelemetryHandler.js +3 -3
  133. package/dist/lib/core/modules/ToolsManager.d.ts +2 -2
  134. package/dist/lib/core/redisConversationMemoryManager.d.ts +19 -14
  135. package/dist/lib/core/redisConversationMemoryManager.js +94 -86
  136. package/dist/lib/factories/providerFactory.d.ts +2 -2
  137. package/dist/lib/files/fileReferenceRegistry.d.ts +276 -0
  138. package/dist/lib/files/fileReferenceRegistry.js +1544 -0
  139. package/dist/lib/files/fileTools.d.ts +423 -0
  140. package/dist/lib/files/fileTools.js +450 -0
  141. package/dist/lib/files/index.d.ts +14 -0
  142. package/dist/lib/files/index.js +14 -0
  143. package/dist/lib/files/streamingReader.d.ts +93 -0
  144. package/dist/lib/files/streamingReader.js +322 -0
  145. package/dist/lib/files/types.d.ts +23 -0
  146. package/dist/lib/files/types.js +24 -0
  147. package/dist/lib/image-gen/imageGenTools.d.ts +2 -2
  148. package/dist/lib/image-gen/types.d.ts +12 -12
  149. package/dist/lib/index.d.ts +4 -0
  150. package/dist/lib/index.js +5 -0
  151. package/dist/lib/mcp/httpRetryHandler.js +6 -2
  152. package/dist/lib/memory/mem0Initializer.d.ts +2 -2
  153. package/dist/lib/neurolink.d.ts +66 -2
  154. package/dist/lib/neurolink.js +777 -315
  155. package/dist/lib/processors/archive/ArchiveProcessor.d.ts +327 -0
  156. package/dist/lib/processors/archive/ArchiveProcessor.js +1309 -0
  157. package/dist/lib/processors/archive/index.d.ts +33 -0
  158. package/dist/lib/processors/archive/index.js +43 -0
  159. package/dist/lib/processors/base/BaseFileProcessor.js +2 -1
  160. package/dist/lib/processors/base/types.d.ts +70 -64
  161. package/dist/lib/processors/base/types.js +6 -0
  162. package/dist/lib/processors/cli/fileProcessorCli.d.ts +8 -8
  163. package/dist/lib/processors/cli/fileProcessorCli.js +5 -5
  164. package/dist/lib/processors/config/mimeTypes.js +25 -0
  165. package/dist/lib/processors/config/sizeLimits.d.ts +52 -40
  166. package/dist/lib/processors/config/sizeLimits.js +56 -44
  167. package/dist/lib/processors/document/ExcelProcessor.d.ts +14 -0
  168. package/dist/lib/processors/document/ExcelProcessor.js +72 -1
  169. package/dist/lib/processors/document/PptxProcessor.d.ts +63 -0
  170. package/dist/lib/processors/document/PptxProcessor.js +158 -0
  171. package/dist/lib/processors/document/index.d.ts +1 -0
  172. package/dist/lib/processors/document/index.js +6 -0
  173. package/dist/lib/processors/errors/FileErrorCode.d.ts +2 -2
  174. package/dist/lib/processors/errors/errorHelpers.d.ts +2 -2
  175. package/dist/lib/processors/errors/errorHelpers.js +12 -4
  176. package/dist/lib/processors/errors/errorSerializer.d.ts +4 -4
  177. package/dist/lib/processors/index.d.ts +8 -2
  178. package/dist/lib/processors/index.js +5 -2
  179. package/dist/lib/processors/integration/FileProcessorIntegration.d.ts +8 -8
  180. package/dist/lib/processors/integration/FileProcessorIntegration.js +7 -7
  181. package/dist/lib/processors/media/AudioProcessor.d.ts +328 -0
  182. package/dist/lib/processors/media/AudioProcessor.js +708 -0
  183. package/dist/lib/processors/media/VideoProcessor.d.ts +350 -0
  184. package/dist/lib/processors/media/VideoProcessor.js +992 -0
  185. package/dist/lib/processors/media/index.d.ts +27 -0
  186. package/dist/lib/processors/media/index.js +37 -0
  187. package/dist/lib/processors/registry/ProcessorRegistry.d.ts +19 -5
  188. package/dist/lib/processors/registry/ProcessorRegistry.js +103 -8
  189. package/dist/lib/processors/registry/index.d.ts +1 -1
  190. package/dist/lib/processors/registry/index.js +1 -1
  191. package/dist/lib/processors/registry/types.d.ts +2 -2
  192. package/dist/lib/providers/amazonBedrock.js +2 -1
  193. package/dist/lib/providers/anthropic.js +2 -2
  194. package/dist/lib/providers/anthropicBaseProvider.js +10 -4
  195. package/dist/lib/providers/azureOpenai.js +14 -25
  196. package/dist/lib/providers/googleAiStudio.js +136 -457
  197. package/dist/lib/providers/googleNativeGemini3.d.ts +119 -0
  198. package/dist/lib/providers/googleNativeGemini3.js +264 -0
  199. package/dist/lib/providers/googleVertex.d.ts +15 -1
  200. package/dist/lib/providers/googleVertex.js +341 -775
  201. package/dist/lib/providers/huggingFace.js +20 -5
  202. package/dist/lib/providers/litellm.js +6 -4
  203. package/dist/lib/providers/mistral.js +3 -2
  204. package/dist/lib/providers/openAI.js +2 -2
  205. package/dist/lib/providers/openRouter.js +8 -7
  206. package/dist/lib/providers/openaiCompatible.js +10 -4
  207. package/dist/lib/providers/sagemaker/detection.d.ts +6 -6
  208. package/dist/lib/providers/sagemaker/diagnostics.d.ts +4 -4
  209. package/dist/lib/providers/sagemaker/parsers.d.ts +4 -4
  210. package/dist/lib/rag/chunkers/RecursiveChunker.js +2 -2
  211. package/dist/lib/rag/document/loaders.d.ts +6 -71
  212. package/dist/lib/rag/document/loaders.js +5 -5
  213. package/dist/lib/rag/graphRag/graphRAG.js +26 -9
  214. package/dist/lib/rag/metadata/MetadataExtractorFactory.d.ts +5 -55
  215. package/dist/lib/rag/metadata/metadataExtractor.js +6 -3
  216. package/dist/lib/rag/pipeline/RAGPipeline.d.ts +8 -126
  217. package/dist/lib/rag/pipeline/RAGPipeline.js +11 -11
  218. package/dist/lib/rag/pipeline/contextAssembly.d.ts +3 -42
  219. package/dist/lib/rag/pipeline/contextAssembly.js +6 -3
  220. package/dist/lib/rag/reranker/RerankerFactory.d.ts +5 -60
  221. package/dist/lib/rag/resilience/CircuitBreaker.d.ts +3 -33
  222. package/dist/lib/rag/resilience/RetryHandler.d.ts +2 -21
  223. package/dist/lib/rag/resilience/RetryHandler.js +6 -2
  224. package/dist/lib/rag/retrieval/hybridSearch.d.ts +3 -41
  225. package/dist/lib/rag/retrieval/vectorQueryTool.d.ts +2 -13
  226. package/dist/lib/rag/retrieval/vectorQueryTool.js +4 -3
  227. package/dist/lib/rag/types.d.ts +3 -3
  228. package/dist/lib/sdk/toolRegistration.d.ts +2 -2
  229. package/dist/lib/server/middleware/cache.d.ts +2 -2
  230. package/dist/lib/server/middleware/rateLimit.d.ts +2 -2
  231. package/dist/lib/server/routes/mcpRoutes.js +277 -249
  232. package/dist/lib/server/routes/memoryRoutes.js +287 -281
  233. package/dist/lib/server/utils/validation.d.ts +10 -10
  234. package/dist/lib/services/server/ai/observability/instrumentation.d.ts +24 -2
  235. package/dist/lib/services/server/ai/observability/instrumentation.js +12 -1
  236. package/dist/lib/session/globalSessionState.d.ts +2 -2
  237. package/dist/lib/telemetry/telemetryService.d.ts +2 -2
  238. package/dist/lib/types/common.d.ts +39 -0
  239. package/dist/lib/types/contextTypes.d.ts +255 -0
  240. package/dist/lib/types/contextTypes.js +0 -2
  241. package/dist/lib/types/conversation.d.ts +62 -0
  242. package/dist/lib/types/conversationMemoryInterface.d.ts +27 -0
  243. package/dist/lib/types/conversationMemoryInterface.js +7 -0
  244. package/dist/lib/types/fileReferenceTypes.d.ts +222 -0
  245. package/dist/lib/types/fileReferenceTypes.js +9 -0
  246. package/dist/lib/types/fileTypes.d.ts +26 -3
  247. package/dist/lib/types/generateTypes.d.ts +50 -1
  248. package/dist/lib/types/index.d.ts +4 -5
  249. package/dist/lib/types/index.js +8 -10
  250. package/dist/lib/types/modelTypes.d.ts +2 -2
  251. package/dist/lib/types/processorTypes.d.ts +597 -0
  252. package/dist/lib/types/processorTypes.js +91 -0
  253. package/dist/lib/types/ragTypes.d.ts +489 -0
  254. package/dist/lib/types/ragTypes.js +8 -0
  255. package/dist/lib/types/sdkTypes.d.ts +17 -18
  256. package/dist/lib/types/streamTypes.d.ts +24 -1
  257. package/dist/lib/utils/async/retry.d.ts +2 -2
  258. package/dist/lib/utils/async/withTimeout.js +3 -1
  259. package/dist/lib/utils/conversationMemory.d.ts +12 -6
  260. package/dist/lib/utils/conversationMemory.js +91 -36
  261. package/dist/lib/utils/errorHandling.d.ts +5 -0
  262. package/dist/lib/utils/errorHandling.js +19 -0
  263. package/dist/lib/utils/fileDetector.d.ts +62 -0
  264. package/dist/lib/utils/fileDetector.js +1014 -14
  265. package/dist/lib/utils/json/safeParse.d.ts +2 -2
  266. package/dist/lib/utils/messageBuilder.js +806 -153
  267. package/dist/lib/utils/modelChoices.d.ts +2 -2
  268. package/dist/lib/utils/multimodalOptionsBuilder.d.ts +2 -1
  269. package/dist/lib/utils/multimodalOptionsBuilder.js +1 -0
  270. package/dist/lib/utils/pricing.d.ts +12 -0
  271. package/dist/lib/utils/pricing.js +134 -0
  272. package/dist/lib/utils/rateLimiter.d.ts +2 -2
  273. package/dist/lib/utils/redis.d.ts +17 -0
  274. package/dist/lib/utils/redis.js +105 -0
  275. package/dist/lib/utils/sanitizers/filename.d.ts +4 -4
  276. package/dist/lib/utils/sanitizers/svg.d.ts +2 -2
  277. package/dist/lib/utils/thinkingConfig.d.ts +6 -6
  278. package/dist/lib/utils/timeout.d.ts +10 -0
  279. package/dist/lib/utils/timeout.js +15 -0
  280. package/dist/lib/utils/tokenEstimation.d.ts +68 -0
  281. package/dist/lib/utils/tokenEstimation.js +113 -0
  282. package/dist/lib/utils/tokenUtils.d.ts +4 -4
  283. package/dist/lib/utils/ttsProcessor.d.ts +2 -2
  284. package/dist/lib/workflow/config.d.ts +150 -150
  285. package/dist/mcp/httpRetryHandler.js +6 -2
  286. package/dist/memory/mem0Initializer.d.ts +2 -2
  287. package/dist/neurolink.d.ts +66 -2
  288. package/dist/neurolink.js +777 -315
  289. package/dist/processors/archive/ArchiveProcessor.d.ts +327 -0
  290. package/dist/processors/archive/ArchiveProcessor.js +1308 -0
  291. package/dist/processors/archive/index.d.ts +33 -0
  292. package/dist/processors/archive/index.js +42 -0
  293. package/dist/processors/base/BaseFileProcessor.js +2 -1
  294. package/dist/processors/base/types.d.ts +70 -64
  295. package/dist/processors/base/types.js +6 -0
  296. package/dist/processors/cli/fileProcessorCli.d.ts +8 -8
  297. package/dist/processors/cli/fileProcessorCli.js +5 -5
  298. package/dist/processors/config/mimeTypes.js +25 -0
  299. package/dist/processors/config/sizeLimits.d.ts +52 -40
  300. package/dist/processors/config/sizeLimits.js +56 -44
  301. package/dist/processors/document/ExcelProcessor.d.ts +14 -0
  302. package/dist/processors/document/ExcelProcessor.js +72 -1
  303. package/dist/processors/document/PptxProcessor.d.ts +63 -0
  304. package/dist/processors/document/PptxProcessor.js +157 -0
  305. package/dist/processors/document/index.d.ts +1 -0
  306. package/dist/processors/document/index.js +6 -0
  307. package/dist/processors/errors/FileErrorCode.d.ts +2 -2
  308. package/dist/processors/errors/errorHelpers.d.ts +2 -2
  309. package/dist/processors/errors/errorHelpers.js +12 -4
  310. package/dist/processors/errors/errorSerializer.d.ts +4 -4
  311. package/dist/processors/index.d.ts +8 -2
  312. package/dist/processors/index.js +5 -2
  313. package/dist/processors/integration/FileProcessorIntegration.d.ts +8 -8
  314. package/dist/processors/integration/FileProcessorIntegration.js +7 -7
  315. package/dist/processors/media/AudioProcessor.d.ts +328 -0
  316. package/dist/processors/media/AudioProcessor.js +707 -0
  317. package/dist/processors/media/VideoProcessor.d.ts +350 -0
  318. package/dist/processors/media/VideoProcessor.js +991 -0
  319. package/dist/processors/media/ffprobe-static.d.ts +4 -0
  320. package/dist/processors/media/index.d.ts +27 -0
  321. package/dist/processors/media/index.js +36 -0
  322. package/dist/processors/registry/ProcessorRegistry.d.ts +19 -5
  323. package/dist/processors/registry/ProcessorRegistry.js +103 -8
  324. package/dist/processors/registry/index.d.ts +1 -1
  325. package/dist/processors/registry/index.js +1 -1
  326. package/dist/processors/registry/types.d.ts +2 -2
  327. package/dist/providers/amazonBedrock.js +2 -1
  328. package/dist/providers/anthropic.js +2 -2
  329. package/dist/providers/anthropicBaseProvider.js +10 -4
  330. package/dist/providers/azureOpenai.js +14 -25
  331. package/dist/providers/googleAiStudio.js +136 -457
  332. package/dist/providers/googleNativeGemini3.d.ts +119 -0
  333. package/dist/providers/googleNativeGemini3.js +263 -0
  334. package/dist/providers/googleVertex.d.ts +15 -1
  335. package/dist/providers/googleVertex.js +341 -775
  336. package/dist/providers/huggingFace.js +20 -5
  337. package/dist/providers/litellm.js +6 -4
  338. package/dist/providers/mistral.js +3 -2
  339. package/dist/providers/openAI.js +2 -2
  340. package/dist/providers/openRouter.js +8 -7
  341. package/dist/providers/openaiCompatible.js +10 -4
  342. package/dist/providers/sagemaker/detection.d.ts +6 -6
  343. package/dist/providers/sagemaker/diagnostics.d.ts +4 -4
  344. package/dist/providers/sagemaker/parsers.d.ts +4 -4
  345. package/dist/rag/chunkers/RecursiveChunker.js +2 -2
  346. package/dist/rag/document/loaders.d.ts +6 -71
  347. package/dist/rag/document/loaders.js +5 -5
  348. package/dist/rag/graphRag/graphRAG.js +26 -9
  349. package/dist/rag/metadata/MetadataExtractorFactory.d.ts +5 -55
  350. package/dist/rag/metadata/metadataExtractor.js +6 -3
  351. package/dist/rag/pipeline/RAGPipeline.d.ts +8 -126
  352. package/dist/rag/pipeline/RAGPipeline.js +11 -11
  353. package/dist/rag/pipeline/contextAssembly.d.ts +3 -42
  354. package/dist/rag/pipeline/contextAssembly.js +6 -3
  355. package/dist/rag/reranker/RerankerFactory.d.ts +5 -60
  356. package/dist/rag/resilience/CircuitBreaker.d.ts +3 -33
  357. package/dist/rag/resilience/RetryHandler.d.ts +2 -21
  358. package/dist/rag/resilience/RetryHandler.js +6 -2
  359. package/dist/rag/retrieval/hybridSearch.d.ts +3 -41
  360. package/dist/rag/retrieval/vectorQueryTool.d.ts +2 -13
  361. package/dist/rag/retrieval/vectorQueryTool.js +4 -3
  362. package/dist/rag/types.d.ts +3 -3
  363. package/dist/sdk/toolRegistration.d.ts +2 -2
  364. package/dist/server/middleware/cache.d.ts +2 -2
  365. package/dist/server/middleware/rateLimit.d.ts +2 -2
  366. package/dist/server/routes/mcpRoutes.js +277 -249
  367. package/dist/server/routes/memoryRoutes.js +287 -281
  368. package/dist/server/utils/validation.d.ts +4 -4
  369. package/dist/services/server/ai/observability/instrumentation.d.ts +24 -2
  370. package/dist/services/server/ai/observability/instrumentation.js +12 -1
  371. package/dist/session/globalSessionState.d.ts +2 -2
  372. package/dist/telemetry/telemetryService.d.ts +2 -2
  373. package/dist/types/common.d.ts +39 -0
  374. package/dist/types/contextTypes.d.ts +255 -0
  375. package/dist/types/contextTypes.js +0 -2
  376. package/dist/types/conversation.d.ts +62 -0
  377. package/dist/types/conversationMemoryInterface.d.ts +27 -0
  378. package/dist/types/conversationMemoryInterface.js +6 -0
  379. package/dist/types/fileReferenceTypes.d.ts +222 -0
  380. package/dist/types/fileReferenceTypes.js +8 -0
  381. package/dist/types/fileTypes.d.ts +26 -3
  382. package/dist/types/generateTypes.d.ts +50 -1
  383. package/dist/types/index.d.ts +4 -5
  384. package/dist/types/index.js +8 -10
  385. package/dist/types/processorTypes.d.ts +597 -0
  386. package/dist/types/processorTypes.js +90 -0
  387. package/dist/types/ragTypes.d.ts +489 -0
  388. package/dist/types/ragTypes.js +7 -0
  389. package/dist/types/sdkTypes.d.ts +17 -18
  390. package/dist/types/streamTypes.d.ts +24 -1
  391. package/dist/utils/async/retry.d.ts +2 -2
  392. package/dist/utils/async/withTimeout.js +3 -1
  393. package/dist/utils/conversationMemory.d.ts +12 -6
  394. package/dist/utils/conversationMemory.js +91 -36
  395. package/dist/utils/errorHandling.d.ts +5 -0
  396. package/dist/utils/errorHandling.js +19 -0
  397. package/dist/utils/fileDetector.d.ts +62 -0
  398. package/dist/utils/fileDetector.js +1014 -14
  399. package/dist/utils/json/safeParse.d.ts +2 -2
  400. package/dist/utils/messageBuilder.js +806 -153
  401. package/dist/utils/modelChoices.d.ts +2 -2
  402. package/dist/utils/multimodalOptionsBuilder.d.ts +2 -1
  403. package/dist/utils/multimodalOptionsBuilder.js +1 -0
  404. package/dist/utils/pricing.d.ts +12 -0
  405. package/dist/utils/pricing.js +133 -0
  406. package/dist/utils/rateLimiter.d.ts +2 -2
  407. package/dist/utils/redis.d.ts +17 -0
  408. package/dist/utils/redis.js +105 -0
  409. package/dist/utils/sanitizers/filename.d.ts +4 -4
  410. package/dist/utils/sanitizers/svg.d.ts +2 -2
  411. package/dist/utils/thinkingConfig.d.ts +6 -6
  412. package/dist/utils/timeout.d.ts +10 -0
  413. package/dist/utils/timeout.js +15 -0
  414. package/dist/utils/tokenEstimation.d.ts +68 -0
  415. package/dist/utils/tokenEstimation.js +112 -0
  416. package/dist/utils/tokenUtils.d.ts +4 -4
  417. package/dist/utils/ttsProcessor.d.ts +2 -2
  418. package/dist/workflow/config.d.ts +104 -104
  419. package/package.json +18 -6
  420. package/dist/lib/utils/conversationMemoryUtils.d.ts +0 -25
  421. package/dist/lib/utils/conversationMemoryUtils.js +0 -138
  422. package/dist/utils/conversationMemoryUtils.d.ts +0 -25
  423. package/dist/utils/conversationMemoryUtils.js +0 -137
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Archive Processors Module
3
+ *
4
+ * Exports archive file processors for ZIP, TAR, TAR.GZ, and GZ formats.
5
+ * Handles downloading, validating, and extracting file listings from archives
6
+ * with comprehensive security validation.
7
+ *
8
+ * @module processors/archive
9
+ *
10
+ * @example
11
+ * ```typescript
12
+ * import {
13
+ * ArchiveProcessor,
14
+ * archiveProcessor,
15
+ * isArchiveFile,
16
+ * processArchive,
17
+ * type ProcessedArchive,
18
+ * type ArchiveEntry,
19
+ * type ArchiveFormat,
20
+ * } from "./archive/index.js";
21
+ *
22
+ * // Check if a file is an archive
23
+ * if (isArchiveFile(file.mimetype, file.name)) {
24
+ * const result = await processArchive(fileInfo);
25
+ * if (result.success) {
26
+ * console.log(`Format: ${result.data.archiveMetadata.format}`);
27
+ * console.log(`Entries: ${result.data.archiveMetadata.totalEntries}`);
28
+ * console.log(result.data.textContent);
29
+ * }
30
+ * }
31
+ * ```
32
+ */
33
+ export { type ArchiveEntry, type ArchiveFormat, ArchiveProcessor, archiveProcessor, isArchiveFile, type ProcessedArchive, processArchive, } from "./ArchiveProcessor.js";
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Archive Processors Module
3
+ *
4
+ * Exports archive file processors for ZIP, TAR, TAR.GZ, and GZ formats.
5
+ * Handles downloading, validating, and extracting file listings from archives
6
+ * with comprehensive security validation.
7
+ *
8
+ * @module processors/archive
9
+ *
10
+ * @example
11
+ * ```typescript
12
+ * import {
13
+ * ArchiveProcessor,
14
+ * archiveProcessor,
15
+ * isArchiveFile,
16
+ * processArchive,
17
+ * type ProcessedArchive,
18
+ * type ArchiveEntry,
19
+ * type ArchiveFormat,
20
+ * } from "./archive/index.js";
21
+ *
22
+ * // Check if a file is an archive
23
+ * if (isArchiveFile(file.mimetype, file.name)) {
24
+ * const result = await processArchive(fileInfo);
25
+ * if (result.success) {
26
+ * console.log(`Format: ${result.data.archiveMetadata.format}`);
27
+ * console.log(`Entries: ${result.data.archiveMetadata.totalEntries}`);
28
+ * console.log(result.data.textContent);
29
+ * }
30
+ * }
31
+ * ```
32
+ */
33
+ // =============================================================================
34
+ // ARCHIVE PROCESSOR
35
+ // =============================================================================
36
+ export {
37
+ // Class
38
+ ArchiveProcessor,
39
+ // Singleton instance
40
+ archiveProcessor,
41
+ // Helper functions
42
+ isArchiveFile, processArchive, } from "./ArchiveProcessor.js";
43
+ //# sourceMappingURL=index.js.map
@@ -46,6 +46,7 @@
46
46
  import { promisify } from "util";
47
47
  import { gunzip } from "zlib";
48
48
  import { SIZE_LIMITS } from "../config/index.js";
49
+ import { isAbortError } from "../../utils/errorHandling.js";
49
50
  import { createFileError, extractHttpStatus, FileErrorCode, isRetryableError, } from "../errors/index.js";
50
51
  import { DEFAULT_RETRY_CONFIG } from "./types.js";
51
52
  const gunzipAsync = promisify(gunzip);
@@ -545,7 +546,7 @@ export class BaseFileProcessor {
545
546
  * @returns Structured file processing error
546
547
  */
547
548
  classifyDownloadError(error) {
548
- if (error.name === "AbortError") {
549
+ if (isAbortError(error)) {
549
550
  return this.createError(FileErrorCode.DOWNLOAD_TIMEOUT, { timeoutMs: this.config.timeoutMs }, error);
550
551
  }
551
552
  if (error.message.includes("HTTP")) {
@@ -22,7 +22,7 @@ import type { FileErrorCode } from "../errors/FileErrorCode.js";
22
22
  * };
23
23
  * ```
24
24
  */
25
- export interface FileInfo {
25
+ export type FileInfo = {
26
26
  /** Unique identifier for the file */
27
27
  id: string;
28
28
  /** Original filename */
@@ -37,12 +37,12 @@ export interface FileInfo {
37
37
  buffer?: Buffer;
38
38
  /** Extensibility - additional provider-specific metadata */
39
39
  metadata?: Record<string, unknown>;
40
- }
40
+ };
41
41
  /**
42
42
  * Configuration for file processors.
43
43
  * Defines constraints and defaults for a specific file type processor.
44
44
  */
45
- export interface FileProcessorConfig {
45
+ export type FileProcessorConfig = {
46
46
  /** Maximum file size in megabytes */
47
47
  maxSizeMB: number;
48
48
  /** Download/processing timeout in milliseconds */
@@ -55,12 +55,12 @@ export interface FileProcessorConfig {
55
55
  fileTypeName: string;
56
56
  /** Default filename when original name is not available */
57
57
  defaultFilename: string;
58
- }
58
+ };
59
59
  /**
60
60
  * Base interface for processed file data.
61
61
  * All specific processed types should extend this interface.
62
62
  */
63
- export interface ProcessedFileBase {
63
+ export type ProcessedFileBase = {
64
64
  /** File content as a Buffer */
65
65
  buffer: Buffer;
66
66
  /** MIME type of the processed content */
@@ -69,12 +69,12 @@ export interface ProcessedFileBase {
69
69
  size: number;
70
70
  /** Filename (may be normalized or sanitized) */
71
71
  filename: string;
72
- }
72
+ };
73
73
  /**
74
74
  * Structured file processing error with user-friendly messaging.
75
75
  * This is the canonical error type used across all processor infrastructure.
76
76
  */
77
- export interface FileProcessingError {
77
+ export type FileProcessingError = {
78
78
  /** Error code from FileErrorCode enum */
79
79
  code: FileErrorCode | string;
80
80
  /** Technical error message */
@@ -91,19 +91,19 @@ export interface FileProcessingError {
91
91
  technicalDetails?: string;
92
92
  /** Original error that caused this failure */
93
93
  originalError?: Error;
94
- }
94
+ };
95
95
  /**
96
96
  * Generic result type for internal operations.
97
97
  * Used for validation and download operations that don't return ProcessedFileBase.
98
98
  */
99
- export interface OperationResult<T = void> {
99
+ export type OperationResult<T = void> = {
100
100
  /** Whether the operation was successful */
101
101
  success: boolean;
102
102
  /** Operation result data (present when success is true) */
103
103
  data?: T;
104
104
  /** Error information (present when success is false) */
105
105
  error?: FileProcessingError;
106
- }
106
+ };
107
107
  /**
108
108
  * Result of a file processing operation.
109
109
  * Uses discriminated union pattern for type-safe error handling.
@@ -118,19 +118,19 @@ export interface OperationResult<T = void> {
118
118
  * }
119
119
  * ```
120
120
  */
121
- export interface FileProcessingResult<T extends ProcessedFileBase = ProcessedFileBase> {
121
+ export type FileProcessingResult<T extends ProcessedFileBase = ProcessedFileBase> = {
122
122
  /** Whether the processing was successful */
123
123
  success: boolean;
124
124
  /** Processed file data (present when success is true) */
125
125
  data?: T;
126
126
  /** Error information (present when success is false) */
127
127
  error?: FileProcessingError;
128
- }
128
+ };
129
129
  /**
130
130
  * Configuration for retry behavior on transient failures.
131
131
  * Implements exponential backoff with optional custom retry predicate.
132
132
  */
133
- export interface RetryConfig {
133
+ export type RetryConfig = {
134
134
  /** Maximum number of retry attempts */
135
135
  maxRetries: number;
136
136
  /** Base delay between retries in milliseconds */
@@ -139,19 +139,19 @@ export interface RetryConfig {
139
139
  maxDelayMs: number;
140
140
  /** Optional custom function to determine if an error is retryable */
141
141
  retryOn?: (error: Error) => boolean;
142
- }
142
+ };
143
143
  /**
144
144
  * Options for file processing operations.
145
145
  * Allows customization of download behavior and retry logic.
146
146
  */
147
- export interface ProcessOptions {
147
+ export type ProcessOptions = {
148
148
  /** Authentication headers for download requests */
149
149
  authHeaders?: Record<string, string>;
150
150
  /** Override default timeout (in milliseconds) */
151
151
  timeout?: number;
152
152
  /** Retry configuration for transient failures */
153
153
  retryConfig?: RetryConfig;
154
- }
154
+ };
155
155
  /**
156
156
  * Default retry configuration for file downloads.
157
157
  * Uses exponential backoff: 1s, 2s, 4s (capped at maxDelayMs)
@@ -168,7 +168,7 @@ export declare const DEFAULT_IMAGE_MAX_SIZE_MB = 10;
168
168
  /**
169
169
  * Information about a successfully processed file.
170
170
  */
171
- export interface ProcessedFileInfo {
171
+ export type ProcessedFileInfo = {
172
172
  /** File identifier */
173
173
  fileId: string;
174
174
  /** Filename */
@@ -179,11 +179,11 @@ export interface ProcessedFileInfo {
179
179
  size: number;
180
180
  /** Type of processor used */
181
181
  processorType: string;
182
- }
182
+ };
183
183
  /**
184
184
  * Information about a file that failed to process.
185
185
  */
186
- export interface FailedFileInfo {
186
+ export type FailedFileInfo = {
187
187
  /** File identifier */
188
188
  fileId: string;
189
189
  /** Filename */
@@ -194,11 +194,11 @@ export interface FailedFileInfo {
194
194
  size: number;
195
195
  /** Error that caused the failure */
196
196
  error: FileProcessingError;
197
- }
197
+ };
198
198
  /**
199
199
  * Information about a file that was skipped.
200
200
  */
201
- export interface SkippedFileInfo {
201
+ export type SkippedFileInfo = {
202
202
  /** File identifier */
203
203
  fileId: string;
204
204
  /** Filename */
@@ -211,22 +211,22 @@ export interface SkippedFileInfo {
211
211
  reason: string;
212
212
  /** Suggested alternative action */
213
213
  suggestedAlternative?: string;
214
- }
214
+ };
215
215
  /**
216
216
  * Warning about a file (non-fatal issue).
217
217
  */
218
- export interface FileWarning {
218
+ export type FileWarning = {
219
219
  /** File identifier */
220
220
  fileId: string;
221
221
  /** Filename */
222
222
  filename: string;
223
223
  /** Warning message */
224
224
  message: string;
225
- }
225
+ };
226
226
  /**
227
227
  * Summary of batch file processing operations.
228
228
  */
229
- export interface BatchProcessingSummary<T extends ProcessedFileBase = ProcessedFileBase> {
229
+ export type BatchProcessingSummary<T extends ProcessedFileBase = ProcessedFileBase> = {
230
230
  /** Total number of files attempted */
231
231
  totalFiles: number;
232
232
  /** Successfully processed files */
@@ -239,7 +239,7 @@ export interface BatchProcessingSummary<T extends ProcessedFileBase = ProcessedF
239
239
  warnings: FileWarning[];
240
240
  /** Processed results (parallel array with processedFiles) */
241
241
  results: T[];
242
- }
242
+ };
243
243
  /**
244
244
  * Result of finding a matching processor for a file.
245
245
  * Includes both the processor and metadata about the match quality.
@@ -247,7 +247,7 @@ export interface BatchProcessingSummary<T extends ProcessedFileBase = ProcessedF
247
247
  * Note: `processor` is typed as `unknown` here to avoid circular dependency
248
248
  * on BaseFileProcessor. The registry module uses the properly typed version.
249
249
  */
250
- export interface ProcessorMatch<_T extends ProcessedFileBase = ProcessedFileBase> {
250
+ export type ProcessorMatch<_T extends ProcessedFileBase = ProcessedFileBase> = {
251
251
  /** Name of the matched processor */
252
252
  name: string;
253
253
  /** The processor instance */
@@ -263,12 +263,12 @@ export interface ProcessorMatch<_T extends ProcessedFileBase = ProcessedFileBase
263
263
  * - 40: Generic/fallback match
264
264
  */
265
265
  confidence: number;
266
- }
266
+ };
267
267
  /**
268
268
  * Options for registry operations.
269
269
  * Controls behavior when registering processors.
270
270
  */
271
- export interface RegistryOptions {
271
+ export type RegistryOptions = {
272
272
  /**
273
273
  * Allow registering processors with duplicate names.
274
274
  * If false (default), an error is thrown on duplicate names.
@@ -279,12 +279,12 @@ export interface RegistryOptions {
279
279
  * Takes precedence over allowDuplicates.
280
280
  */
281
281
  overwriteExisting?: boolean;
282
- }
282
+ };
283
283
  /**
284
284
  * Detailed error information for unsupported file types.
285
285
  * Provides helpful suggestions for the user.
286
286
  */
287
- export interface UnsupportedFileError {
287
+ export type UnsupportedFileError = {
288
288
  /** Error code for programmatic handling */
289
289
  code: "NO_PROCESSOR_FOUND" | "PROCESSING_FAILED";
290
290
  /** Human-readable error message */
@@ -297,19 +297,19 @@ export interface UnsupportedFileError {
297
297
  suggestion: string;
298
298
  /** List of supported file types */
299
299
  supportedTypes: string[];
300
- }
300
+ };
301
301
  /**
302
302
  * Result of processing a file through the registry.
303
303
  * Includes type information for tracking which processor was used.
304
304
  */
305
- export interface RegistryProcessResult<T = unknown> {
305
+ export type RegistryProcessResult<T = unknown> = {
306
306
  /** Type/name of the processor that handled the file */
307
307
  type: string;
308
308
  /** Processed data (null if processing failed) */
309
309
  data: T | null;
310
310
  /** Error information if processing failed */
311
311
  error?: UnsupportedFileError;
312
- }
312
+ };
313
313
  /**
314
314
  * Priority levels for file processors.
315
315
  * Lower number = higher priority = matched first.
@@ -354,6 +354,12 @@ export declare const PROCESSOR_PRIORITIES: {
354
354
  readonly RTF: 140;
355
355
  /** OpenDocument format files */
356
356
  readonly OPENDOCUMENT: 150;
357
+ /** Video files */
358
+ readonly VIDEO: 160;
359
+ /** Audio files */
360
+ readonly AUDIO: 170;
361
+ /** Archive files */
362
+ readonly ARCHIVE: 180;
357
363
  };
358
364
  /**
359
365
  * Type for processor priority keys
@@ -367,7 +373,7 @@ export type ProcessorPriorityValue = (typeof PROCESSOR_PRIORITIES)[ProcessorPrio
367
373
  * Information about a registered processor.
368
374
  * Used for discovery and documentation.
369
375
  */
370
- export interface ProcessorInfo {
376
+ export type ProcessorInfo = {
371
377
  /** Unique name for the processor */
372
378
  name: string;
373
379
  /** Human-readable description */
@@ -378,7 +384,7 @@ export interface ProcessorInfo {
378
384
  supportedExtensions: string[];
379
385
  /** Priority level (lower = higher priority) */
380
386
  priority?: number;
381
- }
387
+ };
382
388
  /**
383
389
  * Error message template with user-friendly messaging and retry information.
384
390
  * Re-exported from errors module for convenience.
@@ -388,7 +394,7 @@ export type { ErrorMessageTemplate, FileErrorCode, } from "../errors/FileErrorCo
388
394
  * Processed SVG result.
389
395
  * Extends ProcessedFileBase with SVG-specific fields.
390
396
  */
391
- export interface ProcessedSvg extends ProcessedFileBase {
397
+ export type ProcessedSvg = ProcessedFileBase & {
392
398
  /** Sanitized SVG content as text for AI processing */
393
399
  textContent: string;
394
400
  /** Original raw content (only included if sanitization modified the content) */
@@ -397,11 +403,11 @@ export interface ProcessedSvg extends ProcessedFileBase {
397
403
  sanitized: boolean;
398
404
  /** Security warnings found during processing */
399
405
  securityWarnings: string[];
400
- }
406
+ };
401
407
  /**
402
408
  * Processed XML file result.
403
409
  */
404
- export interface ProcessedXml extends ProcessedFileBase {
410
+ export type ProcessedXml = ProcessedFileBase & {
405
411
  /** Original XML content */
406
412
  content: string;
407
413
  /** Parsed XML content (as JavaScript object) */
@@ -412,11 +418,11 @@ export interface ProcessedXml extends ProcessedFileBase {
412
418
  errorMessage?: string;
413
419
  /** Name of the root element */
414
420
  rootElement?: string;
415
- }
421
+ };
416
422
  /**
417
423
  * Processed Markdown result.
418
424
  */
419
- export interface ProcessedMarkdown extends ProcessedFileBase {
425
+ export type ProcessedMarkdown = ProcessedFileBase & {
420
426
  /** Original Markdown content */
421
427
  content: string;
422
428
  /** Total number of lines in the document */
@@ -427,11 +433,11 @@ export interface ProcessedMarkdown extends ProcessedFileBase {
427
433
  hasTables: boolean;
428
434
  /** List of headings extracted from the document */
429
435
  headings: string[];
430
- }
436
+ };
431
437
  /**
432
438
  * Processed source code result.
433
439
  */
434
- export interface ProcessedSourceCode extends ProcessedFileBase {
440
+ export type ProcessedSourceCode = ProcessedFileBase & {
435
441
  /** The source code content (may be truncated) */
436
442
  content: string;
437
443
  /** Detected programming language (e.g., "TypeScript", "Python") */
@@ -442,11 +448,11 @@ export interface ProcessedSourceCode extends ProcessedFileBase {
442
448
  truncated: boolean;
443
449
  /** Character encoding used to decode the file */
444
450
  encoding: string;
445
- }
451
+ };
446
452
  /**
447
453
  * Processed configuration file result.
448
454
  */
449
- export interface ProcessedConfig extends ProcessedFileBase {
455
+ export type ProcessedConfig = ProcessedFileBase & {
450
456
  /** The configuration file content with redacted sensitive values */
451
457
  content: string;
452
458
  /** Detected configuration format */
@@ -455,11 +461,11 @@ export interface ProcessedConfig extends ProcessedFileBase {
455
461
  keyValues: Record<string, string>;
456
462
  /** List of keys that were redacted for security */
457
463
  redactedKeys: string[];
458
- }
464
+ };
459
465
  /**
460
466
  * Processed OpenDocument result.
461
467
  */
462
- export interface ProcessedOpenDocument extends ProcessedFileBase {
468
+ export type ProcessedOpenDocument = ProcessedFileBase & {
463
469
  /** Extracted text content */
464
470
  textContent: string;
465
471
  /** Document format type */
@@ -468,11 +474,11 @@ export interface ProcessedOpenDocument extends ProcessedFileBase {
468
474
  paragraphCount: number;
469
475
  /** Whether content was truncated */
470
476
  truncated: boolean;
471
- }
477
+ };
472
478
  /**
473
479
  * Processed JSON file result.
474
480
  */
475
- export interface ProcessedJson extends ProcessedFileBase {
481
+ export type ProcessedJson = ProcessedFileBase & {
476
482
  /** Pretty-printed JSON content (or original content if invalid) */
477
483
  content: string;
478
484
  /** Original raw content before pretty-printing */
@@ -489,11 +495,11 @@ export interface ProcessedJson extends ProcessedFileBase {
489
495
  arrayLength?: number;
490
496
  /** Whether content was truncated */
491
497
  truncated: boolean;
492
- }
498
+ };
493
499
  /**
494
500
  * Processed plain text file result.
495
501
  */
496
- export interface ProcessedText extends ProcessedFileBase {
502
+ export type ProcessedText = ProcessedFileBase & {
497
503
  /** Text content (may be truncated if file is too large) */
498
504
  content: string;
499
505
  /** Total number of lines in the original file */
@@ -504,11 +510,11 @@ export interface ProcessedText extends ProcessedFileBase {
504
510
  encoding: string;
505
511
  /** Whether the content was truncated due to size limits */
506
512
  truncated: boolean;
507
- }
513
+ };
508
514
  /**
509
515
  * Processed HTML file result.
510
516
  */
511
- export interface ProcessedHtml extends ProcessedFileBase {
517
+ export type ProcessedHtml = ProcessedFileBase & {
512
518
  /** Original HTML content */
513
519
  content: string;
514
520
  /** Text extracted from HTML (all tags stripped) */
@@ -521,11 +527,11 @@ export interface ProcessedHtml extends ProcessedFileBase {
521
527
  title?: string;
522
528
  /** Whether the HTML contains potentially dangerous content (XSS vectors) */
523
529
  hasDangerousContent: boolean;
524
- }
530
+ };
525
531
  /**
526
532
  * Processed YAML file result.
527
533
  */
528
- export interface ProcessedYaml extends ProcessedFileBase {
534
+ export type ProcessedYaml = ProcessedFileBase & {
529
535
  /** Original YAML content */
530
536
  content: string;
531
537
  /** Parsed YAML content (as JavaScript object) */
@@ -536,11 +542,11 @@ export interface ProcessedYaml extends ProcessedFileBase {
536
542
  errorMessage?: string;
537
543
  /** YAML content converted to JSON string for AI consumption */
538
544
  asJson: string | null;
539
- }
545
+ };
540
546
  /**
541
547
  * Single worksheet extracted from an Excel file.
542
548
  */
543
- export interface ExcelWorksheet {
549
+ export type ExcelWorksheet = {
544
550
  /** Name of the worksheet (tab name in Excel) */
545
551
  name: string;
546
552
  /** Row data as a 2D array. Each inner array represents a row. */
@@ -551,11 +557,11 @@ export interface ExcelWorksheet {
551
557
  rowCount: number;
552
558
  /** Number of columns (based on headers or first row) */
553
559
  columnCount: number;
554
- }
560
+ };
555
561
  /**
556
562
  * Processed Excel file result.
557
563
  */
558
- export interface ProcessedExcel extends ProcessedFileBase {
564
+ export type ProcessedExcel = ProcessedFileBase & {
559
565
  /** Array of processed worksheets */
560
566
  worksheets: ExcelWorksheet[];
561
567
  /** Number of sheets processed (may be less than total if truncated) */
@@ -566,27 +572,27 @@ export interface ProcessedExcel extends ProcessedFileBase {
566
572
  truncated: boolean;
567
573
  /** Names of sheets that were truncated */
568
574
  truncatedSheets: string[];
569
- }
575
+ };
570
576
  /**
571
577
  * Processed Word document result.
572
578
  */
573
- export interface ProcessedWord extends ProcessedFileBase {
579
+ export type ProcessedWord = ProcessedFileBase & {
574
580
  /** Extracted plain text content from the Word document */
575
581
  textContent: string;
576
582
  /** HTML representation of the Word document */
577
583
  htmlContent: string;
578
584
  /** Warnings from mammoth extraction (e.g., unsupported elements) */
579
585
  warnings: string[];
580
- }
586
+ };
581
587
  /**
582
588
  * Processed RTF document result.
583
589
  */
584
- export interface ProcessedRtf extends ProcessedFileBase {
590
+ export type ProcessedRtf = ProcessedFileBase & {
585
591
  /** Extracted plain text content from the RTF document */
586
592
  textContent: string;
587
593
  /** Raw RTF content (preserved for debugging/analysis) */
588
594
  rawContent: string;
589
- }
595
+ };
590
596
  /**
591
597
  * Type guard function signature for JSON parsing.
592
598
  */
@@ -73,5 +73,11 @@ export const PROCESSOR_PRIORITIES = {
73
73
  RTF: 140,
74
74
  /** OpenDocument format files */
75
75
  OPENDOCUMENT: 150,
76
+ /** Video files */
77
+ VIDEO: 160,
78
+ /** Audio files */
79
+ AUDIO: 170,
80
+ /** Archive files */
81
+ ARCHIVE: 180,
76
82
  };
77
83
  //# sourceMappingURL=types.js.map
@@ -32,18 +32,18 @@ import type { FileInfo } from "../base/types.js";
32
32
  /**
33
33
  * Options for CLI file processing
34
34
  */
35
- export interface CliFileProcessingOptions {
35
+ export type CliFileProcessingOptions = {
36
36
  /** Verbose output - shows processing details */
37
37
  verbose?: boolean;
38
38
  /** Processor to use (bypasses auto-detection) */
39
39
  processor?: string;
40
40
  /** Output format: json, text, or raw */
41
41
  outputFormat?: "json" | "text" | "raw";
42
- }
42
+ };
43
43
  /**
44
44
  * Result of CLI file processing
45
45
  */
46
- export interface CliProcessingResult {
46
+ export type CliProcessingResult = {
47
47
  /** Whether processing succeeded */
48
48
  success: boolean;
49
49
  /** Name of the processor that was used */
@@ -52,11 +52,11 @@ export interface CliProcessingResult {
52
52
  output: string;
53
53
  /** Error message if processing failed */
54
54
  error?: string;
55
- }
55
+ };
56
56
  /**
57
57
  * Information about a supported file type
58
58
  */
59
- export interface SupportedFileTypeInfo {
59
+ export type SupportedFileTypeInfo = {
60
60
  /** Processor name */
61
61
  name: string;
62
62
  /** Priority (lower = processed first) */
@@ -67,7 +67,7 @@ export interface SupportedFileTypeInfo {
67
67
  mimeTypes: string[];
68
68
  /** Optional description */
69
69
  description?: string;
70
- }
70
+ };
71
71
  /**
72
72
  * Load a file from the filesystem and create a FileInfo object.
73
73
  *
@@ -117,7 +117,7 @@ export declare function processFileFromPath(filePath: string, options?: CliFileP
117
117
  * }
118
118
  * ```
119
119
  */
120
- export declare function getSupportedFileTypes(): SupportedFileTypeInfo[];
120
+ export declare function getSupportedFileTypes(): Promise<SupportedFileTypeInfo[]>;
121
121
  /**
122
122
  * List all supported file types formatted for CLI display.
123
123
  *
@@ -128,7 +128,7 @@ export declare function getSupportedFileTypes(): SupportedFileTypeInfo[];
128
128
  * console.log(listSupportedFileTypes());
129
129
  * ```
130
130
  */
131
- export declare function listSupportedFileTypes(): string;
131
+ export declare function listSupportedFileTypes(): Promise<string>;
132
132
  /**
133
133
  * Get CLI usage information for file processing commands.
134
134
  *
@@ -114,7 +114,7 @@ export async function processFileFromPath(filePath, options) {
114
114
  logger.info(` Size: ${fileInfo.size} bytes`);
115
115
  logger.info(` MIME: ${fileInfo.mimetype}`);
116
116
  }
117
- const registry = getProcessorRegistry();
117
+ const registry = await getProcessorRegistry();
118
118
  // If a specific processor is requested, use it directly
119
119
  if (options?.processor) {
120
120
  const processorReg = registry.getProcessor(options.processor);
@@ -248,8 +248,8 @@ function formatOutput(data, format) {
248
248
  * }
249
249
  * ```
250
250
  */
251
- export function getSupportedFileTypes() {
252
- const registry = getProcessorRegistry();
251
+ export async function getSupportedFileTypes() {
252
+ const registry = await getProcessorRegistry();
253
253
  const processors = registry.listProcessors();
254
254
  return processors.map((proc) => {
255
255
  // Extract config from processor via public getConfig() method
@@ -273,8 +273,8 @@ export function getSupportedFileTypes() {
273
273
  * console.log(listSupportedFileTypes());
274
274
  * ```
275
275
  */
276
- export function listSupportedFileTypes() {
277
- const types = getSupportedFileTypes();
276
+ export async function listSupportedFileTypes() {
277
+ const types = await getSupportedFileTypes();
278
278
  if (types.length === 0) {
279
279
  return "No processors registered. Initialize the processor registry first.";
280
280
  }