browxai 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (520) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +139 -0
  3. package/THIRD_PARTY_NOTICES.md +45 -0
  4. package/dist/cli/chrome.d.ts +1 -0
  5. package/dist/cli/chrome.js +130 -0
  6. package/dist/cli/command-registry.d.ts +15 -0
  7. package/dist/cli/command-registry.js +35 -0
  8. package/dist/cli/doctor-plugins.d.ts +18 -0
  9. package/dist/cli/doctor-plugins.js +338 -0
  10. package/dist/cli/doctor.d.ts +9 -0
  11. package/dist/cli/doctor.js +407 -0
  12. package/dist/cli/init.d.ts +1 -0
  13. package/dist/cli/init.js +200 -0
  14. package/dist/cli/register-commands.d.ts +1 -0
  15. package/dist/cli/register-commands.js +22 -0
  16. package/dist/cli/serve.d.ts +14 -0
  17. package/dist/cli/serve.js +151 -0
  18. package/dist/cli.d.ts +3 -0
  19. package/dist/cli.js +129 -0
  20. package/dist/engine/adapters/adb.d.ts +72 -0
  21. package/dist/engine/adapters/adb.js +200 -0
  22. package/dist/engine/adapters/android-cdp.d.ts +54 -0
  23. package/dist/engine/adapters/android-cdp.js +110 -0
  24. package/dist/engine/adapters/android.engine.d.ts +1 -0
  25. package/dist/engine/adapters/android.engine.js +31 -0
  26. package/dist/engine/adapters/chromium.engine.d.ts +1 -0
  27. package/dist/engine/adapters/chromium.engine.js +44 -0
  28. package/dist/engine/adapters/firefox.engine.d.ts +1 -0
  29. package/dist/engine/adapters/firefox.engine.js +43 -0
  30. package/dist/engine/adapters/playwright-chromium.d.ts +43 -0
  31. package/dist/engine/adapters/playwright-chromium.js +56 -0
  32. package/dist/engine/adapters/playwright-firefox.d.ts +52 -0
  33. package/dist/engine/adapters/playwright-firefox.js +97 -0
  34. package/dist/engine/adapters/playwright-webkit.d.ts +40 -0
  35. package/dist/engine/adapters/playwright-webkit.js +79 -0
  36. package/dist/engine/adapters/safari/bidi-client.d.ts +46 -0
  37. package/dist/engine/adapters/safari/bidi-client.js +130 -0
  38. package/dist/engine/adapters/safari/launch.d.ts +56 -0
  39. package/dist/engine/adapters/safari/launch.js +104 -0
  40. package/dist/engine/adapters/safari/webdriver-client.d.ts +102 -0
  41. package/dist/engine/adapters/safari/webdriver-client.js +175 -0
  42. package/dist/engine/adapters/safari.engine.d.ts +1 -0
  43. package/dist/engine/adapters/safari.engine.js +52 -0
  44. package/dist/engine/adapters/safaridriver-hybrid.d.ts +56 -0
  45. package/dist/engine/adapters/safaridriver-hybrid.js +127 -0
  46. package/dist/engine/adapters/webkit.engine.d.ts +1 -0
  47. package/dist/engine/adapters/webkit.engine.js +47 -0
  48. package/dist/engine/capabilities.d.ts +53 -0
  49. package/dist/engine/capabilities.js +122 -0
  50. package/dist/engine/capability-registry.d.ts +9 -0
  51. package/dist/engine/capability-registry.js +20 -0
  52. package/dist/engine/index.d.ts +18 -0
  53. package/dist/engine/index.js +14 -0
  54. package/dist/engine/register-engines.d.ts +5 -0
  55. package/dist/engine/register-engines.js +16 -0
  56. package/dist/engine/registry.d.ts +145 -0
  57. package/dist/engine/registry.js +67 -0
  58. package/dist/engine/select.d.ts +48 -0
  59. package/dist/engine/select.js +128 -0
  60. package/dist/engine/session-cdp.d.ts +13 -0
  61. package/dist/engine/session-cdp.js +22 -0
  62. package/dist/engine/tool-gate.d.ts +19 -0
  63. package/dist/engine/tool-gate.js +226 -0
  64. package/dist/engine/types.d.ts +71 -0
  65. package/dist/engine/types.js +16 -0
  66. package/dist/helper/bridge.d.ts +48 -0
  67. package/dist/helper/bridge.js +200 -0
  68. package/dist/helper/browx-page.d.ts +1 -0
  69. package/dist/helper/browx-page.js +47 -0
  70. package/dist/helper/overlay-hide.d.ts +9 -0
  71. package/dist/helper/overlay-hide.js +49 -0
  72. package/dist/helper/stealth.d.ts +10 -0
  73. package/dist/helper/stealth.js +88 -0
  74. package/dist/index.d.ts +7 -0
  75. package/dist/index.js +15 -0
  76. package/dist/page/a11y.d.ts +81 -0
  77. package/dist/page/a11y.js +219 -0
  78. package/dist/page/action-substrate.d.ts +64 -0
  79. package/dist/page/action-substrate.js +118 -0
  80. package/dist/page/actionresult-blocks.d.ts +99 -0
  81. package/dist/page/actionresult-blocks.js +144 -0
  82. package/dist/page/actionresult-shape.d.ts +48 -0
  83. package/dist/page/actionresult-shape.js +155 -0
  84. package/dist/page/actionresult-types.d.ts +368 -0
  85. package/dist/page/actionresult-types.js +4 -0
  86. package/dist/page/actionresult.d.ts +4 -0
  87. package/dist/page/actionresult.js +299 -0
  88. package/dist/page/actions-probe.d.ts +32 -0
  89. package/dist/page/actions-probe.js +294 -0
  90. package/dist/page/actions-scroll.d.ts +40 -0
  91. package/dist/page/actions-scroll.js +53 -0
  92. package/dist/page/actions.d.ts +132 -0
  93. package/dist/page/actions.js +453 -0
  94. package/dist/page/archive-assets.d.ts +39 -0
  95. package/dist/page/archive-assets.js +187 -0
  96. package/dist/page/archive.d.ts +47 -0
  97. package/dist/page/archive.js +349 -0
  98. package/dist/page/asset-export.d.ts +122 -0
  99. package/dist/page/asset-export.js +376 -0
  100. package/dist/page/await_network.d.ts +16 -0
  101. package/dist/page/await_network.js +23 -0
  102. package/dist/page/bbox.d.ts +37 -0
  103. package/dist/page/bbox.js +115 -0
  104. package/dist/page/canvas-capture.d.ts +82 -0
  105. package/dist/page/canvas-capture.js +257 -0
  106. package/dist/page/canvas-diff.d.ts +51 -0
  107. package/dist/page/canvas-diff.js +131 -0
  108. package/dist/page/canvas-gesture.d.ts +53 -0
  109. package/dist/page/canvas-gesture.js +167 -0
  110. package/dist/page/canvas-transform.d.ts +96 -0
  111. package/dist/page/canvas-transform.js +150 -0
  112. package/dist/page/canvas.d.ts +8 -0
  113. package/dist/page/canvas.js +50 -0
  114. package/dist/page/capture-substrate.d.ts +111 -0
  115. package/dist/page/capture-substrate.js +139 -0
  116. package/dist/page/clipboard.d.ts +25 -0
  117. package/dist/page/clipboard.js +50 -0
  118. package/dist/page/clock.d.ts +36 -0
  119. package/dist/page/clock.js +167 -0
  120. package/dist/page/compose.d.ts +55 -0
  121. package/dist/page/compose.js +169 -0
  122. package/dist/page/console.d.ts +39 -0
  123. package/dist/page/console.js +73 -0
  124. package/dist/page/coverage.d.ts +97 -0
  125. package/dist/page/coverage.js +280 -0
  126. package/dist/page/dom-export.d.ts +41 -0
  127. package/dist/page/dom-export.js +193 -0
  128. package/dist/page/dom-walk.d.ts +91 -0
  129. package/dist/page/dom-walk.js +267 -0
  130. package/dist/page/dom_diff.d.ts +48 -0
  131. package/dist/page/dom_diff.js +121 -0
  132. package/dist/page/downloads.d.ts +80 -0
  133. package/dist/page/downloads.js +244 -0
  134. package/dist/page/drop-files.d.ts +78 -0
  135. package/dist/page/drop-files.js +310 -0
  136. package/dist/page/element-export-discovery.d.ts +64 -0
  137. package/dist/page/element-export-discovery.js +346 -0
  138. package/dist/page/element-export.d.ts +46 -0
  139. package/dist/page/element-export.js +251 -0
  140. package/dist/page/emulation-substrate.d.ts +53 -0
  141. package/dist/page/emulation-substrate.js +87 -0
  142. package/dist/page/emulation.d.ts +60 -0
  143. package/dist/page/emulation.js +162 -0
  144. package/dist/page/export-playwright-script.d.ts +47 -0
  145. package/dist/page/export-playwright-script.js +304 -0
  146. package/dist/page/extract-resolve.d.ts +22 -0
  147. package/dist/page/extract-resolve.js +341 -0
  148. package/dist/page/extract-schema.d.ts +20 -0
  149. package/dist/page/extract-schema.js +200 -0
  150. package/dist/page/extract-types.d.ts +127 -0
  151. package/dist/page/extract-types.js +8 -0
  152. package/dist/page/extract-warnings.d.ts +8 -0
  153. package/dist/page/extract-warnings.js +56 -0
  154. package/dist/page/extract.d.ts +9 -0
  155. package/dist/page/extract.js +174 -0
  156. package/dist/page/fill-form.d.ts +58 -0
  157. package/dist/page/fill-form.js +261 -0
  158. package/dist/page/find.d.ts +158 -0
  159. package/dist/page/find.js +470 -0
  160. package/dist/page/frames.d.ts +45 -0
  161. package/dist/page/frames.js +133 -0
  162. package/dist/page/generate-locator.d.ts +57 -0
  163. package/dist/page/generate-locator.js +136 -0
  164. package/dist/page/gestures.d.ts +128 -0
  165. package/dist/page/gestures.js +198 -0
  166. package/dist/page/har.d.ts +91 -0
  167. package/dist/page/har.js +174 -0
  168. package/dist/page/heap.d.ts +97 -0
  169. package/dist/page/heap.js +285 -0
  170. package/dist/page/inspect.d.ts +34 -0
  171. package/dist/page/inspect.js +75 -0
  172. package/dist/page/layout-thrash.d.ts +34 -0
  173. package/dist/page/layout-thrash.js +232 -0
  174. package/dist/page/learning.d.ts +21 -0
  175. package/dist/page/learning.js +84 -0
  176. package/dist/page/locator.d.ts +54 -0
  177. package/dist/page/locator.js +142 -0
  178. package/dist/page/memory-diff.d.ts +48 -0
  179. package/dist/page/memory-diff.js +105 -0
  180. package/dist/page/network-mask.d.ts +8 -0
  181. package/dist/page/network-mask.js +18 -0
  182. package/dist/page/network-playwright.d.ts +96 -0
  183. package/dist/page/network-playwright.js +353 -0
  184. package/dist/page/network-substrate-select.d.ts +18 -0
  185. package/dist/page/network-substrate-select.js +32 -0
  186. package/dist/page/network-substrate.d.ts +109 -0
  187. package/dist/page/network-substrate.js +161 -0
  188. package/dist/page/network-ws.d.ts +46 -0
  189. package/dist/page/network-ws.js +113 -0
  190. package/dist/page/network.d.ts +194 -0
  191. package/dist/page/network.js +415 -0
  192. package/dist/page/overflow-detect.d.ts +102 -0
  193. package/dist/page/overflow-detect.js +449 -0
  194. package/dist/page/pdf.d.ts +69 -0
  195. package/dist/page/pdf.js +109 -0
  196. package/dist/page/perf-audit-analysers.d.ts +40 -0
  197. package/dist/page/perf-audit-analysers.js +369 -0
  198. package/dist/page/perf-audit-runner.d.ts +20 -0
  199. package/dist/page/perf-audit-runner.js +195 -0
  200. package/dist/page/perf-audit-types.d.ts +41 -0
  201. package/dist/page/perf-audit-types.js +5 -0
  202. package/dist/page/perf-audit.d.ts +37 -0
  203. package/dist/page/perf-audit.js +377 -0
  204. package/dist/page/perf.d.ts +127 -0
  205. package/dist/page/perf.js +373 -0
  206. package/dist/page/plan.d.ts +192 -0
  207. package/dist/page/plan.js +308 -0
  208. package/dist/page/point_probe.d.ts +46 -0
  209. package/dist/page/point_probe.js +99 -0
  210. package/dist/page/recording.d.ts +67 -0
  211. package/dist/page/recording.js +172 -0
  212. package/dist/page/refs.d.ts +92 -0
  213. package/dist/page/refs.js +134 -0
  214. package/dist/page/regions.d.ts +23 -0
  215. package/dist/page/regions.js +32 -0
  216. package/dist/page/routes.d.ts +40 -0
  217. package/dist/page/routes.js +87 -0
  218. package/dist/page/safari-actions.d.ts +12 -0
  219. package/dist/page/safari-actions.js +144 -0
  220. package/dist/page/sample.d.ts +64 -0
  221. package/dist/page/sample.js +216 -0
  222. package/dist/page/screenshot-on.d.ts +51 -0
  223. package/dist/page/screenshot-on.js +150 -0
  224. package/dist/page/screenshot-save.d.ts +36 -0
  225. package/dist/page/screenshot-save.js +53 -0
  226. package/dist/page/screenshot-schedule.d.ts +50 -0
  227. package/dist/page/screenshot-schedule.js +155 -0
  228. package/dist/page/script-substrate.d.ts +32 -0
  229. package/dist/page/script-substrate.js +47 -0
  230. package/dist/page/seed-random.d.ts +45 -0
  231. package/dist/page/seed-random.js +144 -0
  232. package/dist/page/set-of-marks.d.ts +96 -0
  233. package/dist/page/set-of-marks.js +245 -0
  234. package/dist/page/shadow.d.ts +136 -0
  235. package/dist/page/shadow.js +400 -0
  236. package/dist/page/shortcut.d.ts +50 -0
  237. package/dist/page/shortcut.js +147 -0
  238. package/dist/page/snapshot-substrate-safari.d.ts +30 -0
  239. package/dist/page/snapshot-substrate-safari.js +84 -0
  240. package/dist/page/snapshot-substrate-select.d.ts +24 -0
  241. package/dist/page/snapshot-substrate-select.js +34 -0
  242. package/dist/page/snapshot-substrate.d.ts +58 -0
  243. package/dist/page/snapshot-substrate.js +135 -0
  244. package/dist/page/snapshot.d.ts +24 -0
  245. package/dist/page/snapshot.js +162 -0
  246. package/dist/page/solve-captcha.d.ts +76 -0
  247. package/dist/page/solve-captcha.js +286 -0
  248. package/dist/page/storage-substrate-types.d.ts +221 -0
  249. package/dist/page/storage-substrate-types.js +6 -0
  250. package/dist/page/storage-substrate.d.ts +215 -0
  251. package/dist/page/storage-substrate.js +280 -0
  252. package/dist/page/structural.d.ts +9 -0
  253. package/dist/page/structural.js +152 -0
  254. package/dist/page/substrate-bundle-safari.d.ts +8 -0
  255. package/dist/page/substrate-bundle-safari.js +42 -0
  256. package/dist/page/substrate-bundle.d.ts +6 -0
  257. package/dist/page/substrate-bundle.js +53 -0
  258. package/dist/page/text_search.d.ts +44 -0
  259. package/dist/page/text_search.js +90 -0
  260. package/dist/page/upload.d.ts +28 -0
  261. package/dist/page/upload.js +62 -0
  262. package/dist/page/verify.d.ts +63 -0
  263. package/dist/page/verify.js +451 -0
  264. package/dist/page/video.d.ts +115 -0
  265. package/dist/page/video.js +169 -0
  266. package/dist/page/visibility.d.ts +22 -0
  267. package/dist/page/visibility.js +94 -0
  268. package/dist/page/watch.d.ts +29 -0
  269. package/dist/page/watch.js +99 -0
  270. package/dist/page/workers.d.ts +126 -0
  271. package/dist/page/workers.js +490 -0
  272. package/dist/page/ws-interactive.d.ts +82 -0
  273. package/dist/page/ws-interactive.js +318 -0
  274. package/dist/plugin/cli.d.ts +45 -0
  275. package/dist/plugin/cli.js +496 -0
  276. package/dist/plugin/command-registry.d.ts +9 -0
  277. package/dist/plugin/command-registry.js +23 -0
  278. package/dist/plugin/depgraph.d.ts +37 -0
  279. package/dist/plugin/depgraph.js +186 -0
  280. package/dist/plugin/manifest.d.ts +182 -0
  281. package/dist/plugin/manifest.js +219 -0
  282. package/dist/plugin/package-manager.d.ts +22 -0
  283. package/dist/plugin/package-manager.js +40 -0
  284. package/dist/plugin/resolver.d.ts +85 -0
  285. package/dist/plugin/resolver.js +166 -0
  286. package/dist/plugin/runtime.d.ts +77 -0
  287. package/dist/plugin/runtime.js +402 -0
  288. package/dist/plugin/types.d.ts +113 -0
  289. package/dist/plugin/types.js +4 -0
  290. package/dist/policy/confirm.d.ts +76 -0
  291. package/dist/policy/confirm.js +162 -0
  292. package/dist/policy/origin.d.ts +17 -0
  293. package/dist/policy/origin.js +79 -0
  294. package/dist/sdk/client.d.ts +21 -0
  295. package/dist/sdk/client.js +174 -0
  296. package/dist/sdk/index.d.ts +32 -0
  297. package/dist/sdk/index.js +61 -0
  298. package/dist/sdk/plugin-types.d.ts +33 -0
  299. package/dist/sdk/plugin-types.js +22 -0
  300. package/dist/sdk/registry.d.ts +17 -0
  301. package/dist/sdk/registry.js +94 -0
  302. package/dist/sdk/socket-transport.d.ts +20 -0
  303. package/dist/sdk/socket-transport.js +90 -0
  304. package/dist/sdk/tool-types.d.ts +634 -0
  305. package/dist/sdk/tool-types.js +28 -0
  306. package/dist/sdk/transport-in-process.d.ts +21 -0
  307. package/dist/sdk/transport-in-process.js +44 -0
  308. package/dist/sdk/transport-registry.d.ts +19 -0
  309. package/dist/sdk/transport-registry.js +31 -0
  310. package/dist/sdk/transport-socket.d.ts +12 -0
  311. package/dist/sdk/transport-socket.js +77 -0
  312. package/dist/sdk/transport-stdio-child.d.ts +10 -0
  313. package/dist/sdk/transport-stdio-child.js +47 -0
  314. package/dist/sdk/transport.d.ts +10 -0
  315. package/dist/sdk/transport.js +35 -0
  316. package/dist/sdk/types.d.ts +176 -0
  317. package/dist/sdk/types.js +10 -0
  318. package/dist/server.d.ts +33 -0
  319. package/dist/server.js +327 -0
  320. package/dist/session/artifacts.d.ts +52 -0
  321. package/dist/session/artifacts.js +177 -0
  322. package/dist/session/byob-attach.d.ts +26 -0
  323. package/dist/session/byob-attach.js +187 -0
  324. package/dist/session/byob.d.ts +8 -0
  325. package/dist/session/byob.js +20 -0
  326. package/dist/session/cache-storage.d.ts +100 -0
  327. package/dist/session/cache-storage.js +166 -0
  328. package/dist/session/device-emu.d.ts +149 -0
  329. package/dist/session/device-emu.js +545 -0
  330. package/dist/session/device.d.ts +14 -0
  331. package/dist/session/device.js +44 -0
  332. package/dist/session/dialog.d.ts +62 -0
  333. package/dist/session/dialog.js +164 -0
  334. package/dist/session/emulation.d.ts +69 -0
  335. package/dist/session/emulation.js +168 -0
  336. package/dist/session/extensions.d.ts +113 -0
  337. package/dist/session/extensions.js +237 -0
  338. package/dist/session/fs-picker.d.ts +144 -0
  339. package/dist/session/fs-picker.js +666 -0
  340. package/dist/session/idb-storage.d.ts +86 -0
  341. package/dist/session/idb-storage.js +229 -0
  342. package/dist/session/incognito.d.ts +3 -0
  343. package/dist/session/incognito.js +20 -0
  344. package/dist/session/launch-options.d.ts +41 -0
  345. package/dist/session/launch-options.js +200 -0
  346. package/dist/session/managed.d.ts +3 -0
  347. package/dist/session/managed.js +16 -0
  348. package/dist/session/metrics.d.ts +45 -0
  349. package/dist/session/metrics.js +75 -0
  350. package/dist/session/notification.d.ts +122 -0
  351. package/dist/session/notification.js +426 -0
  352. package/dist/session/permission.d.ts +144 -0
  353. package/dist/session/permission.js +600 -0
  354. package/dist/session/playwright-post-wire.d.ts +8 -0
  355. package/dist/session/playwright-post-wire.js +148 -0
  356. package/dist/session/policy-buffer.d.ts +21 -0
  357. package/dist/session/policy-buffer.js +47 -0
  358. package/dist/session/profile-snapshot.d.ts +11 -0
  359. package/dist/session/profile-snapshot.js +53 -0
  360. package/dist/session/registry.d.ts +365 -0
  361. package/dist/session/registry.js +98 -0
  362. package/dist/session/safari-post-wire.d.ts +8 -0
  363. package/dist/session/safari-post-wire.js +28 -0
  364. package/dist/session/safari-session.d.ts +10 -0
  365. package/dist/session/safari-session.js +39 -0
  366. package/dist/session/storage.d.ts +148 -0
  367. package/dist/session/storage.js +350 -0
  368. package/dist/session/types.d.ts +113 -0
  369. package/dist/session/types.js +5 -0
  370. package/dist/session/wedge.d.ts +15 -0
  371. package/dist/session/wedge.js +41 -0
  372. package/dist/tools/action-core-tools.d.ts +13 -0
  373. package/dist/tools/action-core-tools.js +156 -0
  374. package/dist/tools/action-form-tools.d.ts +12 -0
  375. package/dist/tools/action-form-tools.js +179 -0
  376. package/dist/tools/action-gesture-tools.d.ts +9 -0
  377. package/dist/tools/action-gesture-tools.js +115 -0
  378. package/dist/tools/action-history-tools.d.ts +8 -0
  379. package/dist/tools/action-history-tools.js +67 -0
  380. package/dist/tools/action-tool.d.ts +42 -0
  381. package/dist/tools/action-tool.js +58 -0
  382. package/dist/tools/action-tools.d.ts +20 -0
  383. package/dist/tools/action-tools.js +28 -0
  384. package/dist/tools/batch-act-tools.d.ts +10 -0
  385. package/dist/tools/batch-act-tools.js +276 -0
  386. package/dist/tools/batch-human-tools.d.ts +8 -0
  387. package/dist/tools/batch-human-tools.js +148 -0
  388. package/dist/tools/canvas-tools.d.ts +40 -0
  389. package/dist/tools/canvas-tools.js +368 -0
  390. package/dist/tools/capture-report-diagnostics-tools.d.ts +7 -0
  391. package/dist/tools/capture-report-diagnostics-tools.js +318 -0
  392. package/dist/tools/capture-report-element-export-tools.d.ts +8 -0
  393. package/dist/tools/capture-report-element-export-tools.js +197 -0
  394. package/dist/tools/capture-report-export-tools.d.ts +8 -0
  395. package/dist/tools/capture-report-export-tools.js +246 -0
  396. package/dist/tools/capture-report-marks-tools.d.ts +9 -0
  397. package/dist/tools/capture-report-marks-tools.js +221 -0
  398. package/dist/tools/capture-report-upload-tools.d.ts +8 -0
  399. package/dist/tools/capture-report-upload-tools.js +277 -0
  400. package/dist/tools/config-approval-tools.d.ts +8 -0
  401. package/dist/tools/config-approval-tools.js +166 -0
  402. package/dist/tools/deep-coverage-tools.d.ts +8 -0
  403. package/dist/tools/deep-coverage-tools.js +325 -0
  404. package/dist/tools/deep-determinism-tools.d.ts +8 -0
  405. package/dist/tools/deep-determinism-tools.js +276 -0
  406. package/dist/tools/deep-perf-tools.d.ts +19 -0
  407. package/dist/tools/deep-perf-tools.js +324 -0
  408. package/dist/tools/device-emulation-tools.d.ts +9 -0
  409. package/dist/tools/device-emulation-tools.js +137 -0
  410. package/dist/tools/extensions-batch-tools.d.ts +18 -0
  411. package/dist/tools/extensions-batch-tools.js +24 -0
  412. package/dist/tools/extensions-rebuild.d.ts +22 -0
  413. package/dist/tools/extensions-rebuild.js +208 -0
  414. package/dist/tools/extensions-tools.d.ts +2 -0
  415. package/dist/tools/extensions-tools.js +331 -0
  416. package/dist/tools/forms-fill-tools.d.ts +8 -0
  417. package/dist/tools/forms-fill-tools.js +109 -0
  418. package/dist/tools/forms-plan-tools.d.ts +7 -0
  419. package/dist/tools/forms-plan-tools.js +159 -0
  420. package/dist/tools/forms-recording-mode-tools.d.ts +8 -0
  421. package/dist/tools/forms-recording-mode-tools.js +71 -0
  422. package/dist/tools/forms-recording-tools.d.ts +14 -0
  423. package/dist/tools/forms-recording-tools.js +22 -0
  424. package/dist/tools/forms-refs-tools.d.ts +8 -0
  425. package/dist/tools/forms-refs-tools.js +90 -0
  426. package/dist/tools/gesture-coord-tools.d.ts +8 -0
  427. package/dist/tools/gesture-coord-tools.js +168 -0
  428. package/dist/tools/gesture-emulation-tools.d.ts +8 -0
  429. package/dist/tools/gesture-emulation-tools.js +135 -0
  430. package/dist/tools/gesture-network-tools.d.ts +17 -0
  431. package/dist/tools/gesture-network-tools.js +27 -0
  432. package/dist/tools/gesture-route-tools.d.ts +8 -0
  433. package/dist/tools/gesture-route-tools.js +142 -0
  434. package/dist/tools/gesture-websocket-tools.d.ts +8 -0
  435. package/dist/tools/gesture-websocket-tools.js +122 -0
  436. package/dist/tools/gesture-worker-tools.d.ts +9 -0
  437. package/dist/tools/gesture-worker-tools.js +200 -0
  438. package/dist/tools/host-build.d.ts +76 -0
  439. package/dist/tools/host-build.js +516 -0
  440. package/dist/tools/host.d.ts +287 -0
  441. package/dist/tools/host.js +1 -0
  442. package/dist/tools/input-tools.d.ts +10 -0
  443. package/dist/tools/input-tools.js +176 -0
  444. package/dist/tools/live-emulation-tools.d.ts +9 -0
  445. package/dist/tools/live-emulation-tools.js +353 -0
  446. package/dist/tools/plugin-runtime.d.ts +36 -0
  447. package/dist/tools/plugin-runtime.js +274 -0
  448. package/dist/tools/read-observe-buffer-tools.d.ts +9 -0
  449. package/dist/tools/read-observe-buffer-tools.js +385 -0
  450. package/dist/tools/read-observe-capture-tools.d.ts +12 -0
  451. package/dist/tools/read-observe-capture-tools.js +376 -0
  452. package/dist/tools/read-observe-dom-tools.d.ts +8 -0
  453. package/dist/tools/read-observe-dom-tools.js +308 -0
  454. package/dist/tools/read-observe-extract-tools.d.ts +8 -0
  455. package/dist/tools/read-observe-extract-tools.js +232 -0
  456. package/dist/tools/read-observe-verify-tools.d.ts +8 -0
  457. package/dist/tools/read-observe-verify-tools.js +316 -0
  458. package/dist/tools/schemas.d.ts +29 -0
  459. package/dist/tools/schemas.js +58 -0
  460. package/dist/tools/secrets-captcha-tools.d.ts +9 -0
  461. package/dist/tools/secrets-captcha-tools.js +231 -0
  462. package/dist/tools/session-dialog-permission-tools.d.ts +9 -0
  463. package/dist/tools/session-dialog-permission-tools.js +287 -0
  464. package/dist/tools/session-lifecycle-tools.d.ts +8 -0
  465. package/dist/tools/session-lifecycle-tools.js +314 -0
  466. package/dist/tools/session-notification-device-tools.d.ts +9 -0
  467. package/dist/tools/session-notification-device-tools.js +156 -0
  468. package/dist/tools/session-policy-tools.d.ts +16 -0
  469. package/dist/tools/session-policy-tools.js +22 -0
  470. package/dist/tools/session-registry.d.ts +28 -0
  471. package/dist/tools/session-registry.js +427 -0
  472. package/dist/tools/storage-artifact-har-video-tools.d.ts +8 -0
  473. package/dist/tools/storage-artifact-har-video-tools.js +311 -0
  474. package/dist/tools/storage-cache-idb-tools.d.ts +8 -0
  475. package/dist/tools/storage-cache-idb-tools.js +347 -0
  476. package/dist/tools/storage-state-cookies-tools.d.ts +8 -0
  477. package/dist/tools/storage-state-cookies-tools.js +223 -0
  478. package/dist/tools/storage-tools.d.ts +17 -0
  479. package/dist/tools/storage-tools.js +25 -0
  480. package/dist/tools/storage-web-auth-tools.d.ts +10 -0
  481. package/dist/tools/storage-web-auth-tools.js +230 -0
  482. package/dist/tools/tool-metadata.d.ts +8 -0
  483. package/dist/tools/tool-metadata.js +185 -0
  484. package/dist/util/batch.d.ts +83 -0
  485. package/dist/util/batch.js +191 -0
  486. package/dist/util/capabilities.d.ts +504 -0
  487. package/dist/util/capabilities.js +254 -0
  488. package/dist/util/config-store.d.ts +103 -0
  489. package/dist/util/config-store.js +206 -0
  490. package/dist/util/config.d.ts +11 -0
  491. package/dist/util/config.js +28 -0
  492. package/dist/util/credentials.d.ts +136 -0
  493. package/dist/util/credentials.js +622 -0
  494. package/dist/util/deadline.d.ts +22 -0
  495. package/dist/util/deadline.js +62 -0
  496. package/dist/util/diagnostics.d.ts +161 -0
  497. package/dist/util/diagnostics.js +579 -0
  498. package/dist/util/egress-sanitiser.d.ts +29 -0
  499. package/dist/util/egress-sanitiser.js +52 -0
  500. package/dist/util/failure.d.ts +8 -0
  501. package/dist/util/failure.js +50 -0
  502. package/dist/util/flake-check.d.ts +109 -0
  503. package/dist/util/flake-check.js +342 -0
  504. package/dist/util/invariant.d.ts +25 -0
  505. package/dist/util/invariant.js +66 -0
  506. package/dist/util/logging.d.ts +6 -0
  507. package/dist/util/logging.js +12 -0
  508. package/dist/util/predicates.d.ts +62 -0
  509. package/dist/util/predicates.js +340 -0
  510. package/dist/util/secrets.d.ts +104 -0
  511. package/dist/util/secrets.js +219 -0
  512. package/dist/util/tokens.d.ts +6 -0
  513. package/dist/util/tokens.js +24 -0
  514. package/dist/util/url-sanitizer.d.ts +19 -0
  515. package/dist/util/url-sanitizer.js +70 -0
  516. package/dist/util/version.d.ts +2 -0
  517. package/dist/util/version.js +21 -0
  518. package/dist/util/workspace.d.ts +7 -0
  519. package/dist/util/workspace.js +22 -0
  520. package/package.json +120 -0
