illuma-agents 1.0.2

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 (437) hide show
  1. package/LICENSE +21 -0
  2. package/dist/cjs/common/enum.cjs +163 -0
  3. package/dist/cjs/common/enum.cjs.map +1 -0
  4. package/dist/cjs/events.cjs +143 -0
  5. package/dist/cjs/events.cjs.map +1 -0
  6. package/dist/cjs/graphs/Graph.cjs +581 -0
  7. package/dist/cjs/graphs/Graph.cjs.map +1 -0
  8. package/dist/cjs/instrumentation.cjs +21 -0
  9. package/dist/cjs/instrumentation.cjs.map +1 -0
  10. package/dist/cjs/llm/anthropic/index.cjs +292 -0
  11. package/dist/cjs/llm/anthropic/index.cjs.map +1 -0
  12. package/dist/cjs/llm/anthropic/types.cjs +50 -0
  13. package/dist/cjs/llm/anthropic/types.cjs.map +1 -0
  14. package/dist/cjs/llm/anthropic/utils/message_inputs.cjs +553 -0
  15. package/dist/cjs/llm/anthropic/utils/message_inputs.cjs.map +1 -0
  16. package/dist/cjs/llm/anthropic/utils/message_outputs.cjs +218 -0
  17. package/dist/cjs/llm/anthropic/utils/message_outputs.cjs.map +1 -0
  18. package/dist/cjs/llm/anthropic/utils/tools.cjs +29 -0
  19. package/dist/cjs/llm/anthropic/utils/tools.cjs.map +1 -0
  20. package/dist/cjs/llm/fake.cjs +97 -0
  21. package/dist/cjs/llm/fake.cjs.map +1 -0
  22. package/dist/cjs/llm/google/index.cjs +147 -0
  23. package/dist/cjs/llm/google/index.cjs.map +1 -0
  24. package/dist/cjs/llm/google/utils/common.cjs +490 -0
  25. package/dist/cjs/llm/google/utils/common.cjs.map +1 -0
  26. package/dist/cjs/llm/ollama/index.cjs +70 -0
  27. package/dist/cjs/llm/ollama/index.cjs.map +1 -0
  28. package/dist/cjs/llm/ollama/utils.cjs +158 -0
  29. package/dist/cjs/llm/ollama/utils.cjs.map +1 -0
  30. package/dist/cjs/llm/openai/index.cjs +613 -0
  31. package/dist/cjs/llm/openai/index.cjs.map +1 -0
  32. package/dist/cjs/llm/openai/utils/index.cjs +677 -0
  33. package/dist/cjs/llm/openai/utils/index.cjs.map +1 -0
  34. package/dist/cjs/llm/openrouter/index.cjs +29 -0
  35. package/dist/cjs/llm/openrouter/index.cjs.map +1 -0
  36. package/dist/cjs/llm/providers.cjs +47 -0
  37. package/dist/cjs/llm/providers.cjs.map +1 -0
  38. package/dist/cjs/llm/text.cjs +69 -0
  39. package/dist/cjs/llm/text.cjs.map +1 -0
  40. package/dist/cjs/llm/vertexai/index.cjs +330 -0
  41. package/dist/cjs/llm/vertexai/index.cjs.map +1 -0
  42. package/dist/cjs/main.cjs +127 -0
  43. package/dist/cjs/main.cjs.map +1 -0
  44. package/dist/cjs/messages/core.cjs +359 -0
  45. package/dist/cjs/messages/core.cjs.map +1 -0
  46. package/dist/cjs/messages/format.cjs +455 -0
  47. package/dist/cjs/messages/format.cjs.map +1 -0
  48. package/dist/cjs/messages/ids.cjs +23 -0
  49. package/dist/cjs/messages/ids.cjs.map +1 -0
  50. package/dist/cjs/messages/prune.cjs +398 -0
  51. package/dist/cjs/messages/prune.cjs.map +1 -0
  52. package/dist/cjs/run.cjs +264 -0
  53. package/dist/cjs/run.cjs.map +1 -0
  54. package/dist/cjs/splitStream.cjs +210 -0
  55. package/dist/cjs/splitStream.cjs.map +1 -0
  56. package/dist/cjs/stream.cjs +504 -0
  57. package/dist/cjs/stream.cjs.map +1 -0
  58. package/dist/cjs/tools/CodeExecutor.cjs +192 -0
  59. package/dist/cjs/tools/CodeExecutor.cjs.map +1 -0
  60. package/dist/cjs/tools/ToolNode.cjs +125 -0
  61. package/dist/cjs/tools/ToolNode.cjs.map +1 -0
  62. package/dist/cjs/tools/handlers.cjs +250 -0
  63. package/dist/cjs/tools/handlers.cjs.map +1 -0
  64. package/dist/cjs/tools/search/anthropic.cjs +40 -0
  65. package/dist/cjs/tools/search/anthropic.cjs.map +1 -0
  66. package/dist/cjs/tools/search/content.cjs +140 -0
  67. package/dist/cjs/tools/search/content.cjs.map +1 -0
  68. package/dist/cjs/tools/search/firecrawl.cjs +179 -0
  69. package/dist/cjs/tools/search/firecrawl.cjs.map +1 -0
  70. package/dist/cjs/tools/search/format.cjs +203 -0
  71. package/dist/cjs/tools/search/format.cjs.map +1 -0
  72. package/dist/cjs/tools/search/highlights.cjs +245 -0
  73. package/dist/cjs/tools/search/highlights.cjs.map +1 -0
  74. package/dist/cjs/tools/search/rerankers.cjs +174 -0
  75. package/dist/cjs/tools/search/rerankers.cjs.map +1 -0
  76. package/dist/cjs/tools/search/schema.cjs +70 -0
  77. package/dist/cjs/tools/search/schema.cjs.map +1 -0
  78. package/dist/cjs/tools/search/search.cjs +561 -0
  79. package/dist/cjs/tools/search/search.cjs.map +1 -0
  80. package/dist/cjs/tools/search/serper-scraper.cjs +132 -0
  81. package/dist/cjs/tools/search/serper-scraper.cjs.map +1 -0
  82. package/dist/cjs/tools/search/tool.cjs +331 -0
  83. package/dist/cjs/tools/search/tool.cjs.map +1 -0
  84. package/dist/cjs/tools/search/utils.cjs +66 -0
  85. package/dist/cjs/tools/search/utils.cjs.map +1 -0
  86. package/dist/cjs/utils/graph.cjs +16 -0
  87. package/dist/cjs/utils/graph.cjs.map +1 -0
  88. package/dist/cjs/utils/llm.cjs +28 -0
  89. package/dist/cjs/utils/llm.cjs.map +1 -0
  90. package/dist/cjs/utils/misc.cjs +56 -0
  91. package/dist/cjs/utils/misc.cjs.map +1 -0
  92. package/dist/cjs/utils/run.cjs +69 -0
  93. package/dist/cjs/utils/run.cjs.map +1 -0
  94. package/dist/cjs/utils/title.cjs +111 -0
  95. package/dist/cjs/utils/title.cjs.map +1 -0
  96. package/dist/cjs/utils/tokens.cjs +65 -0
  97. package/dist/cjs/utils/tokens.cjs.map +1 -0
  98. package/dist/esm/common/enum.mjs +163 -0
  99. package/dist/esm/common/enum.mjs.map +1 -0
  100. package/dist/esm/events.mjs +135 -0
  101. package/dist/esm/events.mjs.map +1 -0
  102. package/dist/esm/graphs/Graph.mjs +578 -0
  103. package/dist/esm/graphs/Graph.mjs.map +1 -0
  104. package/dist/esm/instrumentation.mjs +19 -0
  105. package/dist/esm/instrumentation.mjs.map +1 -0
  106. package/dist/esm/llm/anthropic/index.mjs +290 -0
  107. package/dist/esm/llm/anthropic/index.mjs.map +1 -0
  108. package/dist/esm/llm/anthropic/types.mjs +48 -0
  109. package/dist/esm/llm/anthropic/types.mjs.map +1 -0
  110. package/dist/esm/llm/anthropic/utils/message_inputs.mjs +550 -0
  111. package/dist/esm/llm/anthropic/utils/message_inputs.mjs.map +1 -0
  112. package/dist/esm/llm/anthropic/utils/message_outputs.mjs +216 -0
  113. package/dist/esm/llm/anthropic/utils/message_outputs.mjs.map +1 -0
  114. package/dist/esm/llm/anthropic/utils/tools.mjs +27 -0
  115. package/dist/esm/llm/anthropic/utils/tools.mjs.map +1 -0
  116. package/dist/esm/llm/fake.mjs +94 -0
  117. package/dist/esm/llm/fake.mjs.map +1 -0
  118. package/dist/esm/llm/google/index.mjs +145 -0
  119. package/dist/esm/llm/google/index.mjs.map +1 -0
  120. package/dist/esm/llm/google/utils/common.mjs +484 -0
  121. package/dist/esm/llm/google/utils/common.mjs.map +1 -0
  122. package/dist/esm/llm/ollama/index.mjs +68 -0
  123. package/dist/esm/llm/ollama/index.mjs.map +1 -0
  124. package/dist/esm/llm/ollama/utils.mjs +155 -0
  125. package/dist/esm/llm/ollama/utils.mjs.map +1 -0
  126. package/dist/esm/llm/openai/index.mjs +604 -0
  127. package/dist/esm/llm/openai/index.mjs.map +1 -0
  128. package/dist/esm/llm/openai/utils/index.mjs +671 -0
  129. package/dist/esm/llm/openai/utils/index.mjs.map +1 -0
  130. package/dist/esm/llm/openrouter/index.mjs +27 -0
  131. package/dist/esm/llm/openrouter/index.mjs.map +1 -0
  132. package/dist/esm/llm/providers.mjs +43 -0
  133. package/dist/esm/llm/providers.mjs.map +1 -0
  134. package/dist/esm/llm/text.mjs +67 -0
  135. package/dist/esm/llm/text.mjs.map +1 -0
  136. package/dist/esm/llm/vertexai/index.mjs +328 -0
  137. package/dist/esm/llm/vertexai/index.mjs.map +1 -0
  138. package/dist/esm/main.mjs +20 -0
  139. package/dist/esm/main.mjs.map +1 -0
  140. package/dist/esm/messages/core.mjs +351 -0
  141. package/dist/esm/messages/core.mjs.map +1 -0
  142. package/dist/esm/messages/format.mjs +447 -0
  143. package/dist/esm/messages/format.mjs.map +1 -0
  144. package/dist/esm/messages/ids.mjs +21 -0
  145. package/dist/esm/messages/ids.mjs.map +1 -0
  146. package/dist/esm/messages/prune.mjs +393 -0
  147. package/dist/esm/messages/prune.mjs.map +1 -0
  148. package/dist/esm/run.mjs +261 -0
  149. package/dist/esm/run.mjs.map +1 -0
  150. package/dist/esm/splitStream.mjs +207 -0
  151. package/dist/esm/splitStream.mjs.map +1 -0
  152. package/dist/esm/stream.mjs +500 -0
  153. package/dist/esm/stream.mjs.map +1 -0
  154. package/dist/esm/tools/CodeExecutor.mjs +188 -0
  155. package/dist/esm/tools/CodeExecutor.mjs.map +1 -0
  156. package/dist/esm/tools/ToolNode.mjs +122 -0
  157. package/dist/esm/tools/ToolNode.mjs.map +1 -0
  158. package/dist/esm/tools/handlers.mjs +245 -0
  159. package/dist/esm/tools/handlers.mjs.map +1 -0
  160. package/dist/esm/tools/search/anthropic.mjs +37 -0
  161. package/dist/esm/tools/search/anthropic.mjs.map +1 -0
  162. package/dist/esm/tools/search/content.mjs +119 -0
  163. package/dist/esm/tools/search/content.mjs.map +1 -0
  164. package/dist/esm/tools/search/firecrawl.mjs +176 -0
  165. package/dist/esm/tools/search/firecrawl.mjs.map +1 -0
  166. package/dist/esm/tools/search/format.mjs +201 -0
  167. package/dist/esm/tools/search/format.mjs.map +1 -0
  168. package/dist/esm/tools/search/highlights.mjs +243 -0
  169. package/dist/esm/tools/search/highlights.mjs.map +1 -0
  170. package/dist/esm/tools/search/rerankers.mjs +168 -0
  171. package/dist/esm/tools/search/rerankers.mjs.map +1 -0
  172. package/dist/esm/tools/search/schema.mjs +61 -0
  173. package/dist/esm/tools/search/schema.mjs.map +1 -0
  174. package/dist/esm/tools/search/search.mjs +558 -0
  175. package/dist/esm/tools/search/search.mjs.map +1 -0
  176. package/dist/esm/tools/search/serper-scraper.mjs +129 -0
  177. package/dist/esm/tools/search/serper-scraper.mjs.map +1 -0
  178. package/dist/esm/tools/search/tool.mjs +329 -0
  179. package/dist/esm/tools/search/tool.mjs.map +1 -0
  180. package/dist/esm/tools/search/utils.mjs +61 -0
  181. package/dist/esm/tools/search/utils.mjs.map +1 -0
  182. package/dist/esm/utils/graph.mjs +13 -0
  183. package/dist/esm/utils/graph.mjs.map +1 -0
  184. package/dist/esm/utils/llm.mjs +25 -0
  185. package/dist/esm/utils/llm.mjs.map +1 -0
  186. package/dist/esm/utils/misc.mjs +53 -0
  187. package/dist/esm/utils/misc.mjs.map +1 -0
  188. package/dist/esm/utils/run.mjs +66 -0
  189. package/dist/esm/utils/run.mjs.map +1 -0
  190. package/dist/esm/utils/title.mjs +108 -0
  191. package/dist/esm/utils/title.mjs.map +1 -0
  192. package/dist/esm/utils/tokens.mjs +62 -0
  193. package/dist/esm/utils/tokens.mjs.map +1 -0
  194. package/dist/types/common/enum.d.ts +128 -0
  195. package/dist/types/common/index.d.ts +1 -0
  196. package/dist/types/events.d.ts +29 -0
  197. package/dist/types/graphs/Graph.d.ts +122 -0
  198. package/dist/types/graphs/index.d.ts +1 -0
  199. package/dist/types/index.d.ts +13 -0
  200. package/dist/types/instrumentation.d.ts +1 -0
  201. package/dist/types/llm/anthropic/index.d.ts +39 -0
  202. package/dist/types/llm/anthropic/types.d.ts +37 -0
  203. package/dist/types/llm/anthropic/utils/message_inputs.d.ts +14 -0
  204. package/dist/types/llm/anthropic/utils/message_outputs.d.ts +14 -0
  205. package/dist/types/llm/anthropic/utils/output_parsers.d.ts +22 -0
  206. package/dist/types/llm/anthropic/utils/tools.d.ts +3 -0
  207. package/dist/types/llm/fake.d.ts +31 -0
  208. package/dist/types/llm/google/index.d.ts +14 -0
  209. package/dist/types/llm/google/types.d.ts +32 -0
  210. package/dist/types/llm/google/utils/common.d.ts +19 -0
  211. package/dist/types/llm/google/utils/tools.d.ts +10 -0
  212. package/dist/types/llm/google/utils/zod_to_genai_parameters.d.ts +14 -0
  213. package/dist/types/llm/ollama/index.d.ts +8 -0
  214. package/dist/types/llm/ollama/utils.d.ts +7 -0
  215. package/dist/types/llm/openai/index.d.ts +103 -0
  216. package/dist/types/llm/openai/types.d.ts +10 -0
  217. package/dist/types/llm/openai/utils/index.d.ts +20 -0
  218. package/dist/types/llm/openrouter/index.d.ts +12 -0
  219. package/dist/types/llm/providers.d.ts +5 -0
  220. package/dist/types/llm/text.d.ts +21 -0
  221. package/dist/types/llm/vertexai/index.d.ts +293 -0
  222. package/dist/types/messages/core.d.ts +14 -0
  223. package/dist/types/messages/format.d.ts +113 -0
  224. package/dist/types/messages/ids.d.ts +3 -0
  225. package/dist/types/messages/index.d.ts +4 -0
  226. package/dist/types/messages/prune.d.ts +51 -0
  227. package/dist/types/mockStream.d.ts +32 -0
  228. package/dist/types/prompts/collab.d.ts +1 -0
  229. package/dist/types/prompts/index.d.ts +2 -0
  230. package/dist/types/prompts/taskmanager.d.ts +41 -0
  231. package/dist/types/run.d.ts +30 -0
  232. package/dist/types/scripts/abort.d.ts +1 -0
  233. package/dist/types/scripts/ant_web_search.d.ts +1 -0
  234. package/dist/types/scripts/args.d.ts +7 -0
  235. package/dist/types/scripts/caching.d.ts +1 -0
  236. package/dist/types/scripts/cli.d.ts +1 -0
  237. package/dist/types/scripts/cli2.d.ts +1 -0
  238. package/dist/types/scripts/cli3.d.ts +1 -0
  239. package/dist/types/scripts/cli4.d.ts +1 -0
  240. package/dist/types/scripts/cli5.d.ts +1 -0
  241. package/dist/types/scripts/code_exec.d.ts +1 -0
  242. package/dist/types/scripts/code_exec_files.d.ts +1 -0
  243. package/dist/types/scripts/code_exec_simple.d.ts +1 -0
  244. package/dist/types/scripts/content.d.ts +1 -0
  245. package/dist/types/scripts/empty_input.d.ts +1 -0
  246. package/dist/types/scripts/image.d.ts +1 -0
  247. package/dist/types/scripts/memory.d.ts +1 -0
  248. package/dist/types/scripts/search.d.ts +1 -0
  249. package/dist/types/scripts/simple.d.ts +1 -0
  250. package/dist/types/scripts/stream.d.ts +1 -0
  251. package/dist/types/scripts/thinking.d.ts +1 -0
  252. package/dist/types/scripts/tools.d.ts +1 -0
  253. package/dist/types/specs/spec.utils.d.ts +1 -0
  254. package/dist/types/splitStream.d.ts +37 -0
  255. package/dist/types/stream.d.ts +14 -0
  256. package/dist/types/tools/CodeExecutor.d.ts +23 -0
  257. package/dist/types/tools/ToolNode.d.ts +22 -0
  258. package/dist/types/tools/example.d.ts +78 -0
  259. package/dist/types/tools/handlers.d.ts +19 -0
  260. package/dist/types/tools/search/anthropic.d.ts +16 -0
  261. package/dist/types/tools/search/content.d.ts +4 -0
  262. package/dist/types/tools/search/firecrawl.d.ts +54 -0
  263. package/dist/types/tools/search/format.d.ts +5 -0
  264. package/dist/types/tools/search/highlights.d.ts +13 -0
  265. package/dist/types/tools/search/index.d.ts +2 -0
  266. package/dist/types/tools/search/rerankers.d.ts +38 -0
  267. package/dist/types/tools/search/schema.d.ts +16 -0
  268. package/dist/types/tools/search/search.d.ts +8 -0
  269. package/dist/types/tools/search/serper-scraper.d.ts +59 -0
  270. package/dist/types/tools/search/test.d.ts +1 -0
  271. package/dist/types/tools/search/tool.d.ts +54 -0
  272. package/dist/types/tools/search/types.d.ts +591 -0
  273. package/dist/types/tools/search/utils.d.ts +10 -0
  274. package/dist/types/types/graph.d.ts +138 -0
  275. package/dist/types/types/index.d.ts +5 -0
  276. package/dist/types/types/llm.d.ts +102 -0
  277. package/dist/types/types/run.d.ts +74 -0
  278. package/dist/types/types/stream.d.ts +293 -0
  279. package/dist/types/types/tools.d.ts +61 -0
  280. package/dist/types/utils/graph.d.ts +2 -0
  281. package/dist/types/utils/index.d.ts +5 -0
  282. package/dist/types/utils/llm.d.ts +3 -0
  283. package/dist/types/utils/llmConfig.d.ts +3 -0
  284. package/dist/types/utils/logging.d.ts +1 -0
  285. package/dist/types/utils/misc.d.ts +7 -0
  286. package/dist/types/utils/run.d.ts +27 -0
  287. package/dist/types/utils/title.d.ts +4 -0
  288. package/dist/types/utils/tokens.d.ts +3 -0
  289. package/package.json +145 -0
  290. package/src/common/enum.ts +176 -0
  291. package/src/common/index.ts +2 -0
  292. package/src/events.ts +191 -0
  293. package/src/graphs/Graph.ts +846 -0
  294. package/src/graphs/index.ts +1 -0
  295. package/src/index.ts +24 -0
  296. package/src/instrumentation.ts +22 -0
  297. package/src/llm/anthropic/Jacob_Lee_Resume_2023.pdf +0 -0
  298. package/src/llm/anthropic/index.ts +413 -0
  299. package/src/llm/anthropic/llm.spec.ts +1442 -0
  300. package/src/llm/anthropic/types.ts +140 -0
  301. package/src/llm/anthropic/utils/message_inputs.ts +660 -0
  302. package/src/llm/anthropic/utils/message_outputs.ts +289 -0
  303. package/src/llm/anthropic/utils/output_parsers.ts +133 -0
  304. package/src/llm/anthropic/utils/tools.ts +29 -0
  305. package/src/llm/fake.ts +133 -0
  306. package/src/llm/google/index.ts +222 -0
  307. package/src/llm/google/types.ts +43 -0
  308. package/src/llm/google/utils/common.ts +660 -0
  309. package/src/llm/google/utils/tools.ts +160 -0
  310. package/src/llm/google/utils/zod_to_genai_parameters.ts +88 -0
  311. package/src/llm/ollama/index.ts +92 -0
  312. package/src/llm/ollama/utils.ts +193 -0
  313. package/src/llm/openai/index.ts +853 -0
  314. package/src/llm/openai/types.ts +24 -0
  315. package/src/llm/openai/utils/index.ts +918 -0
  316. package/src/llm/openai/utils/isReasoningModel.test.ts +90 -0
  317. package/src/llm/openrouter/index.ts +60 -0
  318. package/src/llm/providers.ts +57 -0
  319. package/src/llm/text.ts +94 -0
  320. package/src/llm/vertexai/index.ts +360 -0
  321. package/src/messages/core.ts +463 -0
  322. package/src/messages/format.ts +625 -0
  323. package/src/messages/formatAgentMessages.test.ts +917 -0
  324. package/src/messages/formatAgentMessages.tools.test.ts +400 -0
  325. package/src/messages/formatMessage.test.ts +693 -0
  326. package/src/messages/ids.ts +26 -0
  327. package/src/messages/index.ts +4 -0
  328. package/src/messages/prune.ts +567 -0
  329. package/src/messages/shiftIndexTokenCountMap.test.ts +81 -0
  330. package/src/mockStream.ts +99 -0
  331. package/src/prompts/collab.ts +6 -0
  332. package/src/prompts/index.ts +2 -0
  333. package/src/prompts/taskmanager.ts +61 -0
  334. package/src/proto/CollabGraph.ts +269 -0
  335. package/src/proto/TaskManager.ts +243 -0
  336. package/src/proto/collab.ts +200 -0
  337. package/src/proto/collab_design.ts +184 -0
  338. package/src/proto/collab_design_v2.ts +224 -0
  339. package/src/proto/collab_design_v3.ts +255 -0
  340. package/src/proto/collab_design_v4.ts +220 -0
  341. package/src/proto/collab_design_v5.ts +251 -0
  342. package/src/proto/collab_graph.ts +181 -0
  343. package/src/proto/collab_original.ts +123 -0
  344. package/src/proto/example.ts +93 -0
  345. package/src/proto/example_new.ts +68 -0
  346. package/src/proto/example_old.ts +201 -0
  347. package/src/proto/example_test.ts +152 -0
  348. package/src/proto/example_test_anthropic.ts +100 -0
  349. package/src/proto/log_stream.ts +202 -0
  350. package/src/proto/main_collab_community_event.ts +133 -0
  351. package/src/proto/main_collab_design_v2.ts +96 -0
  352. package/src/proto/main_collab_design_v4.ts +100 -0
  353. package/src/proto/main_collab_design_v5.ts +135 -0
  354. package/src/proto/main_collab_global_analysis.ts +122 -0
  355. package/src/proto/main_collab_hackathon_event.ts +153 -0
  356. package/src/proto/main_collab_space_mission.ts +153 -0
  357. package/src/proto/main_philosophy.ts +210 -0
  358. package/src/proto/original_script.ts +126 -0
  359. package/src/proto/standard.ts +100 -0
  360. package/src/proto/stream.ts +56 -0
  361. package/src/proto/tasks.ts +118 -0
  362. package/src/proto/tools/global_analysis_tools.ts +86 -0
  363. package/src/proto/tools/space_mission_tools.ts +60 -0
  364. package/src/proto/vertexai.ts +54 -0
  365. package/src/run.ts +381 -0
  366. package/src/scripts/abort.ts +138 -0
  367. package/src/scripts/ant_web_search.ts +158 -0
  368. package/src/scripts/args.ts +48 -0
  369. package/src/scripts/caching.ts +124 -0
  370. package/src/scripts/cli.ts +167 -0
  371. package/src/scripts/cli2.ts +125 -0
  372. package/src/scripts/cli3.ts +178 -0
  373. package/src/scripts/cli4.ts +184 -0
  374. package/src/scripts/cli5.ts +184 -0
  375. package/src/scripts/code_exec.ts +214 -0
  376. package/src/scripts/code_exec_files.ts +193 -0
  377. package/src/scripts/code_exec_simple.ts +129 -0
  378. package/src/scripts/content.ts +120 -0
  379. package/src/scripts/empty_input.ts +137 -0
  380. package/src/scripts/image.ts +178 -0
  381. package/src/scripts/memory.ts +97 -0
  382. package/src/scripts/search.ts +150 -0
  383. package/src/scripts/simple.ts +225 -0
  384. package/src/scripts/stream.ts +122 -0
  385. package/src/scripts/thinking.ts +150 -0
  386. package/src/scripts/tools.ts +155 -0
  387. package/src/specs/anthropic.simple.test.ts +317 -0
  388. package/src/specs/azure.simple.test.ts +316 -0
  389. package/src/specs/openai.simple.test.ts +316 -0
  390. package/src/specs/prune.test.ts +763 -0
  391. package/src/specs/reasoning.test.ts +165 -0
  392. package/src/specs/spec.utils.ts +3 -0
  393. package/src/specs/thinking-prune.test.ts +703 -0
  394. package/src/specs/token-distribution-edge-case.test.ts +316 -0
  395. package/src/specs/tool-error.test.ts +193 -0
  396. package/src/splitStream.test.ts +691 -0
  397. package/src/splitStream.ts +234 -0
  398. package/src/stream.test.ts +94 -0
  399. package/src/stream.ts +651 -0
  400. package/src/tools/CodeExecutor.ts +220 -0
  401. package/src/tools/ToolNode.ts +170 -0
  402. package/src/tools/example.ts +129 -0
  403. package/src/tools/handlers.ts +336 -0
  404. package/src/tools/search/anthropic.ts +51 -0
  405. package/src/tools/search/content.test.ts +173 -0
  406. package/src/tools/search/content.ts +147 -0
  407. package/src/tools/search/firecrawl.ts +210 -0
  408. package/src/tools/search/format.ts +250 -0
  409. package/src/tools/search/highlights.ts +320 -0
  410. package/src/tools/search/index.ts +2 -0
  411. package/src/tools/search/jina-reranker.test.ts +126 -0
  412. package/src/tools/search/output.md +2775 -0
  413. package/src/tools/search/rerankers.ts +242 -0
  414. package/src/tools/search/schema.ts +63 -0
  415. package/src/tools/search/search.ts +759 -0
  416. package/src/tools/search/serper-scraper.ts +155 -0
  417. package/src/tools/search/test.html +884 -0
  418. package/src/tools/search/test.md +643 -0
  419. package/src/tools/search/test.ts +159 -0
  420. package/src/tools/search/tool.ts +471 -0
  421. package/src/tools/search/types.ts +687 -0
  422. package/src/tools/search/utils.ts +79 -0
  423. package/src/types/graph.ts +185 -0
  424. package/src/types/index.ts +6 -0
  425. package/src/types/llm.ts +140 -0
  426. package/src/types/run.ts +89 -0
  427. package/src/types/stream.ts +400 -0
  428. package/src/types/tools.ts +80 -0
  429. package/src/utils/graph.ts +11 -0
  430. package/src/utils/index.ts +5 -0
  431. package/src/utils/llm.ts +27 -0
  432. package/src/utils/llmConfig.ts +183 -0
  433. package/src/utils/logging.ts +48 -0
  434. package/src/utils/misc.ts +57 -0
  435. package/src/utils/run.ts +101 -0
  436. package/src/utils/title.ts +165 -0
  437. package/src/utils/tokens.ts +70 -0
