@juspay/neurolink 9.30.0 → 9.31.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 (977) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/README.md +2 -3
  3. package/dist/adapters/providerImageAdapter.js +13 -22
  4. package/dist/adapters/video/videoAnalyzer.d.ts +4 -4
  5. package/dist/adapters/video/videoAnalyzer.js +3 -3
  6. package/dist/agent/directTools.d.ts +20 -289
  7. package/dist/agent/directTools.js +11 -10
  8. package/dist/auth/accountPool.d.ts +68 -0
  9. package/dist/auth/accountPool.js +178 -0
  10. package/dist/auth/anthropicOAuth.d.ts +15 -5
  11. package/dist/auth/anthropicOAuth.js +117 -57
  12. package/dist/auth/index.d.ts +7 -5
  13. package/dist/auth/index.js +6 -2
  14. package/dist/auth/tokenStore.d.ts +71 -27
  15. package/dist/auth/tokenStore.js +342 -64
  16. package/dist/cli/commands/auth.d.ts +39 -2
  17. package/dist/cli/commands/auth.js +585 -36
  18. package/dist/cli/commands/config.d.ts +47 -574
  19. package/dist/cli/commands/config.js +142 -24
  20. package/dist/cli/commands/docs.d.ts +1 -5
  21. package/dist/cli/commands/observability.d.ts +1 -17
  22. package/dist/cli/commands/ollama.js +1 -1
  23. package/dist/cli/commands/proxy.d.ts +20 -0
  24. package/dist/cli/commands/proxy.js +1254 -0
  25. package/dist/cli/commands/setup-anthropic.js +1 -1
  26. package/dist/cli/commands/setup-azure.js +1 -1
  27. package/dist/cli/commands/setup-bedrock.js +2 -2
  28. package/dist/cli/commands/setup-gcp.js +1 -1
  29. package/dist/cli/commands/setup-google-ai.js +1 -1
  30. package/dist/cli/commands/setup-huggingface.js +2 -2
  31. package/dist/cli/commands/setup-mistral.js +1 -1
  32. package/dist/cli/commands/setup-openai.js +1 -1
  33. package/dist/cli/commands/setup.js +3 -3
  34. package/dist/cli/commands/telemetry.d.ts +1 -22
  35. package/dist/cli/factories/authCommandFactory.d.ts +16 -11
  36. package/dist/cli/factories/authCommandFactory.js +96 -1
  37. package/dist/cli/factories/ollamaCommandFactory.js +1 -1
  38. package/dist/cli/factories/sagemakerCommandFactory.js +25 -6
  39. package/dist/cli/index.d.ts +0 -6
  40. package/dist/cli/index.js +5 -2
  41. package/dist/cli/loop/conversationSelector.js +7 -2
  42. package/dist/cli/parser.js +19 -1
  43. package/dist/cli/utils/envManager.js +2 -2
  44. package/dist/cli/utils/ollamaUtils.d.ts +1 -2
  45. package/dist/client/adapters/providerImageAdapter.js +588 -0
  46. package/dist/client/adapters/tts/googleTTSHandler.js +344 -0
  47. package/dist/client/adapters/video/directorPipeline.js +516 -0
  48. package/dist/client/adapters/video/ffmpegAdapter.js +206 -0
  49. package/dist/client/adapters/video/frameExtractor.js +143 -0
  50. package/dist/client/adapters/video/vertexVideoHandler.js +763 -0
  51. package/dist/client/adapters/video/videoAnalyzer.js +238 -0
  52. package/dist/client/adapters/video/videoMerger.js +171 -0
  53. package/dist/client/agent/directTools.js +840 -0
  54. package/dist/client/aiSdkAdapter.d.ts +196 -0
  55. package/dist/client/aiSdkAdapter.js +487 -0
  56. package/dist/client/auth/anthropicOAuth.js +974 -0
  57. package/dist/client/auth/tokenStore.js +799 -0
  58. package/dist/client/auth.d.ts +248 -0
  59. package/dist/client/auth.js +473 -0
  60. package/dist/client/client/aiSdkAdapter.js +487 -0
  61. package/dist/client/client/auth.js +473 -0
  62. package/dist/client/client/errors.js +552 -0
  63. package/dist/client/client/httpClient.js +837 -0
  64. package/dist/client/client/index.js +172 -0
  65. package/dist/client/client/interceptors.js +601 -0
  66. package/dist/client/client/reactHooks.js +1159 -0
  67. package/dist/client/client/sseClient.js +545 -0
  68. package/dist/client/client/streamingClient.js +917 -0
  69. package/dist/client/client/wsClient.js +369 -0
  70. package/dist/client/config/configManager.js +303 -0
  71. package/dist/client/config/conversationMemory.js +86 -0
  72. package/dist/client/config/taskClassificationConfig.js +148 -0
  73. package/dist/client/constants/contextWindows.js +295 -0
  74. package/dist/client/constants/enums.js +853 -0
  75. package/dist/client/constants/index.js +207 -0
  76. package/dist/client/constants/performance.js +389 -0
  77. package/dist/client/constants/retry.js +266 -0
  78. package/dist/client/constants/timeouts.js +182 -0
  79. package/dist/client/constants/tokens.js +380 -0
  80. package/dist/client/constants/videoErrors.js +46 -0
  81. package/dist/client/context/budgetChecker.js +98 -0
  82. package/dist/client/context/contextCompactor.js +205 -0
  83. package/dist/client/context/emergencyTruncation.js +88 -0
  84. package/dist/client/context/errorDetection.js +171 -0
  85. package/dist/client/context/errors.js +21 -0
  86. package/dist/client/context/fileTokenBudget.js +127 -0
  87. package/dist/client/context/prompts/summarizationPrompt.js +117 -0
  88. package/dist/client/context/stages/fileReadDeduplicator.js +66 -0
  89. package/dist/client/context/stages/slidingWindowTruncator.js +190 -0
  90. package/dist/client/context/stages/structuredSummarizer.js +99 -0
  91. package/dist/client/context/stages/toolOutputPruner.js +52 -0
  92. package/dist/client/context/summarizationEngine.js +136 -0
  93. package/dist/client/context/toolOutputLimits.js +78 -0
  94. package/dist/client/context/toolPairRepair.js +66 -0
  95. package/dist/client/core/analytics.js +88 -0
  96. package/dist/client/core/baseProvider.js +1385 -0
  97. package/dist/client/core/constants.js +140 -0
  98. package/dist/client/core/conversationMemoryFactory.js +141 -0
  99. package/dist/client/core/conversationMemoryInitializer.js +128 -0
  100. package/dist/client/core/conversationMemoryManager.js +344 -0
  101. package/dist/client/core/dynamicModels.js +358 -0
  102. package/dist/client/core/evaluation.js +309 -0
  103. package/dist/client/core/evaluationProviders.js +248 -0
  104. package/dist/client/core/factory.js +412 -0
  105. package/dist/client/core/infrastructure/baseError.js +22 -0
  106. package/dist/client/core/infrastructure/baseFactory.js +54 -0
  107. package/dist/client/core/infrastructure/baseRegistry.js +49 -0
  108. package/dist/client/core/infrastructure/index.js +5 -0
  109. package/dist/client/core/infrastructure/retry.js +20 -0
  110. package/dist/client/core/infrastructure/typedEventEmitter.js +23 -0
  111. package/dist/client/core/modelConfiguration.js +851 -0
  112. package/dist/client/core/modules/GenerationHandler.js +588 -0
  113. package/dist/client/core/modules/MessageBuilder.js +273 -0
  114. package/dist/client/core/modules/StreamHandler.js +185 -0
  115. package/dist/client/core/modules/TelemetryHandler.js +203 -0
  116. package/dist/client/core/modules/ToolsManager.js +499 -0
  117. package/dist/client/core/modules/Utilities.js +331 -0
  118. package/dist/client/core/redisConversationMemoryManager.js +1435 -0
  119. package/dist/client/core/streamAnalytics.js +131 -0
  120. package/dist/client/errors.d.ts +299 -0
  121. package/dist/client/errors.js +552 -0
  122. package/dist/client/evaluation/contextBuilder.js +134 -0
  123. package/dist/client/evaluation/index.js +61 -0
  124. package/dist/client/evaluation/prompts.js +73 -0
  125. package/dist/client/evaluation/ragasEvaluator.js +110 -0
  126. package/dist/client/evaluation/retryManager.js +78 -0
  127. package/dist/client/evaluation/scoring.js +61 -0
  128. package/dist/client/factories/providerFactory.js +166 -0
  129. package/dist/client/factories/providerRegistry.js +166 -0
  130. package/dist/client/features/ppt/constants.js +896 -0
  131. package/dist/client/features/ppt/contentPlanner.js +529 -0
  132. package/dist/client/features/ppt/presentationOrchestrator.js +236 -0
  133. package/dist/client/features/ppt/slideGenerator.js +532 -0
  134. package/dist/client/features/ppt/slideRenderers.js +2383 -0
  135. package/dist/client/features/ppt/slideTypeInference.js +405 -0
  136. package/dist/client/features/ppt/types.js +13 -0
  137. package/dist/client/features/ppt/utils.js +443 -0
  138. package/dist/client/files/fileReferenceRegistry.js +1543 -0
  139. package/dist/client/files/fileTools.js +450 -0
  140. package/dist/client/files/streamingReader.js +321 -0
  141. package/dist/client/files/types.js +23 -0
  142. package/dist/client/hitl/hitlErrors.js +54 -0
  143. package/dist/client/hitl/hitlManager.js +460 -0
  144. package/dist/client/httpClient.d.ts +297 -0
  145. package/dist/client/httpClient.js +837 -0
  146. package/dist/client/index.d.ts +111 -0
  147. package/dist/client/index.js +511 -0
  148. package/dist/client/interceptors.d.ts +283 -0
  149. package/dist/client/interceptors.js +601 -0
  150. package/dist/client/mcp/agentExposure.js +356 -0
  151. package/dist/client/mcp/auth/index.js +11 -0
  152. package/dist/client/mcp/auth/oauthClientProvider.js +325 -0
  153. package/dist/client/mcp/auth/tokenStorage.js +134 -0
  154. package/dist/client/mcp/batching/index.js +10 -0
  155. package/dist/client/mcp/batching/requestBatcher.js +441 -0
  156. package/dist/client/mcp/caching/index.js +10 -0
  157. package/dist/client/mcp/caching/toolCache.js +433 -0
  158. package/dist/client/mcp/elicitation/elicitationManager.js +376 -0
  159. package/dist/client/mcp/elicitation/index.js +11 -0
  160. package/dist/client/mcp/elicitation/types.js +10 -0
  161. package/dist/client/mcp/elicitationProtocol.js +375 -0
  162. package/dist/client/mcp/enhancedToolDiscovery.js +481 -0
  163. package/dist/client/mcp/externalServerManager.js +1478 -0
  164. package/dist/client/mcp/factory.js +161 -0
  165. package/dist/client/mcp/flexibleToolValidator.js +161 -0
  166. package/dist/client/mcp/httpRateLimiter.js +391 -0
  167. package/dist/client/mcp/httpRetryHandler.js +178 -0
  168. package/dist/client/mcp/index.js +74 -0
  169. package/dist/client/mcp/mcpCircuitBreaker.js +427 -0
  170. package/dist/client/mcp/mcpClientFactory.js +708 -0
  171. package/dist/client/mcp/mcpRegistryClient.js +488 -0
  172. package/dist/client/mcp/mcpServerBase.js +373 -0
  173. package/dist/client/mcp/multiServerManager.js +579 -0
  174. package/dist/client/mcp/registry.js +158 -0
  175. package/dist/client/mcp/routing/index.js +10 -0
  176. package/dist/client/mcp/routing/toolRouter.js +416 -0
  177. package/dist/client/mcp/serverCapabilities.js +502 -0
  178. package/dist/client/mcp/servers/agent/directToolsServer.js +150 -0
  179. package/dist/client/mcp/toolAnnotations.js +239 -0
  180. package/dist/client/mcp/toolConverter.js +258 -0
  181. package/dist/client/mcp/toolDiscoveryService.js +798 -0
  182. package/dist/client/mcp/toolIntegration.js +334 -0
  183. package/dist/client/mcp/toolRegistry.js +719 -0
  184. package/dist/client/memory/hippocampusInitializer.js +19 -0
  185. package/dist/client/memory/memoryRetrievalTools.js +166 -0
  186. package/dist/client/middleware/builtin/analytics.js +132 -0
  187. package/dist/client/middleware/builtin/autoEvaluation.js +203 -0
  188. package/dist/client/middleware/builtin/guardrails.js +109 -0
  189. package/dist/client/middleware/builtin/lifecycle.js +168 -0
  190. package/dist/client/middleware/factory.js +327 -0
  191. package/dist/client/middleware/registry.js +295 -0
  192. package/dist/client/middleware/utils/guardrailsUtils.js +396 -0
  193. package/dist/client/models/anthropicModels.js +527 -0
  194. package/dist/client/neurolink.js +8015 -0
  195. package/dist/client/observability/exporterRegistry.js +413 -0
  196. package/dist/client/observability/exporters/arizeExporter.js +138 -0
  197. package/dist/client/observability/exporters/baseExporter.js +190 -0
  198. package/dist/client/observability/exporters/braintrustExporter.js +154 -0
  199. package/dist/client/observability/exporters/datadogExporter.js +196 -0
  200. package/dist/client/observability/exporters/laminarExporter.js +302 -0
  201. package/dist/client/observability/exporters/langfuseExporter.js +209 -0
  202. package/dist/client/observability/exporters/langsmithExporter.js +143 -0
  203. package/dist/client/observability/exporters/otelExporter.js +164 -0
  204. package/dist/client/observability/exporters/posthogExporter.js +287 -0
  205. package/dist/client/observability/exporters/sentryExporter.js +165 -0
  206. package/dist/client/observability/index.js +31 -0
  207. package/dist/client/observability/metricsAggregator.js +556 -0
  208. package/dist/client/observability/otelBridge.js +131 -0
  209. package/dist/client/observability/retryPolicy.js +383 -0
  210. package/dist/client/observability/sampling/samplers.js +216 -0
  211. package/dist/client/observability/spanProcessor.js +303 -0
  212. package/dist/client/observability/tokenTracker.js +413 -0
  213. package/dist/client/observability/types/exporterTypes.js +5 -0
  214. package/dist/client/observability/types/index.js +4 -0
  215. package/dist/client/observability/types/spanTypes.js +92 -0
  216. package/dist/client/observability/utils/safeMetadata.js +25 -0
  217. package/dist/client/observability/utils/spanSerializer.js +292 -0
  218. package/dist/client/processors/archive/ArchiveProcessor.js +1308 -0
  219. package/dist/client/processors/base/BaseFileProcessor.js +614 -0
  220. package/dist/client/processors/base/types.js +82 -0
  221. package/dist/client/processors/config/fileTypes.js +520 -0
  222. package/dist/client/processors/config/index.js +92 -0
  223. package/dist/client/processors/config/languageMap.js +410 -0
  224. package/dist/client/processors/config/mimeTypes.js +363 -0
  225. package/dist/client/processors/config/sizeLimits.js +258 -0
  226. package/dist/client/processors/document/ExcelProcessor.js +590 -0
  227. package/dist/client/processors/document/OpenDocumentProcessor.js +212 -0
  228. package/dist/client/processors/document/PptxProcessor.js +157 -0
  229. package/dist/client/processors/document/RtfProcessor.js +361 -0
  230. package/dist/client/processors/document/WordProcessor.js +353 -0
  231. package/dist/client/processors/errors/FileErrorCode.js +255 -0
  232. package/dist/client/processors/errors/errorHelpers.js +386 -0
  233. package/dist/client/processors/errors/errorSerializer.js +507 -0
  234. package/dist/client/processors/errors/index.js +49 -0
  235. package/dist/client/processors/markup/SvgProcessor.js +240 -0
  236. package/dist/client/processors/media/AudioProcessor.js +707 -0
  237. package/dist/client/processors/media/VideoProcessor.js +1045 -0
  238. package/dist/client/providers/amazonBedrock.js +1512 -0
  239. package/dist/client/providers/amazonSagemaker.js +162 -0
  240. package/dist/client/providers/anthropic.js +831 -0
  241. package/dist/client/providers/azureOpenai.js +143 -0
  242. package/dist/client/providers/googleAiStudio.js +1200 -0
  243. package/dist/client/providers/googleNativeGemini3.js +543 -0
  244. package/dist/client/providers/googleVertex.js +2936 -0
  245. package/dist/client/providers/huggingFace.js +315 -0
  246. package/dist/client/providers/litellm.js +488 -0
  247. package/dist/client/providers/mistral.js +157 -0
  248. package/dist/client/providers/ollama.js +1579 -0
  249. package/dist/client/providers/openAI.js +627 -0
  250. package/dist/client/providers/openRouter.js +543 -0
  251. package/dist/client/providers/openaiCompatible.js +290 -0
  252. package/dist/client/providers/providerTypeUtils.js +46 -0
  253. package/dist/client/providers/sagemaker/adaptive-semaphore.js +215 -0
  254. package/dist/client/providers/sagemaker/client.js +472 -0
  255. package/dist/client/providers/sagemaker/config.js +317 -0
  256. package/dist/client/providers/sagemaker/detection.js +606 -0
  257. package/dist/client/providers/sagemaker/error-constants.js +227 -0
  258. package/dist/client/providers/sagemaker/errors.js +299 -0
  259. package/dist/client/providers/sagemaker/language-model.js +775 -0
  260. package/dist/client/providers/sagemaker/parsers.js +634 -0
  261. package/dist/client/providers/sagemaker/streaming.js +331 -0
  262. package/dist/client/providers/sagemaker/structured-parser.js +625 -0
  263. package/dist/client/proxy/accountQuota.js +162 -0
  264. package/dist/client/proxy/claudeFormat.js +595 -0
  265. package/dist/client/proxy/modelRouter.js +29 -0
  266. package/dist/client/proxy/oauthFetch.js +367 -0
  267. package/dist/client/proxy/proxyFetch.js +586 -0
  268. package/dist/client/proxy/requestLogger.js +207 -0
  269. package/dist/client/proxy/tokenRefresh.js +124 -0
  270. package/dist/client/proxy/usageStats.js +74 -0
  271. package/dist/client/proxy/utils/noProxyUtils.js +149 -0
  272. package/dist/client/rag/ChunkerFactory.js +320 -0
  273. package/dist/client/rag/ChunkerRegistry.js +421 -0
  274. package/dist/client/rag/chunkers/BaseChunker.js +143 -0
  275. package/dist/client/rag/chunkers/CharacterChunker.js +28 -0
  276. package/dist/client/rag/chunkers/HTMLChunker.js +38 -0
  277. package/dist/client/rag/chunkers/JSONChunker.js +68 -0
  278. package/dist/client/rag/chunkers/LaTeXChunker.js +63 -0
  279. package/dist/client/rag/chunkers/MarkdownChunker.js +306 -0
  280. package/dist/client/rag/chunkers/RecursiveChunker.js +139 -0
  281. package/dist/client/rag/chunkers/SemanticMarkdownChunker.js +138 -0
  282. package/dist/client/rag/chunkers/SentenceChunker.js +66 -0
  283. package/dist/client/rag/chunkers/TokenChunker.js +61 -0
  284. package/dist/client/rag/chunkers/index.js +15 -0
  285. package/dist/client/rag/chunking/characterChunker.js +142 -0
  286. package/dist/client/rag/chunking/chunkerRegistry.js +194 -0
  287. package/dist/client/rag/chunking/htmlChunker.js +247 -0
  288. package/dist/client/rag/chunking/index.js +17 -0
  289. package/dist/client/rag/chunking/jsonChunker.js +281 -0
  290. package/dist/client/rag/chunking/latexChunker.js +251 -0
  291. package/dist/client/rag/chunking/markdownChunker.js +373 -0
  292. package/dist/client/rag/chunking/recursiveChunker.js +148 -0
  293. package/dist/client/rag/chunking/semanticChunker.js +306 -0
  294. package/dist/client/rag/chunking/sentenceChunker.js +230 -0
  295. package/dist/client/rag/chunking/tokenChunker.js +183 -0
  296. package/dist/client/rag/document/MDocument.js +392 -0
  297. package/dist/client/rag/document/index.js +5 -0
  298. package/dist/client/rag/document/loaders.js +500 -0
  299. package/dist/client/rag/errors/RAGError.js +274 -0
  300. package/dist/client/rag/errors/index.js +6 -0
  301. package/dist/client/rag/graphRag/graphRAG.js +401 -0
  302. package/dist/client/rag/graphRag/index.js +4 -0
  303. package/dist/client/rag/index.js +141 -0
  304. package/dist/client/rag/metadata/MetadataExtractorFactory.js +418 -0
  305. package/dist/client/rag/metadata/MetadataExtractorRegistry.js +362 -0
  306. package/dist/client/rag/metadata/index.js +9 -0
  307. package/dist/client/rag/metadata/metadataExtractor.js +280 -0
  308. package/dist/client/rag/pipeline/RAGPipeline.js +436 -0
  309. package/dist/client/rag/pipeline/contextAssembly.js +341 -0
  310. package/dist/client/rag/pipeline/index.js +5 -0
  311. package/dist/client/rag/ragIntegration.js +321 -0
  312. package/dist/client/rag/reranker/RerankerFactory.js +430 -0
  313. package/dist/client/rag/reranker/RerankerRegistry.js +402 -0
  314. package/dist/client/rag/reranker/index.js +9 -0
  315. package/dist/client/rag/reranker/reranker.js +277 -0
  316. package/dist/client/rag/resilience/CircuitBreaker.js +431 -0
  317. package/dist/client/rag/resilience/RetryHandler.js +304 -0
  318. package/dist/client/rag/resilience/index.js +7 -0
  319. package/dist/client/rag/retrieval/hybridSearch.js +335 -0
  320. package/dist/client/rag/retrieval/index.js +5 -0
  321. package/dist/client/rag/retrieval/vectorQueryTool.js +307 -0
  322. package/dist/client/rag/types.js +8 -0
  323. package/dist/client/reactHooks.d.ts +239 -0
  324. package/dist/client/reactHooks.tsx +1483 -0
  325. package/dist/client/sdk/toolRegistration.js +377 -0
  326. package/dist/client/server/abstract/baseServerAdapter.js +575 -0
  327. package/dist/client/server/adapters/expressAdapter.js +486 -0
  328. package/dist/client/server/adapters/fastifyAdapter.js +472 -0
  329. package/dist/client/server/adapters/honoAdapter.js +632 -0
  330. package/dist/client/server/adapters/koaAdapter.js +510 -0
  331. package/dist/client/server/errors.js +486 -0
  332. package/dist/client/server/factory/serverAdapterFactory.js +160 -0
  333. package/dist/client/server/index.js +108 -0
  334. package/dist/client/server/middleware/abortSignal.js +111 -0
  335. package/dist/client/server/middleware/auth.js +388 -0
  336. package/dist/client/server/middleware/cache.js +359 -0
  337. package/dist/client/server/middleware/common.js +281 -0
  338. package/dist/client/server/middleware/deprecation.js +190 -0
  339. package/dist/client/server/middleware/mcpBodyAttachment.js +63 -0
  340. package/dist/client/server/middleware/rateLimit.js +227 -0
  341. package/dist/client/server/middleware/validation.js +388 -0
  342. package/dist/client/server/openapi/generator.js +398 -0
  343. package/dist/client/server/openapi/index.js +36 -0
  344. package/dist/client/server/openapi/schemas.js +695 -0
  345. package/dist/client/server/openapi/templates.js +374 -0
  346. package/dist/client/server/routes/agentRoutes.js +171 -0
  347. package/dist/client/server/routes/claudeProxyRoutes.js +1600 -0
  348. package/dist/client/server/routes/healthRoutes.js +187 -0
  349. package/dist/client/server/routes/index.js +57 -0
  350. package/dist/client/server/routes/mcpRoutes.js +342 -0
  351. package/dist/client/server/routes/memoryRoutes.js +350 -0
  352. package/dist/client/server/routes/openApiRoutes.js +126 -0
  353. package/dist/client/server/routes/toolRoutes.js +199 -0
  354. package/dist/client/server/streaming/dataStream.js +486 -0
  355. package/dist/client/server/streaming/index.js +11 -0
  356. package/dist/client/server/types.js +67 -0
  357. package/dist/client/server/utils/redaction.js +334 -0
  358. package/dist/client/server/utils/validation.js +243 -0
  359. package/dist/client/server/websocket/WebSocketHandler.js +383 -0
  360. package/dist/client/server/websocket/index.js +4 -0
  361. package/dist/client/services/server/ai/observability/instrumentation.js +808 -0
  362. package/dist/client/sseClient.d.ts +156 -0
  363. package/dist/client/sseClient.js +545 -0
  364. package/dist/client/streamingClient.d.ts +327 -0
  365. package/dist/client/streamingClient.js +917 -0
  366. package/dist/client/telemetry/attributes.js +100 -0
  367. package/dist/client/telemetry/index.js +26 -0
  368. package/dist/client/telemetry/telemetryService.js +308 -0
  369. package/dist/client/telemetry/tracers.js +17 -0
  370. package/dist/client/telemetry/withSpan.js +34 -0
  371. package/dist/client/types/actionTypes.js +6 -0
  372. package/dist/client/types/analytics.js +5 -0
  373. package/dist/client/types/authTypes.js +8 -0
  374. package/dist/client/types/circuitBreakerErrors.js +34 -0
  375. package/dist/client/types/cli.js +21 -0
  376. package/dist/client/types/clientTypes.js +10 -0
  377. package/dist/client/types/common.js +51 -0
  378. package/dist/client/types/configTypes.js +49 -0
  379. package/dist/client/types/content.js +19 -0
  380. package/dist/client/types/contextTypes.js +400 -0
  381. package/dist/client/types/conversation.js +47 -0
  382. package/dist/client/types/conversationMemoryInterface.js +6 -0
  383. package/dist/client/types/domainTypes.js +5 -0
  384. package/dist/client/types/errors.js +167 -0
  385. package/dist/client/types/evaluation.js +5 -0
  386. package/dist/client/types/evaluationProviders.js +5 -0
  387. package/dist/client/types/evaluationTypes.js +1 -0
  388. package/dist/client/types/externalMcp.js +6 -0
  389. package/dist/client/types/fileReferenceTypes.js +8 -0
  390. package/dist/client/types/fileTypes.js +4 -0
  391. package/dist/client/types/generateTypes.js +1 -0
  392. package/dist/client/types/guardrails.js +1 -0
  393. package/dist/client/types/hitlTypes.js +8 -0
  394. package/dist/client/types/index.js +57 -0
  395. package/dist/client/types/mcpTypes.js +5 -0
  396. package/dist/client/types/middlewareTypes.js +1 -0
  397. package/dist/client/types/modelTypes.js +30 -0
  398. package/dist/client/types/multimodal.js +135 -0
  399. package/dist/client/types/observability.js +6 -0
  400. package/dist/client/types/pptTypes.js +82 -0
  401. package/dist/client/types/providers.js +111 -0
  402. package/dist/client/types/proxyTypes.js +16 -0
  403. package/dist/client/types/ragTypes.js +7 -0
  404. package/dist/client/types/sdkTypes.js +8 -0
  405. package/dist/client/types/serviceTypes.js +5 -0
  406. package/dist/client/types/streamTypes.js +1 -0
  407. package/dist/client/types/subscriptionTypes.js +9 -0
  408. package/dist/client/types/taskClassificationTypes.js +5 -0
  409. package/dist/client/types/tools.js +24 -0
  410. package/dist/client/types/ttsTypes.js +57 -0
  411. package/dist/client/types/typeAliases.js +48 -0
  412. package/dist/client/types/utilities.js +4 -0
  413. package/dist/client/types/workflowTypes.js +30 -0
  414. package/dist/client/utils/async/withTimeout.js +98 -0
  415. package/dist/client/utils/asyncMutex.js +60 -0
  416. package/dist/client/utils/conversationMemory.js +431 -0
  417. package/dist/client/utils/csvProcessor.js +846 -0
  418. package/dist/client/utils/errorHandling.js +936 -0
  419. package/dist/client/utils/evaluationUtils.js +131 -0
  420. package/dist/client/utils/factoryProcessing.js +589 -0
  421. package/dist/client/utils/fileDetector.js +2161 -0
  422. package/dist/client/utils/imageCache.js +376 -0
  423. package/dist/client/utils/imageProcessor.js +704 -0
  424. package/dist/client/utils/logger.js +491 -0
  425. package/dist/client/utils/mcpDefaults.js +134 -0
  426. package/dist/client/utils/messageBuilder.js +1653 -0
  427. package/dist/client/utils/modelAliasResolver.js +54 -0
  428. package/dist/client/utils/modelDetection.js +80 -0
  429. package/dist/client/utils/modelRouter.js +292 -0
  430. package/dist/client/utils/multimodalOptionsBuilder.js +65 -0
  431. package/dist/client/utils/observabilityHelpers.js +47 -0
  432. package/dist/client/utils/parameterValidation.js +966 -0
  433. package/dist/client/utils/pdfProcessor.js +410 -0
  434. package/dist/client/utils/performance.js +222 -0
  435. package/dist/client/utils/pricing.js +340 -0
  436. package/dist/client/utils/promptRedaction.js +62 -0
  437. package/dist/client/utils/providerConfig.js +1009 -0
  438. package/dist/client/utils/providerHealth.js +1237 -0
  439. package/dist/client/utils/providerRetry.js +112 -0
  440. package/dist/client/utils/providerUtils.js +434 -0
  441. package/dist/client/utils/rateLimiter.js +200 -0
  442. package/dist/client/utils/redis.js +368 -0
  443. package/dist/client/utils/retryHandler.js +269 -0
  444. package/dist/client/utils/retryability.js +22 -0
  445. package/dist/client/utils/sanitizers/svg.js +481 -0
  446. package/dist/client/utils/schemaConversion.js +255 -0
  447. package/dist/client/utils/taskClassificationUtils.js +149 -0
  448. package/dist/client/utils/taskClassifier.js +94 -0
  449. package/dist/client/utils/thinkingConfig.js +104 -0
  450. package/dist/client/utils/timeout.js +359 -0
  451. package/dist/client/utils/tokenEstimation.js +142 -0
  452. package/dist/client/utils/tokenLimits.js +125 -0
  453. package/dist/client/utils/tokenUtils.js +239 -0
  454. package/dist/client/utils/toolUtils.js +75 -0
  455. package/dist/client/utils/transformationUtils.js +554 -0
  456. package/dist/client/utils/ttsProcessor.js +286 -0
  457. package/dist/client/utils/typeUtils.js +97 -0
  458. package/dist/client/utils/videoAnalysisProcessor.js +67 -0
  459. package/dist/client/workflow/config.js +398 -0
  460. package/dist/client/workflow/core/ensembleExecutor.js +407 -0
  461. package/dist/client/workflow/core/judgeScorer.js +544 -0
  462. package/dist/client/workflow/core/responseConditioner.js +225 -0
  463. package/dist/client/workflow/core/types/conditionerTypes.js +7 -0
  464. package/dist/client/workflow/core/types/ensembleTypes.js +7 -0
  465. package/dist/client/workflow/core/types/index.js +7 -0
  466. package/dist/client/workflow/core/types/judgeTypes.js +7 -0
  467. package/dist/client/workflow/core/types/layerTypes.js +7 -0
  468. package/dist/client/workflow/core/types/registryTypes.js +7 -0
  469. package/dist/client/workflow/core/workflowRegistry.js +304 -0
  470. package/dist/client/workflow/core/workflowRunner.js +586 -0
  471. package/dist/client/workflow/index.js +50 -0
  472. package/dist/client/workflow/types.js +9 -0
  473. package/dist/client/workflow/utils/types/index.js +7 -0
  474. package/dist/client/workflow/utils/workflowMetrics.js +311 -0
  475. package/dist/client/workflow/utils/workflowValidation.js +420 -0
  476. package/dist/client/workflow/workflows/adaptiveWorkflow.js +366 -0
  477. package/dist/client/workflow/workflows/consensusWorkflow.js +192 -0
  478. package/dist/client/workflow/workflows/fallbackWorkflow.js +225 -0
  479. package/dist/client/workflow/workflows/multiJudgeWorkflow.js +351 -0
  480. package/dist/client/wsClient.d.ts +130 -0
  481. package/dist/client/wsClient.js +369 -0
  482. package/dist/config/configManager.js +2 -2
  483. package/dist/constants/contextWindows.js +15 -13
  484. package/dist/constants/enums.d.ts +10 -16
  485. package/dist/constants/enums.js +12 -18
  486. package/dist/constants/index.d.ts +0 -10
  487. package/dist/constants/index.js +1 -1
  488. package/dist/constants/tokens.d.ts +29 -16
  489. package/dist/constants/tokens.js +23 -16
  490. package/dist/core/baseProvider.d.ts +5 -5
  491. package/dist/core/baseProvider.js +6 -6
  492. package/dist/core/constants.js +6 -1
  493. package/dist/core/dynamicModels.js +10 -6
  494. package/dist/core/evaluationProviders.js +1 -1
  495. package/dist/core/infrastructure/baseError.d.ts +1 -1
  496. package/dist/core/infrastructure/baseFactory.d.ts +1 -6
  497. package/dist/core/infrastructure/baseRegistry.d.ts +6 -5
  498. package/dist/core/infrastructure/index.d.ts +6 -4
  499. package/dist/core/infrastructure/index.js +2 -2
  500. package/dist/core/modelConfiguration.js +3 -1
  501. package/dist/core/modules/GenerationHandler.d.ts +3 -3
  502. package/dist/core/modules/GenerationHandler.js +49 -41
  503. package/dist/core/modules/MessageBuilder.d.ts +5 -5
  504. package/dist/core/modules/MessageBuilder.js +4 -6
  505. package/dist/core/modules/StreamHandler.js +26 -12
  506. package/dist/core/modules/TelemetryHandler.d.ts +4 -6
  507. package/dist/core/modules/TelemetryHandler.js +7 -6
  508. package/dist/core/modules/ToolsManager.d.ts +2 -12
  509. package/dist/core/modules/ToolsManager.js +20 -4
  510. package/dist/core/modules/Utilities.js +3 -1
  511. package/dist/core/redisConversationMemoryManager.js +3 -3
  512. package/dist/core/streamAnalytics.js +23 -9
  513. package/dist/evaluation/contextBuilder.d.ts +2 -2
  514. package/dist/evaluation/contextBuilder.js +2 -2
  515. package/dist/evaluation/index.d.ts +2 -2
  516. package/dist/evaluation/retryManager.js +1 -1
  517. package/dist/factories/providerFactory.js +2 -2
  518. package/dist/features/ppt/constants.js +1 -1
  519. package/dist/features/ppt/presentationOrchestrator.js +7 -3
  520. package/dist/features/ppt/slideGenerator.d.ts +2 -1
  521. package/dist/features/ppt/slideGenerator.js +6 -1
  522. package/dist/files/fileTools.d.ts +16 -247
  523. package/dist/files/fileTools.js +16 -15
  524. package/dist/index.d.ts +5 -3
  525. package/dist/index.js +20 -3
  526. package/dist/lib/adapters/providerImageAdapter.js +13 -22
  527. package/dist/lib/adapters/video/videoAnalyzer.d.ts +4 -4
  528. package/dist/lib/adapters/video/videoAnalyzer.js +3 -3
  529. package/dist/lib/agent/directTools.d.ts +20 -289
  530. package/dist/lib/agent/directTools.js +11 -10
  531. package/dist/lib/auth/accountPool.d.ts +68 -0
  532. package/dist/lib/auth/accountPool.js +179 -0
  533. package/dist/lib/auth/anthropicOAuth.d.ts +15 -5
  534. package/dist/lib/auth/anthropicOAuth.js +117 -57
  535. package/dist/lib/auth/index.d.ts +7 -5
  536. package/dist/lib/auth/index.js +6 -2
  537. package/dist/lib/auth/tokenStore.d.ts +71 -27
  538. package/dist/lib/auth/tokenStore.js +342 -64
  539. package/dist/lib/client/aiSdkAdapter.d.ts +196 -0
  540. package/dist/lib/client/aiSdkAdapter.js +488 -0
  541. package/dist/lib/client/auth.d.ts +248 -0
  542. package/dist/lib/client/auth.js +474 -0
  543. package/dist/lib/client/errors.d.ts +299 -0
  544. package/dist/lib/client/errors.js +553 -0
  545. package/dist/lib/client/httpClient.d.ts +297 -0
  546. package/dist/lib/client/httpClient.js +838 -0
  547. package/dist/lib/client/index.d.ts +111 -0
  548. package/dist/lib/client/index.js +173 -0
  549. package/dist/lib/client/interceptors.d.ts +283 -0
  550. package/dist/lib/client/interceptors.js +602 -0
  551. package/dist/lib/client/reactHooks.d.ts +239 -0
  552. package/dist/lib/client/reactHooks.js +1160 -0
  553. package/dist/lib/client/sseClient.d.ts +156 -0
  554. package/dist/lib/client/sseClient.js +546 -0
  555. package/dist/lib/client/streamingClient.d.ts +327 -0
  556. package/dist/lib/client/streamingClient.js +918 -0
  557. package/dist/lib/client/wsClient.d.ts +130 -0
  558. package/dist/lib/client/wsClient.js +370 -0
  559. package/dist/lib/config/configManager.js +2 -2
  560. package/dist/lib/constants/contextWindows.js +15 -13
  561. package/dist/lib/constants/enums.d.ts +10 -16
  562. package/dist/lib/constants/enums.js +12 -18
  563. package/dist/lib/constants/index.d.ts +0 -10
  564. package/dist/lib/constants/index.js +1 -1
  565. package/dist/lib/constants/tokens.d.ts +29 -16
  566. package/dist/lib/constants/tokens.js +23 -16
  567. package/dist/lib/core/baseProvider.d.ts +5 -5
  568. package/dist/lib/core/baseProvider.js +6 -6
  569. package/dist/lib/core/constants.js +6 -1
  570. package/dist/lib/core/dynamicModels.js +10 -6
  571. package/dist/lib/core/evaluationProviders.js +1 -1
  572. package/dist/lib/core/infrastructure/baseError.d.ts +1 -1
  573. package/dist/lib/core/infrastructure/baseFactory.d.ts +1 -6
  574. package/dist/lib/core/infrastructure/baseRegistry.d.ts +6 -5
  575. package/dist/lib/core/infrastructure/index.d.ts +6 -4
  576. package/dist/lib/core/infrastructure/index.js +2 -2
  577. package/dist/lib/core/modelConfiguration.js +3 -1
  578. package/dist/lib/core/modules/GenerationHandler.d.ts +3 -3
  579. package/dist/lib/core/modules/GenerationHandler.js +49 -41
  580. package/dist/lib/core/modules/MessageBuilder.d.ts +5 -5
  581. package/dist/lib/core/modules/MessageBuilder.js +4 -6
  582. package/dist/lib/core/modules/StreamHandler.js +26 -12
  583. package/dist/lib/core/modules/TelemetryHandler.d.ts +4 -6
  584. package/dist/lib/core/modules/TelemetryHandler.js +7 -6
  585. package/dist/lib/core/modules/ToolsManager.d.ts +2 -12
  586. package/dist/lib/core/modules/ToolsManager.js +20 -4
  587. package/dist/lib/core/modules/Utilities.js +3 -1
  588. package/dist/lib/core/redisConversationMemoryManager.js +3 -3
  589. package/dist/lib/core/streamAnalytics.js +23 -9
  590. package/dist/lib/evaluation/contextBuilder.d.ts +2 -2
  591. package/dist/lib/evaluation/contextBuilder.js +2 -2
  592. package/dist/lib/evaluation/index.d.ts +2 -2
  593. package/dist/lib/evaluation/retryManager.js +1 -1
  594. package/dist/lib/factories/providerFactory.js +2 -2
  595. package/dist/lib/features/ppt/constants.js +1 -1
  596. package/dist/lib/features/ppt/presentationOrchestrator.js +7 -3
  597. package/dist/lib/features/ppt/slideGenerator.d.ts +2 -1
  598. package/dist/lib/features/ppt/slideGenerator.js +6 -1
  599. package/dist/lib/files/fileTools.d.ts +16 -247
  600. package/dist/lib/files/fileTools.js +16 -15
  601. package/dist/lib/index.d.ts +5 -3
  602. package/dist/lib/index.js +20 -3
  603. package/dist/lib/mcp/batching/requestBatcher.js +1 -1
  604. package/dist/lib/mcp/externalServerManager.js +5 -2
  605. package/dist/lib/mcp/factory.js +1 -1
  606. package/dist/lib/mcp/index.d.ts +1 -1
  607. package/dist/lib/mcp/index.js +1 -1
  608. package/dist/lib/mcp/mcpCircuitBreaker.d.ts +1 -0
  609. package/dist/lib/mcp/mcpCircuitBreaker.js +30 -4
  610. package/dist/lib/mcp/mcpClientFactory.js +33 -4
  611. package/dist/lib/mcp/toolDiscoveryService.js +52 -5
  612. package/dist/lib/mcp/toolRegistry.js +7 -1
  613. package/dist/lib/memory/memoryRetrievalTools.d.ts +5 -89
  614. package/dist/lib/memory/memoryRetrievalTools.js +1 -1
  615. package/dist/lib/middleware/builtin/analytics.js +3 -0
  616. package/dist/lib/middleware/builtin/autoEvaluation.js +46 -24
  617. package/dist/lib/middleware/builtin/guardrails.js +4 -0
  618. package/dist/lib/middleware/builtin/lifecycle.js +10 -6
  619. package/dist/lib/middleware/factory.d.ts +3 -3
  620. package/dist/lib/middleware/factory.js +3 -2
  621. package/dist/lib/middleware/index.d.ts +1 -1
  622. package/dist/lib/middleware/registry.d.ts +2 -2
  623. package/dist/lib/middleware/registry.js +1 -0
  624. package/dist/lib/middleware/utils/guardrailsUtils.d.ts +5 -6
  625. package/dist/lib/middleware/utils/guardrailsUtils.js +15 -6
  626. package/dist/lib/neurolink.d.ts +9 -20
  627. package/dist/lib/neurolink.js +278 -186
  628. package/dist/lib/observability/retryPolicy.d.ts +2 -13
  629. package/dist/lib/observability/sampling/samplers.d.ts +2 -11
  630. package/dist/lib/observability/spanProcessor.d.ts +2 -14
  631. package/dist/lib/processors/base/BaseFileProcessor.js +1 -1
  632. package/dist/lib/processors/document/OpenDocumentProcessor.js +5 -3
  633. package/dist/lib/processors/media/VideoProcessor.js +157 -101
  634. package/dist/lib/providers/amazonBedrock.js +12 -5
  635. package/dist/lib/providers/amazonSagemaker.d.ts +5 -5
  636. package/dist/lib/providers/amazonSagemaker.js +6 -2
  637. package/dist/lib/providers/anthropic.d.ts +3 -3
  638. package/dist/lib/providers/anthropic.js +23 -192
  639. package/dist/lib/providers/anthropicBaseProvider.d.ts +4 -4
  640. package/dist/lib/providers/anthropicBaseProvider.js +24 -13
  641. package/dist/lib/providers/azureOpenai.d.ts +2 -2
  642. package/dist/lib/providers/azureOpenai.js +6 -6
  643. package/dist/lib/providers/googleAiStudio.d.ts +2 -2
  644. package/dist/lib/providers/googleAiStudio.js +15 -7
  645. package/dist/lib/providers/googleNativeGemini3.d.ts +3 -54
  646. package/dist/lib/providers/googleNativeGemini3.js +14 -10
  647. package/dist/lib/providers/googleVertex.d.ts +6 -6
  648. package/dist/lib/providers/googleVertex.js +32 -26
  649. package/dist/lib/providers/huggingFace.d.ts +4 -4
  650. package/dist/lib/providers/huggingFace.js +15 -5
  651. package/dist/lib/providers/litellm.d.ts +4 -4
  652. package/dist/lib/providers/litellm.js +54 -42
  653. package/dist/lib/providers/mistral.d.ts +2 -2
  654. package/dist/lib/providers/mistral.js +5 -4
  655. package/dist/lib/providers/ollama.d.ts +7 -4
  656. package/dist/lib/providers/ollama.js +30 -8
  657. package/dist/lib/providers/openAI.d.ts +2 -2
  658. package/dist/lib/providers/openAI.js +46 -21
  659. package/dist/lib/providers/openRouter.d.ts +4 -4
  660. package/dist/lib/providers/openRouter.js +63 -35
  661. package/dist/lib/providers/openaiCompatible.d.ts +2 -2
  662. package/dist/lib/providers/openaiCompatible.js +18 -9
  663. package/dist/lib/providers/providerTypeUtils.d.ts +28 -0
  664. package/dist/lib/providers/providerTypeUtils.js +47 -0
  665. package/dist/lib/providers/sagemaker/config.js +5 -5
  666. package/dist/lib/providers/sagemaker/language-model.d.ts +23 -13
  667. package/dist/lib/providers/sagemaker/language-model.js +20 -8
  668. package/dist/lib/proxy/accountQuota.d.ts +33 -0
  669. package/dist/lib/proxy/accountQuota.js +163 -0
  670. package/dist/lib/proxy/claudeFormat.d.ts +143 -0
  671. package/dist/lib/proxy/claudeFormat.js +596 -0
  672. package/dist/lib/proxy/cloaking/index.d.ts +44 -0
  673. package/dist/lib/proxy/cloaking/index.js +87 -0
  674. package/dist/lib/proxy/cloaking/plugins/headerScrubber.d.ts +9 -0
  675. package/dist/lib/proxy/cloaking/plugins/headerScrubber.js +87 -0
  676. package/dist/lib/proxy/cloaking/plugins/sessionIdentity.d.ts +15 -0
  677. package/dist/lib/proxy/cloaking/plugins/sessionIdentity.js +66 -0
  678. package/dist/lib/proxy/cloaking/plugins/systemPromptInjector.d.ts +11 -0
  679. package/dist/lib/proxy/cloaking/plugins/systemPromptInjector.js +84 -0
  680. package/dist/lib/proxy/cloaking/plugins/tlsFingerprint.d.ts +14 -0
  681. package/dist/lib/proxy/cloaking/plugins/tlsFingerprint.js +39 -0
  682. package/dist/lib/proxy/cloaking/plugins/wordObfuscator.d.ts +9 -0
  683. package/dist/lib/proxy/cloaking/plugins/wordObfuscator.js +122 -0
  684. package/dist/lib/proxy/cloaking/types.d.ts +1 -0
  685. package/dist/lib/proxy/cloaking/types.js +2 -0
  686. package/dist/lib/proxy/modelRouter.d.ts +10 -0
  687. package/dist/lib/proxy/modelRouter.js +30 -0
  688. package/dist/lib/proxy/oauthFetch.d.ts +36 -0
  689. package/dist/lib/proxy/oauthFetch.js +368 -0
  690. package/dist/lib/proxy/proxyConfig.d.ts +42 -0
  691. package/dist/lib/proxy/proxyConfig.js +500 -0
  692. package/dist/lib/proxy/proxyFetch.js +2 -1
  693. package/dist/lib/proxy/requestLogger.d.ts +50 -0
  694. package/dist/lib/proxy/requestLogger.js +208 -0
  695. package/dist/lib/proxy/tokenRefresh.d.ts +4 -0
  696. package/dist/lib/proxy/tokenRefresh.js +125 -0
  697. package/dist/lib/proxy/usageStats.d.ts +13 -0
  698. package/dist/lib/proxy/usageStats.js +75 -0
  699. package/dist/lib/rag/document/loaders.js +1 -1
  700. package/dist/lib/rag/pipeline/contextAssembly.d.ts +4 -7
  701. package/dist/lib/rag/ragIntegration.d.ts +2 -14
  702. package/dist/lib/rag/ragIntegration.js +1 -1
  703. package/dist/lib/rag/resilience/CircuitBreaker.d.ts +5 -44
  704. package/dist/lib/rag/resilience/RetryHandler.js +1 -1
  705. package/dist/lib/rag/retrieval/vectorQueryTool.d.ts +1 -9
  706. package/dist/lib/rag/retrieval/vectorQueryTool.js +1 -1
  707. package/dist/lib/sdk/toolRegistration.js +12 -1
  708. package/dist/lib/server/abstract/baseServerAdapter.js +2 -2
  709. package/dist/lib/server/adapters/honoAdapter.d.ts +6 -0
  710. package/dist/lib/server/adapters/honoAdapter.js +76 -10
  711. package/dist/lib/server/middleware/cache.js +3 -0
  712. package/dist/lib/server/routes/claudeProxyRoutes.d.ts +44 -0
  713. package/dist/lib/server/routes/claudeProxyRoutes.js +1601 -0
  714. package/dist/lib/server/routes/healthRoutes.js +18 -1
  715. package/dist/lib/server/routes/index.d.ts +7 -0
  716. package/dist/lib/server/routes/index.js +8 -0
  717. package/dist/lib/server/streaming/dataStream.d.ts +1 -5
  718. package/dist/lib/server/streaming/dataStream.js +3 -0
  719. package/dist/lib/server/utils/validation.d.ts +24 -124
  720. package/dist/lib/server/utils/validation.js +2 -2
  721. package/dist/lib/services/server/ai/observability/instrumentation.js +4 -0
  722. package/dist/lib/telemetry/attributes.d.ts +38 -0
  723. package/dist/lib/telemetry/attributes.js +40 -0
  724. package/dist/lib/telemetry/tracers.d.ts +1 -0
  725. package/dist/lib/telemetry/tracers.js +1 -0
  726. package/dist/lib/types/authTypes.d.ts +56 -0
  727. package/dist/lib/types/authTypes.js +9 -0
  728. package/dist/lib/types/circuitBreakerErrors.d.ts +30 -0
  729. package/dist/lib/types/circuitBreakerErrors.js +35 -0
  730. package/dist/lib/types/cli.d.ts +258 -0
  731. package/dist/lib/types/clientTypes.d.ts +1050 -0
  732. package/dist/lib/types/clientTypes.js +11 -0
  733. package/dist/lib/types/common.d.ts +123 -0
  734. package/dist/lib/types/configTypes.d.ts +49 -0
  735. package/dist/lib/types/configTypes.js +4 -0
  736. package/dist/lib/types/conversation.d.ts +0 -5
  737. package/dist/lib/types/evaluationTypes.d.ts +2 -2
  738. package/dist/lib/types/fileTypes.d.ts +47 -0
  739. package/dist/lib/types/generateTypes.d.ts +7 -3
  740. package/dist/lib/types/guardrails.d.ts +2 -2
  741. package/dist/lib/types/index.d.ts +4 -1
  742. package/dist/lib/types/index.js +5 -0
  743. package/dist/lib/types/middlewareTypes.d.ts +3 -3
  744. package/dist/lib/types/modelTypes.d.ts +7 -97
  745. package/dist/lib/types/modelTypes.js +3 -3
  746. package/dist/lib/types/observability.d.ts +37 -0
  747. package/dist/lib/types/providers.d.ts +107 -0
  748. package/dist/lib/types/proxyTypes.d.ts +536 -0
  749. package/dist/lib/types/proxyTypes.js +17 -0
  750. package/dist/lib/types/ragTypes.d.ts +49 -1
  751. package/dist/lib/types/streamTypes.d.ts +37 -13
  752. package/dist/lib/types/subscriptionTypes.d.ts +77 -0
  753. package/dist/lib/types/subscriptionTypes.js +2 -0
  754. package/dist/lib/types/tools.d.ts +45 -1
  755. package/dist/lib/types/typeAliases.d.ts +8 -0
  756. package/dist/lib/types/typeAliases.js +1 -0
  757. package/dist/lib/utils/async/retry.d.ts +4 -33
  758. package/dist/lib/utils/asyncMutex.d.ts +14 -0
  759. package/dist/lib/utils/asyncMutex.js +61 -0
  760. package/dist/lib/utils/errorHandling.d.ts +2 -1
  761. package/dist/lib/utils/errorHandling.js +14 -6
  762. package/dist/lib/utils/fileDetector.d.ts +13 -1
  763. package/dist/lib/utils/fileDetector.js +114 -32
  764. package/dist/lib/utils/imageProcessor.js +7 -7
  765. package/dist/lib/utils/json/safeParse.d.ts +1 -8
  766. package/dist/lib/utils/mcpDefaults.d.ts +1 -1
  767. package/dist/lib/utils/mcpDefaults.js +11 -2
  768. package/dist/lib/utils/messageBuilder.d.ts +5 -5
  769. package/dist/lib/utils/messageBuilder.js +106 -80
  770. package/dist/lib/utils/modelChoices.d.ts +1 -8
  771. package/dist/lib/utils/pdfProcessor.d.ts +1 -25
  772. package/dist/lib/utils/pdfProcessor.js +5 -4
  773. package/dist/lib/utils/pricing.js +28 -5
  774. package/dist/lib/utils/providerHealth.d.ts +1 -1
  775. package/dist/lib/utils/rateLimiter.d.ts +1 -15
  776. package/dist/lib/utils/redis.d.ts +1 -1
  777. package/dist/lib/utils/redis.js +3 -3
  778. package/dist/lib/utils/sanitizers/filename.d.ts +2 -22
  779. package/dist/lib/utils/sanitizers/index.d.ts +4 -2
  780. package/dist/lib/utils/sanitizers/svg.d.ts +1 -11
  781. package/dist/lib/utils/schemaConversion.js +4 -1
  782. package/dist/lib/utils/thinkingConfig.d.ts +1 -33
  783. package/dist/lib/utils/tokenUtils.d.ts +1 -39
  784. package/dist/lib/utils/videoAnalysisProcessor.d.ts +5 -5
  785. package/dist/lib/utils/videoAnalysisProcessor.js +2 -2
  786. package/dist/lib/workflow/config.d.ts +89 -1257
  787. package/dist/lib/workflow/utils/workflowValidation.js +1 -1
  788. package/dist/mcp/batching/requestBatcher.js +1 -1
  789. package/dist/mcp/externalServerManager.js +5 -2
  790. package/dist/mcp/factory.js +1 -1
  791. package/dist/mcp/index.d.ts +1 -1
  792. package/dist/mcp/index.js +1 -1
  793. package/dist/mcp/mcpCircuitBreaker.d.ts +1 -0
  794. package/dist/mcp/mcpCircuitBreaker.js +30 -4
  795. package/dist/mcp/mcpClientFactory.js +33 -4
  796. package/dist/mcp/toolDiscoveryService.js +52 -5
  797. package/dist/mcp/toolRegistry.js +7 -1
  798. package/dist/memory/memoryRetrievalTools.d.ts +5 -89
  799. package/dist/memory/memoryRetrievalTools.js +1 -1
  800. package/dist/middleware/builtin/analytics.js +3 -0
  801. package/dist/middleware/builtin/autoEvaluation.js +46 -24
  802. package/dist/middleware/builtin/guardrails.js +4 -0
  803. package/dist/middleware/builtin/lifecycle.js +10 -6
  804. package/dist/middleware/factory.d.ts +3 -3
  805. package/dist/middleware/factory.js +3 -2
  806. package/dist/middleware/index.d.ts +1 -1
  807. package/dist/middleware/registry.d.ts +2 -2
  808. package/dist/middleware/registry.js +1 -0
  809. package/dist/middleware/utils/guardrailsUtils.d.ts +5 -6
  810. package/dist/middleware/utils/guardrailsUtils.js +15 -6
  811. package/dist/neurolink.d.ts +9 -20
  812. package/dist/neurolink.js +278 -186
  813. package/dist/observability/retryPolicy.d.ts +2 -13
  814. package/dist/observability/sampling/samplers.d.ts +2 -11
  815. package/dist/observability/spanProcessor.d.ts +2 -14
  816. package/dist/processors/base/BaseFileProcessor.js +1 -1
  817. package/dist/processors/document/OpenDocumentProcessor.js +5 -3
  818. package/dist/processors/media/VideoProcessor.js +157 -101
  819. package/dist/providers/amazonBedrock.js +12 -5
  820. package/dist/providers/amazonSagemaker.d.ts +5 -5
  821. package/dist/providers/amazonSagemaker.js +6 -2
  822. package/dist/providers/anthropic.d.ts +3 -3
  823. package/dist/providers/anthropic.js +23 -192
  824. package/dist/providers/anthropicBaseProvider.d.ts +4 -4
  825. package/dist/providers/anthropicBaseProvider.js +24 -13
  826. package/dist/providers/azureOpenai.d.ts +2 -2
  827. package/dist/providers/azureOpenai.js +6 -6
  828. package/dist/providers/googleAiStudio.d.ts +2 -2
  829. package/dist/providers/googleAiStudio.js +15 -7
  830. package/dist/providers/googleNativeGemini3.d.ts +3 -54
  831. package/dist/providers/googleNativeGemini3.js +14 -10
  832. package/dist/providers/googleVertex.d.ts +6 -6
  833. package/dist/providers/googleVertex.js +32 -26
  834. package/dist/providers/huggingFace.d.ts +4 -4
  835. package/dist/providers/huggingFace.js +15 -5
  836. package/dist/providers/litellm.d.ts +4 -4
  837. package/dist/providers/litellm.js +54 -42
  838. package/dist/providers/mistral.d.ts +2 -2
  839. package/dist/providers/mistral.js +5 -4
  840. package/dist/providers/ollama.d.ts +7 -4
  841. package/dist/providers/ollama.js +30 -8
  842. package/dist/providers/openAI.d.ts +2 -2
  843. package/dist/providers/openAI.js +46 -21
  844. package/dist/providers/openRouter.d.ts +4 -4
  845. package/dist/providers/openRouter.js +63 -35
  846. package/dist/providers/openaiCompatible.d.ts +2 -2
  847. package/dist/providers/openaiCompatible.js +18 -9
  848. package/dist/providers/providerTypeUtils.d.ts +28 -0
  849. package/dist/providers/providerTypeUtils.js +46 -0
  850. package/dist/providers/sagemaker/config.js +5 -5
  851. package/dist/providers/sagemaker/language-model.d.ts +23 -13
  852. package/dist/providers/sagemaker/language-model.js +20 -8
  853. package/dist/proxy/accountQuota.d.ts +33 -0
  854. package/dist/proxy/accountQuota.js +162 -0
  855. package/dist/proxy/claudeFormat.d.ts +143 -0
  856. package/dist/proxy/claudeFormat.js +595 -0
  857. package/dist/proxy/cloaking/index.d.ts +44 -0
  858. package/dist/proxy/cloaking/index.js +86 -0
  859. package/dist/proxy/cloaking/plugins/headerScrubber.d.ts +9 -0
  860. package/dist/proxy/cloaking/plugins/headerScrubber.js +86 -0
  861. package/dist/proxy/cloaking/plugins/sessionIdentity.d.ts +15 -0
  862. package/dist/proxy/cloaking/plugins/sessionIdentity.js +65 -0
  863. package/dist/proxy/cloaking/plugins/systemPromptInjector.d.ts +11 -0
  864. package/dist/proxy/cloaking/plugins/systemPromptInjector.js +83 -0
  865. package/dist/proxy/cloaking/plugins/tlsFingerprint.d.ts +14 -0
  866. package/dist/proxy/cloaking/plugins/tlsFingerprint.js +38 -0
  867. package/dist/proxy/cloaking/plugins/wordObfuscator.d.ts +9 -0
  868. package/dist/proxy/cloaking/plugins/wordObfuscator.js +121 -0
  869. package/dist/proxy/cloaking/types.d.ts +1 -0
  870. package/dist/proxy/cloaking/types.js +1 -0
  871. package/dist/proxy/modelRouter.d.ts +10 -0
  872. package/dist/proxy/modelRouter.js +29 -0
  873. package/dist/proxy/oauthFetch.d.ts +36 -0
  874. package/dist/proxy/oauthFetch.js +367 -0
  875. package/dist/proxy/proxyConfig.d.ts +42 -0
  876. package/dist/proxy/proxyConfig.js +499 -0
  877. package/dist/proxy/proxyFetch.js +2 -1
  878. package/dist/proxy/requestLogger.d.ts +50 -0
  879. package/dist/proxy/requestLogger.js +207 -0
  880. package/dist/proxy/tokenRefresh.d.ts +4 -0
  881. package/dist/proxy/tokenRefresh.js +124 -0
  882. package/dist/proxy/usageStats.d.ts +13 -0
  883. package/dist/proxy/usageStats.js +74 -0
  884. package/dist/rag/document/loaders.js +1 -1
  885. package/dist/rag/pipeline/contextAssembly.d.ts +4 -7
  886. package/dist/rag/ragIntegration.d.ts +2 -14
  887. package/dist/rag/ragIntegration.js +1 -1
  888. package/dist/rag/resilience/CircuitBreaker.d.ts +5 -44
  889. package/dist/rag/resilience/RetryHandler.js +1 -1
  890. package/dist/rag/retrieval/vectorQueryTool.d.ts +1 -9
  891. package/dist/rag/retrieval/vectorQueryTool.js +1 -1
  892. package/dist/sdk/toolRegistration.js +12 -1
  893. package/dist/server/abstract/baseServerAdapter.js +2 -2
  894. package/dist/server/adapters/honoAdapter.d.ts +6 -0
  895. package/dist/server/adapters/honoAdapter.js +76 -10
  896. package/dist/server/middleware/cache.js +3 -0
  897. package/dist/server/routes/claudeProxyRoutes.d.ts +44 -0
  898. package/dist/server/routes/claudeProxyRoutes.js +1600 -0
  899. package/dist/server/routes/healthRoutes.js +18 -1
  900. package/dist/server/routes/index.d.ts +7 -0
  901. package/dist/server/routes/index.js +8 -0
  902. package/dist/server/streaming/dataStream.d.ts +1 -5
  903. package/dist/server/streaming/dataStream.js +3 -0
  904. package/dist/server/utils/validation.d.ts +24 -124
  905. package/dist/server/utils/validation.js +2 -2
  906. package/dist/services/server/ai/observability/instrumentation.js +4 -0
  907. package/dist/telemetry/attributes.d.ts +38 -0
  908. package/dist/telemetry/attributes.js +40 -0
  909. package/dist/telemetry/tracers.d.ts +1 -0
  910. package/dist/telemetry/tracers.js +1 -0
  911. package/dist/types/authTypes.d.ts +56 -0
  912. package/dist/types/authTypes.js +8 -0
  913. package/dist/types/circuitBreakerErrors.d.ts +30 -0
  914. package/dist/types/circuitBreakerErrors.js +34 -0
  915. package/dist/types/cli.d.ts +258 -0
  916. package/dist/types/clientTypes.d.ts +1050 -0
  917. package/dist/types/clientTypes.js +10 -0
  918. package/dist/types/common.d.ts +123 -0
  919. package/dist/types/configTypes.d.ts +49 -0
  920. package/dist/types/configTypes.js +4 -0
  921. package/dist/types/conversation.d.ts +0 -5
  922. package/dist/types/evaluationTypes.d.ts +2 -2
  923. package/dist/types/fileTypes.d.ts +47 -0
  924. package/dist/types/generateTypes.d.ts +7 -3
  925. package/dist/types/guardrails.d.ts +2 -2
  926. package/dist/types/index.d.ts +4 -1
  927. package/dist/types/index.js +5 -0
  928. package/dist/types/middlewareTypes.d.ts +3 -3
  929. package/dist/types/modelTypes.d.ts +7 -97
  930. package/dist/types/modelTypes.js +3 -3
  931. package/dist/types/observability.d.ts +37 -0
  932. package/dist/types/providers.d.ts +107 -0
  933. package/dist/types/proxyTypes.d.ts +536 -0
  934. package/dist/types/proxyTypes.js +16 -0
  935. package/dist/types/ragTypes.d.ts +49 -1
  936. package/dist/types/streamTypes.d.ts +37 -13
  937. package/dist/types/subscriptionTypes.d.ts +77 -0
  938. package/dist/types/subscriptionTypes.js +2 -0
  939. package/dist/types/tools.d.ts +45 -1
  940. package/dist/types/typeAliases.d.ts +8 -0
  941. package/dist/types/typeAliases.js +1 -0
  942. package/dist/utils/async/retry.d.ts +4 -33
  943. package/dist/utils/asyncMutex.d.ts +14 -0
  944. package/dist/utils/asyncMutex.js +60 -0
  945. package/dist/utils/errorHandling.d.ts +2 -1
  946. package/dist/utils/errorHandling.js +14 -6
  947. package/dist/utils/fileDetector.d.ts +13 -1
  948. package/dist/utils/fileDetector.js +114 -32
  949. package/dist/utils/imageProcessor.js +7 -7
  950. package/dist/utils/json/safeParse.d.ts +1 -8
  951. package/dist/utils/mcpDefaults.d.ts +1 -1
  952. package/dist/utils/mcpDefaults.js +11 -2
  953. package/dist/utils/messageBuilder.d.ts +5 -5
  954. package/dist/utils/messageBuilder.js +106 -80
  955. package/dist/utils/modelChoices.d.ts +1 -8
  956. package/dist/utils/pdfProcessor.d.ts +1 -25
  957. package/dist/utils/pdfProcessor.js +5 -4
  958. package/dist/utils/pricing.js +28 -5
  959. package/dist/utils/rateLimiter.d.ts +1 -15
  960. package/dist/utils/redis.d.ts +1 -1
  961. package/dist/utils/redis.js +3 -3
  962. package/dist/utils/sanitizers/filename.d.ts +2 -22
  963. package/dist/utils/sanitizers/index.d.ts +4 -2
  964. package/dist/utils/sanitizers/svg.d.ts +1 -11
  965. package/dist/utils/schemaConversion.js +4 -1
  966. package/dist/utils/thinkingConfig.d.ts +1 -33
  967. package/dist/utils/tokenUtils.d.ts +1 -39
  968. package/dist/utils/videoAnalysisProcessor.d.ts +5 -5
  969. package/dist/utils/videoAnalysisProcessor.js +2 -2
  970. package/dist/workflow/config.d.ts +89 -1257
  971. package/dist/workflow/utils/workflowValidation.js +1 -1
  972. package/docs-site/mcp-server/index.js +2 -3
  973. package/package.json +138 -105
  974. package/dist/lib/memory/mem0Initializer.d.ts +0 -46
  975. package/dist/lib/memory/mem0Initializer.js +0 -85
  976. package/dist/memory/mem0Initializer.d.ts +0 -46
  977. package/dist/memory/mem0Initializer.js +0 -84
