@wenathlan/devthink 2.0.13 → 2.0.15

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 (444) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/accounts.ts +2087 -0
  3. package/agent.ts +2331 -0
  4. package/antigravity.ts +2139 -0
  5. package/apifreeze.ts +4146 -0
  6. package/auth.ts +642 -0
  7. package/background.ts +16837 -0
  8. package/bridge.ts +2080 -0
  9. package/build.ts +54 -0
  10. package/bun.ts +26 -0
  11. package/capture.ts +1614 -0
  12. package/checksecrets.ts +72 -0
  13. package/cjs.ts +9 -0
  14. package/cli.ts +3500 -0
  15. package/commands.ts +1101 -0
  16. package/companion.ts +450 -0
  17. package/compatibility.ts +37 -0
  18. package/config.ts +3137 -0
  19. package/constants.ts +943 -0
  20. package/core.ts +1473 -0
  21. package/crossbrowser.ts +1359 -0
  22. package/dashdone.ts +605 -0
  23. package/data.ts +943 -0
  24. package/database.ts +133 -0
  25. package/debug.ts +850 -0
  26. package/deno.ts +27 -0
  27. package/devthink.ts +707 -0
  28. package/dist/accounts.d.ts +409 -0
  29. package/dist/agent.d.ts +837 -0
  30. package/dist/antigravity.d.ts +380 -0
  31. package/dist/apifreeze.d.ts +113 -0
  32. package/dist/auth.d.ts +224 -0
  33. package/{bridge.d.ts → dist/bridge.d.ts} +1 -1
  34. package/dist/capture.d.ts +595 -0
  35. package/dist/cjs.d.ts +6 -0
  36. package/{cli.js → dist/cli.js} +2 -2
  37. package/dist/commands.d.ts +310 -0
  38. package/dist/compatibility.d.ts +17 -0
  39. package/dist/config.d.ts +1853 -0
  40. package/dist/constants.d.ts +637 -0
  41. package/dist/core.d.ts +361 -0
  42. package/dist/data.d.ts +330 -0
  43. package/dist/database.d.ts +24 -0
  44. package/dist/debug.d.ts +270 -0
  45. package/dist/engine.d.ts +74 -0
  46. package/dist/environments.d.ts +244 -0
  47. package/dist/evidence.d.ts +277 -0
  48. package/dist/export.d.ts +311 -0
  49. package/dist/fingerprint.d.ts +594 -0
  50. package/dist/flow.d.ts +300 -0
  51. package/dist/gates.d.ts +103 -0
  52. package/dist/identity.d.ts +51 -0
  53. package/dist/ids.d.ts +7 -0
  54. package/dist/llm.d.ts +652 -0
  55. package/dist/models.d.ts +1807 -0
  56. package/dist/net.d.ts +325 -0
  57. package/dist/neutral.d.ts +41 -0
  58. package/dist/oauth.d.ts +703 -0
  59. package/dist/page.d.ts +1166 -0
  60. package/dist/perf.d.ts +481 -0
  61. package/dist/plan.d.ts +134 -0
  62. package/dist/project.d.ts +395 -0
  63. package/dist/providers.d.ts +37 -0
  64. package/dist/quota.d.ts +453 -0
  65. package/dist/recovery.d.ts +621 -0
  66. package/dist/request.d.ts +1492 -0
  67. package/dist/run.d.ts +779 -0
  68. package/dist/runtime.d.ts +212 -0
  69. package/dist/search.d.ts +375 -0
  70. package/dist/security.d.ts +534 -0
  71. package/dist/serve.d.ts +136 -0
  72. package/dist/session.d.ts +296 -0
  73. package/dist/storage.d.ts +53 -0
  74. package/dist/streaming.d.ts +1119 -0
  75. package/dist/swarm.d.ts +328 -0
  76. package/dist/tools.d.ts +170 -0
  77. package/dist/types.d.ts +8357 -0
  78. package/dist/utils.d.ts +82 -0
  79. package/dist/version.d.ts +7 -0
  80. package/dist/versionregistry.d.ts +406 -0
  81. package/dist/views.d.ts +579 -0
  82. package/dist/workbenchsession.d.ts +69 -0
  83. package/dist/workflow.d.ts +649 -0
  84. package/docs/readme.md +92 -0
  85. package/docs/schemas/antigravity.json +192 -0
  86. package/engine.ts +1524 -0
  87. package/environments.ts +1005 -0
  88. package/evidence.ts +643 -0
  89. package/export.ts +889 -0
  90. package/fingerprint.ts +1458 -0
  91. package/flow.ts +1190 -0
  92. package/gates.ts +307 -0
  93. package/gateway.ts +34 -0
  94. package/hardening.ts +191 -0
  95. package/headless.ts +369 -0
  96. package/http.ts +2110 -0
  97. package/identity.ts +246 -0
  98. package/ids.ts +26 -0
  99. package/index.ts +369 -0
  100. package/llm.ts +2682 -0
  101. package/mcp.ts +1835 -0
  102. package/{memory.js → memory.ts} +3834 -2310
  103. package/models.ts +3805 -0
  104. package/modes.ts +43 -0
  105. package/net.ts +1214 -0
  106. package/neutral.ts +362 -0
  107. package/node.ts +26 -0
  108. package/oauth.ts +2216 -0
  109. package/offscreen.ts +170 -0
  110. package/pack.ts +956 -0
  111. package/package.json +175 -82
  112. package/page.ts +7824 -0
  113. package/pagebridge.ts +1116 -0
  114. package/perf.ts +957 -0
  115. package/plan.ts +672 -0
  116. package/plugin.ts +76 -0
  117. package/{policy.js → policy.ts} +5073 -4679
  118. package/prisma.config.ts +27 -0
  119. package/progress.ts +1308 -0
  120. package/project.ts +1291 -0
  121. package/protocol.ts +4187 -0
  122. package/providers.ts +246 -0
  123. package/quota.ts +1887 -0
  124. package/recovery.ts +2433 -0
  125. package/request.ts +4482 -0
  126. package/run.ts +2135 -0
  127. package/runtime.ts +526 -0
  128. package/search.ts +1760 -0
  129. package/security.ts +1673 -0
  130. package/serve.ts +419 -0
  131. package/server.ts +5538 -0
  132. package/session.ts +1162 -0
  133. package/storage.ts +182 -0
  134. package/streaming.ts +4101 -0
  135. package/swarm.ts +884 -0
  136. package/sync.ts +56 -0
  137. package/tests/agentcert.test.ts +128 -0
  138. package/tests/agentfleet.test.ts +214 -0
  139. package/tests/agentreview.test.ts +241 -0
  140. package/tests/agentstream.test.ts +335 -0
  141. package/tests/agentwork.test.ts +356 -0
  142. package/tests/apifreeze.test.ts +290 -0
  143. package/tests/apimap.test.ts +112 -0
  144. package/tests/approvalgate.test.ts +175 -0
  145. package/tests/artifactmanifest.test.ts +204 -0
  146. package/tests/attentionfeed.test.ts +163 -0
  147. package/tests/backgroundruns.test.ts +100 -0
  148. package/tests/batchscheduling.test.ts +131 -0
  149. package/tests/blackboard.test.ts +238 -0
  150. package/tests/bridge.test.ts +1088 -0
  151. package/tests/browsercoverage.test.ts +134 -0
  152. package/tests/browserpolyfills.test.ts +124 -0
  153. package/tests/build.mjs +1260 -0
  154. package/tests/clientauth.test.ts +223 -0
  155. package/tests/clitools.test.ts +578 -0
  156. package/tests/confirmgates.test.ts +190 -0
  157. package/tests/containerpack.test.ts +143 -0
  158. package/tests/controlflow.test.ts +2120 -0
  159. package/tests/coordination.test.ts +345 -0
  160. package/tests/copyscreen.test.ts +139 -0
  161. package/tests/core.test.ts +417 -0
  162. package/tests/costcert.test.ts +95 -0
  163. package/tests/crossbrowser.test.ts +115 -0
  164. package/tests/cspaudit.test.ts +79 -0
  165. package/tests/dashdone.test.ts +615 -0
  166. package/tests/datagrid.test.ts +137 -0
  167. package/tests/doccheck.test.ts +107 -0
  168. package/tests/dombatch.test.ts +109 -0
  169. package/tests/emulation.test.ts +282 -0
  170. package/tests/environments.test.ts +259 -0
  171. package/tests/evidenceviews.test.ts +88 -0
  172. package/tests/exporttools.test.ts +185 -0
  173. package/tests/firefoxprep.test.ts +134 -0
  174. package/tests/flowlibrary.test.ts +242 -0
  175. package/tests/flowrun.test.ts +303 -0
  176. package/tests/forensics.test.ts +439 -0
  177. package/tests/gateway.test.ts +939 -0
  178. package/tests/headlesslib.test.ts +171 -0
  179. package/tests/httpstream.test.ts +277 -0
  180. package/tests/immutablelog.test.ts +157 -0
  181. package/tests/inboundguard.test.ts +177 -0
  182. package/tests/lazyload.test.ts +72 -0
  183. package/tests/librarymodes.test.ts +623 -0
  184. package/tests/llm.test.ts +696 -0
  185. package/tests/manifest.test.ts +226 -0
  186. package/tests/maskinputs.test.ts +150 -0
  187. package/tests/matrixverify.test.ts +111 -0
  188. package/tests/mavenpack.test.ts +75 -0
  189. package/tests/mcpserver.test.ts +704 -0
  190. package/tests/memory.test.ts +4155 -0
  191. package/tests/memorycare.test.ts +230 -0
  192. package/tests/migrateplan.test.ts +349 -0
  193. package/tests/minimization.test.ts +414 -0
  194. package/tests/modelroute.test.ts +112 -0
  195. package/tests/multiagent.test.ts +440 -0
  196. package/tests/nativebridge.test.ts +807 -0
  197. package/tests/navigation.test.ts +284 -0
  198. package/tests/nugetpack.test.ts +83 -0
  199. package/tests/orchestration.test.ts +449 -0
  200. package/tests/originpolicy.test.ts +405 -0
  201. package/tests/outputcompare.test.ts +97 -0
  202. package/tests/package.test.ts +91 -0
  203. package/tests/pagebridge.test.ts +5909 -0
  204. package/tests/pentest.test.ts +75 -0
  205. package/tests/perfrecords.test.ts +257 -0
  206. package/tests/permdiff.test.ts +85 -0
  207. package/tests/phishguard.test.ts +128 -0
  208. package/tests/pickerviews.test.ts +155 -0
  209. package/tests/pipelines.test.ts +381 -0
  210. package/tests/planlint.test.ts +240 -0
  211. package/tests/planreview.test.ts +383 -0
  212. package/tests/platformtargets.test.ts +56 -0
  213. package/tests/policy.test.ts +8284 -0
  214. package/tests/portability.test.ts +96 -0
  215. package/tests/progress.test.ts +1036 -0
  216. package/tests/promptlibrary.test.ts +116 -0
  217. package/tests/protocol.test.ts +4793 -0
  218. package/tests/publishingpipeline.test.ts +314 -0
  219. package/tests/quickactions.test.ts +164 -0
  220. package/tests/readiness.test.ts +78 -0
  221. package/tests/recipes.test.ts +163 -0
  222. package/tests/redactshots.test.ts +216 -0
  223. package/tests/registernvidiakeys.ts +51 -0
  224. package/tests/relayserve.test.ts +304 -0
  225. package/tests/releasenotes.test.ts +276 -0
  226. package/tests/resilience.test.ts +467 -0
  227. package/tests/resourceaware.test.ts +187 -0
  228. package/tests/runbudget.test.ts +125 -0
  229. package/tests/runhistory.test.ts +299 -0
  230. package/tests/runreplay.test.ts +113 -0
  231. package/tests/runresume.test.ts +184 -0
  232. package/tests/runstate.test.ts +288 -0
  233. package/tests/runtimeadapters.test.ts +251 -0
  234. package/tests/safariskeleton.test.ts +115 -0
  235. package/tests/sandboxframe.test.ts +196 -0
  236. package/tests/sbom.test.ts +105 -0
  237. package/tests/secretvault.test.ts +188 -0
  238. package/tests/selcache.test.ts +111 -0
  239. package/tests/sessioninterface.test.ts +791 -0
  240. package/tests/sessions.test.ts +591 -0
  241. package/tests/siteprefs.test.ts +228 -0
  242. package/tests/snapshotdelta.test.ts +165 -0
  243. package/tests/statusviews.test.ts +237 -0
  244. package/tests/stepmeter.test.ts +200 -0
  245. package/tests/streamparse.test.ts +163 -0
  246. package/tests/stylepruning.test.ts +90 -0
  247. package/tests/surfaces.test.ts +282 -0
  248. package/tests/sweep.test.ts +78 -0
  249. package/tests/syncbridge.test.ts +164 -0
  250. package/tests/taskqueue.test.ts +206 -0
  251. package/tests/toolcalls.test.ts +336 -0
  252. package/tests/toolcatalog.test.ts +201 -0
  253. package/tests/torture-agent.test.ts +706 -0
  254. package/tests/torture-auth.test.ts +461 -0
  255. package/tests/torture-commands.test.ts +895 -0
  256. package/tests/torture-data.test.ts +923 -0
  257. package/tests/torture-environments.test.ts +285 -0
  258. package/tests/torture-export.test.ts +263 -0
  259. package/tests/torture-http.test.ts +1379 -0
  260. package/tests/torture-llm.test.ts +808 -0
  261. package/tests/torture-memory.test.ts +1084 -0
  262. package/tests/torture-plan.test.ts +829 -0
  263. package/tests/torture-run.test.ts +626 -0
  264. package/tests/torture-session.test.ts +928 -0
  265. package/tests/torture-swarm.test.ts +1245 -0
  266. package/tests/torture-tools.test.ts +964 -0
  267. package/tests/torture-workflow.test.ts +2354 -0
  268. package/tests/tourviews.test.ts +52 -0
  269. package/tests/transparency.test.ts +147 -0
  270. package/tests/trigger.test.ts +941 -0
  271. package/tests/v1sunset.test.ts +428 -0
  272. package/tests/virtlist.test.ts +94 -0
  273. package/tests/vision.test.ts +540 -0
  274. package/tests/vsixpack.test.ts +145 -0
  275. package/tests/webapi.test.ts +523 -0
  276. package/tests/workflow.test.ts +1785 -0
  277. package/tests/workfloweditor.test.ts +759 -0
  278. package/tests/xpipack.test.ts +128 -0
  279. package/tools.ts +734 -0
  280. package/types.ts +9908 -0
  281. package/umd.ts +9 -0
  282. package/utils.ts +249 -0
  283. package/version.ts +8 -0
  284. package/versionregistry.ts +1310 -0
  285. package/views.ts +2153 -0
  286. package/vitest.config.ts +12 -0
  287. package/web/App.tsx +78 -0
  288. package/web/README.md +47 -0
  289. package/web/capacitor.config.ts +46 -0
  290. package/web/const.ts +19 -0
  291. package/web/control.shell.tsx +66 -0
  292. package/web/dashboardpage.ts +554 -0
  293. package/web/db.ts +493 -0
  294. package/web/design.html +541 -0
  295. package/web/gatewayview/Gateway.tsx +345 -0
  296. package/web/gatewayview/config.ts +1042 -0
  297. package/web/gatewayview/definition.ts +174 -0
  298. package/web/icons.ts +15 -0
  299. package/{manifest.json → web/manifest.json} +1 -1
  300. package/web/optionspage.ts +691 -0
  301. package/web/popup.ts +1651 -0
  302. package/web/schema.prisma +176 -0
  303. package/web/sidepanel.ts +7941 -0
  304. package/web/sitemanifest.json +13 -0
  305. package/web/terminal-ui.tsx +622 -0
  306. package/web/transparencypage.ts +541 -0
  307. package/web/vite.config.ts +39 -0
  308. package/web/workspace.ts +23 -0
  309. package/workbenchmemory.ts +104 -0
  310. package/workbenchsession.ts +304 -0
  311. package/workflow.ts +4495 -0
  312. package/bridge.d.ts.map +0 -1
  313. package/bridge.js +0 -1877
  314. package/bun.d.ts.map +0 -1
  315. package/bun.js +0 -52329
  316. package/caps/background.json +0 -712
  317. package/caps/cli.json +0 -360
  318. package/caps/library.json +0 -3611
  319. package/caps/mcp.json +0 -126
  320. package/caps/pagebridge.json +0 -377
  321. package/caps/popup.json +0 -51
  322. package/caps/sidepanel.json +0 -522
  323. package/checksums.txt +0 -142
  324. package/cli.d.ts.map +0 -1
  325. package/companion.d.ts.map +0 -1
  326. package/companion.js +0 -389
  327. package/crossbrowser.d.ts.map +0 -1
  328. package/crossbrowser.js +0 -1191
  329. package/dashdone.d.ts.map +0 -1
  330. package/dashdone.js +0 -368
  331. package/deno.d.ts.map +0 -1
  332. package/deno.js +0 -52325
  333. package/devthink.umd.js +0 -52346
  334. package/fixtures/bun.ts +0 -7
  335. package/fixtures/cjs.js +0 -6
  336. package/fixtures/deno.ts +0 -6
  337. package/fixtures/example-org-pagestate.json +0 -22
  338. package/fixtures/importers/automa-workflow.json +0 -18
  339. package/fixtures/importers/selenium-side.json +0 -20
  340. package/fixtures/importers/tabular-plan.csv +0 -7
  341. package/fixtures/importers/uivision-macro.json +0 -10
  342. package/fixtures/importers/v1-plan.json +0 -13
  343. package/fixtures/mcp-client.mjs +0 -14
  344. package/fixtures/pages/checkout.html +0 -192
  345. package/fixtures/pages/dashboard.html +0 -110
  346. package/fixtures/pages/feed.html +0 -113
  347. package/fixtures/pages/product-grid.html +0 -150
  348. package/fixtures/plans/form-inventory-plan.json +0 -11
  349. package/fixtures/plans/release-notes-plan.json +0 -11
  350. package/fixtures/recipes/agentscompete.json +0 -11
  351. package/fixtures/recipes/agentsforms.json +0 -11
  352. package/fixtures/recipes/agentsmonitor.json +0 -11
  353. package/fixtures/recipes/agentsreview.json +0 -29
  354. package/fixtures/recipes/agentswarm.json +0 -11
  355. package/fixtures/recipes/fillcalendar.json +0 -12
  356. package/fixtures/recipes/fillcheckout.json +0 -13
  357. package/fixtures/recipes/filldependentdropdowns.json +0 -12
  358. package/fixtures/recipes/fillfromcsv.json +0 -13
  359. package/fixtures/recipes/fillloginform.json +0 -12
  360. package/fixtures/recipes/fillmultistepwizard.json +0 -13
  361. package/fixtures/recipes/fillregistration.json +0 -12
  362. package/fixtures/recipes/fillsearchfilters.json +0 -12
  363. package/fixtures/recipes/filltypeahead.json +0 -11
  364. package/fixtures/recipes/monitoralerts.json +0 -12
  365. package/fixtures/recipes/monitoravailability.json +0 -11
  366. package/fixtures/recipes/monitornetworkquiet.json +0 -12
  367. package/fixtures/recipes/monitorpagechanges.json +0 -11
  368. package/fixtures/recipes/monitorpricechange.json +0 -11
  369. package/fixtures/recipes/monitorschedule.json +0 -12
  370. package/fixtures/recipes/scrapedynamicprices.json +0 -13
  371. package/fixtures/recipes/scrapeimagegallery.json +0 -12
  372. package/fixtures/recipes/scrapeinfinitefeed.json +0 -13
  373. package/fixtures/recipes/scrapenestedlists.json +0 -12
  374. package/fixtures/recipes/scrapeproductgrid.json +0 -12
  375. package/fixtures/recipes/scrapereviews.json +0 -12
  376. package/fixtures/recipes/scrapesearchresults.json +0 -12
  377. package/fixtures/recipes/scrapetablepagination.json +0 -12
  378. package/fixtures/recipes/testaccessibility.json +0 -34
  379. package/fixtures/recipes/testconsoleerrors.json +0 -12
  380. package/fixtures/recipes/testdeeplinks.json +0 -12
  381. package/fixtures/recipes/testformvalidation.json +0 -13
  382. package/fixtures/recipes/testlayoutshift.json +0 -12
  383. package/fixtures/recipes/testlinkcheck.json +0 -12
  384. package/fixtures/recipes/testloadtiming.json +0 -12
  385. package/fixtures/recipes/testvisualdiff.json +0 -12
  386. package/fixtures/workflows/changelog-digest-workflow.json +0 -13
  387. package/fixtures/workflows/form-survey-workflow.json +0 -13
  388. package/gallery.json +0 -706
  389. package/hardening.d.ts.map +0 -1
  390. package/hardening.js +0 -188
  391. package/headless.d.ts.map +0 -1
  392. package/headless.js +0 -11522
  393. package/http.d.ts.map +0 -1
  394. package/http.js +0 -2165
  395. package/index.cjs +0 -54682
  396. package/index.d.ts.map +0 -1
  397. package/index.js +0 -52310
  398. package/index.neutral.js +0 -46343
  399. package/mcp.d.ts.map +0 -1
  400. package/mcp.js +0 -20515
  401. package/memory.d.ts.map +0 -1
  402. package/nativehost.template.json +0 -10
  403. package/node.cjs +0 -54686
  404. package/node.d.ts.map +0 -1
  405. package/pack.d.ts.map +0 -1
  406. package/pack.js +0 -805
  407. package/policy.d.ts.map +0 -1
  408. package/progress.d.ts.map +0 -1
  409. package/progress.js +0 -645
  410. package/protocol.d.ts.map +0 -1
  411. package/protocol.js +0 -8334
  412. package/schemas/audit.schema.json +0 -226
  413. package/schemas/capability.schema.json +0 -113
  414. package/schemas/envelope.schema.json +0 -162
  415. package/schemas/memory.schema.json +0 -51
  416. package/schemas/observation.schema.json +0 -113
  417. package/schemas/plan.schema.json +0 -208
  418. package/schemas/progress.schema.json +0 -126
  419. package/schemas/proposal.schema.json +0 -68
  420. package/schemas/session.schema.json +0 -82
  421. package/schemas/tool.schema.json +0 -94
  422. package/server.d.ts.map +0 -1
  423. package/server.js +0 -28877
  424. package/umd-example.html +0 -18
  425. package/umd.d.ts.map +0 -1
  426. /package/{bun.d.ts → dist/bun.d.ts} +0 -0
  427. /package/{cli.d.ts → dist/cli.d.ts} +0 -0
  428. /package/{companion.d.ts → dist/companion.d.ts} +0 -0
  429. /package/{crossbrowser.d.ts → dist/crossbrowser.d.ts} +0 -0
  430. /package/{dashdone.d.ts → dist/dashdone.d.ts} +0 -0
  431. /package/{deno.d.ts → dist/deno.d.ts} +0 -0
  432. /package/{hardening.d.ts → dist/hardening.d.ts} +0 -0
  433. /package/{headless.d.ts → dist/headless.d.ts} +0 -0
  434. /package/{http.d.ts → dist/http.d.ts} +0 -0
  435. /package/{index.d.ts → dist/index.d.ts} +0 -0
  436. /package/{mcp.d.ts → dist/mcp.d.ts} +0 -0
  437. /package/{memory.d.ts → dist/memory.d.ts} +0 -0
  438. /package/{node.d.ts → dist/node.d.ts} +0 -0
  439. /package/{pack.d.ts → dist/pack.d.ts} +0 -0
  440. /package/{policy.d.ts → dist/policy.d.ts} +0 -0
  441. /package/{progress.d.ts → dist/progress.d.ts} +0 -0
  442. /package/{protocol.d.ts → dist/protocol.d.ts} +0 -0
  443. /package/{server.d.ts → dist/server.d.ts} +0 -0
  444. /package/{umd.d.ts → dist/umd.d.ts} +0 -0