@@ -0,0 +1 @@
1
+ export declare function capitalizeFirstLetter(string: string): string;
@@ -0,0 +1,37 @@
1
+ import type * as t from '@/types';
2
+ import { ContentTypes } from '@/common';
3
+ export declare const SEPARATORS: string[];
4
+ export declare class SplitStreamHandler {
5
+ private inCodeBlock;
6
+ private inThinkBlock;
7
+ private accumulate;
8
+ tokens: string[];
9
+ lastToken: string;
10
+ reasoningTokens: string[];
11
+ currentStepId?: string;
12
+ currentMessageId?: string;
13
+ currentType?: ContentTypes.TEXT | ContentTypes.THINK;
14
+ currentLength: number;
15
+ reasoningKey: 'reasoning_content' | 'reasoning';
16
+ currentIndex: number;
17
+ blockThreshold: number;
18
+ /** The run ID AKA the Message ID associated with the complete generation */
19
+ runId: string;
20
+ handlers?: t.SplitStreamHandlers;
21
+ constructor({ runId, handlers, accumulate, reasoningKey, blockThreshold, }: {
22
+ runId: string;
23
+ accumulate?: boolean;
24
+ handlers: t.SplitStreamHandlers;
25
+ blockThreshold?: number;
26
+ reasoningKey?: 'reasoning_content' | 'reasoning';
27
+ });
28
+ getMessageId: () => string | undefined;
29
+ createMessageStep: (type?: ContentTypes.TEXT | ContentTypes.THINK) => [string, string];
30
+ dispatchRunStep: (stepId: string, stepDetails: t.StepDetails) => void;
31
+ dispatchMessageDelta: (stepId: string, delta: t.MessageDelta) => void;
32
+ dispatchReasoningDelta: (stepId: string, delta: t.ReasoningDelta) => void;
33
+ handleContent: (content: string, _type: ContentTypes.TEXT | ContentTypes.THINK) => void;
34
+ getDeltaContent(chunk?: t.CustomChunk): string;
35
+ getReasoningDelta(chunk?: t.CustomChunk): string;
36
+ handle(chunk?: t.CustomChunk): void;
37
+ }
@@ -0,0 +1,14 @@
1
+ import type { AIMessageChunk } from '@langchain/core/messages';
2
+ import type { Graph } from '@/graphs';
3
+ import type * as t from '@/types';
4
+ import { Providers } from '@/common';
5
+ export declare function getChunkContent({ chunk, provider, reasoningKey, }: {
6
+ chunk?: Partial<AIMessageChunk>;
7
+ provider?: Providers;
8
+ reasoningKey: 'reasoning_content' | 'reasoning';
9
+ }): string | t.MessageContentComplex[] | undefined;
10
+ export declare class ChatModelStreamHandler implements t.EventHandler {
11
+ handle(event: string, data: t.StreamEventData, metadata?: Record<string, unknown>, graph?: Graph): void;
12
+ handleReasoning(chunk: Partial<AIMessageChunk>, graph: Graph, provider?: Providers): void;
13
+ }
14
+ export declare function createContentAggregator(): t.ContentAggregatorResult;
@@ -0,0 +1,23 @@
1
+ import { z } from 'zod';
2
+ import { DynamicStructuredTool } from '@langchain/core/tools';
3
+ import type * as t from '@/types';
4
+ export declare const imageExtRegex: RegExp;
5
+ export declare const getCodeBaseURL: () => string;
6
+ declare const CodeExecutionToolSchema: z.ZodObject<{
7
+ lang: z.ZodEnum<["py", "js", "ts", "c", "cpp", "java", "php", "rs", "go", "d", "f90", "r"]>;
8
+ code: z.ZodString;
9
+ session_id: z.ZodOptional<z.ZodString>;
10
+ args: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
11
+ }, "strip", z.ZodTypeAny, {
12
+ code: string;
13
+ lang: "r" | "d" | "py" | "js" | "ts" | "c" | "cpp" | "java" | "php" | "rs" | "go" | "f90";
14
+ args?: string[] | undefined;
15
+ session_id?: string | undefined;
16
+ }, {
17
+ code: string;
18
+ lang: "r" | "d" | "py" | "js" | "ts" | "c" | "cpp" | "java" | "php" | "rs" | "go" | "f90";
19
+ args?: string[] | undefined;
20
+ session_id?: string | undefined;
21
+ }>;
22
+ declare function createCodeExecutionTool(params?: t.CodeExecutionToolParams): DynamicStructuredTool<typeof CodeExecutionToolSchema>;
23
+ export { createCodeExecutionTool };
@@ -0,0 +1,22 @@
1
+ import { END, MessagesAnnotation } from '@langchain/langgraph';
2
+ import type { RunnableConfig } from '@langchain/core/runnables';
3
+ import type { BaseMessage } from '@langchain/core/messages';
4
+ import type * as t from '@/types';
5
+ import { RunnableCallable } from '@/utils';
6
+ export declare class ToolNode<T = any> extends RunnableCallable<T, T> {
7
+ tools: t.GenericTool[];
8
+ private toolMap;
9
+ private loadRuntimeTools?;
10
+ handleToolErrors: boolean;
11
+ toolCallStepIds?: Map<string, string>;
12
+ errorHandler?: t.ToolNodeConstructorParams['errorHandler'];
13
+ private toolUsageCount;
14
+ constructor({ tools, toolMap, name, tags, errorHandler, toolCallStepIds, handleToolErrors, loadRuntimeTools, }: t.ToolNodeConstructorParams);
15
+ /**
16
+ * Returns a snapshot of the current tool usage counts.
17
+ * @returns A ReadonlyMap where keys are tool names and values are their usage counts.
18
+ */
19
+ getToolUsageCounts(): ReadonlyMap<string, number>;
20
+ protected run(input: any, config: RunnableConfig): Promise<T>;
21
+ }
22
+ export declare function toolsCondition(state: BaseMessage[] | typeof MessagesAnnotation.State, invokedToolIds?: Set<string>): 'tools' | typeof END;
@@ -0,0 +1,78 @@
1
+ import { TavilySearchResults } from '@langchain/community/tools/tavily_search';
2
+ import { DynamicStructuredTool } from '@langchain/core/tools';
3
+ import { z } from 'zod';
4
+ export declare const fetchRandomImageTool: DynamicStructuredTool<z.ZodObject<{
5
+ input: z.ZodOptional<z.ZodString>;
6
+ }, "strip", z.ZodTypeAny, {
7
+ input?: string | undefined;
8
+ }, {
9
+ input?: string | undefined;
10
+ }>, {
11
+ input?: string | undefined;
12
+ }, {
13
+ input?: string | undefined;
14
+ }, (string | undefined)[] | ({
15
+ type: string;
16
+ text: string;
17
+ }[] | {
18
+ content: {
19
+ type: string;
20
+ image_url: {
21
+ url: string;
22
+ };
23
+ }[];
24
+ })[]>;
25
+ export declare const fetchRandomImageURL: DynamicStructuredTool<z.ZodObject<{
26
+ input: z.ZodOptional<z.ZodString>;
27
+ }, "strip", z.ZodTypeAny, {
28
+ input?: string | undefined;
29
+ }, {
30
+ input?: string | undefined;
31
+ }>, {
32
+ input?: string | undefined;
33
+ }, {
34
+ input?: string | undefined;
35
+ }, (string | undefined)[] | ({
36
+ type: string;
37
+ text: string;
38
+ }[] | {
39
+ content: {
40
+ type: string;
41
+ image_url: {
42
+ url: string;
43
+ };
44
+ }[];
45
+ })[]>;
46
+ export declare const chartTool: DynamicStructuredTool<z.ZodObject<{
47
+ data: z.ZodArray<z.ZodObject<{
48
+ label: z.ZodString;
49
+ value: z.ZodNumber;
50
+ }, "strip", z.ZodTypeAny, {
51
+ value: number;
52
+ label: string;
53
+ }, {
54
+ value: number;
55
+ label: string;
56
+ }>, "many">;
57
+ }, "strip", z.ZodTypeAny, {
58
+ data: {
59
+ value: number;
60
+ label: string;
61
+ }[];
62
+ }, {
63
+ data: {
64
+ value: number;
65
+ label: string;
66
+ }[];
67
+ }>, {
68
+ data: {
69
+ value: number;
70
+ label: string;
71
+ }[];
72
+ }, {
73
+ data: {
74
+ value: number;
75
+ label: string;
76
+ }[];
77
+ }, string>;
78
+ export declare const tavilyTool: TavilySearchResults;
@@ -0,0 +1,19 @@
1
+ import type { ToolCall, ToolCallChunk } from '@langchain/core/messages/tool';
2
+ import type { Graph } from '@/graphs';
3
+ import type * as t from '@/types';
4
+ export declare function handleToolCallChunks({ graph, stepKey, toolCallChunks, }: {
5
+ graph: Graph;
6
+ stepKey: string;
7
+ toolCallChunks: ToolCallChunk[];
8
+ }): void;
9
+ export declare const handleToolCalls: (toolCalls?: ToolCall[], metadata?: Record<string, unknown>, graph?: Graph) => void;
10
+ export declare const toolResultTypes: Set<string>;
11
+ /**
12
+ * Handles the result of a server tool call; in other words, a provider's built-in tool.
13
+ * As of 2025-07-06, only Anthropic handles server tool calls with this pattern.
14
+ */
15
+ export declare function handleServerToolResult({ content, metadata, graph, }: {
16
+ content?: string | t.MessageContentComplex[];
17
+ metadata?: Record<string, unknown>;
18
+ graph: Graph;
19
+ }): boolean;
@@ -0,0 +1,16 @@
1
+ import type { AnthropicTextBlockParam, AnthropicWebSearchResultBlockParam } from '@/llm/anthropic/types';
2
+ import type { SearchResultData } from './types';
3
+ /**
4
+ * Coerces Anthropic web search results to the SearchResultData format
5
+ * @param results - Array of Anthropic web search results
6
+ * @param turn - The turn number to associate with these results
7
+ * @returns SearchResultData with minimal ProcessedOrganic items
8
+ */
9
+ export declare function coerceAnthropicSearchResults({ results, turn, }: {
10
+ results: (AnthropicTextBlockParam | AnthropicWebSearchResultBlockParam)[];
11
+ turn?: number;
12
+ }): SearchResultData;
13
+ /**
14
+ * Helper function to check if an object is an Anthropic web search result
15
+ */
16
+ export declare function isAnthropicWebSearchResult(obj: unknown): obj is AnthropicWebSearchResultBlockParam;
@@ -0,0 +1,4 @@
1
+ import type { References } from './types';
2
+ export declare function processContent(html: string, markdown: string): {
3
+ markdown: string;
4
+ } & References;
@@ -0,0 +1,54 @@
1
+ import type * as t from './types';
2
+ /**
3
+ * Firecrawl scraper implementation
4
+ * Uses the Firecrawl API to scrape web pages
5
+ */
6
+ export declare class FirecrawlScraper implements t.BaseScraper {
7
+ private apiKey;
8
+ private apiUrl;
9
+ private version;
10
+ private defaultFormats;
11
+ private timeout;
12
+ private logger;
13
+ private includeTags?;
14
+ private excludeTags?;
15
+ private waitFor?;
16
+ private maxAge?;
17
+ private mobile?;
18
+ private skipTlsVerification?;
19
+ private blockAds?;
20
+ private removeBase64Images?;
21
+ private parsePDF?;
22
+ private storeInCache?;
23
+ private zeroDataRetention?;
24
+ private headers?;
25
+ private location?;
26
+ private onlyMainContent?;
27
+ private changeTrackingOptions?;
28
+ constructor(config?: t.FirecrawlScraperConfig);
29
+ /**
30
+ * Scrape a single URL
31
+ * @param url URL to scrape
32
+ * @param options Scrape options
33
+ * @returns Scrape response
34
+ */
35
+ scrapeUrl(url: string, options?: t.FirecrawlScrapeOptions): Promise<[string, t.FirecrawlScrapeResponse]>;
36
+ /**
37
+ * Extract content from scrape response
38
+ * @param response Scrape response
39
+ * @returns Extracted content or empty string if not available
40
+ */
41
+ extractContent(response: t.FirecrawlScrapeResponse): [string, undefined | t.References];
42
+ /**
43
+ * Extract metadata from scrape response
44
+ * @param response Scrape response
45
+ * @returns Metadata object
46
+ */
47
+ extractMetadata(response: t.FirecrawlScrapeResponse): t.ScrapeMetadata;
48
+ }
49
+ /**
50
+ * Create a Firecrawl scraper instance
51
+ * @param config Scraper configuration
52
+ * @returns Firecrawl scraper instance
53
+ */
54
+ export declare const createFirecrawlScraper: (config?: t.FirecrawlScraperConfig) => FirecrawlScraper;
@@ -0,0 +1,5 @@
1
+ import type * as t from './types';
2
+ export declare function formatResultsForLLM(turn: number, results: t.SearchResultData): {
3
+ output: string;
4
+ references: t.ResultReference[];
5
+ };
@@ -0,0 +1,13 @@
1
+ import type * as t from './types';
2
+ /**
3
+ * Expand highlights in search results using smart boundary detection.
4
+ *
5
+ * This implementation finds natural text boundaries like paragraphs, sentences,
6
+ * and phrases to provide context while maintaining readability.
7
+ *
8
+ * @param searchResults - Search results object
9
+ * @param mainExpandBy - Primary expansion size on each side (default: 300)
10
+ * @param separatorExpandBy - Additional range to look for separators (default: 150)
11
+ * @returns Copy of search results with expanded highlights and tracked references
12
+ */
13
+ export declare function expandHighlights(searchResults: t.SearchResultData, mainExpandBy?: number, separatorExpandBy?: number): t.SearchResultData;
@@ -0,0 +1,2 @@
1
+ export * from './tool';
2
+ export type * from './types';
@@ -0,0 +1,38 @@
1
+ import type * as t from './types';
2
+ export declare abstract class BaseReranker {
3
+ protected apiKey: string | undefined;
4
+ protected logger: t.Logger;
5
+ constructor(logger?: t.Logger);
6
+ abstract rerank(query: string, documents: string[], topK?: number): Promise<t.Highlight[]>;
7
+ protected getDefaultRanking(documents: string[], topK: number): t.Highlight[];
8
+ }
9
+ export declare class JinaReranker extends BaseReranker {
10
+ private apiUrl;
11
+ constructor({ apiKey, apiUrl, logger, }: {
12
+ apiKey?: string;
13
+ apiUrl?: string;
14
+ logger?: t.Logger;
15
+ });
16
+ rerank(query: string, documents: string[], topK?: number): Promise<t.Highlight[]>;
17
+ }
18
+ export declare class CohereReranker extends BaseReranker {
19
+ constructor({ apiKey, logger, }: {
20
+ apiKey?: string;
21
+ logger?: t.Logger;
22
+ });
23
+ rerank(query: string, documents: string[], topK?: number): Promise<t.Highlight[]>;
24
+ }
25
+ export declare class InfinityReranker extends BaseReranker {
26
+ constructor(logger?: t.Logger);
27
+ rerank(query: string, documents: string[], topK?: number): Promise<t.Highlight[]>;
28
+ }
29
+ /**
30
+ * Creates the appropriate reranker based on type and configuration
31
+ */
32
+ export declare const createReranker: (config: {
33
+ rerankerType: t.RerankerType;
34
+ jinaApiKey?: string;
35
+ jinaApiUrl?: string;
36
+ cohereApiKey?: string;
37
+ logger?: t.Logger;
38
+ }) => BaseReranker | undefined;
@@ -0,0 +1,16 @@
1
+ import { z } from 'zod';
2
+ export declare enum DATE_RANGE {
3
+ PAST_HOUR = "h",
4
+ PAST_24_HOURS = "d",
5
+ PAST_WEEK = "w",
6
+ PAST_MONTH = "m",
7
+ PAST_YEAR = "y"
8
+ }
9
+ export declare const DEFAULT_QUERY_DESCRIPTION: string;
10
+ export declare const DEFAULT_COUNTRY_DESCRIPTION: string;
11
+ export declare const querySchema: z.ZodString;
12
+ export declare const dateSchema: z.ZodOptional<z.ZodNativeEnum<typeof DATE_RANGE>>;
13
+ export declare const countrySchema: z.ZodOptional<z.ZodString>;
14
+ export declare const imagesSchema: z.ZodOptional<z.ZodBoolean>;
15
+ export declare const videosSchema: z.ZodOptional<z.ZodBoolean>;
16
+ export declare const newsSchema: z.ZodOptional<z.ZodBoolean>;
@@ -0,0 +1,8 @@
1
+ import type * as t from './types';
2
+ export declare const createSearchAPI: (config: t.SearchConfig) => {
3
+ getSources: (params: t.GetSourcesParams) => Promise<t.SearchResult>;
4
+ };
5
+ export declare const createSourceProcessor: (config?: t.ProcessSourcesConfig, scraperInstance?: t.BaseScraper) => {
6
+ processSources: (fields: t.ProcessSourcesFields) => Promise<t.SearchResultData>;
7
+ topResults: number;
8
+ };
@@ -0,0 +1,59 @@
1
+ import type * as t from './types';
2
+ /**
3
+ * Serper scraper implementation
4
+ * Uses the Serper Scrape API (https://scrape.serper.dev) to scrape web pages
5
+ *
6
+ * Features:
7
+ * - Simple API with single endpoint
8
+ * - Returns both text and markdown content
9
+ * - Includes metadata from scraped pages
10
+ * - Credits-based pricing model
11
+ *
12
+ * @example
13
+ * ```typescript
14
+ * const scraper = createSerperScraper({
15
+ * apiKey: 'your-serper-api-key',
16
+ * includeMarkdown: true,
17
+ * timeout: 10000
18
+ * });
19
+ *
20
+ * const [url, response] = await scraper.scrapeUrl('https://example.com');
21
+ * if (response.success) {
22
+ * const [content] = scraper.extractContent(response);
23
+ * console.log(content);
24
+ * }
25
+ * ```
26
+ */
27
+ export declare class SerperScraper implements t.BaseScraper {
28
+ private apiKey;
29
+ private apiUrl;
30
+ private timeout;
31
+ private logger;
32
+ private includeMarkdown;
33
+ constructor(config?: t.SerperScraperConfig);
34
+ /**
35
+ * Scrape a single URL
36
+ * @param url URL to scrape
37
+ * @param options Scrape options
38
+ * @returns Scrape response
39
+ */
40
+ scrapeUrl(url: string, options?: t.SerperScrapeOptions): Promise<[string, t.SerperScrapeResponse]>;
41
+ /**
42
+ * Extract content from scrape response
43
+ * @param response Scrape response
44
+ * @returns Extracted content or empty string if not available
45
+ */
46
+ extractContent(response: t.SerperScrapeResponse): [string, undefined | t.References];
47
+ /**
48
+ * Extract metadata from scrape response
49
+ * @param response Scrape response
50
+ * @returns Metadata object
51
+ */
52
+ extractMetadata(response: t.SerperScrapeResponse): Record<string, string | number | boolean | null | undefined>;
53
+ }
54
+ /**
55
+ * Create a Serper scraper instance
56
+ * @param config Scraper configuration
57
+ * @returns Serper scraper instance
58
+ */
59
+ export declare const createSerperScraper: (config?: t.SerperScraperConfig) => SerperScraper;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,54 @@
1
+ import { z } from 'zod';
2
+ import { DynamicStructuredTool } from '@langchain/core/tools';
3
+ import type * as t from './types';
4
+ import { DATE_RANGE } from './schema';
5
+ /**
6
+ * Creates a search tool with a schema that dynamically includes the country field
7
+ * only when the searchProvider is 'serper'.
8
+ *
9
+ * Supports multiple scraper providers:
10
+ * - Firecrawl (default): Full-featured web scraping with multiple formats
11
+ * - Serper: Lightweight scraping using Serper's scrape API
12
+ *
13
+ * @example
14
+ * ```typescript
15
+ * // Using Firecrawl scraper (default)
16
+ * const searchTool = createSearchTool({
17
+ * searchProvider: 'serper',
18
+ * scraperProvider: 'firecrawl',
19
+ * firecrawlApiKey: 'your-firecrawl-key'
20
+ * });
21
+ *
22
+ * // Using Serper scraper
23
+ * const searchTool = createSearchTool({
24
+ * searchProvider: 'serper',
25
+ * scraperProvider: 'serper',
26
+ * serperApiKey: 'your-serper-key'
27
+ * });
28
+ * ```
29
+ *
30
+ * @param config - The search tool configuration
31
+ * @returns A DynamicStructuredTool with a schema that depends on the searchProvider
32
+ */
33
+ export declare const createSearchTool: (config?: t.SearchToolConfig) => DynamicStructuredTool<z.ZodObject<{
34
+ query: z.ZodString;
35
+ date: z.ZodOptional<z.ZodNativeEnum<typeof DATE_RANGE>>;
36
+ country?: z.ZodOptional<z.ZodString>;
37
+ images: z.ZodOptional<z.ZodBoolean>;
38
+ videos: z.ZodOptional<z.ZodBoolean>;
39
+ news: z.ZodOptional<z.ZodBoolean>;
40
+ }, "strip", z.ZodTypeAny, {
41
+ query: string;
42
+ date?: DATE_RANGE | undefined;
43
+ images?: boolean | undefined;
44
+ videos?: boolean | undefined;
45
+ news?: boolean | undefined;
46
+ country?: unknown;
47
+ }, {
48
+ query: string;
49
+ date?: DATE_RANGE | undefined;
50
+ images?: boolean | undefined;
51
+ videos?: boolean | undefined;
52
+ news?: boolean | undefined;
53
+ country?: unknown;
54
+ }>>;