@@ -0,0 +1,1050 @@
1
+ /**
2
+ * Client SDK Type Definitions
3
+ *
4
+ * Comprehensive type definitions for the NeuroLink client SDK system.
5
+ * These types enable type-safe API access from JavaScript/TypeScript applications
6
+ * and React applications with hooks for agents, workflows, and real-time streaming.
7
+ *
8
+ * @module @neurolink/client/types
9
+ */
10
+ import type { JsonValue, JsonObject, UnknownRecord } from "./common.js";
11
+ import type { ToolCall, ToolResult } from "./streamTypes.js";
12
+ /**
13
+ * Client configuration options for initializing the NeuroLink client
14
+ */
15
+ export type ClientConfig = {
16
+ /** Base URL for the NeuroLink API */
17
+ baseUrl: string;
18
+ /** API key for authentication (header-based) */
19
+ apiKey?: string;
20
+ /** Bearer token for authentication */
21
+ token?: string;
22
+ /** Default timeout in milliseconds (default: 30000) */
23
+ timeout?: number;
24
+ /** Default headers to include in all requests */
25
+ headers?: Record<string, string>;
26
+ /** Retry configuration for failed requests */
27
+ retry?: RetryConfig;
28
+ /** Enable debug logging */
29
+ debug?: boolean;
30
+ /** Custom fetch implementation (for environments without native fetch) */
31
+ fetch?: typeof fetch;
32
+ /** WebSocket URL override (defaults to ws(s) version of baseUrl) */
33
+ wsUrl?: string;
34
+ };
35
+ /**
36
+ * Retry configuration for failed requests
37
+ */
38
+ export type RetryConfig = {
39
+ /** Maximum number of retry attempts (default: 3) */
40
+ maxAttempts: number;
41
+ /** Initial delay in milliseconds before first retry (default: 1000) */
42
+ initialDelayMs: number;
43
+ /** Maximum delay in milliseconds between retries (default: 10000) */
44
+ maxDelayMs: number;
45
+ /** Backoff multiplier for exponential backoff (default: 2) */
46
+ backoffMultiplier: number;
47
+ /** HTTP status codes to retry on (default: [408, 429, 500, 502, 503, 504]) */
48
+ retryableStatusCodes?: number[];
49
+ /** Whether to retry on network errors (default: true) */
50
+ retryOnNetworkError?: boolean;
51
+ };
52
+ /**
53
+ * Request options that can be passed to individual API calls
54
+ */
55
+ export type RequestOptions = {
56
+ /** Request timeout override in milliseconds */
57
+ timeout?: number;
58
+ /** Signal for request cancellation */
59
+ signal?: AbortSignal;
60
+ /** Additional headers for this request */
61
+ headers?: Record<string, string>;
62
+ /** Skip retry for this request */
63
+ skipRetry?: boolean;
64
+ };
65
+ /**
66
+ * Response wrapper with metadata for all API responses
67
+ */
68
+ export type ApiResponse<T> = {
69
+ /** Response data */
70
+ data: T;
71
+ /** HTTP status code */
72
+ status: number;
73
+ /** Response headers */
74
+ headers: Record<string, string>;
75
+ /** Request duration in milliseconds */
76
+ duration: number;
77
+ /** Request ID for tracing */
78
+ requestId?: string;
79
+ };
80
+ /**
81
+ * Error response from API
82
+ */
83
+ export type ApiError = {
84
+ /** Error code (e.g., "RATE_LIMIT_EXCEEDED", "INVALID_REQUEST") */
85
+ code: string;
86
+ /** Human-readable error message */
87
+ message: string;
88
+ /** HTTP status code */
89
+ status: number;
90
+ /** Additional error details */
91
+ details?: JsonObject;
92
+ /** Whether the error is retryable */
93
+ retryable?: boolean;
94
+ /** Request ID for tracing */
95
+ requestId?: string;
96
+ };
97
+ /**
98
+ * Provider status information
99
+ */
100
+ export type ProviderStatus = {
101
+ /** Provider name */
102
+ name: string;
103
+ /** Provider availability status */
104
+ status: "available" | "degraded" | "unavailable";
105
+ /** Available models for this provider */
106
+ models: string[];
107
+ /** Provider capabilities */
108
+ capabilities?: {
109
+ streaming: boolean;
110
+ tools: boolean;
111
+ vision: boolean;
112
+ audio: boolean;
113
+ };
114
+ /** Last health check timestamp */
115
+ lastChecked?: number;
116
+ };
117
+ /**
118
+ * Stream event types for real-time communication
119
+ */
120
+ export type StreamEventType = "text" | "tool-call" | "tool-result" | "error" | "done" | "metadata" | "audio" | "thinking";
121
+ /**
122
+ * Stream event from SSE/WebSocket
123
+ */
124
+ export type StreamEvent = {
125
+ /** Event type */
126
+ type: StreamEventType;
127
+ /** Text content (for text events) */
128
+ content?: string;
129
+ /** Tool call data (for tool-call events) */
130
+ toolCall?: ToolCall;
131
+ /** Tool result data (for tool-result events) */
132
+ toolResult?: ToolResult;
133
+ /** Error data (for error events) */
134
+ error?: ApiError;
135
+ /** Metadata (for metadata events) */
136
+ metadata?: JsonObject;
137
+ /** Audio data (for audio events) */
138
+ audio?: {
139
+ data: string;
140
+ format: string;
141
+ sampleRate?: number;
142
+ };
143
+ /** Thinking/reasoning content (for thinking events) */
144
+ thinking?: string;
145
+ /** Event timestamp */
146
+ timestamp: number;
147
+ };
148
+ /**
149
+ * Streaming callback handlers
150
+ */
151
+ export type StreamCallbacks = {
152
+ /** Called for each text chunk */
153
+ onText?: (text: string) => void;
154
+ /** Called for each tool call */
155
+ onToolCall?: (toolCall: ToolCall) => void;
156
+ /** Called for each tool result */
157
+ onToolResult?: (toolResult: ToolResult) => void;
158
+ /** Called on stream error */
159
+ onError?: (error: ApiError) => void;
160
+ /** Called when stream completes */
161
+ onDone?: (result: StreamResult) => void;
162
+ /** Called for metadata updates */
163
+ onMetadata?: (metadata: JsonObject) => void;
164
+ /** Called for audio chunks */
165
+ onAudio?: (audio: {
166
+ data: string;
167
+ format: string;
168
+ }) => void;
169
+ /** Called for thinking/reasoning output */
170
+ onThinking?: (thinking: string) => void;
171
+ };
172
+ /**
173
+ * Stream result with full response data
174
+ */
175
+ export type StreamResult = {
176
+ /** Full accumulated text content */
177
+ content: string;
178
+ /** All tool calls made */
179
+ toolCalls?: ToolCall[];
180
+ /** All tool results */
181
+ toolResults?: ToolResult[];
182
+ /** Token usage information */
183
+ usage?: {
184
+ promptTokens: number;
185
+ completionTokens: number;
186
+ totalTokens: number;
187
+ };
188
+ /** Finish reason */
189
+ finishReason?: string;
190
+ /** Response metadata */
191
+ metadata?: JsonObject;
192
+ };
193
+ /**
194
+ * Generate request options (client-side version)
195
+ */
196
+ export type GenerateRequestOptions = {
197
+ /** Input for generation */
198
+ input: {
199
+ text: string;
200
+ images?: string[];
201
+ files?: string[];
202
+ };
203
+ /** Provider to use */
204
+ provider?: string;
205
+ /** Model to use */
206
+ model?: string;
207
+ /** Temperature for generation */
208
+ temperature?: number;
209
+ /** Maximum tokens to generate */
210
+ maxTokens?: number;
211
+ /** System prompt */
212
+ systemPrompt?: string;
213
+ /** Enable tool usage */
214
+ enableTools?: boolean;
215
+ /** Specific tools to enable */
216
+ tools?: string[];
217
+ /** Context data */
218
+ context?: UnknownRecord;
219
+ };
220
+ /**
221
+ * Generate response (client-side version)
222
+ */
223
+ export type GenerateResponse = {
224
+ /** Generated content */
225
+ content: string;
226
+ /** Provider used */
227
+ provider?: string;
228
+ /** Model used */
229
+ model?: string;
230
+ /** Token usage */
231
+ usage?: {
232
+ promptTokens: number;
233
+ completionTokens: number;
234
+ totalTokens: number;
235
+ };
236
+ /** Tool calls made */
237
+ toolCalls?: ToolCall[];
238
+ /** Tool results */
239
+ toolResults?: ToolResult[];
240
+ /** Finish reason */
241
+ finishReason?: string;
242
+ /** Response metadata */
243
+ metadata?: JsonObject;
244
+ };
245
+ /**
246
+ * Stream request options (client-side version)
247
+ */
248
+ export type StreamRequestOptions = GenerateRequestOptions & {
249
+ /** Enable streaming */
250
+ stream: true;
251
+ };
252
+ /**
253
+ * Agent execution options
254
+ */
255
+ export type AgentExecuteOptions = {
256
+ /** Agent ID */
257
+ agentId: string;
258
+ /** Input message */
259
+ input: string;
260
+ /** Session ID for conversation continuity */
261
+ sessionId?: string;
262
+ /** User context */
263
+ context?: UnknownRecord;
264
+ /** Stream the response */
265
+ stream?: boolean;
266
+ /** Tool execution options */
267
+ tools?: {
268
+ /** Enabled tools */
269
+ enabled?: string[];
270
+ /** Disabled tools */
271
+ disabled?: string[];
272
+ /** Tool execution mode */
273
+ mode?: "auto" | "manual" | "confirm";
274
+ };
275
+ };
276
+ /**
277
+ * Agent execution result
278
+ */
279
+ export type AgentExecuteResult = {
280
+ /** Response content */
281
+ content: string;
282
+ /** Agent ID */
283
+ agentId: string;
284
+ /** Session ID */
285
+ sessionId: string;
286
+ /** Tools used */
287
+ toolsUsed?: string[];
288
+ /** Tool executions */
289
+ toolExecutions?: Array<{
290
+ name: string;
291
+ input: UnknownRecord;
292
+ output: unknown;
293
+ duration: number;
294
+ }>;
295
+ /** Token usage */
296
+ usage?: {
297
+ promptTokens: number;
298
+ completionTokens: number;
299
+ totalTokens: number;
300
+ };
301
+ /** Response metadata */
302
+ metadata?: JsonObject;
303
+ };
304
+ /**
305
+ * Agent information
306
+ */
307
+ export type AgentInfo = {
308
+ /** Agent ID */
309
+ id: string;
310
+ /** Agent name */
311
+ name: string;
312
+ /** Agent description */
313
+ description: string;
314
+ /** Available tools for this agent */
315
+ tools?: string[];
316
+ /** Agent capabilities */
317
+ capabilities?: {
318
+ streaming: boolean;
319
+ multimodal: boolean;
320
+ memory: boolean;
321
+ };
322
+ };
323
+ /**
324
+ * Workflow execution options
325
+ */
326
+ export type WorkflowExecuteOptions = {
327
+ /** Workflow ID */
328
+ workflowId: string;
329
+ /** Workflow input data */
330
+ input: UnknownRecord;
331
+ /** Session ID for state persistence */
332
+ sessionId?: string;
333
+ /** Resume from a suspended state */
334
+ resumeToken?: string;
335
+ /** Callback URL for async completion */
336
+ callbackUrl?: string;
337
+ };
338
+ /**
339
+ * Workflow execution result
340
+ */
341
+ export type WorkflowExecuteResult = {
342
+ /** Workflow run ID */
343
+ runId: string;
344
+ /** Workflow ID */
345
+ workflowId: string;
346
+ /** Execution status */
347
+ status: "running" | "completed" | "failed" | "suspended";
348
+ /** Output data (if completed) */
349
+ output?: UnknownRecord;
350
+ /** Error information (if failed) */
351
+ error?: ApiError;
352
+ /** Suspend token (if suspended) */
353
+ suspendToken?: string;
354
+ /** Step results */
355
+ steps?: Array<{
356
+ stepId: string;
357
+ status: "completed" | "failed" | "skipped";
358
+ output?: unknown;
359
+ duration: number;
360
+ }>;
361
+ /** Total execution duration */
362
+ duration?: number;
363
+ };
364
+ /**
365
+ * Workflow information
366
+ */
367
+ export type WorkflowInfo = {
368
+ /** Workflow ID */
369
+ id: string;
370
+ /** Workflow name */
371
+ name: string;
372
+ /** Workflow description */
373
+ description: string;
374
+ /** Workflow version */
375
+ version: string;
376
+ /** Steps in the workflow */
377
+ steps?: Array<{
378
+ id: string;
379
+ name: string;
380
+ type: string;
381
+ }>;
382
+ };
383
+ /**
384
+ * Tool information for client use
385
+ */
386
+ export type ToolInfo = {
387
+ /** Tool name */
388
+ name: string;
389
+ /** Tool description */
390
+ description: string;
391
+ /** Tool category */
392
+ category?: string;
393
+ /** Server ID */
394
+ serverId: string;
395
+ /** Input schema */
396
+ inputSchema: JsonObject;
397
+ /** Whether tool requires confirmation */
398
+ requiresConfirmation?: boolean;
399
+ };
400
+ /**
401
+ * Middleware function type
402
+ */
403
+ export type Middleware = (request: MiddlewareRequest, next: () => Promise<MiddlewareResponse>) => Promise<MiddlewareResponse>;
404
+ /**
405
+ * Middleware request object
406
+ */
407
+ export type MiddlewareRequest = {
408
+ /** Request URL */
409
+ url: string;
410
+ /** HTTP method */
411
+ method: string;
412
+ /** Request headers */
413
+ headers: Record<string, string>;
414
+ /** Request body */
415
+ body?: unknown;
416
+ /** Middleware context */
417
+ context: MiddlewareContext;
418
+ };
419
+ /**
420
+ * Middleware response object
421
+ */
422
+ export type MiddlewareResponse = {
423
+ /** HTTP status code */
424
+ status: number;
425
+ /** Response headers */
426
+ headers: Record<string, string>;
427
+ /** Response body */
428
+ body: unknown;
429
+ /** Middleware context */
430
+ context: MiddlewareContext;
431
+ };
432
+ /**
433
+ * Middleware context for passing data between middleware
434
+ */
435
+ export type MiddlewareContext = {
436
+ /** Request start time */
437
+ startTime: number;
438
+ /** Request ID */
439
+ requestId: string;
440
+ /** Retry count */
441
+ retryCount: number;
442
+ /** Additional context data */
443
+ [key: string]: unknown;
444
+ };
445
+ /**
446
+ * Props for the NeuroLinkProvider React component.
447
+ *
448
+ * `children` is typed as `unknown` so this module stays React-agnostic;
449
+ * the provider component in reactHooks.tsx narrows it to `ReactNode`.
450
+ */
451
+ export type NeuroLinkProviderProps = {
452
+ /** Client configuration */
453
+ config: ClientConfig;
454
+ /** Child components (ReactNode at runtime) */
455
+ children: unknown;
456
+ };
457
+ /**
458
+ * Chat message for useChat hook
459
+ */
460
+ export type ChatMessage = {
461
+ /** Unique message ID */
462
+ id: string;
463
+ /** Message role */
464
+ role: "user" | "assistant" | "system" | "tool";
465
+ /** Message content */
466
+ content: string;
467
+ /** Tool calls in this message */
468
+ toolCalls?: ToolCall[];
469
+ /** Tool results in this message */
470
+ toolResults?: ToolResult[];
471
+ /** Message timestamp */
472
+ createdAt: Date;
473
+ /** Additional metadata */
474
+ metadata?: JsonObject;
475
+ };
476
+ /**
477
+ * useChat hook options
478
+ */
479
+ export type UseChatOptions = {
480
+ /** API endpoint for chat */
481
+ api?: string;
482
+ /** Agent ID to use */
483
+ agentId?: string;
484
+ /** Initial messages */
485
+ initialMessages?: ChatMessage[];
486
+ /** Session ID for conversation continuity */
487
+ sessionId?: string;
488
+ /** System prompt */
489
+ systemPrompt?: string;
490
+ /** Called when response starts */
491
+ onResponse?: (response: Response) => void | Promise<void>;
492
+ /** Called when response finishes */
493
+ onFinish?: (message: ChatMessage) => void;
494
+ /** Called on error */
495
+ onError?: (error: ApiError) => void;
496
+ /** Called for each tool call */
497
+ onToolCall?: (toolCall: ToolCall) => void;
498
+ /** Request body customization */
499
+ body?: UnknownRecord;
500
+ /** Request headers */
501
+ headers?: Record<string, string>;
502
+ /** Credentials mode */
503
+ credentials?: RequestCredentials;
504
+ /** Generate message ID */
505
+ generateId?: () => string;
506
+ };
507
+ /**
508
+ * useChat hook return type
509
+ */
510
+ export type UseChatReturn = {
511
+ /** Chat messages */
512
+ messages: ChatMessage[];
513
+ /** Current input value */
514
+ input: string;
515
+ /** Set input value */
516
+ setInput: (input: string) => void;
517
+ /** Handle input change */
518
+ handleInputChange: (e: {
519
+ target: {
520
+ value: string;
521
+ };
522
+ }) => void;
523
+ /** Submit message */
524
+ handleSubmit: (e?: {
525
+ preventDefault?: () => void;
526
+ }, options?: {
527
+ data?: UnknownRecord;
528
+ }) => void;
529
+ /** Append a message */
530
+ append: (message: Omit<ChatMessage, "id" | "createdAt">) => Promise<string | null | undefined>;
531
+ /** Reload the last message */
532
+ reload: () => Promise<string | null | undefined>;
533
+ /** Stop generation */
534
+ stop: () => void;
535
+ /** Set messages directly */
536
+ setMessages: (messages: ChatMessage[]) => void;
537
+ /** Loading state */
538
+ isLoading: boolean;
539
+ /** Error state */
540
+ error: ApiError | null;
541
+ /** Clear error */
542
+ clearError: () => void;
543
+ /** Current tool calls being executed */
544
+ toolCalls: ToolCall[];
545
+ };
546
+ /**
547
+ * useAgent hook options
548
+ */
549
+ export type UseAgentOptions = {
550
+ /** Agent ID */
551
+ agentId: string;
552
+ /** Initial session ID */
553
+ sessionId?: string;
554
+ /** Called on agent response */
555
+ onResponse?: (result: AgentExecuteResult) => void;
556
+ /** Called on error */
557
+ onError?: (error: ApiError) => void;
558
+ /** Called when tool is called */
559
+ onToolCall?: (toolCall: ToolCall) => void;
560
+ /** Auto-execute on mount with initial input */
561
+ initialInput?: string;
562
+ };
563
+ /**
564
+ * useAgent hook return type
565
+ */
566
+ export type UseAgentReturn = {
567
+ /** Execute the agent */
568
+ execute: (input: string, options?: Partial<AgentExecuteOptions>) => Promise<AgentExecuteResult>;
569
+ /** Stream execution */
570
+ stream: (input: string, callbacks?: StreamCallbacks) => Promise<void>;
571
+ /** Current session ID */
572
+ sessionId: string | null;
573
+ /** Set session ID */
574
+ setSessionId: (sessionId: string | null) => void;
575
+ /** Loading state */
576
+ isLoading: boolean;
577
+ /** Streaming state */
578
+ isStreaming: boolean;
579
+ /** Last result */
580
+ result: AgentExecuteResult | null;
581
+ /** Error state */
582
+ error: ApiError | null;
583
+ /** Clear error */
584
+ clearError: () => void;
585
+ /** Abort current execution */
586
+ abort: () => void;
587
+ };
588
+ /**
589
+ * useWorkflow hook options
590
+ */
591
+ export type UseWorkflowOptions = {
592
+ /** Workflow ID */
593
+ workflowId: string;
594
+ /** Called on workflow completion */
595
+ onComplete?: (result: WorkflowExecuteResult) => void;
596
+ /** Called on workflow error */
597
+ onError?: (error: ApiError) => void;
598
+ /** Called on step completion */
599
+ onStepComplete?: (step: {
600
+ stepId: string;
601
+ status: string;
602
+ output?: unknown;
603
+ }) => void;
604
+ /** Poll interval for status updates (ms) */
605
+ pollInterval?: number;
606
+ };
607
+ /**
608
+ * useWorkflow hook return type
609
+ */
610
+ export type UseWorkflowReturn = {
611
+ /** Execute the workflow */
612
+ execute: (input: UnknownRecord, options?: Partial<WorkflowExecuteOptions>) => Promise<WorkflowExecuteResult>;
613
+ /** Resume a suspended workflow */
614
+ resume: (resumeToken: string, resumeData?: UnknownRecord) => Promise<WorkflowExecuteResult>;
615
+ /** Get workflow status */
616
+ getStatus: (runId: string) => Promise<WorkflowExecuteResult>;
617
+ /** Cancel workflow execution */
618
+ cancel: (runId: string) => Promise<void>;
619
+ /** Current run ID */
620
+ runId: string | null;
621
+ /** Execution status */
622
+ status: WorkflowExecuteResult["status"] | null;
623
+ /** Loading state */
624
+ isLoading: boolean;
625
+ /** Last result */
626
+ result: WorkflowExecuteResult | null;
627
+ /** Error state */
628
+ error: ApiError | null;
629
+ /** Clear error */
630
+ clearError: () => void;
631
+ };
632
+ /**
633
+ * useVoice hook options
634
+ */
635
+ export type UseVoiceOptions = {
636
+ /** Voice for TTS */
637
+ voice?: string;
638
+ /** Language */
639
+ language?: string;
640
+ /** Auto-play responses */
641
+ autoPlay?: boolean;
642
+ /** Called when speech starts */
643
+ onSpeechStart?: () => void;
644
+ /** Called when speech ends */
645
+ onSpeechEnd?: () => void;
646
+ /** Called on error */
647
+ onError?: (error: ApiError) => void;
648
+ /** API endpoint for voice */
649
+ api?: string;
650
+ /** Enable speech recognition */
651
+ enableSpeechRecognition?: boolean;
652
+ };
653
+ /**
654
+ * useVoice hook return type
655
+ */
656
+ export type UseVoiceReturn = {
657
+ /** Start listening for voice input */
658
+ startListening: () => void;
659
+ /** Stop listening */
660
+ stopListening: () => void;
661
+ /** Speak text */
662
+ speak: (text: string) => Promise<void>;
663
+ /** Stop speaking */
664
+ stopSpeaking: () => void;
665
+ /** Submit voice input */
666
+ submit: (text: string) => Promise<string>;
667
+ /** Whether currently listening */
668
+ isListening: boolean;
669
+ /** Whether currently speaking */
670
+ isSpeaking: boolean;
671
+ /** Whether processing */
672
+ isProcessing: boolean;
673
+ /** Current transcript */
674
+ transcript: string;
675
+ /** Last response */
676
+ response: string | null;
677
+ /** Error state */
678
+ error: ApiError | null;
679
+ /** Supported by browser */
680
+ isSupported: boolean;
681
+ };
682
+ /**
683
+ * useStream hook options
684
+ */
685
+ export type UseStreamOptions = {
686
+ /** API endpoint */
687
+ api?: string;
688
+ /** Stream callbacks */
689
+ callbacks?: StreamCallbacks;
690
+ };
691
+ /**
692
+ * useStream hook return type
693
+ */
694
+ export type UseStreamReturn = {
695
+ /** Start streaming */
696
+ start: (options: {
697
+ prompt: string;
698
+ } & UnknownRecord) => void;
699
+ /** Stop streaming */
700
+ stop: () => void;
701
+ /** Current text content */
702
+ text: string;
703
+ /** All events received */
704
+ events: StreamEvent[];
705
+ /** Streaming state */
706
+ isStreaming: boolean;
707
+ /** Error state */
708
+ error: ApiError | null;
709
+ };
710
+ /**
711
+ * useTools hook options
712
+ */
713
+ export type UseToolsOptions = {
714
+ /** Filter tools by category */
715
+ category?: string;
716
+ /** Filter tools by server */
717
+ serverId?: string;
718
+ /** Auto-refresh interval (ms) */
719
+ refreshInterval?: number;
720
+ };
721
+ /**
722
+ * useTools hook return type
723
+ */
724
+ export type UseToolsReturn = {
725
+ /** Available tools */
726
+ tools: ToolInfo[];
727
+ /** Execute a tool */
728
+ execute: (toolName: string, params: UnknownRecord) => Promise<unknown>;
729
+ /** Refresh tool list */
730
+ refresh: () => Promise<void>;
731
+ /** Loading state */
732
+ isLoading: boolean;
733
+ /** Error state */
734
+ error: ApiError | null;
735
+ };
736
+ /**
737
+ * AI SDK Language Model interface (Vercel AI SDK compatible)
738
+ */
739
+ export type LanguageModel = {
740
+ /** Model specification string */
741
+ modelId: string;
742
+ /** Provider name */
743
+ provider: string;
744
+ /** Generate non-streaming response */
745
+ doGenerate: (options: LanguageModelCallOptions) => Promise<LanguageModelResponse>;
746
+ /** Generate streaming response */
747
+ doStream: (options: LanguageModelCallOptions) => Promise<LanguageModelStreamResponse>;
748
+ };
749
+ /**
750
+ * Language model call options
751
+ */
752
+ export type LanguageModelCallOptions = {
753
+ /** Input prompt */
754
+ prompt: string;
755
+ /** System prompt */
756
+ system?: string;
757
+ /** Messages for conversation */
758
+ messages?: Array<{
759
+ role: "user" | "assistant" | "system";
760
+ content: string;
761
+ }>;
762
+ /** Temperature */
763
+ temperature?: number;
764
+ /** Maximum tokens */
765
+ maxTokens?: number;
766
+ /** Stop sequences */
767
+ stopSequences?: string[];
768
+ /** Abort signal */
769
+ abortSignal?: AbortSignal;
770
+ };
771
+ /**
772
+ * Language model response
773
+ */
774
+ export type LanguageModelResponse = {
775
+ /** Generated text */
776
+ text: string;
777
+ /** Finish reason */
778
+ finishReason: "stop" | "length" | "tool-calls" | "content-filter" | "error" | "other";
779
+ /** Usage information */
780
+ usage: {
781
+ promptTokens: number;
782
+ completionTokens: number;
783
+ };
784
+ /** Raw response */
785
+ rawResponse?: unknown;
786
+ };
787
+ /**
788
+ * Language model stream response
789
+ */
790
+ export type LanguageModelStreamResponse = {
791
+ /** Stream of text deltas */
792
+ stream: AsyncIterable<{
793
+ type: "text-delta" | "finish";
794
+ textDelta?: string;
795
+ finishReason?: string;
796
+ usage?: {
797
+ promptTokens: number;
798
+ completionTokens: number;
799
+ };
800
+ }>;
801
+ /** Raw response */
802
+ rawResponse?: unknown;
803
+ };
804
+ /**
805
+ * NeuroLink provider options for AI SDK adapter
806
+ */
807
+ export type NeuroLinkProviderOptions = {
808
+ /** Base URL for the NeuroLink API */
809
+ baseUrl: string;
810
+ /** API key for authentication */
811
+ apiKey?: string;
812
+ /** Bearer token for authentication */
813
+ token?: string;
814
+ /** Default model to use */
815
+ defaultModel?: string;
816
+ /** Default provider */
817
+ defaultProvider?: string;
818
+ /** Custom headers */
819
+ headers?: Record<string, string>;
820
+ };
821
+ /**
822
+ * Model creation options for AI SDK adapter
823
+ */
824
+ export type ModelOptions = {
825
+ /** Model ID */
826
+ modelId?: string;
827
+ /** Provider name */
828
+ provider?: string;
829
+ /** Temperature */
830
+ temperature?: number;
831
+ /** Maximum tokens */
832
+ maxTokens?: number;
833
+ };
834
+ /**
835
+ * WebSocket connection options
836
+ */
837
+ export type WebSocketOptions = {
838
+ /** WebSocket URL */
839
+ url: string;
840
+ /** Protocols */
841
+ protocols?: string | string[];
842
+ /** Auto-reconnect on disconnect */
843
+ autoReconnect?: boolean;
844
+ /** Reconnect interval in ms */
845
+ reconnectInterval?: number;
846
+ /** Maximum reconnect attempts */
847
+ maxReconnectAttempts?: number;
848
+ /** Heartbeat interval in ms */
849
+ heartbeatInterval?: number;
850
+ };
851
+ /**
852
+ * WebSocket connection state
853
+ */
854
+ export type WebSocketState = "connecting" | "connected" | "disconnecting" | "disconnected" | "reconnecting";
855
+ /**
856
+ * WebSocket message handler
857
+ */
858
+ export type WebSocketMessageHandler = (data: unknown) => void;
859
+ /**
860
+ * Connection state for the dedicated NeuroLinkWebSocket client
861
+ */
862
+ export type WSClientState = "connecting" | "connected" | "disconnected" | "error";
863
+ /**
864
+ * Configuration for the dedicated NeuroLinkWebSocket client
865
+ */
866
+ export type WSClientConfig = ClientConfig & {
867
+ /** Auto-reconnect on disconnect (default: true) */
868
+ autoReconnect?: boolean;
869
+ /** Maximum reconnection attempts (default: 10) */
870
+ maxReconnectAttempts?: number;
871
+ /** Initial reconnection delay in ms (default: 1000) */
872
+ reconnectDelay?: number;
873
+ /** Maximum reconnection delay in ms (default: 30000) */
874
+ maxReconnectDelay?: number;
875
+ /** Heartbeat interval in ms (default: 30000) */
876
+ heartbeatInterval?: number;
877
+ /** Message queue size when disconnected (default: 100) */
878
+ queueSize?: number;
879
+ };
880
+ /**
881
+ * WebSocket message for the dedicated NeuroLinkWebSocket client
882
+ */
883
+ export type WSClientMessage = {
884
+ type: "subscribe" | "unsubscribe" | "message" | "ping" | "pong";
885
+ channel?: string;
886
+ payload?: unknown;
887
+ id?: string;
888
+ };
889
+ /**
890
+ * Event handlers for the dedicated NeuroLinkWebSocket client
891
+ */
892
+ export type WSClientEventHandlers = {
893
+ onOpen?: () => void;
894
+ onClose?: (code: number, reason: string) => void;
895
+ onError?: (error: Error) => void;
896
+ onMessage?: (event: StreamEvent) => void;
897
+ onReconnect?: (attempt: number) => void;
898
+ onStateChange?: (state: WSClientState) => void;
899
+ };
900
+ /**
901
+ * Speech recognition result
902
+ */
903
+ export type SpeechRecognitionResult = {
904
+ /** Transcript text */
905
+ transcript: string;
906
+ /** Confidence score (0-1) */
907
+ confidence: number;
908
+ /** Whether this is the final result */
909
+ isFinal: boolean;
910
+ };
911
+ /**
912
+ * Speech synthesis options
913
+ */
914
+ export type SpeechSynthesisOptions = {
915
+ /** Voice to use */
916
+ voice?: string;
917
+ /** Speaking rate (0.1-10) */
918
+ rate?: number;
919
+ /** Pitch (0-2) */
920
+ pitch?: number;
921
+ /** Volume (0-1) */
922
+ volume?: number;
923
+ /** Language code */
924
+ lang?: string;
925
+ };
926
+ /**
927
+ * Authentication configuration options
928
+ */
929
+ export type AuthConfig = {
930
+ /** API key for header-based authentication */
931
+ apiKey?: string;
932
+ /** Bearer token for JWT/OAuth authentication */
933
+ token?: string;
934
+ /** Token refresh function for automatic token renewal */
935
+ refreshToken?: () => Promise<string>;
936
+ /** Token expiry time in milliseconds */
937
+ tokenExpiresAt?: number;
938
+ /** Buffer time before expiry to refresh token (default: 60000ms) */
939
+ refreshBufferMs?: number;
940
+ /** Custom authorization header name (default: "Authorization") */
941
+ headerName?: string;
942
+ /** Custom API key header name (default: "X-API-Key") */
943
+ apiKeyHeaderName?: string;
944
+ };
945
+ /**
946
+ * OAuth2 client credentials configuration
947
+ */
948
+ export type OAuth2Config = {
949
+ /** Token endpoint URL */
950
+ tokenUrl: string;
951
+ /** OAuth2 client ID */
952
+ clientId: string;
953
+ /** OAuth2 client secret */
954
+ clientSecret: string;
955
+ /** OAuth2 scope (optional) */
956
+ scope?: string;
957
+ /** Audience for the token (optional) */
958
+ audience?: string;
959
+ };
960
+ /**
961
+ * Token refresh result
962
+ */
963
+ export type TokenRefreshResult = {
964
+ /** Access token */
965
+ accessToken: string;
966
+ /** Token expiry time in seconds */
967
+ expiresIn: number;
968
+ /** Token type (usually "Bearer") */
969
+ tokenType: string;
970
+ /** Refresh token (if provided) */
971
+ refreshToken?: string;
972
+ /** OAuth2 scope (if provided) */
973
+ scope?: string;
974
+ };
975
+ /**
976
+ * Web Speech API event map for SpeechRecognition
977
+ */
978
+ export interface SpeechRecognitionEventMap {
979
+ audioend: Event;
980
+ audiostart: Event;
981
+ end: Event;
982
+ error: SpeechRecognitionErrorEventInternal;
983
+ nomatch: SpeechRecognitionEventInternal;
984
+ result: SpeechRecognitionEventInternal;
985
+ soundend: Event;
986
+ soundstart: Event;
987
+ speechend: Event;
988
+ speechstart: Event;
989
+ start: Event;
990
+ }
991
+ /**
992
+ * Internal speech recognition event with results
993
+ */
994
+ export interface SpeechRecognitionEventInternal extends Event {
995
+ readonly resultIndex: number;
996
+ readonly results: SpeechRecognitionResultList;
997
+ }
998
+ /**
999
+ * Internal speech recognition error event
1000
+ */
1001
+ export interface SpeechRecognitionErrorEventInternal extends Event {
1002
+ readonly error: string;
1003
+ readonly message: string;
1004
+ }
1005
+ /**
1006
+ * Internal speech recognition interface for browser Web Speech API
1007
+ */
1008
+ export interface SpeechRecognitionInternal extends EventTarget {
1009
+ continuous: boolean;
1010
+ grammars: SpeechGrammarList;
1011
+ interimResults: boolean;
1012
+ lang: string;
1013
+ maxAlternatives: number;
1014
+ onaudioend: ((this: SpeechRecognitionInternal, ev: Event) => unknown) | null;
1015
+ onaudiostart: ((this: SpeechRecognitionInternal, ev: Event) => unknown) | null;
1016
+ onend: ((this: SpeechRecognitionInternal, ev: Event) => unknown) | null;
1017
+ onerror: ((this: SpeechRecognitionInternal, ev: SpeechRecognitionErrorEventInternal) => unknown) | null;
1018
+ onnomatch: ((this: SpeechRecognitionInternal, ev: SpeechRecognitionEventInternal) => unknown) | null;
1019
+ onresult: ((this: SpeechRecognitionInternal, ev: SpeechRecognitionEventInternal) => unknown) | null;
1020
+ onsoundend: ((this: SpeechRecognitionInternal, ev: Event) => unknown) | null;
1021
+ onsoundstart: ((this: SpeechRecognitionInternal, ev: Event) => unknown) | null;
1022
+ onspeechend: ((this: SpeechRecognitionInternal, ev: Event) => unknown) | null;
1023
+ onspeechstart: ((this: SpeechRecognitionInternal, ev: Event) => unknown) | null;
1024
+ onstart: ((this: SpeechRecognitionInternal, ev: Event) => unknown) | null;
1025
+ abort(): void;
1026
+ start(): void;
1027
+ stop(): void;
1028
+ }
1029
+ /**
1030
+ * Speech grammar list interface
1031
+ */
1032
+ export interface SpeechGrammarList {
1033
+ readonly length: number;
1034
+ addFromString(string: string, weight?: number): void;
1035
+ addFromURI(src: string, weight?: number): void;
1036
+ item(index: number): SpeechGrammar;
1037
+ [index: number]: SpeechGrammar;
1038
+ }
1039
+ /**
1040
+ * Speech grammar interface
1041
+ */
1042
+ export interface SpeechGrammar {
1043
+ src: string;
1044
+ weight: number;
1045
+ }
1046
+ /**
1047
+ * Re-export common types for convenience
1048
+ */
1049
+ export type { JsonValue, JsonObject, UnknownRecord };
1050
+ export type { ToolCall, ToolResult };