@@ -0,0 +1,395 @@
1
+ /**
2
+ * @fileoverview project.ts - Cloud Code Assist Project ID discovery (merged v2.1.0 + v1 uniques)
3
+ * @module auth/project
4
+ * @description
5
+ * Merged module. Merge base is project(2).ts (v2.1.0, "bypass total" style Gemini CLI).
6
+ * The v1 lineage (project.ts / project(1).ts) contributed constants and
7
+ * utility ports; its parallel V1-suffixed flow was dead and is gone (see the
8
+ * v2.1.16 note below).
9
+ *
10
+ * v2.1.0 base (kept canonical):
11
+ * - loadCodeAssist(opts) / onboardUser(opts) / fetchAvailableModels(opts) / resolveProjectId(opts)
12
+ * - IdeType ("ANTIGRAVITY" / "IDE_UNSPECIFIED"), defaultMetadata(ideType?)
13
+ * - MODELS_2026_BASE / MODELS_2026 / MODELS_2026_ANTIGRAVITY / MODELS_2026_ALL split
14
+ * - buildDefaultUserAgent(version?), buildAntagravityHeaders, ProjectDiscoveryError
15
+ * - SHA-256 token-hash cache (getCachedProjectId/setCachedProjectId/getCacheStats)
16
+ *
17
+ * Ported v1 uniques (still live):
18
+ * - OAUTH_CLIENT_ID / OAUTH_CLIENT_SECRET / GEMINI_CLI_USER_AGENT / GOOGLE_API_NODE_VERSION
19
+ * - X_GOOG_API_CLIENT / CLIENT_METADATA_STRING / CLIENT_METADATA
20
+ * - ENDPOINT_BASES (incl. staging) / EndpointName / EndpointDef / CODE_ASSIST_PATHS
21
+ * - Account / FetchModelsResponse / ResolvedProject types
22
+ * - isLikelyExpiredToken(), getPlatformInfo()
23
+ *
24
+ * v2.1.16 dead-code cleanup: the dead v1 legacy flow (loadCodeAssistV1,
25
+ * onboardUserV1, fetchAvailableModelsV1, resolveProjectIdV1, the legacy
26
+ * projectCache cluster and buildGeminiHeaders) had zero consumers and was
27
+ * deleted; the v2 flow above is the single project-discovery surface.
28
+ *
29
+ * Architecture: library-first, root-first, direct cloudcode-pa (no localhost proxy),
30
+ * only node:* builtins + global fetch (Node >= 18). Timeouts 10s per call,
31
+ * retry on 403/404/408/429/5xx. In-memory caches keyed by truncated token hashes.
32
+ *
33
+ * v2.1.15 Phase A: this module is THE single owner of project discovery.
34
+ * The project-resolution block that used to live in models.ts
35
+ * (ProjectDiscoveryError 4-arg form, resolveProjectIdAsGeminiCliBypass +
36
+ * its option/result types, fetchAvailableModelsDirect) was absorbed here;
37
+ * every model-identification family it consumed is imported from models.ts.
38
+ * Canonical-value decisions for the shared near-copy symbols:
39
+ * - ProjectDiscoveryError: merged 4-arg constructor — the optional fourth
40
+ * argument overrides the status-derived default, so both lineages keep
41
+ * their exact historical retryable semantics.
42
+ * - loadCodeAssist / onboardUser / resolveProjectId / caches: the project.ts
43
+ * v2.1.0-lineage implementations stay canonical (most complete supersets —
44
+ * ideType plumbing with the ANTIGRAVITY→GEMINI retry, tier-id guard, LRO
45
+ * pollOperation, richer extractors); the former models.ts variants (fixed
46
+ * IDE_UNSPECIFIED metadata + jitter, no retry) had zero external consumers
47
+ * and were not carried — documented in the Phase A worklog.
48
+ * - resolveProjectIdAsGeminiCliBypass / fetchAvailableModelsDirect: absorbed
49
+ * from the models.ts block, rewired onto the canonical local primitives
50
+ * (positional-arg headers/fetch helpers) with their flows unchanged.
51
+ *
52
+ * @version 2.1.2
53
+ * @license MIT
54
+ */
55
+ import { ANTIGRAVITY_VERSION_FALLBACK, ANTIGRAVITY_USER_AGENT_FALLBACK, FALLBACK_PROJECT_ID, FETCH_TIMEOUT_MS } from "./constants.js";
56
+ import { fetchWithTimeout, fnv1a32, isRetryable } from "./core.js";
57
+ import { buildAntagravityHeaders } from "./fingerprint.js";
58
+ import { CODE_ASSIST_ENDPOINTS, ENDPOINT_ORDER, MODELS_2026_ALL, MODELS_2026_ANTIGRAVITY, MODELS_2026_BASE, MODELS_2026_LEGACY } from "./models.js";
59
+ import type { Model2026 } from "./models.js";
60
+ import type { Account } from "./accounts.js";
61
+ export type { Account };
62
+ export { ENDPOINT_ORDER, FALLBACK_PROJECT_ID, ANTIGRAVITY_VERSION_FALLBACK, ANTIGRAVITY_USER_AGENT_FALLBACK, CODE_ASSIST_ENDPOINTS, FETCH_TIMEOUT_MS, };
63
+ /** Builds the dynamic Antigravity User-Agent: antigravity/{ver} {os}/{arch}. */
64
+ declare function buildDefaultUserAgent(version?: string): string;
65
+ export declare const GOOGLE_API_NODE_VERSION: "22.19.0";
66
+ /**
67
+ * v1 ordered endpoint chain. PROD/DAILY derive from the constants.js owner
68
+ * values; SANDBOX maps to the staging host and PREPROD is an extra hardening
69
+ * entry observed in telemetry — both genuinely distinct values with no
70
+ * constants.js equivalent, kept local (v2.1.16 dedup note).
71
+ */
72
+ export declare const ENDPOINT_BASES: readonly [{
73
+ readonly name: "PROD";
74
+ readonly base: "https://cloudcode-pa.googleapis.com";
75
+ }, {
76
+ readonly name: "DAILY";
77
+ readonly base: "https://daily-cloudcode-pa.googleapis.com";
78
+ }, {
79
+ readonly name: "SANDBOX";
80
+ readonly base: "https://staging-cloudcode-pa.googleapis.com";
81
+ }, {
82
+ readonly name: "PREPROD";
83
+ readonly base: "https://preprod-cloudcode-pa.googleapis.com";
84
+ }];
85
+ export type EndpointName = (typeof ENDPOINT_BASES)[number]["name"];
86
+ export interface EndpointDef {
87
+ name: EndpointName;
88
+ base: string;
89
+ }
90
+ /**
91
+ * v1 method-path table. v2.1.16 dedup: every path derives from the
92
+ * constants.js CODE_ASSIST_PATH_MAP owner (identical values).
93
+ */
94
+ export declare const CODE_ASSIST_PATHS: {
95
+ readonly LOAD: "/v1internal:loadCodeAssist";
96
+ readonly ONBOARD: "/v1internal:onboardUser";
97
+ readonly FETCH_MODELS: "/v1internal:fetchAvailableModels";
98
+ };
99
+ /**
100
+ * Canonical model list up to 2026-08-25. Best-effort validated via
101
+ * fetchAvailableModels without failing when rollout has not reached
102
+ * DAILY/SANDBOX yet.
103
+ */
104
+ export { MODELS_2026_BASE, MODELS_2026_ANTIGRAVITY, MODELS_2026_ALL, MODELS_2026_LEGACY };
105
+ /**
106
+ * Historical project-module alias of {@link MODELS_2026_BASE} (the former
107
+ * local `MODELS_2026 = MODELS_2026_BASE` binding).
108
+ */
109
+ export { MODELS_2026_BASE as MODELS_2026 };
110
+ /** Union type of the v1 static fallback list ids. */
111
+ export type { Model2026 };
112
+ export type IdeType = "ANTIGRAVITY" | "IDE_UNSPECIFIED";
113
+ export interface CodeAssistMetadata {
114
+ ideType: IdeType;
115
+ platform: "PLATFORM_UNSPECIFIED";
116
+ pluginType: "GEMINI";
117
+ }
118
+ export interface LoadCodeAssistResponse {
119
+ cloudaicompanionProject?: unknown;
120
+ cloudaicompanionProjectId?: unknown;
121
+ projectId?: unknown;
122
+ currentTier?: unknown;
123
+ [k: string]: unknown;
124
+ }
125
+ export interface OnboardUserResponse {
126
+ done?: boolean;
127
+ name?: string;
128
+ response?: {
129
+ cloudaicompanionProject?: unknown;
130
+ projectId?: unknown;
131
+ };
132
+ cloudaicompanionProject?: unknown;
133
+ [k: string]: unknown;
134
+ }
135
+ export interface AvailableModel {
136
+ name: string;
137
+ displayName?: string;
138
+ supportedMethods?: string[];
139
+ }
140
+ export interface FetchAvailableModelsResponse {
141
+ models?: AvailableModel[];
142
+ availableModels?: AvailableModel[];
143
+ [k: string]: unknown;
144
+ }
145
+ /** v1 Account shape with mutable metadata persisted by callers. */
146
+ export interface FetchModelsResponse {
147
+ models?: Array<string | {
148
+ name: string;
149
+ displayName?: string;
150
+ id?: string;
151
+ }>;
152
+ availableModels?: Array<string | {
153
+ name: string;
154
+ }>;
155
+ modelList?: string[];
156
+ _raw?: unknown;
157
+ }
158
+ export interface ResolvedProject {
159
+ projectId: string;
160
+ source: EndpointName | "cache" | "metadata" | "fallback";
161
+ fromCache: boolean;
162
+ endpointBase?: string;
163
+ models?: string[];
164
+ }
165
+ interface CacheEntry {
166
+ projectId: string;
167
+ timestamp: number;
168
+ email?: string | undefined;
169
+ }
170
+ export declare function getCachedProjectId(accessToken: string): string | null;
171
+ export declare function setCachedProjectId(accessToken: string, projectId: string, email?: string): void;
172
+ export declare function clearProjectIdCache(): void;
173
+ export declare function getCacheStats(): {
174
+ size: number;
175
+ entries: Array<{
176
+ email?: string | undefined;
177
+ ageMs: number;
178
+ }>;
179
+ };
180
+ /**
181
+ * Error thrown by every project-discovery call. v2.1.15 Phase A merge of the
182
+ * project.ts lineage (3-arg constructor, retryable derived from the status
183
+ * via isRetryable) and the models.ts lineage (4-arg constructor, explicit
184
+ * retryable): the optional fourth argument overrides the status-derived
185
+ * default, so both historical call styles keep their exact semantics.
186
+ */
187
+ export declare class ProjectDiscoveryError extends Error {
188
+ status?: number | undefined;
189
+ endpoint?: string | undefined;
190
+ retryable: boolean;
191
+ constructor(message: string, status?: number, endpoint?: string, retryable?: boolean);
192
+ }
193
+ /**
194
+ * Fetch with 10s timeout through AbortController. Merges an external signal
195
+ * so caller aborts propagate. Throws ProjectDiscoveryError (status 408) on
196
+ * timeout so the cascade can retry.
197
+ */
198
+ /**
199
+ * Local heuristic only: reports whether a token looks expired
200
+ * (does not replace real validation via tokeninfo).
201
+ */
202
+ export declare function isLikelyExpiredToken(token: string): boolean;
203
+ /** Platform tuple helper for logging/debug - uses only node:os. */
204
+ export declare function getPlatformInfo(): {
205
+ platform: string;
206
+ arch: string;
207
+ release: string;
208
+ hostname: string;
209
+ };
210
+ export interface LoadCodeAssistOptions {
211
+ accessToken: string;
212
+ endpoint: string;
213
+ projectId?: string | undefined;
214
+ userAgent?: string | undefined;
215
+ ideType?: IdeType;
216
+ }
217
+ /**
218
+ * loadCodeAssist implemented exactly like Gemini CLI:
219
+ * - POST {endpoint}/v1internal:loadCodeAssist
220
+ * - Header: Authorization Bearer + User-Agent antigravity/{ver} {os}/{arch}
221
+ * - Body: {metadata {ideType ANTIGRAVITY|GEMINI, platform PLATFORM_UNSPECIFIED, pluginType GEMINI}}
222
+ * - No project ID required: when projectId is absent only metadata is sent (bypass)
223
+ * - When provided and valid, sends cloudaicompanionProject for validation (cache compat)
224
+ * - On 403/404 with ideType ANTIGRAVITY, retries automatically as GEMINI
225
+ * (bypass observed in pi-antigravity-auth)
226
+ * - Returns the projectId string or null indicating onboarding is required
227
+ */
228
+ export declare function loadCodeAssist(opts: LoadCodeAssistOptions): Promise<string | null>;
229
+ export interface OnboardUserOptions {
230
+ accessToken: string;
231
+ endpoint: string;
232
+ tierId?: "free-tier" | "standard-tier" | "FREE" | "TRIAL" | "STANDARD";
233
+ userAgent?: string | undefined;
234
+ ideType?: IdeType;
235
+ }
236
+ /** onboardUser - FREE tier with LRO pollOperation backoff 500ms-8s, 5 attempts. */
237
+ export declare function onboardUser(opts: OnboardUserOptions): Promise<string | null>;
238
+ export interface FetchModelsOptions {
239
+ accessToken: string;
240
+ endpoint: string;
241
+ projectId: string;
242
+ userAgent?: string;
243
+ }
244
+ export declare function fetchAvailableModels(opts: FetchModelsOptions): Promise<AvailableModel[]>;
245
+ export interface AccountMetadataSaver {
246
+ (projectId: string): Promise<void> | void;
247
+ }
248
+ export interface ResolveProjectIdOptions {
249
+ accessToken: string;
250
+ cachedProjectId?: string | undefined;
251
+ email?: string | undefined;
252
+ metadataSaver?: AccountMetadataSaver | undefined;
253
+ userAgent?: string | undefined;
254
+ endpoints?: readonly string[];
255
+ includeAutopush?: boolean;
256
+ /** When true (default), tries the discovered project before the blinded fallback */
257
+ bypass?: boolean;
258
+ /** Preferred ideType - ANTIGRAVITY first with automatic GEMINI fallback */
259
+ ideType?: IdeType;
260
+ }
261
+ export interface ResolveResult {
262
+ projectId: string;
263
+ fromCache: boolean;
264
+ endpointUsed?: string | undefined;
265
+ isFallback: boolean;
266
+ modelsChecked?: number | undefined;
267
+ ideTypeUsed?: IdeType;
268
+ }
269
+ /**
270
+ * Resolves the project id with full Gemini CLI-style bypass.
271
+ * Observer flow:
272
+ * 1. In-memory Map cache (token hash) - avoids multi-account round-trips
273
+ * 2. When cachedProjectId is persisted on disk, validates it via loadCodeAssist
274
+ * on each endpoint (compat with AccountManager V3 ~/.config/opencode/
275
+ * antigravity-accounts.json chmod 600)
276
+ * 3. Pure bypass: loadCodeAssist WITHOUT projectId -> {metadata {ANTIGRAVITY|GEMINI,
277
+ * PLATFORM_UNSPECIFIED, GEMINI}} -> returns discovered cloudaicompanionProject
278
+ * without requiring a user project
279
+ * 4. When load returns null or 403/404 -> onboardUser {tierId FREE, metadata} ->
280
+ * LRO pollOperation backoff 500ms-8s 5 attempts -> load again
281
+ * 5. Best-effort validation via fetchAvailableModels (does not fail on 403)
282
+ * 6. Saves cache + metadataSaver for persistence
283
+ * 7. If every endpoint fails with retryable errors, falls back to
284
+ * rising-fact-p41fc with a warning; bypass prefers the discovered project.
285
+ */
286
+ export declare function resolveProjectId(opts: ResolveProjectIdOptions): Promise<ResolveResult>;
287
+ /** Convenience wrapper resolving and saving in one shot. */
288
+ export declare function resolveAndSaveProjectId(accessToken: string, account: {
289
+ email?: string;
290
+ projectId?: string;
291
+ save?: AccountMetadataSaver;
292
+ }, opts?: Omit<ResolveProjectIdOptions, "accessToken" | "cachedProjectId" | "email" | "metadataSaver">): Promise<ResolveResult>;
293
+ export type ResolveProjectIdBypassOptions = {
294
+ accessToken: string;
295
+ cachedProjectId?: string;
296
+ email?: string;
297
+ userAgent?: string;
298
+ endpointOverrides?: string[];
299
+ isGeminiCliModel?: boolean;
300
+ metadataSaver?: (projectId: string) => Promise<void> | void;
301
+ };
302
+ export type ResolveProjectIdBypassResult = {
303
+ projectId: string;
304
+ fromCache: boolean;
305
+ endpointUsed?: string | undefined;
306
+ isFallback: boolean;
307
+ attempts: string[];
308
+ };
309
+ /**
310
+ * Resolves the project id with the pure Gemini CLI bypass flow (the former
311
+ * models.ts orchestrator): cache validation first, then a cachedProjectId
312
+ * direct-load sweep, then the discovery cascade (load without project ->
313
+ * onboard -> load again) over the pool-appropriate endpoint order, with the
314
+ * rising-fact-p41fc blinded fallback last.
315
+ */
316
+ export declare function resolveProjectIdAsGeminiCliBypass(opts: ResolveProjectIdBypassOptions): Promise<ResolveProjectIdBypassResult>;
317
+ /**
318
+ * fetchAvailableModels direct on cloudcode-pa without localhost v1 proxy
319
+ * (the former models.ts implementation): POSTs
320
+ * /v1internal:fetchAvailableModels with the resolved project and normalizes
321
+ * the varied response shapes into a plain id/name string list.
322
+ */
323
+ export declare function fetchAvailableModelsDirect(opts: {
324
+ accessToken: string;
325
+ endpoint: string;
326
+ projectId: string;
327
+ userAgent?: string;
328
+ }): Promise<string[]>;
329
+ export declare const projectIdCacheForTesting: Map<string, CacheEntry>;
330
+ declare const projectModule: {
331
+ CODE_ASSIST_ENDPOINTS: {
332
+ readonly PROD: "https://cloudcode-pa.googleapis.com";
333
+ readonly DAILY: "https://daily-cloudcode-pa.googleapis.com";
334
+ readonly SANDBOX: "https://daily-cloudcode-pa.sandbox.googleapis.com";
335
+ readonly AUTOPUSH: "https://autopush-cloudcode-pa.sandbox.googleapis.com";
336
+ };
337
+ ENDPOINT_ORDER: readonly string[];
338
+ FETCH_TIMEOUT_MS: 10000;
339
+ FALLBACK_PROJECT_ID: "rising-fact-p41fc";
340
+ MODELS_2026: readonly ["gemini-3.6-flash-high", "gemini-3.6-flash-medium", "gemini-3.6-flash-low", "gemini-3.6-flash-tiered", "gemini-3.6-flash", "gemini-3.5-flash-high", "gemini-3.5-flash-medium", "gemini-3.5-flash", "gemini-3.5-flash-lite", "gemini-3.5-flash-lite-preview", "gemini-3.1-pro-high", "gemini-3.1-pro-low", "gemini-3.1-pro", "gemini-3.1-flash-image", "gemini-3.1-flash-lite", "gemini-3-flash", "gemini-3-pro", "gemini-3-deep-think", "gemini-2.5-pro", "gemini-2.5-flash", "gemini-2.5-flash-lite", "claude-sonnet-4-6-thinking", "claude-opus-4-6-thinking", "claude-sonnet-4-5", "claude-opus-4-5-thinking", "gpt-oss-120b-medium", "gpt-oss-120b-high", "gemini-3-pro-preview", "gemini-3-flash-preview", "gemini-3.1-pro-preview", "gemini-3.1-pro-preview-customtools"];
341
+ MODELS_2026_BASE: readonly ["gemini-3.6-flash-high", "gemini-3.6-flash-medium", "gemini-3.6-flash-low", "gemini-3.6-flash-tiered", "gemini-3.6-flash", "gemini-3.5-flash-high", "gemini-3.5-flash-medium", "gemini-3.5-flash", "gemini-3.5-flash-lite", "gemini-3.5-flash-lite-preview", "gemini-3.1-pro-high", "gemini-3.1-pro-low", "gemini-3.1-pro", "gemini-3.1-flash-image", "gemini-3.1-flash-lite", "gemini-3-flash", "gemini-3-pro", "gemini-3-deep-think", "gemini-2.5-pro", "gemini-2.5-flash", "gemini-2.5-flash-lite", "claude-sonnet-4-6-thinking", "claude-opus-4-6-thinking", "claude-sonnet-4-5", "claude-opus-4-5-thinking", "gpt-oss-120b-medium", "gpt-oss-120b-high", "gemini-3-pro-preview", "gemini-3-flash-preview", "gemini-3.1-pro-preview", "gemini-3.1-pro-preview-customtools"];
342
+ MODELS_2026_ANTIGRAVITY: readonly [...("antigravity-claude-opus-4-5-thinking" | "antigravity-claude-opus-4-6-thinking" | "antigravity-claude-sonnet-4-5" | "antigravity-claude-sonnet-4-6-thinking" | "antigravity-gemini-2.5-flash" | "antigravity-gemini-2.5-flash-lite" | "antigravity-gemini-2.5-pro" | "antigravity-gemini-3-deep-think" | "antigravity-gemini-3-flash" | "antigravity-gemini-3-flash-preview" | "antigravity-gemini-3-pro" | "antigravity-gemini-3-pro-preview" | "antigravity-gemini-3.1-flash-image" | "antigravity-gemini-3.1-flash-lite" | "antigravity-gemini-3.1-pro" | "antigravity-gemini-3.1-pro-high" | "antigravity-gemini-3.1-pro-low" | "antigravity-gemini-3.1-pro-preview" | "antigravity-gemini-3.1-pro-preview-customtools" | "antigravity-gemini-3.5-flash" | "antigravity-gemini-3.5-flash-high" | "antigravity-gemini-3.5-flash-lite" | "antigravity-gemini-3.5-flash-lite-preview" | "antigravity-gemini-3.5-flash-medium" | "antigravity-gemini-3.6-flash" | "antigravity-gemini-3.6-flash-high" | "antigravity-gemini-3.6-flash-low" | "antigravity-gemini-3.6-flash-medium" | "antigravity-gemini-3.6-flash-tiered" | "antigravity-gpt-oss-120b-high" | "antigravity-gpt-oss-120b-medium")[], "antigravity-gemini-3-pro", "antigravity-gemini-3-flash", "antigravity-gemini-3.1-pro", "antigravity-claude-opus-4-6-thinking", "antigravity-claude-sonnet-4-6", "antigravity-claude-sonnet-4-5", "antigravity-claude-opus-4-5-thinking"];
343
+ MODELS_2026_ALL: readonly ["gemini-3.6-flash-high", "gemini-3.6-flash-medium", "gemini-3.6-flash-low", "gemini-3.6-flash-tiered", "gemini-3.6-flash", "gemini-3.5-flash-high", "gemini-3.5-flash-medium", "gemini-3.5-flash", "gemini-3.5-flash-lite", "gemini-3.5-flash-lite-preview", "gemini-3.1-pro-high", "gemini-3.1-pro-low", "gemini-3.1-pro", "gemini-3.1-flash-image", "gemini-3.1-flash-lite", "gemini-3-flash", "gemini-3-pro", "gemini-3-deep-think", "gemini-2.5-pro", "gemini-2.5-flash", "gemini-2.5-flash-lite", "claude-sonnet-4-6-thinking", "claude-opus-4-6-thinking", "claude-sonnet-4-5", "claude-opus-4-5-thinking", "gpt-oss-120b-medium", "gpt-oss-120b-high", "gemini-3-pro-preview", "gemini-3-flash-preview", "gemini-3.1-pro-preview", "gemini-3.1-pro-preview-customtools", ...("antigravity-claude-opus-4-5-thinking" | "antigravity-claude-opus-4-6-thinking" | "antigravity-claude-sonnet-4-5" | "antigravity-claude-sonnet-4-6-thinking" | "antigravity-gemini-2.5-flash" | "antigravity-gemini-2.5-flash-lite" | "antigravity-gemini-2.5-pro" | "antigravity-gemini-3-deep-think" | "antigravity-gemini-3-flash" | "antigravity-gemini-3-flash-preview" | "antigravity-gemini-3-pro" | "antigravity-gemini-3-pro-preview" | "antigravity-gemini-3.1-flash-image" | "antigravity-gemini-3.1-flash-lite" | "antigravity-gemini-3.1-pro" | "antigravity-gemini-3.1-pro-high" | "antigravity-gemini-3.1-pro-low" | "antigravity-gemini-3.1-pro-preview" | "antigravity-gemini-3.1-pro-preview-customtools" | "antigravity-gemini-3.5-flash" | "antigravity-gemini-3.5-flash-high" | "antigravity-gemini-3.5-flash-lite" | "antigravity-gemini-3.5-flash-lite-preview" | "antigravity-gemini-3.5-flash-medium" | "antigravity-gemini-3.6-flash" | "antigravity-gemini-3.6-flash-high" | "antigravity-gemini-3.6-flash-low" | "antigravity-gemini-3.6-flash-medium" | "antigravity-gemini-3.6-flash-tiered" | "antigravity-gpt-oss-120b-high" | "antigravity-gpt-oss-120b-medium")[], "antigravity-gemini-3-pro", "antigravity-gemini-3-flash", "antigravity-gemini-3.1-pro", "antigravity-claude-opus-4-6-thinking", "antigravity-claude-sonnet-4-6", "antigravity-claude-sonnet-4-5", "antigravity-claude-opus-4-5-thinking"];
344
+ MODELS_2026_LEGACY: readonly ["antigravity-gemini-3-pro", "antigravity-gemini-3.1-pro", "antigravity-gemini-3-flash", "antigravity-claude-sonnet-4-6", "antigravity-claude-opus-4-6-thinking", "gemini-2.5-flash", "gemini-2.5-pro", "gemini-3-flash-preview", "gemini-3-pro-preview", "gemini-3.1-pro-preview", "gemini-3.1-pro-preview-customtools"];
345
+ isRetryable: typeof isRetryable;
346
+ buildAntagravityHeaders: typeof buildAntagravityHeaders;
347
+ fetchWithTimeout: typeof fetchWithTimeout;
348
+ loadCodeAssist: typeof loadCodeAssist;
349
+ onboardUser: typeof onboardUser;
350
+ fetchAvailableModels: typeof fetchAvailableModels;
351
+ resolveProjectId: typeof resolveProjectId;
352
+ resolveAndSaveProjectId: typeof resolveAndSaveProjectId;
353
+ resolveProjectIdAsGeminiCliBypass: typeof resolveProjectIdAsGeminiCliBypass;
354
+ fetchAvailableModelsDirect: typeof fetchAvailableModelsDirect;
355
+ getCachedProjectId: typeof getCachedProjectId;
356
+ setCachedProjectId: typeof setCachedProjectId;
357
+ clearProjectIdCache: typeof clearProjectIdCache;
358
+ getCacheStats: typeof getCacheStats;
359
+ fnv1a32: typeof fnv1a32;
360
+ ProjectDiscoveryError: typeof ProjectDiscoveryError;
361
+ buildDefaultUserAgent: typeof buildDefaultUserAgent;
362
+ OAUTH_CLIENT_ID: string;
363
+ OAUTH_CLIENT_SECRET: string;
364
+ GEMINI_CLI_USER_AGENT: "GeminiCLI/0.57.0";
365
+ GOOGLE_API_NODE_VERSION: "22.19.0";
366
+ X_GOOG_API_CLIENT: "gl-node/22.19.0";
367
+ CLIENT_METADATA: {
368
+ readonly ideType: "IDE_UNSPECIFIED";
369
+ readonly platform: "PLATFORM_UNSPECIFIED";
370
+ readonly pluginType: "GEMINI";
371
+ };
372
+ CLIENT_METADATA_STRING: "ideType=IDE_UNSPECIFIED,platform=PLATFORM_UNSPECIFIED,pluginType=GEMINI";
373
+ ENDPOINT_BASES: readonly [{
374
+ readonly name: "PROD";
375
+ readonly base: "https://cloudcode-pa.googleapis.com";
376
+ }, {
377
+ readonly name: "DAILY";
378
+ readonly base: "https://daily-cloudcode-pa.googleapis.com";
379
+ }, {
380
+ readonly name: "SANDBOX";
381
+ readonly base: "https://staging-cloudcode-pa.googleapis.com";
382
+ }, {
383
+ readonly name: "PREPROD";
384
+ readonly base: "https://preprod-cloudcode-pa.googleapis.com";
385
+ }];
386
+ CODE_ASSIST_PATHS: {
387
+ readonly LOAD: "/v1internal:loadCodeAssist";
388
+ readonly ONBOARD: "/v1internal:onboardUser";
389
+ readonly FETCH_MODELS: "/v1internal:fetchAvailableModels";
390
+ };
391
+ isLikelyExpiredToken: typeof isLikelyExpiredToken;
392
+ getPlatformInfo: typeof getPlatformInfo;
393
+ };
394
+ export default projectModule;
395
+ //# sourceMappingURL=project.d.ts.map
@@ -0,0 +1,37 @@
1
+ import { type DevThinkConfig, type DevThinkPaths } from "./config.js";
2
+ import { type ProviderProtocol } from "./compatibility.js";
3
+ import { type ChatEvent } from "./streaming.js";
4
+ export type ChatRole = "system" | "user" | "assistant";
5
+ export type ChatMessage = {
6
+ role: ChatRole;
7
+ content: string;
8
+ };
9
+ export type ChatRequest = {
10
+ provider: string;
11
+ model: string;
12
+ messages: ChatMessage[];
13
+ temperature?: number | undefined;
14
+ maxTokens?: number | undefined;
15
+ signal?: AbortSignal | undefined;
16
+ };
17
+ export type ModelInfo = {
18
+ id: string;
19
+ provider: string;
20
+ contextWindow?: number | undefined;
21
+ supportsStreaming: boolean;
22
+ };
23
+ type ProviderDefinition = {
24
+ id: string;
25
+ baseUrl?: string;
26
+ protocol: ProviderProtocol;
27
+ env: string;
28
+ };
29
+ export declare function listProviders(): ProviderDefinition[];
30
+ export declare function resolveProvider(provider: string, config: DevThinkConfig, paths?: DevThinkPaths): ProviderDefinition & {
31
+ baseUrl: string;
32
+ credential: string;
33
+ };
34
+ export declare function streamChat(request: ChatRequest, config: DevThinkConfig, paths?: DevThinkPaths): Promise<AsyncGenerator<ChatEvent>>;
35
+ export declare function listModels(providerName: string, config: DevThinkConfig, paths?: DevThinkPaths): Promise<ModelInfo[]>;
36
+ export {};
37
+ //# sourceMappingURL=providers.d.ts.map