@@ -0,0 +1,634 @@
1
+ import type { BrowxaiResult } from "./types.js";
2
+ /** Session id binding for any browser-touching tool — omitting it resolves
3
+ * to the lazy "default" session, byte-identical to the MCP path. */
4
+ export interface SessionArg {
5
+ session?: string;
6
+ }
7
+ /** Anti-wedge deadline override for a single call. */
8
+ export interface TimeoutArg {
9
+ timeoutMs?: number;
10
+ }
11
+ /** Snapshot-delta shape for action-tool results. */
12
+ export type SnapshotMode = "scoped_snapshot" | "tree_diff" | "full" | "none";
13
+ /** Common per-call inputs for action tools (ACTION_OPTS in src/server.ts). */
14
+ export interface ActionOpts extends SessionArg, TimeoutArg {
15
+ mode?: SnapshotMode;
16
+ maxResultTokens?: number;
17
+ }
18
+ /** Viewport coordinate (CSS px, viewport-relative). */
19
+ export interface Coords {
20
+ x: number;
21
+ y: number;
22
+ }
23
+ /** Target shape for tools that accept all four target kinds (click/hover). */
24
+ export type Target = {
25
+ ref: string;
26
+ selector?: never;
27
+ named?: never;
28
+ coords?: never;
29
+ contextRef?: string;
30
+ } | {
31
+ selector: string;
32
+ ref?: never;
33
+ named?: never;
34
+ coords?: never;
35
+ contextRef?: string;
36
+ } | {
37
+ named: string;
38
+ ref?: never;
39
+ selector?: never;
40
+ coords?: never;
41
+ contextRef?: string;
42
+ } | {
43
+ coords: Coords;
44
+ ref?: never;
45
+ selector?: never;
46
+ named?: never;
47
+ contextRef?: never;
48
+ };
49
+ /** Target shape for tools that reject `coords` (fill / select / press / verify family / inspect / ...). */
50
+ export type RefTarget = {
51
+ ref: string;
52
+ selector?: never;
53
+ named?: never;
54
+ contextRef?: string;
55
+ } | {
56
+ selector: string;
57
+ ref?: never;
58
+ named?: never;
59
+ contextRef?: string;
60
+ } | {
61
+ named: string;
62
+ ref?: never;
63
+ selector?: never;
64
+ contextRef?: string;
65
+ };
66
+ export interface SnapshotArgs extends SessionArg {
67
+ scope?: string;
68
+ maxNodes?: number;
69
+ omit?: ReadonlyArray<string>;
70
+ /** stable frame ID (from `frames_list`) to scope the snapshot to
71
+ * a child iframe. `f0` (or omitting this) targets the main frame. */
72
+ frame?: string;
73
+ }
74
+ /** The text content of `snapshot()` isn't structured JSON — it's a serialised
75
+ * a11y tree. The envelope's `data` field is undefined; callers read
76
+ * `content[0].text` directly. */
77
+ export type SnapshotResult = BrowxaiResult;
78
+ export interface FindArgs extends SessionArg {
79
+ query: string;
80
+ maxCandidates?: number;
81
+ confidenceFloor?: number;
82
+ contextRef?: string;
83
+ visibleOnly?: boolean;
84
+ /** stable frame ID (from `frames_list`) to scope the find to a
85
+ * child iframe. `f0` (or omitting this) targets the main frame. Refs
86
+ * minted are bound to the frame so subsequent actions land inside it. */
87
+ frame?: string;
88
+ }
89
+ /**
90
+ * frame discovery.
91
+ */
92
+ export type FramesListArgs = SessionArg;
93
+ export interface FrameInfo {
94
+ frameId: string;
95
+ parentFrameId?: string;
96
+ url: string;
97
+ name: string;
98
+ isMainFrame: boolean;
99
+ origin: string;
100
+ }
101
+ export interface FramesListData {
102
+ ok: true;
103
+ frames: FrameInfo[];
104
+ tokensEstimate: number;
105
+ }
106
+ export type FramesListResult = BrowxaiResult<FramesListData>;
107
+ export interface BBox {
108
+ x: number;
109
+ y: number;
110
+ width: number;
111
+ height: number;
112
+ }
113
+ export interface FindCandidateContext {
114
+ collection?: string;
115
+ rowKey?: string;
116
+ column?: string;
117
+ rowText?: string;
118
+ }
119
+ export type Actionable = true | "disabled" | "off-screen" | "covered";
120
+ export type Stability = "high" | "medium" | "low";
121
+ export interface FindCandidate {
122
+ ref: string;
123
+ role: string;
124
+ name?: string;
125
+ testId?: string;
126
+ stability: Stability;
127
+ selectorHint?: string;
128
+ selectorTier?: number;
129
+ bbox: BBox | null;
130
+ clipped?: boolean;
131
+ score?: number;
132
+ actionable?: Actionable;
133
+ context?: FindCandidateContext;
134
+ }
135
+ export interface FindResultData {
136
+ query: string;
137
+ candidates: FindCandidate[];
138
+ warnings?: string[];
139
+ }
140
+ export type FindResult = BrowxaiResult<FindResultData>;
141
+ export interface ScreenshotArgs extends SessionArg {
142
+ ref?: string;
143
+ selector?: string;
144
+ named?: string;
145
+ contextRef?: string;
146
+ describe?: boolean;
147
+ format?: "png" | "jpeg";
148
+ quality?: number;
149
+ scale?: "css" | "device";
150
+ }
151
+ /** Screenshot returns an MCP `image` content item (and optionally a caption
152
+ * text part). No structured JSON `data`. */
153
+ export type ScreenshotResult = BrowxaiResult;
154
+ export interface ConsoleReadArgs extends SessionArg {
155
+ limit?: number;
156
+ }
157
+ export interface ConsoleRow {
158
+ ts: number;
159
+ type: string;
160
+ text: string;
161
+ }
162
+ export type ConsoleReadResultData = ConsoleRow[];
163
+ export type ConsoleReadResult = BrowxaiResult<ConsoleReadResultData>;
164
+ export interface NetworkReadArgs extends SessionArg {
165
+ limit?: number;
166
+ }
167
+ export interface NetworkRequestRow {
168
+ method: string;
169
+ url: string;
170
+ status?: number;
171
+ type?: string;
172
+ ms?: number;
173
+ requestId?: string;
174
+ }
175
+ export interface NetworkReadResultData {
176
+ summary: {
177
+ total: number;
178
+ byType: Record<string, number>;
179
+ failed: number;
180
+ };
181
+ requests: NetworkRequestRow[];
182
+ }
183
+ export type NetworkReadResult = BrowxaiResult<NetworkReadResultData>;
184
+ export interface WsReadArgs extends SessionArg {
185
+ limit?: number;
186
+ urlPattern?: string;
187
+ }
188
+ export interface WsFrame {
189
+ url: string;
190
+ dir: "sent" | "recv";
191
+ kind: "ws" | "sse";
192
+ opcode?: number;
193
+ event?: string;
194
+ payload: string;
195
+ truncated?: boolean;
196
+ ts: number;
197
+ }
198
+ export interface WsReadResultData {
199
+ total: number;
200
+ frames: WsFrame[];
201
+ }
202
+ export type WsReadResult = BrowxaiResult<WsReadResultData>;
203
+ export interface InspectArgs extends SessionArg {
204
+ ref?: string;
205
+ selector?: string;
206
+ named?: string;
207
+ contextRef?: string;
208
+ styles?: ReadonlyArray<string>;
209
+ }
210
+ export interface InspectResultData {
211
+ found: boolean;
212
+ box?: BBox;
213
+ styles?: Record<string, string>;
214
+ overflowing?: {
215
+ x: boolean;
216
+ y: boolean;
217
+ };
218
+ visible?: boolean;
219
+ childCount?: number;
220
+ }
221
+ export type InspectResult = BrowxaiResult<InspectResultData>;
222
+ export interface TextSearchArgs extends SessionArg {
223
+ text: string;
224
+ exact?: boolean;
225
+ scope?: string;
226
+ includeHidden?: boolean;
227
+ maxMatches?: number;
228
+ }
229
+ export interface TextSearchMatch {
230
+ ref: string;
231
+ role: string;
232
+ text: string;
233
+ context?: FindCandidateContext;
234
+ bbox: BBox | null;
235
+ clipped?: boolean;
236
+ }
237
+ export interface TextSearchResultData {
238
+ count: number;
239
+ matches: TextSearchMatch[];
240
+ }
241
+ export type TextSearchResult = BrowxaiResult<TextSearchResultData>;
242
+ export interface ExtractArgs extends SessionArg {
243
+ /** JSON-schema-flavoured shape. Kept as `Record<string, unknown>` — full
244
+ * JSON-Schema typing would be a much larger surface than the SDK needs. */
245
+ schema: Record<string, unknown>;
246
+ ref?: string;
247
+ scope?: string;
248
+ }
249
+ export interface ExtractEvidence {
250
+ refsUsed?: ReadonlyArray<string>;
251
+ selectorsUsed?: ReadonlyArray<string>;
252
+ partialMisses?: ReadonlyArray<unknown>;
253
+ }
254
+ export interface ExtractOk {
255
+ ok: true;
256
+ data: unknown;
257
+ evidence: ExtractEvidence;
258
+ tokensEstimate: number;
259
+ }
260
+ export interface ExtractFail {
261
+ ok: false;
262
+ failure: {
263
+ source: "app" | "browxai";
264
+ kind: string;
265
+ expected?: string;
266
+ actual?: string;
267
+ partialMisses?: ReadonlyArray<unknown>;
268
+ };
269
+ tokensEstimate: number;
270
+ }
271
+ export type ExtractResultData = ExtractOk | ExtractFail;
272
+ export type ExtractResult = BrowxaiResult<ExtractResultData>;
273
+ export interface VerifyFailure {
274
+ source: "app" | "browxai";
275
+ kind: string;
276
+ expected: string;
277
+ actual: string;
278
+ evidence?: unknown;
279
+ }
280
+ export interface VerifyOk {
281
+ ok: true;
282
+ }
283
+ export interface VerifyFail {
284
+ ok: false;
285
+ failure: VerifyFailure;
286
+ }
287
+ export type VerifyResultData = VerifyOk | VerifyFail;
288
+ export type VerifyResult = BrowxaiResult<VerifyResultData>;
289
+ export type VerifyVisibleArgs = RefTarget & SessionArg;
290
+ export type VerifyTextArgs = RefTarget & SessionArg & {
291
+ text: string;
292
+ exact?: boolean;
293
+ };
294
+ export type VerifyValueArgs = RefTarget & SessionArg & {
295
+ value: string;
296
+ };
297
+ export interface VerifyCountArgs extends SessionArg {
298
+ n: number;
299
+ selector?: string;
300
+ text?: string;
301
+ }
302
+ export type VerifyAttributeArgs = RefTarget & SessionArg & {
303
+ attr: string;
304
+ value?: string;
305
+ };
306
+ export interface VerifyPredicateArgs extends SessionArg {
307
+ predicate: Record<string, unknown>;
308
+ data: Record<string, unknown>;
309
+ }
310
+ export interface GenerateLocatorArgs extends SessionArg {
311
+ ref: string;
312
+ }
313
+ export interface LocatorComponent {
314
+ kind: "testid" | "role" | "text" | "css";
315
+ value: string;
316
+ name?: string;
317
+ attribute?: string;
318
+ }
319
+ export interface GenerateLocatorOk {
320
+ ok: true;
321
+ playwright: string;
322
+ stability: Stability;
323
+ components: LocatorComponent[];
324
+ tokensEstimate: number;
325
+ }
326
+ export interface GenerateLocatorFail {
327
+ ok: false;
328
+ failure: {
329
+ kind: "ref-not-found";
330
+ ref: string;
331
+ hint?: string;
332
+ };
333
+ tokensEstimate: number;
334
+ }
335
+ export type GenerateLocatorResultData = GenerateLocatorOk | GenerateLocatorFail;
336
+ export type GenerateLocatorResult = BrowxaiResult<GenerateLocatorResultData>;
337
+ export type PlanVerb = "click" | "fill" | "hover" | "press" | "select";
338
+ export interface PlanVerbArgs {
339
+ value?: string;
340
+ values?: ReadonlyArray<string>;
341
+ key?: string;
342
+ button?: "left" | "right" | "middle";
343
+ }
344
+ export interface PlanArgs extends SessionArg {
345
+ query: string;
346
+ verb: PlanVerb;
347
+ verbArgs?: PlanVerbArgs;
348
+ contextRef?: string;
349
+ confidenceFloor?: number;
350
+ ttlMs?: number;
351
+ }
352
+ export interface ActionDescriptor {
353
+ id: string;
354
+ ref: string;
355
+ verb: PlanVerb;
356
+ args?: PlanVerbArgs;
357
+ evidence?: Record<string, unknown>;
358
+ expiresAt: number;
359
+ }
360
+ export interface PlanOk {
361
+ ok: true;
362
+ descriptor: ActionDescriptor;
363
+ tokensEstimate?: number;
364
+ }
365
+ export interface PlanFail {
366
+ ok: false;
367
+ error?: string;
368
+ failure?: {
369
+ source: "app" | "browxai";
370
+ kind: string;
371
+ expected?: string;
372
+ actual?: string;
373
+ };
374
+ }
375
+ export type PlanResultData = PlanOk | PlanFail;
376
+ export type PlanResult = BrowxaiResult<PlanResultData>;
377
+ /** Shared per-action result envelope (the JSON body of `ActionResult`).
378
+ * Kept structural so each action tool can refine where useful without
379
+ * forcing every consumer to re-import a wide tree of interfaces. */
380
+ export interface ActionResultData {
381
+ ok: boolean;
382
+ action?: Record<string, unknown>;
383
+ navigation?: Record<string, unknown>;
384
+ structure?: Record<string, unknown>;
385
+ console?: Record<string, unknown>;
386
+ pageErrors?: ReadonlyArray<string>;
387
+ element?: Record<string, unknown>;
388
+ snapshotDelta?: Record<string, unknown>;
389
+ network?: Record<string, unknown>;
390
+ dialogs?: ReadonlyArray<Record<string, unknown>>;
391
+ downloads?: ReadonlyArray<Record<string, unknown>>;
392
+ failure?: {
393
+ source: string;
394
+ hint?: string;
395
+ };
396
+ warnings?: ReadonlyArray<string>;
397
+ error?: string | null;
398
+ tokensEstimate?: number;
399
+ }
400
+ export type ActionResult = BrowxaiResult<ActionResultData>;
401
+ export interface NavigateArgs extends ActionOpts {
402
+ url: string;
403
+ }
404
+ export type NavigateResult = ActionResult;
405
+ export type GoBackArgs = ActionOpts;
406
+ export type GoForwardArgs = ActionOpts;
407
+ export type GoBackResult = ActionResult;
408
+ export type GoForwardResult = ActionResult;
409
+ export interface ScrollArgs extends ActionOpts {
410
+ ref?: string;
411
+ selector?: string;
412
+ named?: string;
413
+ coords?: Coords;
414
+ contextRef?: string;
415
+ to?: "top" | "bottom" | "left" | "right";
416
+ by?: {
417
+ x?: number;
418
+ y?: number;
419
+ };
420
+ intoView?: boolean;
421
+ }
422
+ export type ScrollResult = ActionResult;
423
+ export interface SetViewportArgs extends SessionArg, TimeoutArg {
424
+ width: number;
425
+ height: number;
426
+ }
427
+ export type SetViewportResult = ActionResult;
428
+ export type ClickArgs = Target & ActionOpts & {
429
+ button?: "left" | "right" | "middle";
430
+ };
431
+ export type ClickResult = ActionResult;
432
+ export type HoverArgs = Target & ActionOpts;
433
+ export type HoverResult = ActionResult;
434
+ export type FillArgs = RefTarget & ActionOpts & {
435
+ value: string;
436
+ };
437
+ export type FillResult = ActionResult;
438
+ export type PressArgs = (RefTarget | (SessionArg & {
439
+ ref?: undefined;
440
+ selector?: undefined;
441
+ named?: undefined;
442
+ })) & ActionOpts & {
443
+ key: string;
444
+ };
445
+ export type PressResult = ActionResult;
446
+ export type SelectArgs = RefTarget & ActionOpts & {
447
+ values: ReadonlyArray<string>;
448
+ };
449
+ export type SelectResult = ActionResult;
450
+ export type ChooseOptionArgs = RefTarget & ActionOpts & {
451
+ option: string;
452
+ exact?: boolean;
453
+ };
454
+ export type ChooseOptionResult = ActionResult;
455
+ export interface FillFormFieldArg {
456
+ ref?: string;
457
+ selector?: string;
458
+ named?: string;
459
+ contextRef?: string;
460
+ value: string;
461
+ }
462
+ export interface FillFormSubmitArg {
463
+ ref?: string;
464
+ selector?: string;
465
+ named?: string;
466
+ contextRef?: string;
467
+ }
468
+ export interface FillFormArgs extends ActionOpts {
469
+ fields: ReadonlyArray<FillFormFieldArg>;
470
+ submit?: FillFormSubmitArg;
471
+ }
472
+ export type FillFormResult = ActionResult;
473
+ export interface WaitForArgs extends ActionOpts {
474
+ ref?: string;
475
+ selector?: string;
476
+ named?: string;
477
+ coords?: Coords;
478
+ contextRef?: string;
479
+ text?: string;
480
+ }
481
+ export type WaitForResult = ActionResult;
482
+ export interface ExecuteArgs extends ActionOpts {
483
+ descriptor: ActionDescriptor;
484
+ }
485
+ export type ExecuteResult = ActionResult;
486
+ export interface AwaitHumanArgs extends SessionArg {
487
+ kind?: "acknowledge" | "confirm" | "choose" | "input";
488
+ prompt: string;
489
+ choices?: ReadonlyArray<string>;
490
+ timeoutMs?: number;
491
+ }
492
+ export interface AwaitHumanResultData {
493
+ kind: string;
494
+ value: unknown;
495
+ timedOut: boolean;
496
+ error?: string;
497
+ }
498
+ export type AwaitHumanResult = BrowxaiResult<AwaitHumanResultData>;
499
+ export interface NameRefArgs extends SessionArg {
500
+ name: string;
501
+ ref: string;
502
+ }
503
+ export interface NameRefResultData {
504
+ ok: boolean;
505
+ name: string;
506
+ ref: string;
507
+ }
508
+ export type NameRefResult = BrowxaiResult<NameRefResultData>;
509
+ export type SessionMode = "persistent" | "incognito" | "attached";
510
+ export interface OpenSessionArgs {
511
+ session: string;
512
+ mode?: SessionMode;
513
+ profile?: string;
514
+ device?: string;
515
+ viewport?: {
516
+ width: number;
517
+ height: number;
518
+ };
519
+ dialogPolicy?: string;
520
+ storageState?: string | Record<string, unknown>;
521
+ authState?: string;
522
+ har?: {
523
+ path?: string;
524
+ mode?: "full" | "minimal";
525
+ content?: "embed" | "attach" | "omit";
526
+ urlFilter?: string;
527
+ };
528
+ hars?: ReadonlyArray<string>;
529
+ }
530
+ export interface OpenSessionResultData {
531
+ ok: boolean;
532
+ session?: string;
533
+ mode?: SessionMode;
534
+ url?: string;
535
+ openedAt?: string;
536
+ error?: string;
537
+ }
538
+ export type OpenSessionResult = BrowxaiResult<OpenSessionResultData>;
539
+ export interface CloseSessionArgs {
540
+ session: string;
541
+ }
542
+ export interface CloseSessionResultData {
543
+ ok: boolean;
544
+ session: string;
545
+ wasOpen: boolean;
546
+ }
547
+ export type CloseSessionResult = BrowxaiResult<CloseSessionResultData>;
548
+ export interface CloseSessionsArgs {
549
+ prefix?: string;
550
+ all?: boolean;
551
+ idleMs?: number;
552
+ }
553
+ export interface CloseSessionsResultData {
554
+ ok: boolean;
555
+ closed?: ReadonlyArray<string>;
556
+ count?: number;
557
+ error?: string;
558
+ }
559
+ export type CloseSessionsResult = BrowxaiResult<CloseSessionsResultData>;
560
+ export type ListSessionsArgs = Record<string, never>;
561
+ export interface ListSessionsRow {
562
+ id: string;
563
+ mode: SessionMode;
564
+ url: string | null;
565
+ pages: number | null;
566
+ openedAt: string;
567
+ }
568
+ export interface ListSessionsResultData {
569
+ sessions: ListSessionsRow[];
570
+ }
571
+ export type ListSessionsResult = BrowxaiResult<ListSessionsResultData>;
572
+ export interface EvalJsArgs extends SessionArg, TimeoutArg {
573
+ expr: string;
574
+ returnType?: "json" | "void";
575
+ }
576
+ export interface EvalJsOk {
577
+ ok: true;
578
+ value?: unknown;
579
+ returnType?: "void";
580
+ warning?: string;
581
+ }
582
+ export interface EvalJsFail {
583
+ ok: false;
584
+ error: string;
585
+ warning?: string;
586
+ }
587
+ export type EvalJsResultData = EvalJsOk | EvalJsFail;
588
+ export type EvalJsResult = BrowxaiResult<EvalJsResultData>;
589
+ export interface NetworkBodyArgs extends SessionArg {
590
+ requestId: string;
591
+ }
592
+ export interface NetworkBodyResultData {
593
+ ok: boolean;
594
+ body?: string;
595
+ base64Encoded?: boolean;
596
+ truncated?: boolean;
597
+ error?: string;
598
+ }
599
+ export type NetworkBodyResult = BrowxaiResult<NetworkBodyResultData>;
600
+ export interface UploadFileArgs extends SessionArg {
601
+ ref?: string;
602
+ selector?: string;
603
+ named?: string;
604
+ contextRef?: string;
605
+ name?: string;
606
+ mimeType?: string;
607
+ content?: string;
608
+ path?: string;
609
+ }
610
+ export interface UploadFileResultData {
611
+ ok: boolean;
612
+ mode?: "content" | "path";
613
+ name?: string;
614
+ bytes?: number;
615
+ mimeType?: string;
616
+ target?: string;
617
+ fileCount?: number;
618
+ error?: string;
619
+ }
620
+ export type UploadFileResult = BrowxaiResult<UploadFileResultData>;
621
+ export interface RegisterSecretArgs extends SessionArg {
622
+ name: string;
623
+ value: string;
624
+ scope?: string;
625
+ }
626
+ export interface RegisterSecretResultData {
627
+ ok: boolean;
628
+ registered?: string;
629
+ scope?: string | null;
630
+ names?: ReadonlyArray<string>;
631
+ error?: string;
632
+ tokensEstimate?: number;
633
+ }
634
+ export type RegisterSecretResult = BrowxaiResult<RegisterSecretResultData>;
@@ -0,0 +1,28 @@
1
+ // Per-tool typed argument and result-data shapes for the SDK surface.
2
+ //
3
+ // Stage A shipped every BrowxaiClient method as
4
+ // `(args: BrowxaiArgs) => Promise<BrowxaiResult>` — opaque, generic. Stage A.5
5
+ // specialises each method against the curated SDK surface from
6
+ // `registry.ts` so the emitted `.d.ts` is the canonical reference for
7
+ // LLM-authoring consumers (wrightxai ).
8
+ //
9
+ // **Pure type-layer addition.** The runtime path
10
+ // (`buildClient`/`callTool`/transports/capability gates) is unchanged. The
11
+ // argument shapes mirror the zod `inputSchema` of each registered MCP tool in
12
+ // `src/server.ts`; the result-data shapes mirror the documented per-tool
13
+ // payload in `docs/tool-reference.md`. The server's zod schemas remain the
14
+ // source of input-shape truth — if a doc and a zod schema disagree, the zod
15
+ // schema wins.
16
+ //
17
+ // Optional fields use `?:` so call sites with the minimal required surface
18
+ // compile cleanly. Per-tool unions are expressed as TS unions (the "exactly
19
+ // one of ref|selector|named|coords" target shape) so the type layer can
20
+ // reject obvious missing-target mistakes (e.g. `verify_text({text:"…"})`).
21
+ //
22
+ // AUTHORITATIVE (RFC 0004 P2 / D4): THIS curated file is the single source of
23
+ // truth for the public SDK types. There is intentionally NO committed generated
24
+ // companion — `scripts/gen-sdk-tool-types.ts` remains a dev-only inspection tool
25
+ // that prints the schema-derived input shapes to stdout, but its output is not
26
+ // git-tracked: it would contradict the deliberate input narrowing here (e.g.
27
+ // `SnapshotArgs` omits `includeShadow`) and was consumed by nothing.
28
+ export {};
@@ -0,0 +1,21 @@
1
+ import { createServer, type StartOptions } from "../server.js";
2
+ import { type SdkTransport } from "./transport.js";
3
+ /**
4
+ * When passed to {@link createInProcessTransport}, suppresses the server's MCP
5
+ * stdio binding — the SDK never wants the server.start() side-effect (which
6
+ * would attach to process.stdin/out). We only need the `handlers` map.
7
+ */
8
+ export type InProcessOptions = StartOptions;
9
+ export interface InProcessTransportHandle {
10
+ /** Map of tool-name → wrapped handler that returns MCP content. */
11
+ readonly handlers: Awaited<ReturnType<typeof createServer>>["handlers"];
12
+ /** Underlying server's shutdown — closes every live session. */
13
+ readonly shutdown: () => Promise<void>;
14
+ }
15
+ /**
16
+ * Construct an in-process transport. The factory `await`s the underlying
17
+ * `createServer()` (which does NOT start the MCP stdio loop — `server.start()`
18
+ * is what does that, and the SDK never calls it) so the returned transport
19
+ * is immediately ready to dispatch.
20
+ */
21
+ export declare function openInProcessTransport(opts?: StartOptions): Promise<SdkTransport>;