@aria-cli/tools 1.0.10 → 1.0.11

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 (348) hide show
  1. package/dist-cjs/.tsbuildinfo +1 -0
  2. package/dist-cjs/ask-user-interaction.d.ts +10 -0
  3. package/dist-cjs/ask-user-interaction.js +28 -0
  4. package/dist-cjs/ask-user-interaction.js.map +1 -0
  5. package/dist-cjs/cache/web-cache.d.ts +52 -0
  6. package/dist-cjs/cache/web-cache.js +71 -0
  7. package/dist-cjs/cache/web-cache.js.map +1 -0
  8. package/dist-cjs/definitions/arion.d.ts +8 -0
  9. package/dist-cjs/definitions/arion.js +108 -0
  10. package/dist-cjs/definitions/arion.js.map +1 -0
  11. package/dist-cjs/definitions/browser/browser.d.ts +2 -0
  12. package/dist-cjs/definitions/browser/browser.js +422 -0
  13. package/dist-cjs/definitions/browser/browser.js.map +1 -0
  14. package/dist-cjs/definitions/browser/index.d.ts +1 -0
  15. package/dist-cjs/definitions/browser/index.js +9 -0
  16. package/dist-cjs/definitions/browser/index.js.map +1 -0
  17. package/dist-cjs/definitions/browser/pw-downloads.d.ts +13 -0
  18. package/dist-cjs/definitions/browser/pw-downloads.js +118 -0
  19. package/dist-cjs/definitions/browser/pw-downloads.js.map +1 -0
  20. package/dist-cjs/definitions/browser/pw-interactions.d.ts +78 -0
  21. package/dist-cjs/definitions/browser/pw-interactions.js +214 -0
  22. package/dist-cjs/definitions/browser/pw-interactions.js.map +1 -0
  23. package/dist-cjs/definitions/browser/pw-responses.d.ts +28 -0
  24. package/dist-cjs/definitions/browser/pw-responses.js +85 -0
  25. package/dist-cjs/definitions/browser/pw-responses.js.map +1 -0
  26. package/dist-cjs/definitions/browser/pw-session.d.ts +65 -0
  27. package/dist-cjs/definitions/browser/pw-session.js +327 -0
  28. package/dist-cjs/definitions/browser/pw-session.js.map +1 -0
  29. package/dist-cjs/definitions/browser/pw-shared.d.ts +22 -0
  30. package/dist-cjs/definitions/browser/pw-shared.js +73 -0
  31. package/dist-cjs/definitions/browser/pw-shared.js.map +1 -0
  32. package/dist-cjs/definitions/browser/pw-snapshot.d.ts +34 -0
  33. package/dist-cjs/definitions/browser/pw-snapshot.js +308 -0
  34. package/dist-cjs/definitions/browser/pw-snapshot.js.map +1 -0
  35. package/dist-cjs/definitions/browser/pw-state.d.ts +22 -0
  36. package/dist-cjs/definitions/browser/pw-state.js +71 -0
  37. package/dist-cjs/definitions/browser/pw-state.js.map +1 -0
  38. package/dist-cjs/definitions/browser/types.d.ts +277 -0
  39. package/dist-cjs/definitions/browser/types.js +6 -0
  40. package/dist-cjs/definitions/browser/types.js.map +1 -0
  41. package/dist-cjs/definitions/code-intelligence.d.ts +8 -0
  42. package/dist-cjs/definitions/code-intelligence.js +474 -0
  43. package/dist-cjs/definitions/code-intelligence.js.map +1 -0
  44. package/dist-cjs/definitions/core.d.ts +47 -0
  45. package/dist-cjs/definitions/core.js +134 -0
  46. package/dist-cjs/definitions/core.js.map +1 -0
  47. package/dist-cjs/definitions/delegation.d.ts +11 -0
  48. package/dist-cjs/definitions/delegation.js +516 -0
  49. package/dist-cjs/definitions/delegation.js.map +1 -0
  50. package/dist-cjs/definitions/deploy.d.ts +15 -0
  51. package/dist-cjs/definitions/deploy.js +69 -0
  52. package/dist-cjs/definitions/deploy.js.map +1 -0
  53. package/dist-cjs/definitions/filesystem.d.ts +9 -0
  54. package/dist-cjs/definitions/filesystem.js +200 -0
  55. package/dist-cjs/definitions/filesystem.js.map +1 -0
  56. package/dist-cjs/definitions/frg.d.ts +3 -0
  57. package/dist-cjs/definitions/frg.js +67 -0
  58. package/dist-cjs/definitions/frg.js.map +1 -0
  59. package/dist-cjs/definitions/index.d.ts +19 -0
  60. package/dist-cjs/definitions/index.js +44 -0
  61. package/dist-cjs/definitions/index.js.map +1 -0
  62. package/dist-cjs/definitions/memory.d.ts +8 -0
  63. package/dist-cjs/definitions/memory.js +127 -0
  64. package/dist-cjs/definitions/memory.js.map +1 -0
  65. package/dist-cjs/definitions/messaging.d.ts +11 -0
  66. package/dist-cjs/definitions/messaging.js +632 -0
  67. package/dist-cjs/definitions/messaging.js.map +1 -0
  68. package/dist-cjs/definitions/meta.d.ts +11 -0
  69. package/dist-cjs/definitions/meta.js +353 -0
  70. package/dist-cjs/definitions/meta.js.map +1 -0
  71. package/dist-cjs/definitions/network.d.ts +11 -0
  72. package/dist-cjs/definitions/network.js +163 -0
  73. package/dist-cjs/definitions/network.js.map +1 -0
  74. package/dist-cjs/definitions/outlook.d.ts +2 -0
  75. package/dist-cjs/definitions/outlook.js +281 -0
  76. package/dist-cjs/definitions/outlook.js.map +1 -0
  77. package/dist-cjs/definitions/patch/apply-patch.d.ts +11 -0
  78. package/dist-cjs/definitions/patch/apply-patch.js +192 -0
  79. package/dist-cjs/definitions/patch/apply-patch.js.map +1 -0
  80. package/dist-cjs/definitions/patch/fuzzy-match.d.ts +10 -0
  81. package/dist-cjs/definitions/patch/fuzzy-match.js +173 -0
  82. package/dist-cjs/definitions/patch/fuzzy-match.js.map +1 -0
  83. package/dist-cjs/definitions/patch/index.d.ts +1 -0
  84. package/dist-cjs/definitions/patch/index.js +6 -0
  85. package/dist-cjs/definitions/patch/index.js.map +1 -0
  86. package/dist-cjs/definitions/patch/patch-parser.d.ts +50 -0
  87. package/dist-cjs/definitions/patch/patch-parser.js +216 -0
  88. package/dist-cjs/definitions/patch/patch-parser.js.map +1 -0
  89. package/dist-cjs/definitions/patch/sandbox-paths.d.ts +18 -0
  90. package/dist-cjs/definitions/patch/sandbox-paths.js +114 -0
  91. package/dist-cjs/definitions/patch/sandbox-paths.js.map +1 -0
  92. package/dist-cjs/definitions/process/index.d.ts +1 -0
  93. package/dist-cjs/definitions/process/index.js +9 -0
  94. package/dist-cjs/definitions/process/index.js.map +1 -0
  95. package/dist-cjs/definitions/process/process-registry.d.ts +67 -0
  96. package/dist-cjs/definitions/process/process-registry.js +232 -0
  97. package/dist-cjs/definitions/process/process-registry.js.map +1 -0
  98. package/dist-cjs/definitions/process/process.d.ts +9 -0
  99. package/dist-cjs/definitions/process/process.js +390 -0
  100. package/dist-cjs/definitions/process/process.js.map +1 -0
  101. package/dist-cjs/definitions/process/pty-keys.d.ts +13 -0
  102. package/dist-cjs/definitions/process/pty-keys.js +260 -0
  103. package/dist-cjs/definitions/process/pty-keys.js.map +1 -0
  104. package/dist-cjs/definitions/process/session-slug.d.ts +1 -0
  105. package/dist-cjs/definitions/process/session-slug.js +146 -0
  106. package/dist-cjs/definitions/process/session-slug.js.map +1 -0
  107. package/dist-cjs/definitions/quip.d.ts +2 -0
  108. package/dist-cjs/definitions/quip.js +199 -0
  109. package/dist-cjs/definitions/quip.js.map +1 -0
  110. package/dist-cjs/definitions/search.d.ts +9 -0
  111. package/dist-cjs/definitions/search.js +64 -0
  112. package/dist-cjs/definitions/search.js.map +1 -0
  113. package/dist-cjs/definitions/session-history.d.ts +11 -0
  114. package/dist-cjs/definitions/session-history.js +73 -0
  115. package/dist-cjs/definitions/session-history.js.map +1 -0
  116. package/dist-cjs/definitions/shell.d.ts +8 -0
  117. package/dist-cjs/definitions/shell.js +185 -0
  118. package/dist-cjs/definitions/shell.js.map +1 -0
  119. package/dist-cjs/definitions/slack.d.ts +2 -0
  120. package/dist-cjs/definitions/slack.js +184 -0
  121. package/dist-cjs/definitions/slack.js.map +1 -0
  122. package/dist-cjs/definitions/web.d.ts +8 -0
  123. package/dist-cjs/definitions/web.js +113 -0
  124. package/dist-cjs/definitions/web.js.map +1 -0
  125. package/dist-cjs/executors/apply-patch.d.ts +51 -0
  126. package/dist-cjs/executors/apply-patch.js +939 -0
  127. package/dist-cjs/executors/apply-patch.js.map +1 -0
  128. package/dist-cjs/executors/arion.d.ts +50 -0
  129. package/dist-cjs/executors/arion.js +126 -0
  130. package/dist-cjs/executors/arion.js.map +1 -0
  131. package/dist-cjs/executors/code-intelligence.d.ts +138 -0
  132. package/dist-cjs/executors/code-intelligence.js +926 -0
  133. package/dist-cjs/executors/code-intelligence.js.map +1 -0
  134. package/dist-cjs/executors/deploy.d.ts +169 -0
  135. package/dist-cjs/executors/deploy.js +870 -0
  136. package/dist-cjs/executors/deploy.js.map +1 -0
  137. package/dist-cjs/executors/filesystem.d.ts +150 -0
  138. package/dist-cjs/executors/filesystem.js +1168 -0
  139. package/dist-cjs/executors/filesystem.js.map +1 -0
  140. package/dist-cjs/executors/frg-freshness.d.ts +93 -0
  141. package/dist-cjs/executors/frg-freshness.js +628 -0
  142. package/dist-cjs/executors/frg-freshness.js.map +1 -0
  143. package/dist-cjs/executors/frg.d.ts +27 -0
  144. package/dist-cjs/executors/frg.js +335 -0
  145. package/dist-cjs/executors/frg.js.map +1 -0
  146. package/dist-cjs/executors/index.d.ts +44 -0
  147. package/dist-cjs/executors/index.js +144 -0
  148. package/dist-cjs/executors/index.js.map +1 -0
  149. package/dist-cjs/executors/learning-meta.d.ts +87 -0
  150. package/dist-cjs/executors/learning-meta.js +1166 -0
  151. package/dist-cjs/executors/learning-meta.js.map +1 -0
  152. package/dist-cjs/executors/lsp-client.d.ts +38 -0
  153. package/dist-cjs/executors/lsp-client.js +311 -0
  154. package/dist-cjs/executors/lsp-client.js.map +1 -0
  155. package/dist-cjs/executors/memory.d.ts +203 -0
  156. package/dist-cjs/executors/memory.js +797 -0
  157. package/dist-cjs/executors/memory.js.map +1 -0
  158. package/dist-cjs/executors/meta.d.ts +73 -0
  159. package/dist-cjs/executors/meta.js +227 -0
  160. package/dist-cjs/executors/meta.js.map +1 -0
  161. package/dist-cjs/executors/process-registry.d.ts +98 -0
  162. package/dist-cjs/executors/process-registry.js +470 -0
  163. package/dist-cjs/executors/process-registry.js.map +1 -0
  164. package/dist-cjs/executors/pty-session-store.d.ts +14 -0
  165. package/dist-cjs/executors/pty-session-store.js +35 -0
  166. package/dist-cjs/executors/pty-session-store.js.map +1 -0
  167. package/dist-cjs/executors/pty.d.ts +133 -0
  168. package/dist-cjs/executors/pty.js +313 -0
  169. package/dist-cjs/executors/pty.js.map +1 -0
  170. package/dist-cjs/executors/restart.d.ts +13 -0
  171. package/dist-cjs/executors/restart.js +156 -0
  172. package/dist-cjs/executors/restart.js.map +1 -0
  173. package/dist-cjs/executors/search-freshness.d.ts +50 -0
  174. package/dist-cjs/executors/search-freshness.js +235 -0
  175. package/dist-cjs/executors/search-freshness.js.map +1 -0
  176. package/dist-cjs/executors/search-types.d.ts +52 -0
  177. package/dist-cjs/executors/search-types.js +57 -0
  178. package/dist-cjs/executors/search-types.js.map +1 -0
  179. package/dist-cjs/executors/search.d.ts +11 -0
  180. package/dist-cjs/executors/search.js +103 -0
  181. package/dist-cjs/executors/search.js.map +1 -0
  182. package/dist-cjs/executors/self-diagnose.d.ts +89 -0
  183. package/dist-cjs/executors/self-diagnose.js +435 -0
  184. package/dist-cjs/executors/self-diagnose.js.map +1 -0
  185. package/dist-cjs/executors/session-history.d.ts +75 -0
  186. package/dist-cjs/executors/session-history.js +321 -0
  187. package/dist-cjs/executors/session-history.js.map +1 -0
  188. package/dist-cjs/executors/shell-safety.d.ts +27 -0
  189. package/dist-cjs/executors/shell-safety.js +479 -0
  190. package/dist-cjs/executors/shell-safety.js.map +1 -0
  191. package/dist-cjs/executors/shell.d.ts +168 -0
  192. package/dist-cjs/executors/shell.js +1002 -0
  193. package/dist-cjs/executors/shell.js.map +1 -0
  194. package/dist-cjs/executors/utils.d.ts +20 -0
  195. package/dist-cjs/executors/utils.js +74 -0
  196. package/dist-cjs/executors/utils.js.map +1 -0
  197. package/dist-cjs/executors/web.d.ts +89 -0
  198. package/dist-cjs/executors/web.js +548 -0
  199. package/dist-cjs/executors/web.js.map +1 -0
  200. package/dist-cjs/extraction/content-extraction.d.ts +48 -0
  201. package/dist-cjs/extraction/content-extraction.js +244 -0
  202. package/dist-cjs/extraction/content-extraction.js.map +1 -0
  203. package/dist-cjs/extraction/index.d.ts +4 -0
  204. package/dist-cjs/extraction/index.js +9 -0
  205. package/dist-cjs/extraction/index.js.map +1 -0
  206. package/dist-cjs/headless-control-contract.d.ts +3182 -0
  207. package/dist-cjs/headless-control-contract.js +973 -0
  208. package/dist-cjs/headless-control-contract.js.map +1 -0
  209. package/dist-cjs/index.d.ts +62 -0
  210. package/dist-cjs/index.js +438 -0
  211. package/dist-cjs/index.js.map +1 -0
  212. package/dist-cjs/local-control-http-auth.d.ts +2 -0
  213. package/dist-cjs/local-control-http-auth.js +6 -0
  214. package/dist-cjs/local-control-http-auth.js.map +1 -0
  215. package/dist-cjs/mcp/client.d.ts +68 -0
  216. package/dist-cjs/mcp/client.js +186 -0
  217. package/dist-cjs/mcp/client.js.map +1 -0
  218. package/dist-cjs/mcp/connection.d.ts +54 -0
  219. package/dist-cjs/mcp/connection.js +485 -0
  220. package/dist-cjs/mcp/connection.js.map +1 -0
  221. package/dist-cjs/mcp/index.d.ts +10 -0
  222. package/dist-cjs/mcp/index.js +31 -0
  223. package/dist-cjs/mcp/index.js.map +1 -0
  224. package/dist-cjs/mcp/jsonrpc.d.ts +36 -0
  225. package/dist-cjs/mcp/jsonrpc.js +149 -0
  226. package/dist-cjs/mcp/jsonrpc.js.map +1 -0
  227. package/dist-cjs/mcp/types.d.ts +178 -0
  228. package/dist-cjs/mcp/types.js +9 -0
  229. package/dist-cjs/mcp/types.js.map +1 -0
  230. package/dist-cjs/network-control-adapter.d.ts +4 -0
  231. package/dist-cjs/network-control-adapter.js +78 -0
  232. package/dist-cjs/network-control-adapter.js.map +1 -0
  233. package/dist-cjs/network-runtime/address-types.d.ts +201 -0
  234. package/dist-cjs/network-runtime/address-types.js +169 -0
  235. package/dist-cjs/network-runtime/address-types.js.map +1 -0
  236. package/dist-cjs/network-runtime/db-owner-fencing.d.ts +43 -0
  237. package/dist-cjs/network-runtime/db-owner-fencing.js +77 -0
  238. package/dist-cjs/network-runtime/db-owner-fencing.js.map +1 -0
  239. package/dist-cjs/network-runtime/delivery-receipts.d.ts +117 -0
  240. package/dist-cjs/network-runtime/delivery-receipts.js +277 -0
  241. package/dist-cjs/network-runtime/delivery-receipts.js.map +1 -0
  242. package/dist-cjs/network-runtime/direct-endpoint-authority.d.ts +8 -0
  243. package/dist-cjs/network-runtime/direct-endpoint-authority.js +30 -0
  244. package/dist-cjs/network-runtime/direct-endpoint-authority.js.map +1 -0
  245. package/dist-cjs/network-runtime/index.d.ts +24 -0
  246. package/dist-cjs/network-runtime/index.js +173 -0
  247. package/dist-cjs/network-runtime/index.js.map +1 -0
  248. package/dist-cjs/network-runtime/local-control-contract.d.ts +758 -0
  249. package/dist-cjs/network-runtime/local-control-contract.js +634 -0
  250. package/dist-cjs/network-runtime/local-control-contract.js.map +1 -0
  251. package/dist-cjs/network-runtime/node-store-contract.d.ts +49 -0
  252. package/dist-cjs/network-runtime/node-store-contract.js +39 -0
  253. package/dist-cjs/network-runtime/node-store-contract.js.map +1 -0
  254. package/dist-cjs/network-runtime/pair-route-contract.d.ts +100 -0
  255. package/dist-cjs/network-runtime/pair-route-contract.js +81 -0
  256. package/dist-cjs/network-runtime/pair-route-contract.js.map +1 -0
  257. package/dist-cjs/network-runtime/peer-capabilities.d.ts +10 -0
  258. package/dist-cjs/network-runtime/peer-capabilities.js +38 -0
  259. package/dist-cjs/network-runtime/peer-capabilities.js.map +1 -0
  260. package/dist-cjs/network-runtime/peer-principal-ref.d.ts +9 -0
  261. package/dist-cjs/network-runtime/peer-principal-ref.js +16 -0
  262. package/dist-cjs/network-runtime/peer-principal-ref.js.map +1 -0
  263. package/dist-cjs/network-runtime/peer-state-machine.d.ts +70 -0
  264. package/dist-cjs/network-runtime/peer-state-machine.js +130 -0
  265. package/dist-cjs/network-runtime/peer-state-machine.js.map +1 -0
  266. package/dist-cjs/network-runtime/protocol-schemas.d.ts +328 -0
  267. package/dist-cjs/network-runtime/protocol-schemas.js +213 -0
  268. package/dist-cjs/network-runtime/protocol-schemas.js.map +1 -0
  269. package/dist-cjs/network-runtime/runtime-bootstrap-contract.d.ts +81 -0
  270. package/dist-cjs/network-runtime/runtime-bootstrap-contract.js +64 -0
  271. package/dist-cjs/network-runtime/runtime-bootstrap-contract.js.map +1 -0
  272. package/dist-cjs/outlook/desktop-session.d.ts +68 -0
  273. package/dist-cjs/outlook/desktop-session.js +319 -0
  274. package/dist-cjs/outlook/desktop-session.js.map +1 -0
  275. package/dist-cjs/package.json +3 -0
  276. package/dist-cjs/policy.d.ts +43 -0
  277. package/dist-cjs/policy.js +156 -0
  278. package/dist-cjs/policy.js.map +1 -0
  279. package/dist-cjs/providers/brave.d.ts +10 -0
  280. package/dist-cjs/providers/brave.js +67 -0
  281. package/dist-cjs/providers/brave.js.map +1 -0
  282. package/dist-cjs/providers/duckduckgo.d.ts +18 -0
  283. package/dist-cjs/providers/duckduckgo.js +181 -0
  284. package/dist-cjs/providers/duckduckgo.js.map +1 -0
  285. package/dist-cjs/providers/exa.d.ts +10 -0
  286. package/dist-cjs/providers/exa.js +68 -0
  287. package/dist-cjs/providers/exa.js.map +1 -0
  288. package/dist-cjs/providers/firecrawl.d.ts +10 -0
  289. package/dist-cjs/providers/firecrawl.js +60 -0
  290. package/dist-cjs/providers/firecrawl.js.map +1 -0
  291. package/dist-cjs/providers/index.d.ts +8 -0
  292. package/dist-cjs/providers/index.js +18 -0
  293. package/dist-cjs/providers/index.js.map +1 -0
  294. package/dist-cjs/providers/jina.d.ts +10 -0
  295. package/dist-cjs/providers/jina.js +54 -0
  296. package/dist-cjs/providers/jina.js.map +1 -0
  297. package/dist-cjs/providers/router.d.ts +21 -0
  298. package/dist-cjs/providers/router.js +101 -0
  299. package/dist-cjs/providers/router.js.map +1 -0
  300. package/dist-cjs/providers/search-provider.d.ts +35 -0
  301. package/dist-cjs/providers/search-provider.js +37 -0
  302. package/dist-cjs/providers/search-provider.js.map +1 -0
  303. package/dist-cjs/providers/tavily.d.ts +10 -0
  304. package/dist-cjs/providers/tavily.js +59 -0
  305. package/dist-cjs/providers/tavily.js.map +1 -0
  306. package/dist-cjs/quip/desktop-session.d.ts +69 -0
  307. package/dist-cjs/quip/desktop-session.js +354 -0
  308. package/dist-cjs/quip/desktop-session.js.map +1 -0
  309. package/dist-cjs/registry/index.d.ts +1 -0
  310. package/dist-cjs/registry/index.js +7 -0
  311. package/dist-cjs/registry/index.js.map +1 -0
  312. package/dist-cjs/registry/registry.d.ts +156 -0
  313. package/dist-cjs/registry/registry.js +762 -0
  314. package/dist-cjs/registry/registry.js.map +1 -0
  315. package/dist-cjs/runtime-socket-local-control-client.d.ts +10 -0
  316. package/dist-cjs/runtime-socket-local-control-client.js +368 -0
  317. package/dist-cjs/runtime-socket-local-control-client.js.map +1 -0
  318. package/dist-cjs/security/dns-normalization.d.ts +6 -0
  319. package/dist-cjs/security/dns-normalization.js +23 -0
  320. package/dist-cjs/security/dns-normalization.js.map +1 -0
  321. package/dist-cjs/security/dns-pinning.d.ts +27 -0
  322. package/dist-cjs/security/dns-pinning.js +161 -0
  323. package/dist-cjs/security/dns-pinning.js.map +1 -0
  324. package/dist-cjs/security/external-content.d.ts +40 -0
  325. package/dist-cjs/security/external-content.js +96 -0
  326. package/dist-cjs/security/external-content.js.map +1 -0
  327. package/dist-cjs/security/ssrf.d.ts +40 -0
  328. package/dist-cjs/security/ssrf.js +222 -0
  329. package/dist-cjs/security/ssrf.js.map +1 -0
  330. package/dist-cjs/slack/desktop-session.d.ts +69 -0
  331. package/dist-cjs/slack/desktop-session.js +367 -0
  332. package/dist-cjs/slack/desktop-session.js.map +1 -0
  333. package/dist-cjs/tool-factory.d.ts +46 -0
  334. package/dist-cjs/tool-factory.js +51 -0
  335. package/dist-cjs/tool-factory.js.map +1 -0
  336. package/dist-cjs/types.d.ts +1192 -0
  337. package/dist-cjs/types.js +9 -0
  338. package/dist-cjs/types.js.map +1 -0
  339. package/dist-cjs/utils/retry.d.ts +11 -0
  340. package/dist-cjs/utils/retry.js +170 -0
  341. package/dist-cjs/utils/retry.js.map +1 -0
  342. package/dist-cjs/utils/safe-parse-json.d.ts +26 -0
  343. package/dist-cjs/utils/safe-parse-json.js +165 -0
  344. package/dist-cjs/utils/safe-parse-json.js.map +1 -0
  345. package/dist-cjs/utils/url.d.ts +10 -0
  346. package/dist-cjs/utils/url.js +24 -0
  347. package/dist-cjs/utils/url.js.map +1 -0
  348. package/package.json +7 -6
@@ -0,0 +1,10 @@
1
+ import type { SearchProvider, SearchOptions, SearchResult, SearchProviderEnv } from "./search-provider.js";
2
+ export declare class JinaSearchProvider implements SearchProvider {
3
+ private readonly env;
4
+ readonly name = "jina";
5
+ readonly requiresApiKey = false;
6
+ readonly priority = 5;
7
+ constructor(env?: SearchProviderEnv | Record<string, string | undefined>);
8
+ isAvailable(): boolean;
9
+ search(query: string, options?: SearchOptions): Promise<SearchResult[]>;
10
+ }
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.JinaSearchProvider = void 0;
4
+ const search_provider_js_1 = require("./search-provider.js");
5
+ class JinaSearchProvider {
6
+ env;
7
+ name = "jina";
8
+ requiresApiKey = false;
9
+ priority = 5;
10
+ constructor(env = process.env) {
11
+ this.env = env;
12
+ }
13
+ isAvailable() {
14
+ // Jina works without an API key (20 req/min), or with a key (200 req/min)
15
+ return true;
16
+ }
17
+ async search(query, options) {
18
+ const apiKey = (0, search_provider_js_1.resolveSearchProviderEnv)(this.env).JINA_API_KEY;
19
+ const limit = options?.limit ?? 5;
20
+ const url = new URL("https://s.jina.ai/");
21
+ url.searchParams.set("q", query);
22
+ const headers = {
23
+ Accept: "application/json",
24
+ };
25
+ if (apiKey) {
26
+ headers.Authorization = `Bearer ${apiKey}`;
27
+ }
28
+ const { signal, cleanup } = (0, search_provider_js_1.createProviderAbortSignal)(30_000, options?.signal);
29
+ try {
30
+ const response = await fetch(url.toString(), {
31
+ method: "GET",
32
+ headers,
33
+ signal,
34
+ });
35
+ if (!response.ok) {
36
+ throw new Error(`Jina Search API error: ${response.status} ${response.statusText}`);
37
+ }
38
+ const json = await response.json();
39
+ const results = (json.data || []);
40
+ // Apply limit client-side
41
+ return results.slice(0, limit).map((r) => ({
42
+ title: r.title,
43
+ url: r.url,
44
+ content: r.content,
45
+ score: r.score,
46
+ }));
47
+ }
48
+ finally {
49
+ cleanup();
50
+ }
51
+ }
52
+ }
53
+ exports.JinaSearchProvider = JinaSearchProvider;
54
+ //# sourceMappingURL=jina.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jina.js","sourceRoot":"","sources":["../../src/providers/jina.ts"],"names":[],"mappings":";;;AAMA,6DAA2F;AAE3F,MAAa,kBAAkB;IAMV;IALV,IAAI,GAAG,MAAM,CAAC;IACd,cAAc,GAAG,KAAK,CAAC;IACvB,QAAQ,GAAG,CAAC,CAAC;IAEtB,YACmB,MAA8D,OAAO,CAAC,GAAG;QAAzE,QAAG,GAAH,GAAG,CAAsE;IACzF,CAAC;IAEJ,WAAW;QACT,0EAA0E;QAC1E,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAa,EAAE,OAAuB;QACjD,MAAM,MAAM,GAAG,IAAA,6CAAwB,EAAC,IAAI,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC;QAC/D,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,IAAI,CAAC,CAAC;QAElC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,oBAAoB,CAAC,CAAC;QAC1C,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAEjC,MAAM,OAAO,GAAgB;YAC3B,MAAM,EAAE,kBAAkB;SAC3B,CAAC;QAEF,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,CAAC,aAAa,GAAG,UAAU,MAAM,EAAE,CAAC;QAC7C,CAAC;QAED,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAA,8CAAyB,EAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAE/E,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE;gBAC3C,MAAM,EAAE,KAAK;gBACb,OAAO;gBACP,MAAM;aACP,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,0BAA0B,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;YACtF,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnC,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAK9B,CAAC;YAEH,0BAA0B;YAC1B,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACzC,KAAK,EAAE,CAAC,CAAC,KAAK;gBACd,GAAG,EAAE,CAAC,CAAC,GAAG;gBACV,OAAO,EAAE,CAAC,CAAC,OAAO;gBAClB,KAAK,EAAE,CAAC,CAAC,KAAK;aACf,CAAC,CAAC,CAAC;QACN,CAAC;gBAAS,CAAC;YACT,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;CACF;AA7DD,gDA6DC"}
@@ -0,0 +1,21 @@
1
+ import type { SearchProvider, SearchOptions, SearchResult, SearchProviderEnv } from "./search-provider.js";
2
+ export declare class SearchProviderRouter {
3
+ private _providers;
4
+ private readonly env;
5
+ constructor(_providers: SearchProvider[], env?: SearchProviderEnv | Record<string, string | undefined>);
6
+ /**
7
+ * Resolves the best available search provider.
8
+ * Priority:
9
+ * 1. Explicit override via ARIA_SEARCH_PROVIDER env var
10
+ * 2. Highest-priority available provider (lowest priority number)
11
+ * @throws {Error} if no providers are available or override is invalid
12
+ */
13
+ resolve(): SearchProvider;
14
+ /**
15
+ * Performs a search with automatic fallback.
16
+ * Tries providers in priority order (resolved provider first, then others).
17
+ * Circuit breaker: stops at first successful response.
18
+ * @throws {AggregateError} if all providers fail
19
+ */
20
+ search(query: string, options?: SearchOptions): Promise<SearchResult[]>;
21
+ }
@@ -0,0 +1,101 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SearchProviderRouter = void 0;
4
+ const types_1 = require("@aria-cli/types");
5
+ const search_provider_js_1 = require("./search-provider.js");
6
+ class SearchProviderRouter {
7
+ _providers;
8
+ env;
9
+ constructor(_providers, env = process.env) {
10
+ this._providers = _providers;
11
+ this.env = env;
12
+ }
13
+ /**
14
+ * Resolves the best available search provider.
15
+ * Priority:
16
+ * 1. Explicit override via ARIA_SEARCH_PROVIDER env var
17
+ * 2. Highest-priority available provider (lowest priority number)
18
+ * @throws {Error} if no providers are available or override is invalid
19
+ */
20
+ resolve() {
21
+ const env = (0, search_provider_js_1.resolveSearchProviderEnv)(this.env);
22
+ // 1. Check for explicit override
23
+ const override = env.ARIA_SEARCH_PROVIDER;
24
+ if (override) {
25
+ const provider = this._providers.find((p) => p.name === override);
26
+ if (!provider) {
27
+ throw new Error(`ARIA_SEARCH_PROVIDER override '${override}' not found in provider registry`);
28
+ }
29
+ // Verify the overridden provider is actually available (e.g., has API key)
30
+ if (!provider.isAvailable()) {
31
+ // Fall through to default priority-based routing
32
+ types_1.log.debug(`[SearchProviderRouter] ARIA_SEARCH_PROVIDER override '${override}' is not available, falling back to priority routing`);
33
+ }
34
+ else {
35
+ return provider;
36
+ }
37
+ }
38
+ // 2. Select first available provider by priority (lower number = higher priority)
39
+ const sorted = [...this._providers].sort((a, b) => a.priority - b.priority);
40
+ const available = sorted.find((p) => p.isAvailable());
41
+ if (!available) {
42
+ throw new Error("No search providers available. Set at least one API key (BRAVE_API_KEY, TAVILY_API_KEY, etc.)");
43
+ }
44
+ return available;
45
+ }
46
+ /**
47
+ * Performs a search with automatic fallback.
48
+ * Tries providers in priority order (resolved provider first, then others).
49
+ * Circuit breaker: stops at first successful response.
50
+ * @throws {AggregateError} if all providers fail
51
+ */
52
+ async search(query, options) {
53
+ if (options?.signal?.aborted) {
54
+ throw new Error("Search aborted");
55
+ }
56
+ const env = (0, search_provider_js_1.resolveSearchProviderEnv)(this.env);
57
+ // Get all available providers sorted by priority
58
+ const availableProviders = [...this._providers]
59
+ .filter((p) => p.isAvailable())
60
+ .sort((a, b) => a.priority - b.priority);
61
+ if (availableProviders.length === 0) {
62
+ throw new Error("No search providers available");
63
+ }
64
+ // Honor ARIA_SEARCH_PROVIDER override: try the override provider first
65
+ const override = env.ARIA_SEARCH_PROVIDER;
66
+ if (override) {
67
+ const overrideProvider = availableProviders.find((p) => p.name === override);
68
+ if (overrideProvider) {
69
+ // Move override provider to front of the list
70
+ const reordered = [
71
+ overrideProvider,
72
+ ...availableProviders.filter((p) => p.name !== override),
73
+ ];
74
+ availableProviders.length = 0;
75
+ availableProviders.push(...reordered);
76
+ }
77
+ }
78
+ const errors = [];
79
+ // Try each provider in order
80
+ for (const provider of availableProviders) {
81
+ if (options?.signal?.aborted) {
82
+ throw new Error("Search aborted");
83
+ }
84
+ try {
85
+ const results = await provider.search(query, options);
86
+ return results; // Circuit breaker: return on first success
87
+ }
88
+ catch (error) {
89
+ if (options?.signal?.aborted) {
90
+ throw error instanceof Error ? error : new Error("Search aborted");
91
+ }
92
+ errors.push(error instanceof Error ? error : new Error(`Unknown error from ${provider.name}`));
93
+ // Continue to next provider
94
+ }
95
+ }
96
+ // All providers failed
97
+ throw new AggregateError(errors, `All search providers failed (tried ${availableProviders.length} providers)`);
98
+ }
99
+ }
100
+ exports.SearchProviderRouter = SearchProviderRouter;
101
+ //# sourceMappingURL=router.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/providers/router.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ export interface SearchOptions {
2
+ limit?: number;
3
+ topic?: "general" | "news";
4
+ domains?: string[];
5
+ excludeDomains?: string[];
6
+ timeRange?: "day" | "week" | "month" | "year";
7
+ signal?: AbortSignal;
8
+ }
9
+ export interface SearchResult {
10
+ title: string;
11
+ url: string;
12
+ content: string;
13
+ score?: number;
14
+ publishedDate?: string;
15
+ }
16
+ export interface SearchProviderEnv {
17
+ ARIA_SEARCH_PROVIDER?: string;
18
+ BRAVE_API_KEY?: string;
19
+ FIRECRAWL_API_KEY?: string;
20
+ EXA_API_KEY?: string;
21
+ TAVILY_API_KEY?: string;
22
+ JINA_API_KEY?: string;
23
+ }
24
+ export declare function resolveSearchProviderEnv(env?: SearchProviderEnv | Record<string, string | undefined>): SearchProviderEnv;
25
+ export interface SearchProvider {
26
+ readonly name: string;
27
+ readonly requiresApiKey: boolean;
28
+ readonly priority: number;
29
+ isAvailable(): boolean;
30
+ search(query: string, options?: SearchOptions): Promise<SearchResult[]>;
31
+ }
32
+ export declare function createProviderAbortSignal(timeoutMs: number, callerSignal?: AbortSignal): {
33
+ signal: AbortSignal;
34
+ cleanup: () => void;
35
+ };
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveSearchProviderEnv = resolveSearchProviderEnv;
4
+ exports.createProviderAbortSignal = createProviderAbortSignal;
5
+ function resolveSearchProviderEnv(env = process.env) {
6
+ return {
7
+ ARIA_SEARCH_PROVIDER: env.ARIA_SEARCH_PROVIDER,
8
+ BRAVE_API_KEY: env.BRAVE_API_KEY,
9
+ FIRECRAWL_API_KEY: env.FIRECRAWL_API_KEY,
10
+ EXA_API_KEY: env.EXA_API_KEY,
11
+ TAVILY_API_KEY: env.TAVILY_API_KEY,
12
+ JINA_API_KEY: env.JINA_API_KEY,
13
+ };
14
+ }
15
+ function createProviderAbortSignal(timeoutMs, callerSignal) {
16
+ const controller = new AbortController();
17
+ const onCallerAbort = () => controller.abort();
18
+ if (callerSignal) {
19
+ if (callerSignal.aborted) {
20
+ controller.abort();
21
+ }
22
+ else {
23
+ callerSignal.addEventListener("abort", onCallerAbort, { once: true });
24
+ }
25
+ }
26
+ const timeout = setTimeout(() => controller.abort(), timeoutMs);
27
+ return {
28
+ signal: controller.signal,
29
+ cleanup: () => {
30
+ clearTimeout(timeout);
31
+ if (callerSignal) {
32
+ callerSignal.removeEventListener("abort", onCallerAbort);
33
+ }
34
+ },
35
+ };
36
+ }
37
+ //# sourceMappingURL=search-provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-provider.js","sourceRoot":"","sources":["../../src/providers/search-provider.ts"],"names":[],"mappings":";;AA0BA,4DAWC;AAUD,8DA0BC;AA/CD,SAAgB,wBAAwB,CACtC,MAA8D,OAAO,CAAC,GAAG;IAEzE,OAAO;QACL,oBAAoB,EAAE,GAAG,CAAC,oBAAoB;QAC9C,aAAa,EAAE,GAAG,CAAC,aAAa;QAChC,iBAAiB,EAAE,GAAG,CAAC,iBAAiB;QACxC,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,cAAc,EAAE,GAAG,CAAC,cAAc;QAClC,YAAY,EAAE,GAAG,CAAC,YAAY;KAC/B,CAAC;AACJ,CAAC;AAUD,SAAgB,yBAAyB,CACvC,SAAiB,EACjB,YAA0B;IAE1B,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IAE/C,IAAI,YAAY,EAAE,CAAC;QACjB,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;YACzB,UAAU,CAAC,KAAK,EAAE,CAAC;QACrB,CAAC;aAAM,CAAC;YACN,YAAY,CAAC,gBAAgB,CAAC,OAAO,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC,CAAC;IAEhE,OAAO;QACL,MAAM,EAAE,UAAU,CAAC,MAAM;QACzB,OAAO,EAAE,GAAG,EAAE;YACZ,YAAY,CAAC,OAAO,CAAC,CAAC;YACtB,IAAI,YAAY,EAAE,CAAC;gBACjB,YAAY,CAAC,mBAAmB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { SearchProvider, SearchOptions, SearchResult, SearchProviderEnv } from "./search-provider.js";
2
+ export declare class TavilySearchProvider implements SearchProvider {
3
+ private readonly env;
4
+ readonly name = "tavily";
5
+ readonly requiresApiKey = true;
6
+ readonly priority = 4;
7
+ constructor(env?: SearchProviderEnv | Record<string, string | undefined>);
8
+ isAvailable(): boolean;
9
+ search(query: string, options?: SearchOptions): Promise<SearchResult[]>;
10
+ }
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TavilySearchProvider = void 0;
4
+ const search_provider_js_1 = require("./search-provider.js");
5
+ class TavilySearchProvider {
6
+ env;
7
+ name = "tavily";
8
+ requiresApiKey = true;
9
+ priority = 4;
10
+ constructor(env = process.env) {
11
+ this.env = env;
12
+ }
13
+ isAvailable() {
14
+ const apiKey = (0, search_provider_js_1.resolveSearchProviderEnv)(this.env).TAVILY_API_KEY;
15
+ return Boolean(apiKey && apiKey.trim().length > 0);
16
+ }
17
+ async search(query, options) {
18
+ const apiKey = (0, search_provider_js_1.resolveSearchProviderEnv)(this.env).TAVILY_API_KEY;
19
+ if (!apiKey) {
20
+ throw new Error("TAVILY_API_KEY environment variable is not set");
21
+ }
22
+ const limit = options?.limit ?? 5;
23
+ const body = {
24
+ api_key: apiKey,
25
+ query,
26
+ max_results: limit,
27
+ ...(options?.topic && { topic: options.topic }),
28
+ ...(options?.domains && { include_domains: options.domains }),
29
+ ...(options?.excludeDomains && { exclude_domains: options.excludeDomains }),
30
+ };
31
+ const { signal, cleanup } = (0, search_provider_js_1.createProviderAbortSignal)(30_000, options?.signal);
32
+ try {
33
+ const response = await fetch("https://api.tavily.com/search", {
34
+ method: "POST",
35
+ headers: {
36
+ "Content-Type": "application/json",
37
+ },
38
+ body: JSON.stringify(body),
39
+ signal,
40
+ });
41
+ if (!response.ok) {
42
+ throw new Error(`Tavily Search API error: ${response.status} ${response.statusText}`);
43
+ }
44
+ const json = await response.json();
45
+ const results = (json.results || []);
46
+ return results.map((r) => ({
47
+ title: r.title,
48
+ url: r.url,
49
+ content: r.content,
50
+ score: r.score,
51
+ }));
52
+ }
53
+ finally {
54
+ cleanup();
55
+ }
56
+ }
57
+ }
58
+ exports.TavilySearchProvider = TavilySearchProvider;
59
+ //# sourceMappingURL=tavily.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tavily.js","sourceRoot":"","sources":["../../src/providers/tavily.ts"],"names":[],"mappings":";;;AAMA,6DAA2F;AAE3F,MAAa,oBAAoB;IAMZ;IALV,IAAI,GAAG,QAAQ,CAAC;IAChB,cAAc,GAAG,IAAI,CAAC;IACtB,QAAQ,GAAG,CAAC,CAAC;IAEtB,YACmB,MAA8D,OAAO,CAAC,GAAG;QAAzE,QAAG,GAAH,GAAG,CAAsE;IACzF,CAAC;IAEJ,WAAW;QACT,MAAM,MAAM,GAAG,IAAA,6CAAwB,EAAC,IAAI,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC;QACjE,OAAO,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAa,EAAE,OAAuB;QACjD,MAAM,MAAM,GAAG,IAAA,6CAAwB,EAAC,IAAI,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC;QACjE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QACpE,CAAC;QAED,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,IAAI,CAAC,CAAC;QAElC,MAAM,IAAI,GAAG;YACX,OAAO,EAAE,MAAM;YACf,KAAK;YACL,WAAW,EAAE,KAAK;YAClB,GAAG,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;YAC/C,GAAG,CAAC,OAAO,EAAE,OAAO,IAAI,EAAE,eAAe,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;YAC7D,GAAG,CAAC,OAAO,EAAE,cAAc,IAAI,EAAE,eAAe,EAAE,OAAO,CAAC,cAAc,EAAE,CAAC;SAC5E,CAAC;QAEF,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAA,8CAAyB,EAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAE/E,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,+BAA+B,EAAE;gBAC5D,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;gBAC1B,MAAM;aACP,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,4BAA4B,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;YACxF,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnC,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAKjC,CAAC;YAEH,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACzB,KAAK,EAAE,CAAC,CAAC,KAAK;gBACd,GAAG,EAAE,CAAC,CAAC,GAAG;gBACV,OAAO,EAAE,CAAC,CAAC,OAAO;gBAClB,KAAK,EAAE,CAAC,CAAC,KAAK;aACf,CAAC,CAAC,CAAC;QACN,CAAC;gBAAS,CAAC;YACT,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;CACF;AAjED,oDAiEC"}
@@ -0,0 +1,69 @@
1
+ export interface QuipDocumentSummary {
2
+ threadId: string;
3
+ title: string;
4
+ link: string;
5
+ updatedUsec: number;
6
+ createdUsec: number;
7
+ }
8
+ export interface QuipDocumentListResult {
9
+ documents: QuipDocumentSummary[];
10
+ }
11
+ export interface QuipDocumentDetail {
12
+ threadId: string;
13
+ title: string;
14
+ link: string;
15
+ markdown: string;
16
+ updatedUsec: number;
17
+ createdUsec: number;
18
+ authorId: string;
19
+ }
20
+ export interface QuipCreateResult {
21
+ threadId: string;
22
+ title: string;
23
+ link: string;
24
+ }
25
+ export interface QuipCommentView {
26
+ id: string;
27
+ authorId: string;
28
+ authorName: string;
29
+ text: string;
30
+ createdUsec: number;
31
+ }
32
+ export interface QuipCommentResult {
33
+ threadId: string;
34
+ commentId: string;
35
+ }
36
+ export interface QuipCommentListResult {
37
+ threadId: string;
38
+ comments: QuipCommentView[];
39
+ }
40
+ export interface QuipDesktopClient {
41
+ getUserId(): string;
42
+ listRecentDocuments(input: {
43
+ limit?: number;
44
+ }): Promise<QuipDocumentListResult>;
45
+ searchDocuments(input: {
46
+ query: string;
47
+ limit?: number;
48
+ }): Promise<QuipDocumentListResult>;
49
+ readDocument(input: {
50
+ threadId: string;
51
+ }): Promise<QuipDocumentDetail>;
52
+ createDocument(input: {
53
+ title: string;
54
+ content: string;
55
+ format?: "markdown" | "html";
56
+ folderId?: string;
57
+ }): Promise<QuipCreateResult>;
58
+ addComment(input: {
59
+ threadId: string;
60
+ content: string;
61
+ }): Promise<QuipCommentResult>;
62
+ listComments(input: {
63
+ threadId: string;
64
+ }): Promise<QuipCommentListResult>;
65
+ close(): Promise<void>;
66
+ }
67
+ export declare function createQuipDesktopClient(options?: {
68
+ bootstrapTimeoutMs?: number;
69
+ }): Promise<QuipDesktopClient>;