@eco-incorp/sauce 0.99.4 → 0.99.5

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 (1302) hide show
  1. package/README.md +105 -63
  2. package/actions/action-program.schema.json +1810 -0
  3. package/actions/dist/abis.d.ts +167 -0
  4. package/actions/dist/abis.d.ts.map +1 -0
  5. package/actions/dist/abis.js +215 -0
  6. package/actions/dist/compile.d.ts +15 -8
  7. package/actions/dist/compile.d.ts.map +1 -1
  8. package/actions/dist/compile.js +11 -33
  9. package/actions/dist/compose.d.ts +46 -0
  10. package/actions/dist/compose.d.ts.map +1 -0
  11. package/actions/dist/compose.js +118 -0
  12. package/actions/dist/emit.d.ts +0 -35
  13. package/actions/dist/emit.d.ts.map +1 -1
  14. package/actions/dist/emit.js +15 -46
  15. package/actions/dist/index.d.ts +11 -8
  16. package/actions/dist/index.d.ts.map +1 -1
  17. package/actions/dist/index.js +6 -4
  18. package/actions/dist/program.d.ts +23 -0
  19. package/actions/dist/program.d.ts.map +1 -0
  20. package/actions/dist/program.js +358 -0
  21. package/actions/dist/registry.d.ts +37 -0
  22. package/actions/dist/registry.d.ts.map +1 -0
  23. package/actions/dist/registry.js +36 -0
  24. package/actions/dist/schema.d.ts +6 -0
  25. package/actions/dist/schema.d.ts.map +1 -0
  26. package/actions/dist/schema.js +166 -0
  27. package/actions/dist/semantics.d.ts +18 -0
  28. package/actions/dist/semantics.d.ts.map +1 -0
  29. package/actions/dist/semantics.js +164 -0
  30. package/actions/dist/spec.d.ts +97 -0
  31. package/actions/dist/spec.d.ts.map +1 -0
  32. package/actions/dist/spec.js +323 -0
  33. package/actions/dist/split-swap.d.ts +35 -0
  34. package/actions/dist/split-swap.d.ts.map +1 -0
  35. package/actions/dist/split-swap.js +175 -0
  36. package/actions/dist/to-quote.d.ts +32 -56
  37. package/actions/dist/to-quote.d.ts.map +1 -1
  38. package/actions/dist/to-quote.js +134 -141
  39. package/actions/dist/to-sauce.d.ts +48 -32
  40. package/actions/dist/to-sauce.d.ts.map +1 -1
  41. package/actions/dist/to-sauce.js +691 -753
  42. package/actions/dist/types.d.ts +227 -335
  43. package/actions/dist/types.d.ts.map +1 -1
  44. package/actions/dist/types.js +12 -3
  45. package/dev-tools/README.md +9 -9
  46. package/dev-tools/artifacts/ISauceRouter.json +1 -1
  47. package/dev-tools/artifacts/Router.json +1 -1
  48. package/dev-tools/scripts/start-fork.sh +1 -1
  49. package/dev-tools/scripts/start-local.sh +5 -1
  50. package/dev-tools/src/svm-local.ts +23 -13
  51. package/docs/README.md +45 -34
  52. package/docs/api/README.md +37 -29
  53. package/docs/api/compiler.md +116 -55
  54. package/docs/api/coverage.md +99 -48
  55. package/docs/api/routes.md +51 -22
  56. package/docs/concepts/architecture.md +83 -116
  57. package/docs/concepts/saucescript.md +27 -23
  58. package/docs/examples/README.md +18 -10
  59. package/docs/examples/action-program.ts +75 -0
  60. package/docs/examples/cross-chain-cascade.sauce.ts +21 -0
  61. package/docs/examples/cross-chain-cascade.ts +43 -0
  62. package/docs/examples/cross-chain-intent.sauce.ts +23 -0
  63. package/docs/examples/cross-chain-intent.ts +49 -0
  64. package/docs/examples/first-intent.ts +7 -10
  65. package/docs/examples/protocol-approval.ts +3 -7
  66. package/docs/guides/actions.md +395 -0
  67. package/docs/guides/builders-and-actions.md +31 -37
  68. package/docs/guides/compiling.md +97 -98
  69. package/docs/guides/intents.md +242 -24
  70. package/docs/guides/nested-intents.md +165 -5
  71. package/docs/guides/protocols-and-tokens.md +15 -7
  72. package/docs/guides/quick-start.md +51 -22
  73. package/docs/guides/solana.md +38 -40
  74. package/docs/guides/verification.md +70 -31
  75. package/package.json +7 -2
  76. package/sdk/dist/artifacts/ISauceRouter.json +1 -1
  77. package/sdk/dist/artifacts/Router.json +1 -1
  78. package/sdk/dist/artifacts/V12Deployments.json +23 -22
  79. package/sdk/dist/artifacts/V12EngineGate.json +2 -2
  80. package/sdk/dist/artifacts/V12Kitchen.json +1 -1
  81. package/sdk/dist/artifacts/V12Pot.json +1 -1
  82. package/sdk/dist/artifacts/V12RuntimeBytecode.json +1 -1
  83. package/sdk/dist/artifacts/svm/engine-devnet.so +0 -0
  84. package/sdk/dist/artifacts/svm/engine-mainnet.so +0 -0
  85. package/sdk/dist/bytes.d.ts +10 -0
  86. package/sdk/dist/bytes.d.ts.map +1 -0
  87. package/sdk/dist/bytes.js +31 -0
  88. package/sdk/dist/bytes.js.map +1 -0
  89. package/sdk/dist/chains/canonical.d.ts +7 -1
  90. package/sdk/dist/chains/canonical.d.ts.map +1 -1
  91. package/sdk/dist/chains/canonical.js +6 -2
  92. package/sdk/dist/chains/canonical.js.map +1 -1
  93. package/sdk/dist/chains/index.d.ts +16 -2
  94. package/sdk/dist/chains/index.d.ts.map +1 -1
  95. package/sdk/dist/chains/index.js +51 -34
  96. package/sdk/dist/chains/index.js.map +1 -1
  97. package/sdk/dist/compact-arguments.d.ts +4 -1
  98. package/sdk/dist/compact-arguments.d.ts.map +1 -1
  99. package/sdk/dist/compact-arguments.js +25 -4
  100. package/sdk/dist/compact-arguments.js.map +1 -1
  101. package/sdk/dist/compiler.d.ts +13 -1
  102. package/sdk/dist/compiler.d.ts.map +1 -1
  103. package/sdk/dist/compiler.js +5 -6
  104. package/sdk/dist/compiler.js.map +1 -1
  105. package/sdk/dist/core/types.d.ts +18 -2
  106. package/sdk/dist/core/types.d.ts.map +1 -1
  107. package/sdk/dist/deployments/pot.d.ts +39 -0
  108. package/sdk/dist/deployments/pot.d.ts.map +1 -0
  109. package/sdk/dist/deployments/pot.js +48 -0
  110. package/sdk/dist/deployments/pot.js.map +1 -0
  111. package/sdk/dist/deployments/v12-addresses.d.ts +1 -4
  112. package/sdk/dist/deployments/v12-addresses.d.ts.map +1 -1
  113. package/sdk/dist/deployments/v12-addresses.js +7 -21
  114. package/sdk/dist/deployments/v12-addresses.js.map +1 -1
  115. package/sdk/dist/deposit/index.d.ts +5 -5
  116. package/sdk/dist/deposit/index.d.ts.map +1 -1
  117. package/sdk/dist/deposit/index.js +1 -1
  118. package/sdk/dist/deposit/index.js.map +1 -1
  119. package/sdk/dist/deposit/params.d.ts +3 -2
  120. package/sdk/dist/deposit/params.d.ts.map +1 -1
  121. package/sdk/dist/deposit/params.js +40 -3
  122. package/sdk/dist/deposit/params.js.map +1 -1
  123. package/sdk/dist/deposit/source.d.ts +0 -19
  124. package/sdk/dist/deposit/source.d.ts.map +1 -1
  125. package/sdk/dist/deposit/source.js +17 -34
  126. package/sdk/dist/deposit/source.js.map +1 -1
  127. package/sdk/dist/descriptors/accessors.d.ts +2 -2
  128. package/sdk/dist/descriptors/accessors.d.ts.map +1 -1
  129. package/sdk/dist/descriptors/accessors.js +15 -4
  130. package/sdk/dist/descriptors/accessors.js.map +1 -1
  131. package/sdk/dist/descriptors/call.d.ts +8 -13
  132. package/sdk/dist/descriptors/call.d.ts.map +1 -1
  133. package/sdk/dist/descriptors/call.js +7 -19
  134. package/sdk/dist/descriptors/call.js.map +1 -1
  135. package/sdk/dist/descriptors/derive.d.ts +1 -1
  136. package/sdk/dist/descriptors/derive.d.ts.map +1 -1
  137. package/sdk/dist/descriptors/derive.js +1 -1
  138. package/sdk/dist/descriptors/derive.js.map +1 -1
  139. package/sdk/dist/descriptors/index.d.ts +1 -1
  140. package/sdk/dist/descriptors/index.d.ts.map +1 -1
  141. package/sdk/dist/descriptors/index.js +1 -1
  142. package/sdk/dist/descriptors/index.js.map +1 -1
  143. package/sdk/dist/descriptors/links.d.ts +3 -12
  144. package/sdk/dist/descriptors/links.d.ts.map +1 -1
  145. package/sdk/dist/descriptors/links.js +2 -32
  146. package/sdk/dist/descriptors/links.js.map +1 -1
  147. package/sdk/dist/descriptors/query.d.ts +7 -3
  148. package/sdk/dist/descriptors/query.d.ts.map +1 -1
  149. package/sdk/dist/descriptors/query.js +9 -5
  150. package/sdk/dist/descriptors/query.js.map +1 -1
  151. package/sdk/dist/descriptors/registry.d.ts.map +1 -1
  152. package/sdk/dist/descriptors/registry.js +1 -0
  153. package/sdk/dist/descriptors/registry.js.map +1 -1
  154. package/sdk/dist/embedded/recipes.d.ts +3 -0
  155. package/sdk/dist/embedded/recipes.d.ts.map +1 -0
  156. package/sdk/dist/embedded/recipes.js +15 -0
  157. package/sdk/dist/embedded/recipes.js.map +1 -0
  158. package/sdk/dist/embedded/resolve.d.ts +27 -0
  159. package/sdk/dist/embedded/resolve.d.ts.map +1 -0
  160. package/sdk/dist/embedded/resolve.js +99 -0
  161. package/sdk/dist/embedded/resolve.js.map +1 -0
  162. package/sdk/dist/embedded/skills.generated.d.ts +3 -0
  163. package/sdk/dist/embedded/skills.generated.d.ts.map +1 -0
  164. package/sdk/dist/embedded/skills.generated.js +141 -0
  165. package/sdk/dist/embedded/skills.generated.js.map +1 -0
  166. package/sdk/dist/embedded/sources.generated.d.ts +7 -0
  167. package/sdk/dist/embedded/sources.generated.d.ts.map +1 -0
  168. package/sdk/dist/embedded/sources.generated.js +231 -0
  169. package/sdk/dist/embedded/sources.generated.js.map +1 -0
  170. package/sdk/dist/evm/execution-fee.d.ts +30 -0
  171. package/sdk/dist/evm/execution-fee.d.ts.map +1 -0
  172. package/sdk/dist/evm/execution-fee.js +33 -0
  173. package/sdk/dist/evm/execution-fee.js.map +1 -0
  174. package/sdk/dist/index.d.ts +7 -2
  175. package/sdk/dist/index.d.ts.map +1 -1
  176. package/sdk/dist/index.js +16 -10
  177. package/sdk/dist/index.js.map +1 -1
  178. package/sdk/dist/plugin/index.d.ts +1 -1
  179. package/sdk/dist/plugin/index.d.ts.map +1 -1
  180. package/sdk/dist/plugin/index.js +5 -22
  181. package/sdk/dist/plugin/index.js.map +1 -1
  182. package/sdk/dist/protocols/aave-v4/abis.d.ts +201 -0
  183. package/sdk/dist/protocols/aave-v4/abis.d.ts.map +1 -0
  184. package/sdk/dist/protocols/aave-v4/abis.js +139 -0
  185. package/sdk/dist/protocols/aave-v4/abis.js.map +1 -0
  186. package/sdk/dist/protocols/aave-v4/addresses.d.ts +3 -0
  187. package/sdk/dist/protocols/aave-v4/addresses.d.ts.map +1 -0
  188. package/sdk/dist/protocols/aave-v4/addresses.js +65 -0
  189. package/sdk/dist/protocols/aave-v4/addresses.js.map +1 -0
  190. package/sdk/dist/protocols/aave-v4/functions.d.ts +5 -0
  191. package/sdk/dist/protocols/aave-v4/functions.d.ts.map +1 -0
  192. package/sdk/dist/protocols/aave-v4/functions.js +37 -0
  193. package/sdk/dist/protocols/aave-v4/functions.js.map +1 -0
  194. package/sdk/dist/protocols/aave-v4/index.d.ts +5 -0
  195. package/sdk/dist/protocols/aave-v4/index.d.ts.map +1 -0
  196. package/sdk/dist/protocols/aave-v4/index.js +5 -0
  197. package/sdk/dist/protocols/aave-v4/index.js.map +1 -0
  198. package/sdk/dist/protocols/aave-v4/info.d.ts +3 -0
  199. package/sdk/dist/protocols/aave-v4/info.d.ts.map +1 -0
  200. package/sdk/dist/protocols/aave-v4/info.js +12 -0
  201. package/sdk/dist/protocols/aave-v4/info.js.map +1 -0
  202. package/sdk/dist/protocols/across/abis.d.ts +24 -12
  203. package/sdk/dist/protocols/across/abis.d.ts.map +1 -1
  204. package/sdk/dist/protocols/across/abis.js +16 -8
  205. package/sdk/dist/protocols/across/abis.js.map +1 -1
  206. package/sdk/dist/protocols/across/addresses.d.ts.map +1 -1
  207. package/sdk/dist/protocols/across/addresses.js +10 -0
  208. package/sdk/dist/protocols/across/addresses.js.map +1 -1
  209. package/sdk/dist/protocols/across/functions.d.ts +1 -1
  210. package/sdk/dist/protocols/across/functions.d.ts.map +1 -1
  211. package/sdk/dist/protocols/across/functions.js +2 -2
  212. package/sdk/dist/protocols/aerodrome-slipstream/abis.d.ts +112 -0
  213. package/sdk/dist/protocols/aerodrome-slipstream/abis.d.ts.map +1 -0
  214. package/sdk/dist/protocols/aerodrome-slipstream/abis.js +73 -0
  215. package/sdk/dist/protocols/aerodrome-slipstream/abis.js.map +1 -0
  216. package/sdk/dist/protocols/aerodrome-slipstream/addresses.d.ts +3 -0
  217. package/sdk/dist/protocols/aerodrome-slipstream/addresses.d.ts.map +1 -0
  218. package/sdk/dist/protocols/aerodrome-slipstream/addresses.js +39 -0
  219. package/sdk/dist/protocols/aerodrome-slipstream/addresses.js.map +1 -0
  220. package/sdk/dist/protocols/aerodrome-slipstream/functions.d.ts +2 -0
  221. package/sdk/dist/protocols/aerodrome-slipstream/functions.d.ts.map +1 -0
  222. package/sdk/dist/protocols/aerodrome-slipstream/functions.js +9 -0
  223. package/sdk/dist/protocols/aerodrome-slipstream/functions.js.map +1 -0
  224. package/sdk/dist/protocols/aerodrome-slipstream/index.d.ts +5 -0
  225. package/sdk/dist/protocols/aerodrome-slipstream/index.d.ts.map +1 -0
  226. package/sdk/dist/protocols/aerodrome-slipstream/index.js +5 -0
  227. package/sdk/dist/protocols/aerodrome-slipstream/index.js.map +1 -0
  228. package/sdk/dist/protocols/aerodrome-slipstream/info.d.ts +3 -0
  229. package/sdk/dist/protocols/aerodrome-slipstream/info.d.ts.map +1 -0
  230. package/sdk/dist/protocols/aerodrome-slipstream/info.js +12 -0
  231. package/sdk/dist/protocols/aerodrome-slipstream/info.js.map +1 -0
  232. package/sdk/dist/protocols/aevo/abis.d.ts +17 -2
  233. package/sdk/dist/protocols/aevo/abis.d.ts.map +1 -1
  234. package/sdk/dist/protocols/aevo/abis.js +10 -2
  235. package/sdk/dist/protocols/aevo/abis.js.map +1 -1
  236. package/sdk/dist/protocols/aevo/functions.d.ts +1 -1
  237. package/sdk/dist/protocols/aevo/functions.d.ts.map +1 -1
  238. package/sdk/dist/protocols/aevo/functions.js +2 -2
  239. package/sdk/dist/protocols/alchemix/abis.d.ts +1 -1
  240. package/sdk/dist/protocols/alchemix/abis.js +1 -1
  241. package/sdk/dist/protocols/alchemix/abis.js.map +1 -1
  242. package/sdk/dist/protocols/ambient/abis.d.ts +2 -2
  243. package/sdk/dist/protocols/ambient/abis.d.ts.map +1 -1
  244. package/sdk/dist/protocols/ambient/abis.js +3 -2
  245. package/sdk/dist/protocols/ambient/abis.js.map +1 -1
  246. package/sdk/dist/protocols/ambient/addresses.d.ts.map +1 -1
  247. package/sdk/dist/protocols/ambient/addresses.js +2 -1
  248. package/sdk/dist/protocols/ambient/addresses.js.map +1 -1
  249. package/sdk/dist/protocols/arrakis/abis.d.ts +4 -13
  250. package/sdk/dist/protocols/arrakis/abis.d.ts.map +1 -1
  251. package/sdk/dist/protocols/arrakis/abis.js +2 -11
  252. package/sdk/dist/protocols/arrakis/abis.js.map +1 -1
  253. package/sdk/dist/protocols/arrakis/functions.d.ts +1 -1
  254. package/sdk/dist/protocols/arrakis/functions.d.ts.map +1 -1
  255. package/sdk/dist/protocols/arrakis/functions.js +2 -1
  256. package/sdk/dist/protocols/arrakis/functions.js.map +1 -1
  257. package/sdk/dist/protocols/axelar/abis.d.ts +1 -1
  258. package/sdk/dist/protocols/axelar/abis.js +1 -1
  259. package/sdk/dist/protocols/balancer-v2/abis.d.ts +7 -7
  260. package/sdk/dist/protocols/balancer-v2/abis.js +7 -7
  261. package/sdk/dist/protocols/balancer-v2/abis.js.map +1 -1
  262. package/sdk/dist/protocols/cbeth/abis.d.ts +7 -1
  263. package/sdk/dist/protocols/cbeth/abis.d.ts.map +1 -1
  264. package/sdk/dist/protocols/cbeth/abis.js +6 -2
  265. package/sdk/dist/protocols/cbeth/abis.js.map +1 -1
  266. package/sdk/dist/protocols/cctp/abis.d.ts +1 -4
  267. package/sdk/dist/protocols/cctp/abis.d.ts.map +1 -1
  268. package/sdk/dist/protocols/cctp/abis.js +3 -1
  269. package/sdk/dist/protocols/cctp/abis.js.map +1 -1
  270. package/sdk/dist/protocols/cctp/addresses.d.ts.map +1 -1
  271. package/sdk/dist/protocols/cctp/addresses.js +3 -0
  272. package/sdk/dist/protocols/cctp/addresses.js.map +1 -1
  273. package/sdk/dist/protocols/chainlink/abis.d.ts +6 -6
  274. package/sdk/dist/protocols/chainlink/abis.js +6 -6
  275. package/sdk/dist/protocols/chainlink/abis.js.map +1 -1
  276. package/sdk/dist/protocols/chainlink/addresses.d.ts.map +1 -1
  277. package/sdk/dist/protocols/chainlink/addresses.js +10 -0
  278. package/sdk/dist/protocols/chainlink/addresses.js.map +1 -1
  279. package/sdk/dist/protocols/chainlink-ccip/abis.d.ts +1 -1
  280. package/sdk/dist/protocols/chainlink-ccip/abis.js +1 -1
  281. package/sdk/dist/protocols/chainlink-ccip/addresses.d.ts.map +1 -1
  282. package/sdk/dist/protocols/chainlink-ccip/addresses.js +9 -0
  283. package/sdk/dist/protocols/chainlink-ccip/addresses.js.map +1 -1
  284. package/sdk/dist/protocols/circle-gateway/abis.d.ts +114 -0
  285. package/sdk/dist/protocols/circle-gateway/abis.d.ts.map +1 -0
  286. package/sdk/dist/protocols/circle-gateway/abis.js +86 -0
  287. package/sdk/dist/protocols/circle-gateway/abis.js.map +1 -0
  288. package/sdk/dist/protocols/circle-gateway/addresses.d.ts +3 -0
  289. package/sdk/dist/protocols/circle-gateway/addresses.d.ts.map +1 -0
  290. package/sdk/dist/protocols/circle-gateway/addresses.js +37 -0
  291. package/sdk/dist/protocols/circle-gateway/addresses.js.map +1 -0
  292. package/sdk/dist/protocols/circle-gateway/functions.d.ts +4 -0
  293. package/sdk/dist/protocols/circle-gateway/functions.d.ts.map +1 -0
  294. package/sdk/dist/protocols/circle-gateway/functions.js +27 -0
  295. package/sdk/dist/protocols/circle-gateway/functions.js.map +1 -0
  296. package/sdk/dist/protocols/circle-gateway/index.d.ts +5 -0
  297. package/sdk/dist/protocols/circle-gateway/index.d.ts.map +1 -0
  298. package/sdk/dist/protocols/circle-gateway/index.js +5 -0
  299. package/sdk/dist/protocols/circle-gateway/index.js.map +1 -0
  300. package/sdk/dist/protocols/circle-gateway/info.d.ts +3 -0
  301. package/sdk/dist/protocols/circle-gateway/info.d.ts.map +1 -0
  302. package/sdk/dist/protocols/circle-gateway/info.js +12 -0
  303. package/sdk/dist/protocols/circle-gateway/info.js.map +1 -0
  304. package/sdk/dist/protocols/compound-v2/abis.d.ts +2 -2
  305. package/sdk/dist/protocols/compound-v2/abis.js +2 -2
  306. package/sdk/dist/protocols/compound-v2/abis.js.map +1 -1
  307. package/sdk/dist/protocols/connext/abis.d.ts +46 -6
  308. package/sdk/dist/protocols/connext/abis.d.ts.map +1 -1
  309. package/sdk/dist/protocols/connext/abis.js +27 -5
  310. package/sdk/dist/protocols/connext/abis.js.map +1 -1
  311. package/sdk/dist/protocols/connext/addresses.d.ts.map +1 -1
  312. package/sdk/dist/protocols/connext/addresses.js +1 -7
  313. package/sdk/dist/protocols/connext/addresses.js.map +1 -1
  314. package/sdk/dist/protocols/connext/functions.d.ts +1 -1
  315. package/sdk/dist/protocols/connext/functions.d.ts.map +1 -1
  316. package/sdk/dist/protocols/connext/functions.js +3 -2
  317. package/sdk/dist/protocols/connext/functions.js.map +1 -1
  318. package/sdk/dist/protocols/curve/abis.d.ts +119 -7
  319. package/sdk/dist/protocols/curve/abis.d.ts.map +1 -1
  320. package/sdk/dist/protocols/curve/abis.js +90 -7
  321. package/sdk/dist/protocols/curve/abis.js.map +1 -1
  322. package/sdk/dist/protocols/debridge/abis.d.ts +7 -7
  323. package/sdk/dist/protocols/debridge/abis.js +5 -5
  324. package/sdk/dist/protocols/debridge/abis.js.map +1 -1
  325. package/sdk/dist/protocols/debridge/addresses.d.ts.map +1 -1
  326. package/sdk/dist/protocols/debridge/addresses.js +11 -0
  327. package/sdk/dist/protocols/debridge/addresses.js.map +1 -1
  328. package/sdk/dist/protocols/eco-routes/abis.d.ts +463 -0
  329. package/sdk/dist/protocols/eco-routes/abis.d.ts.map +1 -0
  330. package/sdk/dist/protocols/eco-routes/abis.js +632 -0
  331. package/sdk/dist/protocols/eco-routes/abis.js.map +1 -0
  332. package/sdk/dist/protocols/eco-routes/addresses.d.ts +9 -0
  333. package/sdk/dist/protocols/eco-routes/addresses.d.ts.map +1 -0
  334. package/sdk/dist/protocols/eco-routes/addresses.generated.d.ts +585 -0
  335. package/sdk/dist/protocols/eco-routes/addresses.generated.d.ts.map +1 -0
  336. package/sdk/dist/protocols/eco-routes/addresses.generated.js +590 -0
  337. package/sdk/dist/protocols/eco-routes/addresses.generated.js.map +1 -0
  338. package/sdk/dist/protocols/eco-routes/addresses.js +21 -0
  339. package/sdk/dist/protocols/eco-routes/addresses.js.map +1 -0
  340. package/sdk/dist/protocols/eco-routes/functions.d.ts +12 -0
  341. package/sdk/dist/protocols/eco-routes/functions.d.ts.map +1 -0
  342. package/sdk/dist/protocols/eco-routes/functions.js +45 -0
  343. package/sdk/dist/protocols/eco-routes/functions.js.map +1 -0
  344. package/sdk/dist/protocols/eco-routes/index.d.ts +6 -0
  345. package/sdk/dist/protocols/eco-routes/index.d.ts.map +1 -0
  346. package/sdk/dist/protocols/eco-routes/index.js +6 -0
  347. package/sdk/dist/protocols/eco-routes/index.js.map +1 -0
  348. package/sdk/dist/protocols/eco-routes/info.d.ts +3 -0
  349. package/sdk/dist/protocols/eco-routes/info.d.ts.map +1 -0
  350. package/sdk/dist/protocols/eco-routes/info.js +12 -0
  351. package/sdk/dist/protocols/eco-routes/info.js.map +1 -0
  352. package/sdk/dist/protocols/eco-routes/lookup.d.ts +82 -0
  353. package/sdk/dist/protocols/eco-routes/lookup.d.ts.map +1 -0
  354. package/sdk/dist/protocols/eco-routes/lookup.js +148 -0
  355. package/sdk/dist/protocols/eco-routes/lookup.js.map +1 -0
  356. package/sdk/dist/protocols/eigenlayer/abis.d.ts +4 -4
  357. package/sdk/dist/protocols/eigenlayer/abis.d.ts.map +1 -1
  358. package/sdk/dist/protocols/eigenlayer/abis.js +5 -4
  359. package/sdk/dist/protocols/eigenlayer/abis.js.map +1 -1
  360. package/sdk/dist/protocols/ens/abis.d.ts +4 -4
  361. package/sdk/dist/protocols/ens/abis.js +4 -4
  362. package/sdk/dist/protocols/etherfi/abis.d.ts +1 -1
  363. package/sdk/dist/protocols/etherfi/abis.d.ts.map +1 -1
  364. package/sdk/dist/protocols/etherfi/abis.js +2 -1
  365. package/sdk/dist/protocols/etherfi/abis.js.map +1 -1
  366. package/sdk/dist/protocols/euler-v2/abis.d.ts +2 -2
  367. package/sdk/dist/protocols/euler-v2/abis.js +2 -2
  368. package/sdk/dist/protocols/euler-v2/abis.js.map +1 -1
  369. package/sdk/dist/protocols/fluid/abis.d.ts +47 -26
  370. package/sdk/dist/protocols/fluid/abis.d.ts.map +1 -1
  371. package/sdk/dist/protocols/fluid/abis.js +39 -18
  372. package/sdk/dist/protocols/fluid/abis.js.map +1 -1
  373. package/sdk/dist/protocols/fluid/functions.d.ts +4 -4
  374. package/sdk/dist/protocols/fluid/functions.d.ts.map +1 -1
  375. package/sdk/dist/protocols/fluid/functions.js +18 -16
  376. package/sdk/dist/protocols/fluid/functions.js.map +1 -1
  377. package/sdk/dist/protocols/gains-network/abis.d.ts +44 -35
  378. package/sdk/dist/protocols/gains-network/abis.d.ts.map +1 -1
  379. package/sdk/dist/protocols/gains-network/abis.js +26 -21
  380. package/sdk/dist/protocols/gains-network/abis.js.map +1 -1
  381. package/sdk/dist/protocols/gains-network/functions.d.ts +3 -3
  382. package/sdk/dist/protocols/gains-network/functions.d.ts.map +1 -1
  383. package/sdk/dist/protocols/gains-network/functions.js +6 -6
  384. package/sdk/dist/protocols/gamma/abis.d.ts +43 -0
  385. package/sdk/dist/protocols/gamma/abis.d.ts.map +1 -1
  386. package/sdk/dist/protocols/gamma/abis.js +30 -0
  387. package/sdk/dist/protocols/gamma/abis.js.map +1 -1
  388. package/sdk/dist/protocols/gamma/addresses.d.ts.map +1 -1
  389. package/sdk/dist/protocols/gamma/addresses.js +2 -7
  390. package/sdk/dist/protocols/gamma/addresses.js.map +1 -1
  391. package/sdk/dist/protocols/gamma/functions.d.ts +1 -0
  392. package/sdk/dist/protocols/gamma/functions.d.ts.map +1 -1
  393. package/sdk/dist/protocols/gamma/functions.js +9 -0
  394. package/sdk/dist/protocols/gamma/functions.js.map +1 -1
  395. package/sdk/dist/protocols/gelato/abis.d.ts +2 -2
  396. package/sdk/dist/protocols/gelato/abis.js +2 -2
  397. package/sdk/dist/protocols/gmx-v1/abis.d.ts +15 -3
  398. package/sdk/dist/protocols/gmx-v1/abis.d.ts.map +1 -1
  399. package/sdk/dist/protocols/gmx-v1/abis.js +5 -3
  400. package/sdk/dist/protocols/gmx-v1/abis.js.map +1 -1
  401. package/sdk/dist/protocols/gmx-v1/functions.d.ts +2 -2
  402. package/sdk/dist/protocols/gmx-v1/functions.d.ts.map +1 -1
  403. package/sdk/dist/protocols/gmx-v1/functions.js +2 -2
  404. package/sdk/dist/protocols/gmx-v2/abis.d.ts +11 -5
  405. package/sdk/dist/protocols/gmx-v2/abis.d.ts.map +1 -1
  406. package/sdk/dist/protocols/gmx-v2/abis.js +7 -4
  407. package/sdk/dist/protocols/gmx-v2/abis.js.map +1 -1
  408. package/sdk/dist/protocols/gmx-v2/addresses.d.ts.map +1 -1
  409. package/sdk/dist/protocols/gmx-v2/addresses.js +3 -1
  410. package/sdk/dist/protocols/gmx-v2/addresses.js.map +1 -1
  411. package/sdk/dist/protocols/gmx-v2/functions.d.ts +1 -1
  412. package/sdk/dist/protocols/gmx-v2/functions.d.ts.map +1 -1
  413. package/sdk/dist/protocols/gmx-v2/functions.js +4 -2
  414. package/sdk/dist/protocols/gmx-v2/functions.js.map +1 -1
  415. package/sdk/dist/protocols/harvest/abis.d.ts +8 -2
  416. package/sdk/dist/protocols/harvest/abis.d.ts.map +1 -1
  417. package/sdk/dist/protocols/harvest/abis.js +2 -2
  418. package/sdk/dist/protocols/harvest/abis.js.map +1 -1
  419. package/sdk/dist/protocols/hegic/abis.d.ts +5 -2
  420. package/sdk/dist/protocols/hegic/abis.d.ts.map +1 -1
  421. package/sdk/dist/protocols/hegic/abis.js +7 -2
  422. package/sdk/dist/protocols/hegic/abis.js.map +1 -1
  423. package/sdk/dist/protocols/hegic/addresses.d.ts.map +1 -1
  424. package/sdk/dist/protocols/hegic/addresses.js +1 -0
  425. package/sdk/dist/protocols/hegic/addresses.js.map +1 -1
  426. package/sdk/dist/protocols/hegic/functions.d.ts +1 -1
  427. package/sdk/dist/protocols/hegic/functions.d.ts.map +1 -1
  428. package/sdk/dist/protocols/hegic/functions.js +3 -3
  429. package/sdk/dist/protocols/hop/addresses.d.ts.map +1 -1
  430. package/sdk/dist/protocols/hop/addresses.js +5 -2
  431. package/sdk/dist/protocols/hop/addresses.js.map +1 -1
  432. package/sdk/dist/protocols/hyperlane/abis.d.ts +5 -5
  433. package/sdk/dist/protocols/hyperlane/abis.js +5 -5
  434. package/sdk/dist/protocols/hyperlane/abis.js.map +1 -1
  435. package/sdk/dist/protocols/hyperlane/addresses.d.ts.map +1 -1
  436. package/sdk/dist/protocols/hyperlane/addresses.js +9 -0
  437. package/sdk/dist/protocols/hyperlane/addresses.js.map +1 -1
  438. package/sdk/dist/protocols/index.d.ts +1 -0
  439. package/sdk/dist/protocols/index.d.ts.map +1 -1
  440. package/sdk/dist/protocols/index.js +13 -0
  441. package/sdk/dist/protocols/index.js.map +1 -1
  442. package/sdk/dist/protocols/kim/abis.d.ts +7 -20
  443. package/sdk/dist/protocols/kim/abis.d.ts.map +1 -1
  444. package/sdk/dist/protocols/kim/abis.js +6 -12
  445. package/sdk/dist/protocols/kim/abis.js.map +1 -1
  446. package/sdk/dist/protocols/kim/functions.d.ts +1 -1
  447. package/sdk/dist/protocols/kim/functions.d.ts.map +1 -1
  448. package/sdk/dist/protocols/kim/functions.js +3 -2
  449. package/sdk/dist/protocols/kim/functions.js.map +1 -1
  450. package/sdk/dist/protocols/kyberswap/abis.d.ts +41 -16
  451. package/sdk/dist/protocols/kyberswap/abis.d.ts.map +1 -1
  452. package/sdk/dist/protocols/kyberswap/abis.js +21 -8
  453. package/sdk/dist/protocols/kyberswap/abis.js.map +1 -1
  454. package/sdk/dist/protocols/kyberswap/addresses.d.ts.map +1 -1
  455. package/sdk/dist/protocols/kyberswap/addresses.js +12 -2
  456. package/sdk/dist/protocols/kyberswap/addresses.js.map +1 -1
  457. package/sdk/dist/protocols/kyberswap-aggregator/addresses.d.ts.map +1 -1
  458. package/sdk/dist/protocols/kyberswap-aggregator/addresses.js +12 -1
  459. package/sdk/dist/protocols/kyberswap-aggregator/addresses.js.map +1 -1
  460. package/sdk/dist/protocols/layerbank/abis.d.ts +81 -24
  461. package/sdk/dist/protocols/layerbank/abis.d.ts.map +1 -1
  462. package/sdk/dist/protocols/layerbank/abis.js +69 -17
  463. package/sdk/dist/protocols/layerbank/abis.js.map +1 -1
  464. package/sdk/dist/protocols/layerbank/addresses.d.ts.map +1 -1
  465. package/sdk/dist/protocols/layerbank/addresses.js +3 -1
  466. package/sdk/dist/protocols/layerbank/addresses.js.map +1 -1
  467. package/sdk/dist/protocols/layerbank/functions.d.ts +4 -4
  468. package/sdk/dist/protocols/layerbank/functions.d.ts.map +1 -1
  469. package/sdk/dist/protocols/layerbank/functions.js +18 -16
  470. package/sdk/dist/protocols/layerbank/functions.js.map +1 -1
  471. package/sdk/dist/protocols/layerzero/abis.d.ts +3 -3
  472. package/sdk/dist/protocols/layerzero/abis.js +3 -3
  473. package/sdk/dist/protocols/layerzero/addresses.d.ts.map +1 -1
  474. package/sdk/dist/protocols/layerzero/addresses.js +11 -1
  475. package/sdk/dist/protocols/layerzero/addresses.js.map +1 -1
  476. package/sdk/dist/protocols/level-finance/abis.d.ts +6 -0
  477. package/sdk/dist/protocols/level-finance/abis.d.ts.map +1 -1
  478. package/sdk/dist/protocols/level-finance/abis.js +2 -0
  479. package/sdk/dist/protocols/level-finance/abis.js.map +1 -1
  480. package/sdk/dist/protocols/level-finance/functions.d.ts +2 -2
  481. package/sdk/dist/protocols/level-finance/functions.d.ts.map +1 -1
  482. package/sdk/dist/protocols/level-finance/functions.js +4 -4
  483. package/sdk/dist/protocols/lifi/abis.d.ts +41 -4
  484. package/sdk/dist/protocols/lifi/abis.d.ts.map +1 -1
  485. package/sdk/dist/protocols/lifi/abis.js +24 -4
  486. package/sdk/dist/protocols/lifi/abis.js.map +1 -1
  487. package/sdk/dist/protocols/lifi/addresses.d.ts.map +1 -1
  488. package/sdk/dist/protocols/lifi/addresses.js +9 -0
  489. package/sdk/dist/protocols/lifi/addresses.js.map +1 -1
  490. package/sdk/dist/protocols/lifi/functions.d.ts +1 -1
  491. package/sdk/dist/protocols/lifi/functions.d.ts.map +1 -1
  492. package/sdk/dist/protocols/lifi/functions.js +5 -2
  493. package/sdk/dist/protocols/lifi/functions.js.map +1 -1
  494. package/sdk/dist/protocols/liquity-v1/abis.d.ts +6 -0
  495. package/sdk/dist/protocols/liquity-v1/abis.d.ts.map +1 -1
  496. package/sdk/dist/protocols/liquity-v1/abis.js +7 -1
  497. package/sdk/dist/protocols/liquity-v1/abis.js.map +1 -1
  498. package/sdk/dist/protocols/liquity-v1/functions.d.ts +1 -1
  499. package/sdk/dist/protocols/liquity-v1/functions.d.ts.map +1 -1
  500. package/sdk/dist/protocols/liquity-v1/functions.js +1 -1
  501. package/sdk/dist/protocols/mantle-meth/abis.d.ts +26 -25
  502. package/sdk/dist/protocols/mantle-meth/abis.d.ts.map +1 -1
  503. package/sdk/dist/protocols/mantle-meth/abis.js +22 -17
  504. package/sdk/dist/protocols/mantle-meth/abis.js.map +1 -1
  505. package/sdk/dist/protocols/mantle-meth/addresses.d.ts.map +1 -1
  506. package/sdk/dist/protocols/mantle-meth/addresses.js +3 -0
  507. package/sdk/dist/protocols/mantle-meth/addresses.js.map +1 -1
  508. package/sdk/dist/protocols/mantle-meth/functions.d.ts +1 -1
  509. package/sdk/dist/protocols/mantle-meth/functions.d.ts.map +1 -1
  510. package/sdk/dist/protocols/mantle-meth/functions.js +4 -4
  511. package/sdk/dist/protocols/maverick/abis.d.ts +9 -0
  512. package/sdk/dist/protocols/maverick/abis.d.ts.map +1 -1
  513. package/sdk/dist/protocols/maverick/abis.js +7 -1
  514. package/sdk/dist/protocols/maverick/abis.js.map +1 -1
  515. package/sdk/dist/protocols/morpho-blue/addresses.d.ts.map +1 -1
  516. package/sdk/dist/protocols/morpho-blue/addresses.js +10 -0
  517. package/sdk/dist/protocols/morpho-blue/addresses.js.map +1 -1
  518. package/sdk/dist/protocols/mux-protocol/abis.d.ts +87 -32
  519. package/sdk/dist/protocols/mux-protocol/abis.d.ts.map +1 -1
  520. package/sdk/dist/protocols/mux-protocol/abis.js +54 -21
  521. package/sdk/dist/protocols/mux-protocol/abis.js.map +1 -1
  522. package/sdk/dist/protocols/mux-protocol/functions.d.ts +2 -2
  523. package/sdk/dist/protocols/mux-protocol/functions.d.ts.map +1 -1
  524. package/sdk/dist/protocols/mux-protocol/functions.js +8 -8
  525. package/sdk/dist/protocols/olympus/abis.d.ts +5 -2
  526. package/sdk/dist/protocols/olympus/abis.d.ts.map +1 -1
  527. package/sdk/dist/protocols/olympus/abis.js +2 -2
  528. package/sdk/dist/protocols/olympus/abis.js.map +1 -1
  529. package/sdk/dist/protocols/oneinch/abis.d.ts +5 -5
  530. package/sdk/dist/protocols/oneinch/abis.d.ts.map +1 -1
  531. package/sdk/dist/protocols/oneinch/abis.js +5 -3
  532. package/sdk/dist/protocols/oneinch/abis.js.map +1 -1
  533. package/sdk/dist/protocols/oneinch/functions.d.ts +1 -1
  534. package/sdk/dist/protocols/oneinch/functions.d.ts.map +1 -1
  535. package/sdk/dist/protocols/oneinch/functions.js +2 -2
  536. package/sdk/dist/protocols/openocean/abis.d.ts +14 -1
  537. package/sdk/dist/protocols/openocean/abis.d.ts.map +1 -1
  538. package/sdk/dist/protocols/openocean/abis.js +11 -1
  539. package/sdk/dist/protocols/openocean/abis.js.map +1 -1
  540. package/sdk/dist/protocols/openocean/functions.d.ts +1 -1
  541. package/sdk/dist/protocols/openocean/functions.d.ts.map +1 -1
  542. package/sdk/dist/protocols/openocean/functions.js +1 -1
  543. package/sdk/dist/protocols/opyn/abis.d.ts +4 -1
  544. package/sdk/dist/protocols/opyn/abis.d.ts.map +1 -1
  545. package/sdk/dist/protocols/opyn/abis.js +1 -1
  546. package/sdk/dist/protocols/opyn/abis.js.map +1 -1
  547. package/sdk/dist/protocols/pancakeswap-v3/abis.d.ts +6 -6
  548. package/sdk/dist/protocols/pancakeswap-v3/abis.js +6 -6
  549. package/sdk/dist/protocols/pancakeswap-v3/abis.js.map +1 -1
  550. package/sdk/dist/protocols/paraswap/abis.d.ts +1 -1
  551. package/sdk/dist/protocols/paraswap/abis.js +1 -1
  552. package/sdk/dist/protocols/pendle/abis.d.ts +288 -6
  553. package/sdk/dist/protocols/pendle/abis.d.ts.map +1 -1
  554. package/sdk/dist/protocols/pendle/abis.js +160 -6
  555. package/sdk/dist/protocols/pendle/abis.js.map +1 -1
  556. package/sdk/dist/protocols/permit2/abis.d.ts +1 -1
  557. package/sdk/dist/protocols/permit2/abis.js +1 -1
  558. package/sdk/dist/protocols/permit2/addresses.d.ts.map +1 -1
  559. package/sdk/dist/protocols/permit2/addresses.js +9 -0
  560. package/sdk/dist/protocols/permit2/addresses.js.map +1 -1
  561. package/sdk/dist/protocols/perpetual-protocol/abis.d.ts +46 -38
  562. package/sdk/dist/protocols/perpetual-protocol/abis.d.ts.map +1 -1
  563. package/sdk/dist/protocols/perpetual-protocol/abis.js +27 -14
  564. package/sdk/dist/protocols/perpetual-protocol/abis.js.map +1 -1
  565. package/sdk/dist/protocols/premia/abis.d.ts +18 -17
  566. package/sdk/dist/protocols/premia/abis.d.ts.map +1 -1
  567. package/sdk/dist/protocols/premia/abis.js +20 -10
  568. package/sdk/dist/protocols/premia/abis.js.map +1 -1
  569. package/sdk/dist/protocols/premia/addresses.d.ts.map +1 -1
  570. package/sdk/dist/protocols/premia/addresses.js +3 -8
  571. package/sdk/dist/protocols/premia/addresses.js.map +1 -1
  572. package/sdk/dist/protocols/premia/functions.d.ts +2 -2
  573. package/sdk/dist/protocols/premia/functions.d.ts.map +1 -1
  574. package/sdk/dist/protocols/premia/functions.js +8 -8
  575. package/sdk/dist/protocols/pyth/abis.d.ts +3 -3
  576. package/sdk/dist/protocols/pyth/abis.d.ts.map +1 -1
  577. package/sdk/dist/protocols/pyth/abis.js +6 -3
  578. package/sdk/dist/protocols/pyth/abis.js.map +1 -1
  579. package/sdk/dist/protocols/reflexer/abis.d.ts +8 -5
  580. package/sdk/dist/protocols/reflexer/abis.d.ts.map +1 -1
  581. package/sdk/dist/protocols/reflexer/abis.js +10 -6
  582. package/sdk/dist/protocols/reflexer/abis.js.map +1 -1
  583. package/sdk/dist/protocols/renzo/abis.d.ts +1 -1
  584. package/sdk/dist/protocols/renzo/abis.js +1 -1
  585. package/sdk/dist/protocols/renzo/abis.js.map +1 -1
  586. package/sdk/dist/protocols/sablier/abis.d.ts +2 -2
  587. package/sdk/dist/protocols/sablier/abis.js +2 -2
  588. package/sdk/dist/protocols/safe/addresses.d.ts.map +1 -1
  589. package/sdk/dist/protocols/safe/addresses.js +10 -0
  590. package/sdk/dist/protocols/safe/addresses.js.map +1 -1
  591. package/sdk/dist/protocols/seaport/abis.d.ts +65 -5
  592. package/sdk/dist/protocols/seaport/abis.d.ts.map +1 -1
  593. package/sdk/dist/protocols/seaport/abis.js +41 -5
  594. package/sdk/dist/protocols/seaport/abis.js.map +1 -1
  595. package/sdk/dist/protocols/seaport/addresses.d.ts.map +1 -1
  596. package/sdk/dist/protocols/seaport/addresses.js +10 -0
  597. package/sdk/dist/protocols/seaport/addresses.js.map +1 -1
  598. package/sdk/dist/protocols/seaport/functions.d.ts +1 -1
  599. package/sdk/dist/protocols/seaport/functions.d.ts.map +1 -1
  600. package/sdk/dist/protocols/seaport/functions.js +1 -0
  601. package/sdk/dist/protocols/seaport/functions.js.map +1 -1
  602. package/sdk/dist/protocols/silo/abis.d.ts +3 -0
  603. package/sdk/dist/protocols/silo/abis.d.ts.map +1 -1
  604. package/sdk/dist/protocols/silo/abis.js +4 -1
  605. package/sdk/dist/protocols/silo/abis.js.map +1 -1
  606. package/sdk/dist/protocols/silo/addresses.d.ts.map +1 -1
  607. package/sdk/dist/protocols/silo/addresses.js +2 -1
  608. package/sdk/dist/protocols/silo/addresses.js.map +1 -1
  609. package/sdk/dist/protocols/silo/functions.d.ts +1 -1
  610. package/sdk/dist/protocols/silo/functions.d.ts.map +1 -1
  611. package/sdk/dist/protocols/silo/functions.js +2 -1
  612. package/sdk/dist/protocols/silo/functions.js.map +1 -1
  613. package/sdk/dist/protocols/socket/abis.d.ts +1 -13
  614. package/sdk/dist/protocols/socket/abis.d.ts.map +1 -1
  615. package/sdk/dist/protocols/socket/abis.js +3 -11
  616. package/sdk/dist/protocols/socket/abis.js.map +1 -1
  617. package/sdk/dist/protocols/socket/functions.d.ts +1 -1
  618. package/sdk/dist/protocols/socket/functions.d.ts.map +1 -1
  619. package/sdk/dist/protocols/socket/functions.js +1 -1
  620. package/sdk/dist/protocols/spookyswap/addresses.d.ts.map +1 -1
  621. package/sdk/dist/protocols/spookyswap/addresses.js +2 -1
  622. package/sdk/dist/protocols/spookyswap/addresses.js.map +1 -1
  623. package/sdk/dist/protocols/squid/abis.d.ts +33 -21
  624. package/sdk/dist/protocols/squid/abis.d.ts.map +1 -1
  625. package/sdk/dist/protocols/squid/abis.js +19 -13
  626. package/sdk/dist/protocols/squid/abis.js.map +1 -1
  627. package/sdk/dist/protocols/squid/functions.d.ts +1 -1
  628. package/sdk/dist/protocols/squid/functions.d.ts.map +1 -1
  629. package/sdk/dist/protocols/squid/functions.js +2 -2
  630. package/sdk/dist/protocols/stargate/abis.d.ts +23 -3
  631. package/sdk/dist/protocols/stargate/abis.d.ts.map +1 -1
  632. package/sdk/dist/protocols/stargate/abis.js +19 -3
  633. package/sdk/dist/protocols/stargate/abis.js.map +1 -1
  634. package/sdk/dist/protocols/superfluid/abis.d.ts +2 -2
  635. package/sdk/dist/protocols/superfluid/abis.js +2 -2
  636. package/sdk/dist/protocols/superfluid/abis.js.map +1 -1
  637. package/sdk/dist/protocols/sushiswap-v2/addresses.d.ts.map +1 -1
  638. package/sdk/dist/protocols/sushiswap-v2/addresses.js +2 -1
  639. package/sdk/dist/protocols/sushiswap-v2/addresses.js.map +1 -1
  640. package/sdk/dist/protocols/swell/abis.d.ts +2 -8
  641. package/sdk/dist/protocols/swell/abis.d.ts.map +1 -1
  642. package/sdk/dist/protocols/swell/abis.js +4 -2
  643. package/sdk/dist/protocols/swell/abis.js.map +1 -1
  644. package/sdk/dist/protocols/swell/functions.d.ts +2 -2
  645. package/sdk/dist/protocols/swell/functions.d.ts.map +1 -1
  646. package/sdk/dist/protocols/swell/functions.js +4 -2
  647. package/sdk/dist/protocols/swell/functions.js.map +1 -1
  648. package/sdk/dist/protocols/synapse/addresses.d.ts.map +1 -1
  649. package/sdk/dist/protocols/synapse/addresses.js +2 -1
  650. package/sdk/dist/protocols/synapse/addresses.js.map +1 -1
  651. package/sdk/dist/protocols/synthetix-v3/abis.d.ts +40 -5
  652. package/sdk/dist/protocols/synthetix-v3/abis.d.ts.map +1 -1
  653. package/sdk/dist/protocols/synthetix-v3/abis.js +27 -5
  654. package/sdk/dist/protocols/synthetix-v3/abis.js.map +1 -1
  655. package/sdk/dist/protocols/synthetix-v3/addresses.d.ts.map +1 -1
  656. package/sdk/dist/protocols/synthetix-v3/addresses.js +2 -1
  657. package/sdk/dist/protocols/synthetix-v3/addresses.js.map +1 -1
  658. package/sdk/dist/protocols/synthra-v3/abis.d.ts +347 -0
  659. package/sdk/dist/protocols/synthra-v3/abis.d.ts.map +1 -0
  660. package/sdk/dist/protocols/synthra-v3/abis.js +242 -0
  661. package/sdk/dist/protocols/synthra-v3/abis.js.map +1 -0
  662. package/sdk/dist/protocols/synthra-v3/addresses.d.ts +3 -0
  663. package/sdk/dist/protocols/synthra-v3/addresses.d.ts.map +1 -0
  664. package/sdk/dist/protocols/synthra-v3/addresses.js +16 -0
  665. package/sdk/dist/protocols/synthra-v3/addresses.js.map +1 -0
  666. package/sdk/dist/protocols/synthra-v3/functions.d.ts +2 -0
  667. package/sdk/dist/protocols/synthra-v3/functions.d.ts.map +1 -0
  668. package/sdk/dist/protocols/synthra-v3/functions.js +9 -0
  669. package/sdk/dist/protocols/synthra-v3/functions.js.map +1 -0
  670. package/sdk/dist/protocols/synthra-v3/index.d.ts +5 -0
  671. package/sdk/dist/protocols/synthra-v3/index.d.ts.map +1 -0
  672. package/sdk/dist/protocols/synthra-v3/index.js +5 -0
  673. package/sdk/dist/protocols/synthra-v3/index.js.map +1 -0
  674. package/sdk/dist/protocols/synthra-v3/info.d.ts +3 -0
  675. package/sdk/dist/protocols/synthra-v3/info.d.ts.map +1 -0
  676. package/sdk/dist/protocols/synthra-v3/info.js +11 -0
  677. package/sdk/dist/protocols/synthra-v3/info.js.map +1 -0
  678. package/sdk/dist/protocols/thales/abis.d.ts +53 -24
  679. package/sdk/dist/protocols/thales/abis.d.ts.map +1 -1
  680. package/sdk/dist/protocols/thales/abis.js +27 -11
  681. package/sdk/dist/protocols/thales/abis.js.map +1 -1
  682. package/sdk/dist/protocols/thales/functions.d.ts +2 -2
  683. package/sdk/dist/protocols/thales/functions.d.ts.map +1 -1
  684. package/sdk/dist/protocols/thales/functions.js +5 -6
  685. package/sdk/dist/protocols/thales/functions.js.map +1 -1
  686. package/sdk/dist/protocols/thruster/abis.d.ts +1 -1
  687. package/sdk/dist/protocols/thruster/abis.js +1 -1
  688. package/sdk/dist/protocols/trader-joe/abis.d.ts +3 -3
  689. package/sdk/dist/protocols/trader-joe/abis.js +2 -2
  690. package/sdk/dist/protocols/trader-joe/abis.js.map +1 -1
  691. package/sdk/dist/protocols/uniswap-v2/addresses.d.ts.map +1 -1
  692. package/sdk/dist/protocols/uniswap-v2/addresses.js +10 -0
  693. package/sdk/dist/protocols/uniswap-v2/addresses.js.map +1 -1
  694. package/sdk/dist/protocols/uniswap-v3/abis.d.ts +127 -8
  695. package/sdk/dist/protocols/uniswap-v3/abis.d.ts.map +1 -1
  696. package/sdk/dist/protocols/uniswap-v3/abis.js +90 -8
  697. package/sdk/dist/protocols/uniswap-v3/abis.js.map +1 -1
  698. package/sdk/dist/protocols/uniswap-v3/addresses.d.ts.map +1 -1
  699. package/sdk/dist/protocols/uniswap-v3/addresses.js +14 -0
  700. package/sdk/dist/protocols/uniswap-v3/addresses.js.map +1 -1
  701. package/sdk/dist/protocols/uniswap-v4/abis.d.ts +27 -15
  702. package/sdk/dist/protocols/uniswap-v4/abis.d.ts.map +1 -1
  703. package/sdk/dist/protocols/uniswap-v4/abis.js +25 -15
  704. package/sdk/dist/protocols/uniswap-v4/abis.js.map +1 -1
  705. package/sdk/dist/protocols/uniswap-v4/addresses.d.ts.map +1 -1
  706. package/sdk/dist/protocols/uniswap-v4/addresses.js +11 -0
  707. package/sdk/dist/protocols/uniswap-v4/addresses.js.map +1 -1
  708. package/sdk/dist/protocols/unitflow-v3/abis.d.ts +104 -0
  709. package/sdk/dist/protocols/unitflow-v3/abis.d.ts.map +1 -0
  710. package/sdk/dist/protocols/unitflow-v3/abis.js +70 -0
  711. package/sdk/dist/protocols/unitflow-v3/abis.js.map +1 -0
  712. package/sdk/dist/protocols/unitflow-v3/addresses.d.ts +3 -0
  713. package/sdk/dist/protocols/unitflow-v3/addresses.d.ts.map +1 -0
  714. package/sdk/dist/protocols/unitflow-v3/addresses.js +19 -0
  715. package/sdk/dist/protocols/unitflow-v3/addresses.js.map +1 -0
  716. package/sdk/dist/protocols/unitflow-v3/functions.d.ts +2 -0
  717. package/sdk/dist/protocols/unitflow-v3/functions.d.ts.map +1 -0
  718. package/sdk/dist/protocols/unitflow-v3/functions.js +9 -0
  719. package/sdk/dist/protocols/unitflow-v3/functions.js.map +1 -0
  720. package/sdk/dist/protocols/unitflow-v3/index.d.ts +5 -0
  721. package/sdk/dist/protocols/unitflow-v3/index.d.ts.map +1 -0
  722. package/sdk/dist/protocols/unitflow-v3/index.js +5 -0
  723. package/sdk/dist/protocols/unitflow-v3/index.js.map +1 -0
  724. package/sdk/dist/protocols/unitflow-v3/info.d.ts +3 -0
  725. package/sdk/dist/protocols/unitflow-v3/info.d.ts.map +1 -0
  726. package/sdk/dist/protocols/unitflow-v3/info.js +12 -0
  727. package/sdk/dist/protocols/unitflow-v3/info.js.map +1 -0
  728. package/sdk/dist/protocols/velodrome/addresses.d.ts.map +1 -1
  729. package/sdk/dist/protocols/velodrome/addresses.js +3 -1
  730. package/sdk/dist/protocols/velodrome/addresses.js.map +1 -1
  731. package/sdk/dist/protocols/venus/abis.d.ts +62 -1
  732. package/sdk/dist/protocols/venus/abis.d.ts.map +1 -1
  733. package/sdk/dist/protocols/venus/abis.js +48 -1
  734. package/sdk/dist/protocols/venus/abis.js.map +1 -1
  735. package/sdk/dist/protocols/vertex/abis.d.ts +16 -9
  736. package/sdk/dist/protocols/vertex/abis.d.ts.map +1 -1
  737. package/sdk/dist/protocols/vertex/abis.js +13 -4
  738. package/sdk/dist/protocols/vertex/abis.js.map +1 -1
  739. package/sdk/dist/protocols/wormhole/abis.d.ts +2 -2
  740. package/sdk/dist/protocols/wormhole/abis.js +2 -2
  741. package/sdk/dist/protocols/wormhole/addresses.d.ts.map +1 -1
  742. package/sdk/dist/protocols/wormhole/addresses.js +9 -0
  743. package/sdk/dist/protocols/wormhole/addresses.js.map +1 -1
  744. package/sdk/dist/protocols/zerolend/addresses.d.ts.map +1 -1
  745. package/sdk/dist/protocols/zerolend/addresses.js +2 -1
  746. package/sdk/dist/protocols/zerolend/addresses.js.map +1 -1
  747. package/sdk/dist/protocols/zerox/addresses.d.ts.map +1 -1
  748. package/sdk/dist/protocols/zerox/addresses.js +2 -1
  749. package/sdk/dist/protocols/zerox/addresses.js.map +1 -1
  750. package/sdk/dist/protocols/zksync-bridge/abis.d.ts +1 -1
  751. package/sdk/dist/protocols/zksync-bridge/abis.js +1 -1
  752. package/sdk/dist/recipes/cctp-transfer.d.ts +17 -6
  753. package/sdk/dist/recipes/cctp-transfer.d.ts.map +1 -1
  754. package/sdk/dist/recipes/cctp-transfer.js +7 -20
  755. package/sdk/dist/recipes/cctp-transfer.js.map +1 -1
  756. package/sdk/dist/recipes/index.d.ts +5 -15
  757. package/sdk/dist/recipes/index.d.ts.map +1 -1
  758. package/sdk/dist/recipes/index.js +19 -36
  759. package/sdk/dist/recipes/index.js.map +1 -1
  760. package/sdk/dist/recipes/settle.sauce.ts +15 -2
  761. package/sdk/dist/routes/chain-exports.generated.d.ts +97 -0
  762. package/sdk/dist/routes/chain-exports.generated.d.ts.map +1 -0
  763. package/sdk/dist/routes/chain-exports.generated.js +91 -0
  764. package/sdk/dist/routes/chain-exports.generated.js.map +1 -0
  765. package/sdk/dist/routes/compile-types.d.ts +3 -0
  766. package/sdk/dist/routes/compile-types.d.ts.map +1 -1
  767. package/sdk/dist/routes/composed.d.ts +13 -0
  768. package/sdk/dist/routes/composed.d.ts.map +1 -0
  769. package/sdk/dist/routes/composed.js +94 -0
  770. package/sdk/dist/routes/composed.js.map +1 -0
  771. package/sdk/dist/routes/encode.d.ts +6 -6
  772. package/sdk/dist/routes/globals.d.ts +19 -4
  773. package/sdk/dist/routes/globals.d.ts.map +1 -1
  774. package/sdk/dist/routes/globals.js +51 -85
  775. package/sdk/dist/routes/globals.js.map +1 -1
  776. package/sdk/dist/routes/index.d.ts +15 -6
  777. package/sdk/dist/routes/index.d.ts.map +1 -1
  778. package/sdk/dist/routes/index.js +17 -5
  779. package/sdk/dist/routes/index.js.map +1 -1
  780. package/sdk/dist/routes/intent-dsl.d.ts +60 -19
  781. package/sdk/dist/routes/intent-dsl.d.ts.map +1 -1
  782. package/sdk/dist/routes/intent-dsl.js +175 -67
  783. package/sdk/dist/routes/intent-dsl.js.map +1 -1
  784. package/sdk/dist/routes/intent-pot.d.ts +49 -0
  785. package/sdk/dist/routes/intent-pot.d.ts.map +1 -0
  786. package/sdk/dist/routes/intent-pot.js +46 -0
  787. package/sdk/dist/routes/intent-pot.js.map +1 -0
  788. package/sdk/dist/routes/intent-sugar.d.ts +97 -0
  789. package/sdk/dist/routes/intent-sugar.d.ts.map +1 -0
  790. package/sdk/dist/routes/intent-sugar.js +615 -0
  791. package/sdk/dist/routes/intent-sugar.js.map +1 -0
  792. package/sdk/dist/routes/nest-dynamic.d.ts +146 -0
  793. package/sdk/dist/routes/nest-dynamic.d.ts.map +1 -0
  794. package/sdk/dist/routes/nest-dynamic.js +308 -0
  795. package/sdk/dist/routes/nest-dynamic.js.map +1 -0
  796. package/sdk/dist/routes/nest.d.ts +16 -5
  797. package/sdk/dist/routes/nest.d.ts.map +1 -1
  798. package/sdk/dist/routes/nest.js +29 -10
  799. package/sdk/dist/routes/nest.js.map +1 -1
  800. package/sdk/dist/routes/portal.d.ts +7 -272
  801. package/sdk/dist/routes/portal.d.ts.map +1 -1
  802. package/sdk/dist/routes/portal.js +13 -92
  803. package/sdk/dist/routes/portal.js.map +1 -1
  804. package/sdk/dist/routes/protocol-rewrite.d.ts.map +1 -1
  805. package/sdk/dist/routes/protocol-rewrite.js +2 -0
  806. package/sdk/dist/routes/protocol-rewrite.js.map +1 -1
  807. package/sdk/dist/routes/rs-compile.d.ts +26 -15
  808. package/sdk/dist/routes/rs-compile.d.ts.map +1 -1
  809. package/sdk/dist/routes/rs-compile.js +57 -169
  810. package/sdk/dist/routes/rs-compile.js.map +1 -1
  811. package/sdk/dist/routes/sauce-route.d.ts +26 -1
  812. package/sdk/dist/routes/sauce-route.d.ts.map +1 -1
  813. package/sdk/dist/routes/sauce-route.js +109 -6
  814. package/sdk/dist/routes/sauce-route.js.map +1 -1
  815. package/sdk/dist/routes/source-globals.generated.d.ts +435 -20
  816. package/sdk/dist/routes/source-globals.generated.d.ts.map +1 -1
  817. package/sdk/dist/routes/template.d.ts +184 -0
  818. package/sdk/dist/routes/template.d.ts.map +1 -0
  819. package/sdk/dist/routes/template.js +338 -0
  820. package/sdk/dist/routes/template.js.map +1 -0
  821. package/sdk/dist/routes/token-registry.d.ts.map +1 -1
  822. package/sdk/dist/routes/token-registry.js +35 -0
  823. package/sdk/dist/routes/token-registry.js.map +1 -1
  824. package/sdk/dist/routes/token-rewrite.d.ts +1 -1
  825. package/sdk/dist/routes/token-rewrite.d.ts.map +1 -1
  826. package/sdk/dist/skills/loader.d.ts +2 -7
  827. package/sdk/dist/skills/loader.d.ts.map +1 -1
  828. package/sdk/dist/skills/loader.js +14 -25
  829. package/sdk/dist/skills/loader.js.map +1 -1
  830. package/sdk/dist/std/token/token.evm.js +56 -15
  831. package/sdk/dist/std/token/token.svm.js +24 -3
  832. package/sdk/dist/svm/accessors.d.ts +3 -3
  833. package/sdk/dist/svm/accessors.js +3 -3
  834. package/sdk/dist/svm/client.d.ts +1 -0
  835. package/sdk/dist/svm/client.d.ts.map +1 -1
  836. package/sdk/dist/svm/client.js +6 -0
  837. package/sdk/dist/svm/client.js.map +1 -1
  838. package/sdk/dist/svm/clusters.d.ts +6 -2
  839. package/sdk/dist/svm/clusters.d.ts.map +1 -1
  840. package/sdk/dist/svm/clusters.js +0 -2
  841. package/sdk/dist/svm/clusters.js.map +1 -1
  842. package/sdk/dist/svm/engine-artifacts.d.ts +24 -13
  843. package/sdk/dist/svm/engine-artifacts.d.ts.map +1 -1
  844. package/sdk/dist/svm/engine-artifacts.js +31 -26
  845. package/sdk/dist/svm/engine-artifacts.js.map +1 -1
  846. package/sdk/dist/svm/engine-public.d.ts.map +1 -1
  847. package/sdk/dist/svm/engine-public.js +2 -1
  848. package/sdk/dist/svm/engine-public.js.map +1 -1
  849. package/sdk/dist/svm/index.d.ts +0 -1
  850. package/sdk/dist/svm/index.d.ts.map +1 -1
  851. package/sdk/dist/svm/index.js +3 -1
  852. package/sdk/dist/svm/index.js.map +1 -1
  853. package/sdk/dist/svm/intent.d.ts.map +1 -1
  854. package/sdk/dist/svm/intent.js +4 -3
  855. package/sdk/dist/svm/intent.js.map +1 -1
  856. package/sdk/dist/svm/loader.d.ts.map +1 -1
  857. package/sdk/dist/svm/loader.js +2 -3
  858. package/sdk/dist/svm/loader.js.map +1 -1
  859. package/sdk/dist/svm/recipes/index.d.ts +57 -4
  860. package/sdk/dist/svm/recipes/index.d.ts.map +1 -1
  861. package/sdk/dist/svm/recipes/index.js +7 -9
  862. package/sdk/dist/svm/recipes/index.js.map +1 -1
  863. package/sdk/dist/svm/venues/alphaq/index.d.ts.map +1 -1
  864. package/sdk/dist/svm/venues/alphaq/index.js +4 -2
  865. package/sdk/dist/svm/venues/alphaq/index.js.map +1 -1
  866. package/sdk/dist/svm/venues/binaryfi/index.d.ts.map +1 -1
  867. package/sdk/dist/svm/venues/binaryfi/index.js +2 -1
  868. package/sdk/dist/svm/venues/binaryfi/index.js.map +1 -1
  869. package/sdk/dist/svm/venues/fluxbeam/index.d.ts.map +1 -1
  870. package/sdk/dist/svm/venues/fluxbeam/index.js +2 -7
  871. package/sdk/dist/svm/venues/fluxbeam/index.js.map +1 -1
  872. package/sdk/dist/svm/venues/jupiter-lend-earn/index.d.ts.map +1 -1
  873. package/sdk/dist/svm/venues/jupiter-lend-earn/index.js +2 -1
  874. package/sdk/dist/svm/venues/jupiter-lend-earn/index.js.map +1 -1
  875. package/sdk/dist/svm/venues/kipseli/index.d.ts.map +1 -1
  876. package/sdk/dist/svm/venues/kipseli/index.js +31 -14
  877. package/sdk/dist/svm/venues/kipseli/index.js.map +1 -1
  878. package/sdk/dist/svm/venues/mercurial/index.d.ts.map +1 -1
  879. package/sdk/dist/svm/venues/mercurial/index.js +2 -7
  880. package/sdk/dist/svm/venues/mercurial/index.js.map +1 -1
  881. package/sdk/dist/svm/venues/meteora-damm-v1-stable/index.d.ts.map +1 -1
  882. package/sdk/dist/svm/venues/meteora-damm-v1-stable/index.js +3 -2
  883. package/sdk/dist/svm/venues/meteora-damm-v1-stable/index.js.map +1 -1
  884. package/sdk/dist/svm/venues/mswap/index.d.ts.map +1 -1
  885. package/sdk/dist/svm/venues/mswap/index.js +2 -2
  886. package/sdk/dist/svm/venues/mswap/index.js.map +1 -1
  887. package/sdk/dist/svm/venues/orca-legacy-token-swap/index.d.ts.map +1 -1
  888. package/sdk/dist/svm/venues/orca-legacy-token-swap/index.js +2 -7
  889. package/sdk/dist/svm/venues/orca-legacy-token-swap/index.js.map +1 -1
  890. package/sdk/dist/svm/venues/saber-stableswap/index.d.ts.map +1 -1
  891. package/sdk/dist/svm/venues/saber-stableswap/index.js +2 -7
  892. package/sdk/dist/svm/venues/saber-stableswap/index.js.map +1 -1
  893. package/sdk/dist/svm/venues/sanctum-infinity/index.js +2 -2
  894. package/sdk/dist/svm/venues/sanctum-infinity/index.js.map +1 -1
  895. package/sdk/dist/svm/venues/sanctum-stake-pool/index.d.ts.map +1 -1
  896. package/sdk/dist/svm/venues/sanctum-stake-pool/index.js +2 -8
  897. package/sdk/dist/svm/venues/sanctum-stake-pool/index.js.map +1 -1
  898. package/sdk/dist/svm/venues/spl-token-swap-forks/index.d.ts.map +1 -1
  899. package/sdk/dist/svm/venues/spl-token-swap-forks/index.js +2 -7
  900. package/sdk/dist/svm/venues/spl-token-swap-forks/index.js.map +1 -1
  901. package/sdk/dist/svm/venues/stabble-common.d.ts.map +1 -1
  902. package/sdk/dist/svm/venues/stabble-common.js +3 -8
  903. package/sdk/dist/svm/venues/stabble-common.js.map +1 -1
  904. package/sdk/dist/svm/verify.d.ts.map +1 -1
  905. package/sdk/dist/svm/verify.js +1 -4
  906. package/sdk/dist/svm/verify.js.map +1 -1
  907. package/sdk/dist/swap/index.d.ts +4 -4
  908. package/sdk/dist/swap/index.d.ts.map +1 -1
  909. package/sdk/dist/swap/index.js +4 -4
  910. package/sdk/dist/swap/index.js.map +1 -1
  911. package/sdk/dist/swap/source.d.ts +0 -7
  912. package/sdk/dist/swap/source.d.ts.map +1 -1
  913. package/sdk/dist/swap/source.js +3 -11
  914. package/sdk/dist/swap/source.js.map +1 -1
  915. package/sdk/dist/token/api.d.ts +8 -9
  916. package/sdk/dist/token/api.d.ts.map +1 -1
  917. package/sdk/dist/token/api.js +4 -5
  918. package/sdk/dist/token/api.js.map +1 -1
  919. package/sdk/dist/token/evm.d.ts +5 -2
  920. package/sdk/dist/token/evm.d.ts.map +1 -1
  921. package/sdk/dist/token/evm.js +24 -13
  922. package/sdk/dist/token/evm.js.map +1 -1
  923. package/sdk/dist/token/index.d.ts +4 -4
  924. package/sdk/dist/token/index.js +4 -4
  925. package/sdk/dist/token/safe.d.ts +17 -0
  926. package/sdk/dist/token/safe.d.ts.map +1 -0
  927. package/sdk/dist/token/safe.js +211 -0
  928. package/sdk/dist/token/safe.js.map +1 -0
  929. package/sdk/dist/token/source.d.ts +0 -4
  930. package/sdk/dist/token/source.d.ts.map +1 -1
  931. package/sdk/dist/token/source.js +7 -10
  932. package/sdk/dist/token/source.js.map +1 -1
  933. package/sdk/dist/verify/decode.d.ts +6 -6
  934. package/sdk/dist/verify/decode.js +7 -7
  935. package/sdk/dist/verify/decode.js.map +1 -1
  936. package/sdk/dist/verify/index.js +2 -2
  937. package/sdk/dist/verify/intent.js +2 -2
  938. package/sdk/dist/verify/vectors.d.ts +1 -1
  939. package/sdk/dist/verify/vectors.d.ts.map +1 -1
  940. package/sdk/dist/verify/vectors.js +2 -2
  941. package/sdk/dist/verify/vectors.js.map +1 -1
  942. package/sdk/dist/verify/wire.d.ts +21 -4
  943. package/sdk/dist/verify/wire.d.ts.map +1 -1
  944. package/sdk/dist/verify/wire.js +21 -4
  945. package/sdk/dist/verify/wire.js.map +1 -1
  946. package/sdk/dist/wasm-compiler.d.ts +31 -0
  947. package/sdk/dist/wasm-compiler.d.ts.map +1 -0
  948. package/sdk/dist/wasm-compiler.js +52 -0
  949. package/sdk/dist/wasm-compiler.js.map +1 -0
  950. package/sdk/src/protocols/aave-v4/AaveV4HubABI.json +67 -0
  951. package/sdk/src/protocols/aave-v4/AaveV4SpokeABI.json +215 -0
  952. package/sdk/src/protocols/aave-v4/abis.ts +139 -0
  953. package/sdk/src/protocols/aave-v4/addresses.ts +66 -0
  954. package/sdk/src/protocols/aave-v4/functions.ts +39 -0
  955. package/sdk/src/protocols/aave-v4/index.ts +4 -0
  956. package/sdk/src/protocols/aave-v4/info.ts +14 -0
  957. package/sdk/src/protocols/across/AcrossHubPoolABI.json +2 -2
  958. package/sdk/src/protocols/across/AcrossSpokePoolABI.json +27 -11
  959. package/sdk/src/protocols/across/abis.ts +16 -8
  960. package/sdk/src/protocols/across/addresses.ts +10 -0
  961. package/sdk/src/protocols/across/functions.ts +2 -2
  962. package/sdk/src/protocols/aerodrome-slipstream/AeroMetarouterABI.json +24 -0
  963. package/sdk/src/protocols/aerodrome-slipstream/SlipstreamCLFactoryABI.json +58 -0
  964. package/sdk/src/protocols/aerodrome-slipstream/SlipstreamPositionManagerABI.json +77 -0
  965. package/sdk/src/protocols/aerodrome-slipstream/abis.ts +74 -0
  966. package/sdk/src/protocols/aerodrome-slipstream/addresses.ts +40 -0
  967. package/sdk/src/protocols/aerodrome-slipstream/functions.ts +8 -0
  968. package/sdk/src/protocols/aerodrome-slipstream/index.ts +4 -0
  969. package/sdk/src/protocols/aerodrome-slipstream/info.ts +14 -0
  970. package/sdk/src/protocols/aevo/DepositContractABI.json +23 -2
  971. package/sdk/src/protocols/aevo/abis.ts +10 -2
  972. package/sdk/src/protocols/aevo/functions.ts +2 -2
  973. package/sdk/src/protocols/alchemix/AlchemistABI.json +1 -1
  974. package/sdk/src/protocols/alchemix/abis.ts +1 -1
  975. package/sdk/src/protocols/ambient/CrocSwapDexABI.json +2 -2
  976. package/sdk/src/protocols/ambient/abis.ts +3 -2
  977. package/sdk/src/protocols/ambient/addresses.ts +2 -1
  978. package/sdk/src/protocols/arrakis/ArrakisRouterABI.json +5 -1
  979. package/sdk/src/protocols/arrakis/ArrakisVaultABI.json +0 -16
  980. package/sdk/src/protocols/arrakis/abis.ts +2 -11
  981. package/sdk/src/protocols/arrakis/functions.ts +2 -1
  982. package/sdk/src/protocols/axelar/AxelarITSABI.json +1 -1
  983. package/sdk/src/protocols/axelar/abis.ts +1 -1
  984. package/sdk/src/protocols/balancer-v2/BalancerV2VaultABI.json +7 -7
  985. package/sdk/src/protocols/balancer-v2/abis.ts +7 -7
  986. package/sdk/src/protocols/cbeth/CbETHABI.json +10 -1
  987. package/sdk/src/protocols/cbeth/abis.ts +6 -2
  988. package/sdk/src/protocols/cctp/TokenMessengerABI.json +30 -9
  989. package/sdk/src/protocols/cctp/abis.ts +3 -1
  990. package/sdk/src/protocols/cctp/addresses.ts +3 -0
  991. package/sdk/src/protocols/chainlink/AggregatorV3ABI.json +3 -3
  992. package/sdk/src/protocols/chainlink/FeedRegistryABI.json +3 -3
  993. package/sdk/src/protocols/chainlink/abis.ts +6 -6
  994. package/sdk/src/protocols/chainlink/addresses.ts +10 -0
  995. package/sdk/src/protocols/chainlink-ccip/CCIPRouterABI.json +1 -1
  996. package/sdk/src/protocols/chainlink-ccip/abis.ts +1 -1
  997. package/sdk/src/protocols/chainlink-ccip/addresses.ts +9 -0
  998. package/sdk/src/protocols/circle-gateway/GatewayMinterABI.json +49 -0
  999. package/sdk/src/protocols/circle-gateway/GatewayWalletABI.json +111 -0
  1000. package/sdk/src/protocols/circle-gateway/abis.ts +86 -0
  1001. package/sdk/src/protocols/circle-gateway/addresses.ts +39 -0
  1002. package/sdk/src/protocols/circle-gateway/functions.ts +28 -0
  1003. package/sdk/src/protocols/circle-gateway/index.ts +4 -0
  1004. package/sdk/src/protocols/circle-gateway/info.ts +14 -0
  1005. package/sdk/src/protocols/compound-v2/CErc20ABI.json +2 -2
  1006. package/sdk/src/protocols/compound-v2/abis.ts +2 -2
  1007. package/sdk/src/protocols/connext/EverclearSpokeABI.json +60 -6
  1008. package/sdk/src/protocols/connext/abis.ts +27 -5
  1009. package/sdk/src/protocols/connext/addresses.ts +1 -7
  1010. package/sdk/src/protocols/connext/functions.ts +3 -2
  1011. package/sdk/src/protocols/curve/CurveRouterNGABI.json +37 -0
  1012. package/sdk/src/protocols/curve/CurveStableSwapABI.json +7 -7
  1013. package/sdk/src/protocols/curve/CurveThreePoolABI.json +117 -0
  1014. package/sdk/src/protocols/curve/abis.ts +91 -7
  1015. package/sdk/src/protocols/debridge/DlnDestinationABI.json +7 -7
  1016. package/sdk/src/protocols/debridge/DlnSourceABI.json +1 -1
  1017. package/sdk/src/protocols/debridge/abis.ts +5 -5
  1018. package/sdk/src/protocols/debridge/addresses.ts +11 -0
  1019. package/sdk/src/protocols/eco-routes/abis.ts +633 -0
  1020. package/sdk/src/protocols/eco-routes/addresses.generated.ts +589 -0
  1021. package/sdk/src/protocols/eco-routes/addresses.ts +27 -0
  1022. package/sdk/src/protocols/eco-routes/functions.ts +45 -0
  1023. package/sdk/src/protocols/eco-routes/index.ts +5 -0
  1024. package/sdk/src/protocols/eco-routes/info.ts +14 -0
  1025. package/sdk/src/protocols/eco-routes/lookup.ts +215 -0
  1026. package/sdk/src/protocols/eigenlayer/DelegationManagerABI.json +2 -2
  1027. package/sdk/src/protocols/eigenlayer/StrategyManagerABI.json +2 -2
  1028. package/sdk/src/protocols/eigenlayer/abis.ts +5 -4
  1029. package/sdk/src/protocols/ens/ENSRegistryABI.json +4 -4
  1030. package/sdk/src/protocols/ens/abis.ts +4 -4
  1031. package/sdk/src/protocols/etherfi/WeETHABI.json +1 -1
  1032. package/sdk/src/protocols/etherfi/abis.ts +2 -1
  1033. package/sdk/src/protocols/euler-v2/EVCABI.json +2 -2
  1034. package/sdk/src/protocols/euler-v2/abis.ts +2 -2
  1035. package/sdk/src/protocols/fluid/FluidLendingABI.json +20 -37
  1036. package/sdk/src/protocols/fluid/FluidVaultABI.json +41 -0
  1037. package/sdk/src/protocols/fluid/abis.ts +41 -18
  1038. package/sdk/src/protocols/fluid/functions.ts +18 -16
  1039. package/sdk/src/protocols/gains-network/DiamondABI.json +49 -37
  1040. package/sdk/src/protocols/gains-network/abis.ts +26 -21
  1041. package/sdk/src/protocols/gains-network/functions.ts +6 -6
  1042. package/sdk/src/protocols/gamma/UniProxyLegacyABI.json +62 -0
  1043. package/sdk/src/protocols/gamma/abis.ts +31 -0
  1044. package/sdk/src/protocols/gamma/addresses.ts +2 -7
  1045. package/sdk/src/protocols/gamma/functions.ts +10 -0
  1046. package/sdk/src/protocols/gelato/GelatoAutomateABI.json +2 -2
  1047. package/sdk/src/protocols/gelato/abis.ts +2 -2
  1048. package/sdk/src/protocols/gmx-v1/PositionRouterABI.json +21 -3
  1049. package/sdk/src/protocols/gmx-v1/abis.ts +5 -3
  1050. package/sdk/src/protocols/gmx-v1/functions.ts +2 -2
  1051. package/sdk/src/protocols/gmx-v2/ExchangeRouterABI.json +13 -5
  1052. package/sdk/src/protocols/gmx-v2/abis.ts +7 -4
  1053. package/sdk/src/protocols/gmx-v2/addresses.ts +3 -1
  1054. package/sdk/src/protocols/gmx-v2/functions.ts +4 -2
  1055. package/sdk/src/protocols/harvest/VaultABI.json +12 -2
  1056. package/sdk/src/protocols/harvest/abis.ts +2 -2
  1057. package/sdk/src/protocols/hegic/HegicABI.json +6 -2
  1058. package/sdk/src/protocols/hegic/abis.ts +7 -2
  1059. package/sdk/src/protocols/hegic/addresses.ts +1 -0
  1060. package/sdk/src/protocols/hegic/functions.ts +3 -3
  1061. package/sdk/src/protocols/hop/addresses.ts +5 -2
  1062. package/sdk/src/protocols/hyperlane/HyperlaneMailboxABI.json +5 -5
  1063. package/sdk/src/protocols/hyperlane/abis.ts +5 -5
  1064. package/sdk/src/protocols/hyperlane/addresses.ts +9 -0
  1065. package/sdk/src/protocols/index.ts +13 -0
  1066. package/sdk/src/protocols/kim/KimRouterABI.json +8 -27
  1067. package/sdk/src/protocols/kim/abis.ts +6 -12
  1068. package/sdk/src/protocols/kim/functions.ts +3 -2
  1069. package/sdk/src/protocols/kyberswap/KyberSwapElasticRouterABI.json +1 -1
  1070. package/sdk/src/protocols/kyberswap/KyberSwapMetaAggregationRouterABI.json +52 -18
  1071. package/sdk/src/protocols/kyberswap/abis.ts +21 -8
  1072. package/sdk/src/protocols/kyberswap/addresses.ts +12 -2
  1073. package/sdk/src/protocols/kyberswap-aggregator/addresses.ts +12 -1
  1074. package/sdk/src/protocols/layerbank/LTokenABI.json +19 -29
  1075. package/sdk/src/protocols/layerbank/LayerBankCoreABI.json +87 -2
  1076. package/sdk/src/protocols/layerbank/abis.ts +69 -17
  1077. package/sdk/src/protocols/layerbank/addresses.ts +3 -1
  1078. package/sdk/src/protocols/layerbank/functions.ts +18 -16
  1079. package/sdk/src/protocols/layerzero/LayerZeroEndpointV2ABI.json +3 -3
  1080. package/sdk/src/protocols/layerzero/abis.ts +3 -3
  1081. package/sdk/src/protocols/layerzero/addresses.ts +11 -1
  1082. package/sdk/src/protocols/level-finance/LiquidityPoolABI.json +8 -0
  1083. package/sdk/src/protocols/level-finance/abis.ts +2 -0
  1084. package/sdk/src/protocols/level-finance/functions.ts +4 -4
  1085. package/sdk/src/protocols/lifi/LiFiDiamondABI.json +54 -4
  1086. package/sdk/src/protocols/lifi/abis.ts +24 -4
  1087. package/sdk/src/protocols/lifi/addresses.ts +9 -0
  1088. package/sdk/src/protocols/lifi/functions.ts +5 -2
  1089. package/sdk/src/protocols/liquity-v1/BorrowerOperationsABI.json +8 -0
  1090. package/sdk/src/protocols/liquity-v1/abis.ts +7 -1
  1091. package/sdk/src/protocols/liquity-v1/functions.ts +1 -1
  1092. package/sdk/src/protocols/mantle-meth/METHABI.json +0 -46
  1093. package/sdk/src/protocols/mantle-meth/METHStakingABI.json +50 -0
  1094. package/sdk/src/protocols/mantle-meth/abis.ts +23 -17
  1095. package/sdk/src/protocols/mantle-meth/addresses.ts +3 -0
  1096. package/sdk/src/protocols/mantle-meth/functions.ts +4 -4
  1097. package/sdk/src/protocols/maverick/MaverickV2FactoryABI.json +8 -0
  1098. package/sdk/src/protocols/maverick/MaverickV2RouterABI.json +4 -0
  1099. package/sdk/src/protocols/maverick/abis.ts +7 -1
  1100. package/sdk/src/protocols/morpho-blue/addresses.ts +10 -0
  1101. package/sdk/src/protocols/mux-protocol/LiquidityPoolABI.json +45 -11
  1102. package/sdk/src/protocols/mux-protocol/OrderBookABI.json +59 -17
  1103. package/sdk/src/protocols/mux-protocol/abis.ts +55 -22
  1104. package/sdk/src/protocols/mux-protocol/functions.ts +8 -8
  1105. package/sdk/src/protocols/olympus/StakingABI.json +8 -3
  1106. package/sdk/src/protocols/olympus/abis.ts +2 -2
  1107. package/sdk/src/protocols/oneinch/AggregationRouterV6ABI.json +5 -5
  1108. package/sdk/src/protocols/oneinch/abis.ts +5 -3
  1109. package/sdk/src/protocols/oneinch/functions.ts +2 -2
  1110. package/sdk/src/protocols/openocean/OpenOceanExchangeV2ABI.json +19 -1
  1111. package/sdk/src/protocols/openocean/abis.ts +11 -1
  1112. package/sdk/src/protocols/openocean/functions.ts +1 -1
  1113. package/sdk/src/protocols/opyn/ControllerABI.json +6 -1
  1114. package/sdk/src/protocols/opyn/abis.ts +1 -1
  1115. package/sdk/src/protocols/pancakeswap-v3/PancakeSwapV3FactoryABI.json +1 -1
  1116. package/sdk/src/protocols/pancakeswap-v3/PancakeSwapV3NFPMABI.json +3 -3
  1117. package/sdk/src/protocols/pancakeswap-v3/PancakeSwapV3SmartRouterABI.json +2 -2
  1118. package/sdk/src/protocols/pancakeswap-v3/abis.ts +6 -6
  1119. package/sdk/src/protocols/paraswap/AugustusV5ABI.json +1 -1
  1120. package/sdk/src/protocols/paraswap/abis.ts +1 -1
  1121. package/sdk/src/protocols/pendle/PendleRouterABI.json +392 -6
  1122. package/sdk/src/protocols/pendle/abis.ts +160 -6
  1123. package/sdk/src/protocols/permit2/Permit2ABI.json +1 -1
  1124. package/sdk/src/protocols/permit2/abis.ts +1 -1
  1125. package/sdk/src/protocols/permit2/addresses.ts +9 -0
  1126. package/sdk/src/protocols/perpetual-protocol/ClearingHouseABI.json +61 -49
  1127. package/sdk/src/protocols/perpetual-protocol/abis.ts +27 -14
  1128. package/sdk/src/protocols/premia/DiamondABI.json +24 -24
  1129. package/sdk/src/protocols/premia/abis.ts +20 -10
  1130. package/sdk/src/protocols/premia/addresses.ts +3 -8
  1131. package/sdk/src/protocols/premia/functions.ts +8 -8
  1132. package/sdk/src/protocols/pyth/PythOracleABI.json +3 -3
  1133. package/sdk/src/protocols/pyth/abis.ts +6 -3
  1134. package/sdk/src/protocols/reflexer/ETHJoinABI.json +5 -1
  1135. package/sdk/src/protocols/reflexer/SAFEEngineABI.json +4 -4
  1136. package/sdk/src/protocols/reflexer/abis.ts +10 -6
  1137. package/sdk/src/protocols/renzo/RestakeManagerABI.json +1 -1
  1138. package/sdk/src/protocols/renzo/abis.ts +1 -1
  1139. package/sdk/src/protocols/sablier/LockupLinearABI.json +2 -2
  1140. package/sdk/src/protocols/sablier/abis.ts +2 -2
  1141. package/sdk/src/protocols/safe/addresses.ts +10 -0
  1142. package/sdk/src/protocols/seaport/SeaportABI.json +87 -5
  1143. package/sdk/src/protocols/seaport/abis.ts +41 -5
  1144. package/sdk/src/protocols/seaport/addresses.ts +10 -0
  1145. package/sdk/src/protocols/seaport/functions.ts +1 -0
  1146. package/sdk/src/protocols/silo/SiloABI.json +4 -0
  1147. package/sdk/src/protocols/silo/abis.ts +4 -1
  1148. package/sdk/src/protocols/silo/addresses.ts +2 -1
  1149. package/sdk/src/protocols/silo/functions.ts +2 -1
  1150. package/sdk/src/protocols/socket/SocketGatewayABI.json +1 -17
  1151. package/sdk/src/protocols/socket/abis.ts +3 -11
  1152. package/sdk/src/protocols/socket/functions.ts +1 -1
  1153. package/sdk/src/protocols/spookyswap/addresses.ts +2 -1
  1154. package/sdk/src/protocols/squid/SquidRouterABI.json +42 -26
  1155. package/sdk/src/protocols/squid/abis.ts +19 -13
  1156. package/sdk/src/protocols/squid/functions.ts +2 -2
  1157. package/sdk/src/protocols/stargate/StargatePoolABI.json +31 -3
  1158. package/sdk/src/protocols/stargate/abis.ts +19 -3
  1159. package/sdk/src/protocols/superfluid/CFAForwarderABI.json +2 -2
  1160. package/sdk/src/protocols/superfluid/abis.ts +2 -2
  1161. package/sdk/src/protocols/sushiswap-v2/addresses.ts +2 -1
  1162. package/sdk/src/protocols/swell/RswETHABI.json +1 -6
  1163. package/sdk/src/protocols/swell/SwETHABI.json +1 -6
  1164. package/sdk/src/protocols/swell/abis.ts +4 -2
  1165. package/sdk/src/protocols/swell/functions.ts +4 -2
  1166. package/sdk/src/protocols/synapse/addresses.ts +2 -1
  1167. package/sdk/src/protocols/synthetix-v3/PerpsMarketProxyABI.json +54 -5
  1168. package/sdk/src/protocols/synthetix-v3/abis.ts +27 -5
  1169. package/sdk/src/protocols/synthetix-v3/addresses.ts +2 -1
  1170. package/sdk/src/protocols/synthra-v3/SynthraV3FactoryABI.json +54 -0
  1171. package/sdk/src/protocols/synthra-v3/SynthraV3NonfungiblePositionManagerABI.json +212 -0
  1172. package/sdk/src/protocols/synthra-v3/SynthraV3QuoterV2ABI.json +55 -0
  1173. package/sdk/src/protocols/synthra-v3/SynthraV3SwapRouter02ABI.json +168 -0
  1174. package/sdk/src/protocols/synthra-v3/abis.ts +244 -0
  1175. package/sdk/src/protocols/synthra-v3/addresses.ts +17 -0
  1176. package/sdk/src/protocols/synthra-v3/functions.ts +8 -0
  1177. package/sdk/src/protocols/synthra-v3/index.ts +4 -0
  1178. package/sdk/src/protocols/synthra-v3/info.ts +13 -0
  1179. package/sdk/src/protocols/thales/PositionalMarketABI.json +16 -0
  1180. package/sdk/src/protocols/thales/SpeedMarketsAMMABI.json +57 -22
  1181. package/sdk/src/protocols/thales/ThalesAMMABI.json +4 -11
  1182. package/sdk/src/protocols/thales/abis.ts +28 -11
  1183. package/sdk/src/protocols/thales/functions.ts +5 -6
  1184. package/sdk/src/protocols/thruster/ThrusterV3SwapRouterABI.json +1 -1
  1185. package/sdk/src/protocols/thruster/abis.ts +1 -1
  1186. package/sdk/src/protocols/trader-joe/LBRouterABI.json +3 -3
  1187. package/sdk/src/protocols/trader-joe/abis.ts +2 -2
  1188. package/sdk/src/protocols/uniswap-v2/addresses.ts +10 -0
  1189. package/sdk/src/protocols/uniswap-v3/UniswapV3FactoryABI.json +2 -2
  1190. package/sdk/src/protocols/uniswap-v3/UniswapV3NonfungiblePositionManagerABI.json +3 -3
  1191. package/sdk/src/protocols/uniswap-v3/UniswapV3QuoterV2ABI.json +1 -1
  1192. package/sdk/src/protocols/uniswap-v3/UniswapV3SwapRouter02ABI.json +168 -0
  1193. package/sdk/src/protocols/uniswap-v3/UniswapV3SwapRouterABI.json +2 -2
  1194. package/sdk/src/protocols/uniswap-v3/abis.ts +91 -8
  1195. package/sdk/src/protocols/uniswap-v3/addresses.ts +14 -0
  1196. package/sdk/src/protocols/uniswap-v4/UniswapV4PoolManagerABI.json +15 -15
  1197. package/sdk/src/protocols/uniswap-v4/UniswapV4UniversalRouterABI.json +16 -0
  1198. package/sdk/src/protocols/uniswap-v4/abis.ts +25 -15
  1199. package/sdk/src/protocols/uniswap-v4/addresses.ts +11 -0
  1200. package/sdk/src/protocols/unitflow-v3/UnitFlowV3FactoryABI.json +46 -0
  1201. package/sdk/src/protocols/unitflow-v3/UnitFlowV3QuoterABI.json +37 -0
  1202. package/sdk/src/protocols/unitflow-v3/UnitFlowV3RouterABI.json +67 -0
  1203. package/sdk/src/protocols/unitflow-v3/abis.ts +71 -0
  1204. package/sdk/src/protocols/unitflow-v3/addresses.ts +20 -0
  1205. package/sdk/src/protocols/unitflow-v3/functions.ts +8 -0
  1206. package/sdk/src/protocols/unitflow-v3/index.ts +4 -0
  1207. package/sdk/src/protocols/unitflow-v3/info.ts +14 -0
  1208. package/sdk/src/protocols/velodrome/addresses.ts +3 -1
  1209. package/sdk/src/protocols/venus/VBNBABI.json +86 -0
  1210. package/sdk/src/protocols/venus/VTokenABI.json +1 -1
  1211. package/sdk/src/protocols/venus/abis.ts +49 -1
  1212. package/sdk/src/protocols/vertex/ClearinghouseABI.json +20 -10
  1213. package/sdk/src/protocols/vertex/EndpointABI.json +1 -1
  1214. package/sdk/src/protocols/vertex/abis.ts +13 -4
  1215. package/sdk/src/protocols/wormhole/WormholeTokenBridgeABI.json +2 -2
  1216. package/sdk/src/protocols/wormhole/abis.ts +2 -2
  1217. package/sdk/src/protocols/wormhole/addresses.ts +9 -0
  1218. package/sdk/src/protocols/zerolend/addresses.ts +2 -1
  1219. package/sdk/src/protocols/zerox/addresses.ts +2 -1
  1220. package/sdk/src/protocols/zksync-bridge/ZkSyncDiamondProxyABI.json +1 -1
  1221. package/sdk/src/protocols/zksync-bridge/abis.ts +1 -1
  1222. package/sdk/src/skills/aave-v4.md +91 -0
  1223. package/sdk/src/skills/across.md +28 -10
  1224. package/sdk/src/skills/aerodrome-slipstream.md +57 -0
  1225. package/sdk/src/skills/aerodrome.md +1 -0
  1226. package/sdk/src/skills/aevo.md +12 -4
  1227. package/sdk/src/skills/ambient.md +2 -2
  1228. package/sdk/src/skills/arrakis.md +3 -3
  1229. package/sdk/src/skills/cbeth.md +2 -2
  1230. package/sdk/src/skills/chainlink-ccip.md +3 -2
  1231. package/sdk/src/skills/chainlink.md +1 -1
  1232. package/sdk/src/skills/circle-gateway.md +98 -0
  1233. package/sdk/src/skills/compound-v2.md +2 -2
  1234. package/sdk/src/skills/connext.md +8 -7
  1235. package/sdk/src/skills/curve.md +17 -2
  1236. package/sdk/src/skills/debridge.md +3 -2
  1237. package/sdk/src/skills/eigenlayer.md +1 -1
  1238. package/sdk/src/skills/etherfi.md +1 -1
  1239. package/sdk/src/skills/fluid.md +46 -39
  1240. package/sdk/src/skills/gains-network.md +13 -21
  1241. package/sdk/src/skills/gamma.md +12 -6
  1242. package/sdk/src/skills/gmx-v1.md +4 -2
  1243. package/sdk/src/skills/gmx-v2.md +6 -2
  1244. package/sdk/src/skills/harvest.md +2 -2
  1245. package/sdk/src/skills/hegic.md +9 -8
  1246. package/sdk/src/skills/hop.md +8 -8
  1247. package/sdk/src/skills/hyperlane.md +4 -3
  1248. package/sdk/src/skills/index.md +84 -77
  1249. package/sdk/src/skills/kim.md +11 -14
  1250. package/sdk/src/skills/kyberswap-aggregator.md +5 -3
  1251. package/sdk/src/skills/kyberswap.md +6 -6
  1252. package/sdk/src/skills/layerbank.md +41 -35
  1253. package/sdk/src/skills/layerzero.md +3 -2
  1254. package/sdk/src/skills/level-finance.md +6 -4
  1255. package/sdk/src/skills/lido.md +5 -5
  1256. package/sdk/src/skills/lifi.md +41 -23
  1257. package/sdk/src/skills/liquity-v1.md +6 -2
  1258. package/sdk/src/skills/loader.ts +15 -25
  1259. package/sdk/src/skills/mantle-meth.md +13 -5
  1260. package/sdk/src/skills/maverick.md +3 -3
  1261. package/sdk/src/skills/morpho-blue.md +1 -1
  1262. package/sdk/src/skills/mux-protocol.md +21 -17
  1263. package/sdk/src/skills/oneinch.md +4 -3
  1264. package/sdk/src/skills/openocean.md +2 -2
  1265. package/sdk/src/skills/opyn.md +1 -1
  1266. package/sdk/src/skills/permit2.md +1 -1
  1267. package/sdk/src/skills/perpetual-protocol.md +2 -2
  1268. package/sdk/src/skills/premia.md +21 -21
  1269. package/sdk/src/skills/reflexer.md +1 -1
  1270. package/sdk/src/skills/renzo.md +1 -1
  1271. package/sdk/src/skills/safe.md +1 -1
  1272. package/sdk/src/skills/seaport.md +3 -2
  1273. package/sdk/src/skills/silo.md +4 -3
  1274. package/sdk/src/skills/socket.md +4 -5
  1275. package/sdk/src/skills/spookyswap.md +2 -2
  1276. package/sdk/src/skills/squid.md +18 -10
  1277. package/sdk/src/skills/stargate.md +1 -1
  1278. package/sdk/src/skills/sushiswap-v2.md +1 -1
  1279. package/sdk/src/skills/swell.md +6 -4
  1280. package/sdk/src/skills/synapse.md +1 -1
  1281. package/sdk/src/skills/synthetix-v3.md +1 -1
  1282. package/sdk/src/skills/synthra-v3.md +57 -0
  1283. package/sdk/src/skills/thales.md +12 -10
  1284. package/sdk/src/skills/trader-joe.md +1 -1
  1285. package/sdk/src/skills/uniswap-v2.md +2 -1
  1286. package/sdk/src/skills/uniswap-v3.md +14 -4
  1287. package/sdk/src/skills/uniswap-v4.md +3 -1
  1288. package/sdk/src/skills/unitflow-v3.md +62 -0
  1289. package/sdk/src/skills/velodrome.md +2 -2
  1290. package/sdk/src/skills/venus.md +10 -2
  1291. package/sdk/src/skills/vertex.md +1 -1
  1292. package/sdk/src/skills/wormhole.md +1 -1
  1293. package/sdk/src/skills/zerolend.md +1 -1
  1294. package/sdk/src/skills/zerox.md +1 -1
  1295. package/sdk/src/skills/zksync-bridge.md +1 -1
  1296. package/actions/dist/megas-swap.d.ts +0 -97
  1297. package/actions/dist/megas-swap.d.ts.map +0 -1
  1298. package/actions/dist/megas-swap.js +0 -286
  1299. package/sdk/dist/routes/globals.generated.d.ts +0 -94
  1300. package/sdk/dist/routes/globals.generated.d.ts.map +0 -1
  1301. package/sdk/dist/routes/globals.generated.js +0 -2
  1302. package/sdk/dist/routes/globals.generated.js.map +0 -1
@@ -2,29 +2,28 @@
2
2
 
3
3
  [Documentation](../README.md) · [Compiler API](../api/compiler.md) · [SauceScript](../concepts/saucescript.md)
4
4
 
5
- Use the SDK route compiler when a program should become an Eco route call with
6
- chain-scoped token and protocol names. Use the raw compiler when you need a
7
- reusable parameterized program, an SVM account manifest, or explicit compiler
8
- options such as compact arguments.
5
+ There are two ways to compile, and the choice is about who resolves names. Either way the compiler
6
+ is already in this package, and the output is a program a Sauce engine runs, not a contract you
7
+ deploy.
9
8
 
10
- ## Choose a compilation path
9
+ Use the **route path** when the program is part of an Eco intent and should say `USDC` and
10
+ `Uniswap.UniversalRouter`: the SDK resolves those against the destination chain and hands you a
11
+ ready-made call. Use the **raw compiler** when you want a reusable program that takes values at
12
+ execution time, a Solana account manifest, or full control over module resolution.
11
13
 
12
- | Entry point | Inputs you supply | What the SDK supplies |
14
+ | Entry point | You supply | The SDK supplies |
13
15
  | ------------------------------------------------------------------- | ----------------------------------------------------------- | -------------------------------------------------------------------------------------------------- |
14
- | `Base(body, options)` / `routes.openRoute(...)` | Closure or source, intent options, execution addresses | Chain defines, default ambient `@sauce/token`, registry rewrites, compilation, intent construction |
15
- | `routes.compileSauceRoute(destination, source, execution, options)` | Source, destination, execution settings | Registry rewrites, token defines, compilation, one encoded route call |
16
- | `compile({ target, resolve, ... })` | Complete source/dependency resolution and compiler settings | The published compiler result, including entry metadata and SVM manifest |
16
+ | `Base(body, options)` / `routes.openRoute(...)` | Body and intent options | Chain defines, the ambient token module, registry rewrites, the EVM Pot and engine, a built intent |
17
+ | `routes.compileSauceRoute(destination, source, execution, options)` | Source, destination, execution settings | Registry rewrites, token defines, one encoded route call |
18
+ | `compile({ target, resolve, ... })` | All source and dependency resolution, and compiler settings | Nothing — you get the compiler's own result |
17
19
 
18
- Bare `USDC`, `Token(address)`, and protocol-member calls are resolved by SDK route
19
- rewrites. Raw `compile()` expects compiler-native source, such as
20
- `ERC20.at(address).approve(...)` backed by an ABI import or registered binding.
20
+ Bare `USDC`, `Token(address)` and protocol members only exist on the route path. There,
21
+ `USDC.approve(Uniswap.UniversalRouter, 1_000_000n)` becomes an ERC-20 ABI import and
22
+ `IERC20.at(USDC).approve(<the router's Base address>, 1_000_000n)`, with `USDC` defined as Base's
23
+ USDC. Raw `compile()` expects you to write that yourself.
21
24
 
22
25
  ## Compile an EVM route
23
26
 
24
- This function constructs a call; the caller supplies the deployed Pot,
25
- compatible engine address, and the Kitchen's current execution fee. It submits
26
- no transaction.
27
-
28
27
  ```ts
29
28
  import { routes } from "@eco-incorp/sauce";
30
29
  import type { Address } from "viem";
@@ -38,24 +37,22 @@ export function buildApprovalRoute(pot: Address, engine: Address, executionFee:
38
37
  }
39
38
  ```
40
39
 
41
- The destination determines registry addresses. The result contains one entry in
42
- `calls` and the compiled program in `compiled.bytecode[0]`. Inspect `source` to
43
- see the SDK's rewrites. This approval program spends no native token, so its call
44
- value is only the execution fee. A program spending native tokens also needs that
45
- amount in its call value. For Portal fulfillment, the Pot must be owned by the
46
- destination Portal's Executor, and `route.nativeAmount` must cover the call values.
47
- Use [the intent guide](intents.md) to read the fee, derive the correctly owned Pot,
48
- and add source-chain funding, a reward, and Portal publication calldata.
40
+ The destination selects the registry addresses. The result has one entry in `calls` and the program
41
+ in `compiled.bytecode[0]`; read `source` to see exactly what the rewrites produced.
42
+
43
+ The call's `value` is the Kitchen fee plus whatever native the program itself spends — this approval
44
+ spends none. For Portal fulfillment the Pot must be owned by the destination Portal's Executor and
45
+ `route.nativeAmount` must cover every call value. [Create an intent](intents.md) covers reading the
46
+ fee, deriving that Pot, and adding the reward and Portal calldata.
49
47
 
50
- `compileSauceRoute` accepts a bare body or a complete `function main(...)`
51
- program. Keep route source in the JavaScript syntax accepted by its rewrite
52
- passes; use raw `compile` for programs that require SauceScript type annotations.
53
- The raw compiler accepts typed source directly.
48
+ `compileSauceRoute` takes a bare body or a complete `function main(...)`. Its rewrite passes parse
49
+ the body as JavaScript, so a body carrying SauceScript type annotations belongs in raw `compile`,
50
+ which accepts typed source directly.
54
51
 
55
52
  ## Compile a reusable program
56
53
 
57
- This Node example compiles a program that sums runtime inputs and checks a floor.
58
- All modules are in memory, so it needs no filesystem resolver.
54
+ A program compiled this way has no values baked into it. Change the amounts and you do not
55
+ recompile — which is what makes one program hash cover every execution.
59
56
 
60
57
  ```ts
61
58
  import { compile } from "@eco-incorp/sauce/compiler";
@@ -78,17 +75,13 @@ const artifact = compile({
78
75
  resolve: (path) => (path === "main.ts" ? entry : undefined),
79
76
  });
80
77
 
81
- console.log(artifact.isaRevision); // "stack-compact-v2"
82
78
  console.log(artifact.entryEncoding); // "abi-v1"
83
79
  ```
84
80
 
85
- The amount list and minimum have not been supplied yet. Changing those execution
86
- values does not require recompilation.
87
-
88
- ### ABI-v1 entry arguments
81
+ ### Pass arguments with ABI-v1
89
82
 
90
- Encode the `main` arguments in declaration order and append them to the compiled
91
- program. Entry arguments have no function selector.
83
+ Encode `main`'s arguments in declaration order and append them to the program. There is no function
84
+ selector: entry arguments are not a contract call.
92
85
 
93
86
  ```ts
94
87
  import { encodeAbiParameters, hexToBytes, bytesToHex } from "viem";
@@ -104,18 +97,17 @@ payload.set(args, artifact.bytecode.length);
104
97
 
105
98
  // Given a compatible engine address:
106
99
  // const data = v12Pot.encodeCook(engine, bytesToHex(payload));
107
- // Send `data` from the Pot owner with value = executionFee + programNativeValue.
100
+ // Send it from the Pot owner with value = executionFee + native the program spends.
108
101
  ```
109
102
 
110
- The same byte payload is the `program` argument to `Pot.cook(engine, program)`;
111
- the outer cook call has its own ordinary contract ABI encoding. Supplying
112
- argument bytes to the compiler as `defines` would produce a different kind of
113
- program, specialized to those values.
103
+ That whole payload is the `program` argument to `Pot.cook(engine, program)`; the cook call itself is
104
+ an ordinary contract call with its own ABI encoding. Passing those same values as `defines` instead
105
+ would produce a _different_ program — one specialised to them.
114
106
 
115
- ### Compact-v1 entry arguments
107
+ ### Pass arguments with compact-v1
116
108
 
117
- Compile the same source with `compactArgs: true`, then use the returned schema.
118
- The schema and bytecode belong to the same artifact.
109
+ Compile with `compactArgs: true` and use the schema that comes back with it. The schema and the
110
+ bytecode belong to the same artifact; do not pair one with another.
119
111
 
120
112
  ```ts
121
113
  import {
@@ -144,16 +136,14 @@ compactPayload.set(compact.bytecode);
144
136
  compactPayload.set(compactArgs, compact.bytecode.length);
145
137
  ```
146
138
 
147
- A compact program requires an engine implementing its ISA revision. It does not
148
- accept an ABI-v1 tail, and an ABI-v1 program does not accept compact arguments.
149
- Compact encoding often reduces scalar and collection payload size, but runtime
150
- heap, compute, and transaction limits still apply. Its format does not change
151
- contract ABI calls performed inside the program.
139
+ Compact encoding is usually smaller for scalars and collections. The two formats are not
140
+ interchangeable: a compact program does not accept an ABI-v1 tail, and the reverse is equally true.
141
+ Either way, contract calls the program _makes_ still use their own contract ABIs — this is about
142
+ getting values into `main`, nothing else.
152
143
 
153
- ### Encode EVM return values
144
+ ### Return values an ABI decoder can read
154
145
 
155
- `entryEncoding` and `compactArgs` describe inputs only. To return data for a host
156
- ABI decoder, encode it explicitly in SauceScript:
146
+ `entryEncoding` describes inputs. Outputs are yours to encode:
157
147
 
158
148
  ```ts
159
149
  function main(): bytes {
@@ -161,22 +151,17 @@ function main(): bytes {
161
151
  }
162
152
  ```
163
153
 
164
- Decode that result as one `uint256[]` with Viem's `decodeAbiParameters`. It is
165
- 160 bytes: an offset, an element count, and three values. The EVM Pot returns
166
- these bytes directly; do not decode another ABI `bytes` wrapper around them.
167
- This applies with both ABI-v1 and compact-v1 inputs. SVM has no `abi.encode`
168
- builtin.
169
-
170
- Compiler 2.3.0 changed raw EVM scalar-array literal returns: `return [1n, 2n, 3n]`
171
- now returns three packed 32-byte values without an ABI offset or count. Compiler
172
- 2.2.1 returned heap descriptors for that source. Raw tuple returns still contain
173
- heap descriptors. Recompilation can therefore change observable return bytes;
174
- use explicit `abi.encode` when a caller relies on ABI output.
154
+ Decode that as a single `uint256[]` with viem's `decodeAbiParameters`. It is 160 bytes — an offset, a
155
+ count, three values. The Pot returns those bytes directly; there is no extra ABI `bytes` wrapper
156
+ around them. Returning a raw array instead gives you packed words with no offset or count, which a
157
+ generic decoder will not read, so encode explicitly whenever a caller depends on the shape. Solana
158
+ has no `abi.encode`.
175
159
 
176
160
  ## Resolve source modules and ABIs
177
161
 
178
- A resolver is synchronous and returns bytes. Missing target-arm candidates must
179
- return `undefined`; unreadable existing files should fail compilation.
162
+ A resolver is synchronous and returns bytes. Return `undefined` for a candidate that does not exist —
163
+ that is how the compiler probes a target-specific arm before falling back. Throw when a file that
164
+ _does_ exist cannot be read, so the failure is not mistaken for absence.
180
165
 
181
166
  ```ts
182
167
  import { readFileSync } from "node:fs";
@@ -200,22 +185,42 @@ const artifact = compile({
200
185
  });
201
186
  ```
202
187
 
203
- This resolver reads files; it is not an isolation boundary for untrusted source.
204
- Use an allowlisted virtual module map when applications accept user-supplied
205
- programs. Fetch any remote modules before the synchronous compile step.
188
+ This resolver reads the filesystem; it is not a sandbox. If your application compiles programs
189
+ somebody else wrote, serve them from an allowlisted in-memory map instead. Fetch anything remote
190
+ _before_ compiling — the resolver cannot await.
191
+
192
+ For an ABI you already hold, raw compilation takes
193
+ `inlineContracts: [["ERC20", JSON.stringify(abi)]]`. The route API takes the parsed form,
194
+ `contracts: { ERC20: { abi } }`, and adapts it. The two shapes are not interchangeable.
195
+
196
+ Raw compilation serves nothing you do not. The route path serves the SDK's own files itself: the
197
+ `@sauce/token` library, the ERC-20 and Sauce Router ABIs and every protocol ABI twin. For a raw
198
+ compile that needs them, fall back to `resolveSdkModule` and `resolveSdkPackage` from
199
+ `@eco-incorp/sauce/compiler` — the [compiler reference](../api/compiler.md#the-sdks-own-modules)
200
+ shows how.
206
201
 
207
- For an ABI already held in memory, use raw compiler
208
- `inlineContracts: [["ERC20", JSON.stringify(abi)]]`. The route API instead accepts
209
- `contracts: { ERC20: { abi } }` with a parsed ABI and adapts it internally.
210
- Do not pass the route shape to raw `compile()`.
202
+ The filesystem resolver above is the one Node-only part of this page. In a browser, serve modules
203
+ from memory.
204
+
205
+ ## Compile in a browser
206
+
207
+ Everything on this page runs in a browser and compiles the same bytes as Node. The compiler's
208
+ WebAssembly loads asynchronously there, so call `ready()` once before the first compile:
209
+
210
+ ```ts
211
+ import { ready } from "@eco-incorp/sauce";
212
+
213
+ await ready();
214
+ ```
211
215
 
212
- Raw compiler resolution does not automatically locate the SDK's `@sauce/token`
213
- copy. SDK route compilation resolves that package itself. With raw compilation,
214
- provide the package's source and neutral entry mapping through your resolver.
216
+ With no argument it fetches the wasm from beside the compiler's module, which is where a bundler
217
+ that handles `new URL(…, import.meta.url)` puts it. Otherwise pass the wasm's URL or bytes. The
218
+ [compiler reference](../api/compiler.md#in-a-browser) covers both, and the one subpath that stays
219
+ Node-only.
215
220
 
216
- ## Compile for SVM
221
+ ## Compile for Solana
217
222
 
218
- Selecting `target: "svm"` produces an account manifest. For example:
223
+ `target: "svm"` returns an account manifest alongside the bytecode:
219
224
 
220
225
  ```ts
221
226
  import { compile } from "@eco-incorp/sauce/compiler";
@@ -236,29 +241,23 @@ console.log(artifact.manifest?.accounts);
236
241
  // [{ kind: "slot", index: 0, name: "vault", requires: "readonly" }]
237
242
  ```
238
243
 
239
- The compact root has one field, `amount`; `vault` is attached at account slot 0.
240
- Resolve and attach accounts in manifest order using the SVM helpers. The manifest
241
- does not discover an account's address, balance, owner, or liveness.
244
+ `amount` is the one compact field; `vault` is attached at account slot 0. Resolve and attach accounts
245
+ in manifest order with the SVM helpers. The manifest records what the _author_ declared — it does not
246
+ discover an account's address, balance, owner or existence.
242
247
 
243
- For staged execution, stage the bytes through the Kitchen, finalize the code
244
- account, then use the Kitchen client or instruction builders. The SVM
245
- `routes.compileSauceRoute` path drops the manifest and emits a legacy instruction
246
- incompatible with the released engine. Use raw compilation for account plans
247
- and follow the [Solana execution guide](solana.md).
248
+ To run a larger program, stage its bytes through the Kitchen, finalize the code account, then execute.
249
+ Keep the raw compilation result: the route path drops the manifest. The
250
+ [Solana guide](solana.md) has the full flow.
248
251
 
249
252
  ## Keep compilation reproducible
250
253
 
251
- Record the compiler version, target, ISA revision, source/dependency bytes,
252
- contract ABIs, defines, ambient modules, optimization settings, and argument
253
- format with an artifact. Keep request arguments separate from the code cache;
254
- hash the final code-plus-arguments payload when committing to a particular
255
- execution.
254
+ Store the compiler version, target, source and dependency bytes, ABIs, defines, ambient modules,
255
+ optimization setting and argument format alongside any artifact you keep. Keep request arguments out
256
+ of the code cache, and hash the final code-plus-arguments payload when you commit to one execution.
256
257
 
257
- The compiler's function cache is enabled by default. It is an optimization of
258
- lowering, not an application-level bytecode cache or a dependency resolver.
259
- `cache: false` forces fresh lowering. If an application mutates cached resolver
260
- inputs, refresh those inputs and use the compiler package's cache controls as
261
- needed.
258
+ The compiler caches its own work between calls as an optimization; `cache: false` forces fresh
259
+ lowering. That cache is not an application-level artifact store — if your resolver's inputs change,
260
+ refresh them yourself.
262
261
 
263
- For canonical settle programs, use the shipped recipe source and the pinned
264
- verification surface described in [settlement verification](verification.md).
262
+ For the canonical settle programs, use the shipped recipe source and the pinned verification surface
263
+ in [settlement verification](verification.md).
@@ -2,10 +2,15 @@
2
2
 
3
3
  [Documentation](../README.md) · [Routes API](../api/routes.md) · [Nested intents](nested-intents.md)
4
4
 
5
- `Base(body, options).reward(reward)` compiles a program for Base and packages it as an Eco intent. `Base.route(...)` has the same behavior. The destination chain selects the compiler target, token addresses, and protocol deployments.
5
+ An Eco intent is an offer: _run this program on that chain, and the reward escrowed on this one is
6
+ yours_. `Base(body, options).reward(reward)` builds one. The chain you call names the **destination**
7
+ — where the program runs, and therefore which compiler target, token addresses and protocol
8
+ deployments apply. `.reward(...)` names the **source**, where the reward sits until someone earns it.
9
+
10
+ `Base.route(...)` is the same function. Every chain is a named export; import the ones you use.
6
11
 
7
12
  ```ts
8
- import "@eco-incorp/sauce";
13
+ import { Base } from "@eco-incorp/sauce";
9
14
  import type { routes } from "@eco-incorp/sauce";
10
15
 
11
16
  export function buildApprovalIntent(routeOptions: routes.IntentOptions, reward: routes.RewardArg) {
@@ -15,7 +20,10 @@ export function buildApprovalIntent(routeOptions: routes.IntentOptions, reward:
15
20
  }
16
21
  ```
17
22
 
18
- The SDK constructs the intent and transaction requests. Your application supplies deployments, funds the source reward, submits transactions, and arranges fulfillment by a solver.
23
+ The SDK builds the intent and the transaction requests, and sends nothing. It looks up the Portals,
24
+ derives the destination Pot and engine, and resolves registered token and protocol addresses. You
25
+ choose the deadlines, creator and prover, read the Kitchen fee, fund the reward and submit. A solver
26
+ then decides whether to fulfill it; the SDK does not price the reward or promise a fill.
19
27
 
20
28
  ## Source, destination, and funding
21
29
 
@@ -25,7 +33,7 @@ An intent has two sides:
25
33
  | ---------------------------------------- | ----------------------------------------------------------------- |
26
34
  | `Base(...)` | Destination chain where the Sauce program executes |
27
35
  | `options.portal` | Destination Portal recorded in the route |
28
- | `options.pot`, `options.engine` | Destination Pot and interpreter used by `cook` |
36
+ | `options.pot`, `options.engine` | Overrides for the derived destination Pot and released engine |
29
37
  | `options.tokens`, `options.nativeAmount` | Destination assets delivered by the solver to the Portal Executor |
30
38
  | `reward.source` | Chain where the reward is funded |
31
39
  | `options.sourcePortal` | Source Portal used by submission and read helpers |
@@ -36,28 +44,65 @@ Destination route assets initially arrive in the **Executor**. The Sauce program
36
44
 
37
45
  Every EVM `cook` must receive the Kitchen's current `executionFee()` in native wei, including ERC-20-only programs. Set `execution.value` to **fee + native assets the program needs**, and budget `nativeAmount` for the route's calls. The Pot remits the fee before executing; its existing balance cannot replace this payment. Nested transfer programs add another cook and fee. Read the fee before building; an increase before fulfillment can make the route revert.
38
46
 
39
- Deadlines are absolute Unix timestamps in seconds. `route.deadline` limits destination fulfillment. `reward.deadline` allows source refunds when no valid proof exists; leave time for fulfillment and proof delivery before it.
40
-
41
- ## Prepare the destination Pot
47
+ On Arc the native coin is USDC, so every one of these native amounts is USDC at **18 decimals**,
48
+ while `tokens` amounts of Arc's `USDC` are 6 decimals — and both draw on one balance. See
49
+ [Arc: USDC is the native coin](../api/coverage.md#arc-usdc-is-the-native-coin).
42
50
 
43
- For direct Portal routes, the Pot's owner must be the destination **`Portal.executor()`**. A user-owned or solver-owned Pot rejects the Executor's call with `NotOwner()`.
44
-
45
- Use [evm-execution.ts](../examples/evm-execution.ts) on the destination chain to read the Executor, resolve the current Kitchen and engine, predict the Pot, and quote the execution fee. If the Pot is absent, the helper returns a deployment request. Send it, wait for a successful receipt, and run the helper again. Only use a result with `ready: true`, which confirms code is present and checks the Pot's `owner()` and `kitchen()`.
46
-
47
- Deployment helpers return release addresses; the historical chain roster does not attest current release liveness.
51
+ Deadlines are absolute Unix timestamps in seconds. `route.deadline` limits destination fulfillment. `reward.deadline` allows source refunds when no valid proof exists; leave time for fulfillment and proof delivery before it.
48
52
 
49
- An Executor-owned Pot can be invoked by other valid Portal routes. Deliver assets, use them, and return leftovers **within the same fulfillment**; do not leave user funds or standing allowances in it. Source reward escrow belongs in the intent vault. These caller and custody rules follow [Eco Routes' Executor calls](https://github.com/eco/eco-routes/blob/49de5bb10a5eb00509b21702df6cf54de448ee11/contracts/Executor.sol#L50-L74) and [destination fulfillment](https://github.com/eco/eco-routes/blob/49de5bb10a5eb00509b21702df6cf54de448ee11/contracts/Inbox.sol#L225-L271).
53
+ ## The destination Pot
54
+
55
+ A route call runs as the Executor of the Portal that fulfils it, and a Pot's `cook` accepts only
56
+ its owner. So the Pot's owner must be the **`executor()` of the Portal the route records** —
57
+ `options.portal` when you set it, the registry's otherwise. A user-owned or solver-owned Pot rejects
58
+ the call with `NotOwner()`.
59
+
60
+ You do not have to supply one. With no `execution.pot` and no `execution.engine`, the builder uses the
61
+ same Pot the [native syntax](#the-destination-pot-is-derived) derives — CREATE2 from the released
62
+ Kitchen over that Executor and salt zero (`SAUCE_INTENT_POT_SALT`) — and the released engine. That is
63
+ the one Pot the solver deploys per Portal and every intent through that Portal shares. Both remain
64
+ overrides. `destinationPot(Base.chain, { portal })` returns that address, for a `precalls`
65
+ transfer into it.
66
+
67
+ **The destination Pot must exist before the intent is fulfilled.** The SDK derives its address and
68
+ deploys nothing: the route contains no deployment call. The solver deploys the shared Pot for each
69
+ Portal. A fulfilment that cooks on a Pot that is not there reverts entirely, because the Executor
70
+ refuses a call with calldata to an address without code (`CallToEOA`).
71
+
72
+ To deploy it yourself first, send this on the destination chain:
73
+ `routes.sauceEvmDeployPotCall({ kitchen: v12GateKitchen(), owner: executor, salt: SAUCE_INTENT_POT_SALT })`.
74
+ The call is permissionless, and it returns the existing Pot when one is already there. A **Pot you
75
+ name** instead must also exist, and be owned by that Executor, or the cook reverts with `NotOwner()`.
76
+ Use
77
+ [evm-execution.ts](../examples/evm-execution.ts) with the destination Portal and a salt — zero for
78
+ the shared Pot — to predict the Pot and check that it is deployed, with the right `owner()` and
79
+ `kitchen()`. Only use a result with `ready: true`.
80
+
81
+ ### Arc's Pot
82
+
83
+ Arc's eco-routes Portal (`0xEC002CA16cE20c2a9F3C6200EF04E7d92a3dfBD8`) is not the Portal most other
84
+ chains share, so its Executor (`0x95b2d45F49c68a54BDBa0356fc3034751A43b3D4`) and the Pot derived from
85
+ it (`destinationPot("arc")`, `0x4edfB4576F91A9c2fE9aA50f669B7C81E4B82955`) are Arc's own. This prediction
86
+ uses Kitchen **1.1.0** initcode. Upgrade the Kitchen and deploy the matching engine and Pot before
87
+ sending intents; the release address alone does not confirm readiness.
88
+
89
+ The deployment helpers return the released addresses. They do not check that code is live at those
90
+ addresses on your chain. The same helper confirms the Kitchen and engine have code, and reads the
91
+ execution fee you need either way.
92
+
93
+ An Executor-owned Pot can be invoked by other valid Portal routes, and the derived one is shared by
94
+ every intent through its Portal. Deliver assets, use them, and return leftovers **within the same
95
+ fulfillment**; leave nothing in it — no user funds, no standing allowances. Source reward escrow
96
+ belongs in the intent vault. These caller and custody rules follow [Eco Routes' Executor calls](https://github.com/eco/eco-routes/blob/49de5bb10a5eb00509b21702df6cf54de448ee11/contracts/Executor.sol#L50-L74) and [destination fulfillment](https://github.com/eco/eco-routes/blob/49de5bb10a5eb00509b21702df6cf54de448ee11/contracts/Inbox.sol#L225-L271).
50
97
 
51
98
  ## Build a Base USDC transfer intent
52
99
 
53
100
  This function takes deployment and reward configuration as inputs. It delivers one USDC on Base to `recipient` and offers the configured source-token reward. It only constructs data.
54
101
 
55
102
  ```ts
56
- import { token, type routes } from "@eco-incorp/sauce";
103
+ import { Base, destinationPot, token, type routes } from "@eco-incorp/sauce";
57
104
 
58
105
  interface TransferIntentConfig {
59
- pot: routes.AddressInput;
60
- engine: routes.AddressInput;
61
106
  executionFee: bigint;
62
107
  destinationPortal: routes.AddressInput;
63
108
  baseUsdc: routes.AddressInput;
@@ -74,14 +119,12 @@ interface TransferIntentConfig {
74
119
 
75
120
  export function buildBaseTransfer(config: TransferIntentConfig) {
76
121
  const amount = 1_000_000n;
77
- const delivery = token.Token.transfer({
78
- token: config.baseUsdc,
79
- to: config.pot,
80
- amount,
81
- }).toCall();
122
+ // The Pot the route cooks on: the shared one for the Portal it records. It must already exist.
123
+ const pot = destinationPot(Base.chain, { portal: config.destinationPortal });
124
+ const delivery = token.Token.transfer({ token: config.baseUsdc, to: pot, amount }).toCall();
82
125
 
83
126
  return Base("USDC.transfer(RECIPIENT, AMOUNT);", {
84
- execution: { pot: config.pot, engine: config.engine, value: config.executionFee },
127
+ execution: { value: config.executionFee },
85
128
  nativeAmount: config.executionFee,
86
129
  portal: config.destinationPortal,
87
130
  sourcePortal: config.sourcePortal,
@@ -100,12 +143,187 @@ export function buildBaseTransfer(config: TransferIntentConfig) {
100
143
  }
101
144
  ```
102
145
 
103
- Use an EVM source when using the Portal submission helpers below; they generate EVM calldata and reject an SVM source. The route model can represent SVM destinations, but the current SVM route emitter is incompatible with the released gated engine.
146
+ The submission helpers below generate EVM calldata and reject an SVM source, so an intent you submit with them is EVM-sourced. Its **destination** may be Solana — the encoding supports it — but see the [Solana guide](solana.md) for how that execution is actually built.
104
147
 
148
+ The route has two calls: the delivery into the Pot, and the cook.
105
149
  `executionFee` is the destination Kitchen quote obtained above. The source reward must separately compensate the solver for delivery, fees, and gas; the SDK does not price it.
106
150
 
107
151
  The explicit `tokenDefines` ensures that the token transferred into the Pot matches the token used by the program. To use the SDK's default Base USDC, resolve it with `routes.registryTokenAddress(Base.chain, "USDC")` and check the result before building. That lookup returns a `bigint`; convert it to a 20-byte hex address with Viem's `toHex(value, { size: 20 })` for intent token fields, as in the [complete example](../examples/first-intent.ts).
108
152
 
153
+ ## Create an intent from inside a program
154
+
155
+ Everything above builds an intent in TypeScript, before anything runs. A program can also create one
156
+ _while_ it is running, which is what you want when the amount is the output of the step before it:
157
+
158
+ ```js
159
+ function main() {
160
+ const amount = USDC.balanceOf(ctx.self());
161
+ Arbitrum(() => {
162
+ USDC.transfer(RECIPIENT, amount);
163
+ }).reward({ tokens: [{ token: USDC, amount }] });
164
+ }
165
+ ```
166
+
167
+ Same shape as the TypeScript builder, written in the program. No Portal, prover, selector, encoding
168
+ or approval appears, because none of them is a decision you are making. The closest TypeScript form
169
+ is a [dynamic nest](nested-intents.md#create-the-child-on-chain-from-a-measured-amount), where you
170
+ build a placeholder child, name the measurement and count each placeholder's occurrences yourself.
171
+
172
+ ### The braces are a Sauce program
173
+
174
+ Anything a route body can do belongs in there: protocol calls, control flow, locals, and an intent
175
+ of its own. There are two lowerings and the SDK picks between them, which matters to you because
176
+ they cost different things.
177
+
178
+ | The body is… | Becomes… | Needs |
179
+ | ------------------------------- | ------------------------------------------------------ | ----------------------- |
180
+ | only token `transfer`/`approve` | one `route.calls` entry per statement | nothing further |
181
+ | anything else | a program compiled for the destination, run on its Pot | a Pot and a Kitchen fee |
182
+
183
+ The first shape is free: a route already _is_ a list of calls, so a cook would only add a fee. The
184
+ second is strictly more general.
185
+
186
+ ```js
187
+ function main() {
188
+ const amount = USDC.balanceOf(ctx.self());
189
+ Arbitrum(
190
+ () => {
191
+ const here = USDC.balanceOf(ctx.self());
192
+ if (here > 0n) {
193
+ USDC.transfer(RECIPIENT, here);
194
+ }
195
+ },
196
+ { tokens: [{ token: USDC, amount }] },
197
+ ).reward({ tokens: [{ token: USDC, amount }] });
198
+ }
199
+ ```
200
+
201
+ **The second argument names what the solver delivers** so the body has something to work with, and
202
+ the lowering adds the Executor-to-Pot transfer. For the token-only shape it is derived instead — a
203
+ `transfer` of N moves N, so N is what has to arrive. It is _not_ derived for a program, and that is
204
+ a judgement rather than an omission: a program's `balanceOf` reads what is _there_, which may be what
205
+ an earlier call in the same route produced rather than what a solver must bring. Inferring an
206
+ obligation from it would silently under- or over-state what the intent asks for, and an intent that
207
+ asks for the wrong delivery is unfulfillable or overfunded.
208
+
209
+ ### Captured variables
210
+
211
+ `amount` is a local of the enclosing program, so its value does not exist when the intent is
212
+ encoded. It is encoded with a sentinel in its place and the program splices the real value in as it
213
+ runs. Any scalar works — an amount, an address, anything one 256-bit word wide.
214
+
215
+ A variable can arrive two ways, and the same variable can do both:
216
+
217
+ - **Into the encoded intent** — a route call's argument, a reward amount, a delivery amount. One
218
+ slot per variable, however many of those it fills, so they are the same number by construction
219
+ rather than by several encodings agreeing.
220
+ - **Into the child program** — it becomes one of that program's entry arguments, encoded at a
221
+ declared width so its offset does not move, and spliced into the cook's calldata.
222
+
223
+ Used both ways, a variable gets a slot in each: they are different offsets carrying the same value.
224
+
225
+ ### Nesting
226
+
227
+ An intent inside an intent is lowered recursively — the child is compiled by re-entering the same
228
+ pipeline, so it gets its own chain's names and this same lowering, at any depth. That is how a chain
229
+ of hops whose amounts are each measured on arrival is written; see
230
+ [nested intents](nested-intents.md#a-cascade-in-native-syntax).
231
+
232
+ ### Names resolve per chain
233
+
234
+ `USDC` inside the braces is _Arbitrum's_ USDC, because those calls run on Arbitrum. Resolving it
235
+ against the enclosing chain would put one chain's address in another chain's route.
236
+
237
+ ### A throw reverts everything
238
+
239
+ A `throw` or a failed `require` in a program, and every guard the SDK emits, reverts the whole
240
+ fulfillment — no earlier route call survives it. A program that refuses to create an intent
241
+ therefore leaves nothing behind, and a measurement below its floor cannot strand funds in the Pot.
242
+
243
+ ### Where each value comes from
244
+
245
+ | Value | Comes from |
246
+ | ------------------ | ----------------------------------------------------------------- |
247
+ | Portal, both sides | The eco-routes deployment tables, by chain |
248
+ | Prover | The tables, by source/destination pair |
249
+ | Destination Pot | Derived — see below |
250
+ | Engine | The released engine address |
251
+ | Destination | The chain you named |
252
+ | Source | The chain the program runs on |
253
+ | Deadline | **You.** Too early is unfulfillable, too late locks the reward up |
254
+ | Creator | **You.** See below |
255
+ | Execution fee | **You**, for a program body. See below |
256
+
257
+ The **creator** is the address that may reclaim the reward if nobody earns it. The executing Pot is
258
+ the obvious default and the wrong one: it is owned by the Portal's Executor, which every solver can
259
+ drive, so a refund landing there is a refund anyone can take. Set `IntentOptions.creator` and every
260
+ intent the program creates inherits it, along with the deadline and the eco-routes deployment; a
261
+ direct `compileSauceRoute` caller sets `compile.intents.creator`.
262
+
263
+ The **execution fee** is the one value that cannot be derived. It is mutable on-chain, and it lives
264
+ on the destination, which the source chain cannot read while it executes. Read it at build time and
265
+ pass it as `compile.intents.executionFee`:
266
+
267
+ ```ts
268
+ import { destinationExecutionFee } from "@eco-incorp/sauce";
269
+
270
+ const request = destinationExecutionFee();
271
+ // const { data } = await client.call(request);
272
+ // const executionFee = request.decode(data!);
273
+ ```
274
+
275
+ Read it shortly before building: an increase before fulfillment makes the cook revert, which reverts
276
+ the fulfillment.
277
+
278
+ ### The destination Pot is derived
279
+
280
+ A Pot is CREATE2 from the Kitchen over its owner and a salt, and the owner a route call must cook as
281
+ is the `executor()` of the Portal the child's route records — itself that Portal's second `CREATE`,
282
+ so it follows from the Portal address. That is the registry's Portal, or `destinationPortal` when you
283
+ override it: a route recording one Portal is run by that Portal's Executor, and a Pot owned by any
284
+ other Executor would refuse the cook with `NotOwner()`. Nothing is read from a chain and nothing is
285
+ asked of you. The salt is zero (`SAUCE_INTENT_POT_SALT`), so there is **one shared Pot per Executor**
286
+ rather than one per intent: the Pot the solver deploys for that Portal. A Pot is fixed by its owner
287
+ and salt, so whoever calls `deployPot(executor, 0)` creates that same Pot, owned by the Executor.
288
+
289
+ Deriving an address is not deploying a contract, and the lowering deploys nothing. **The Pot must
290
+ exist before the child intent is fulfilled** — the solver deploys it — or the fulfilment reverts
291
+ when the Executor calls an address without code. A token-only body cooks nothing, so it needs no Pot.
292
+
293
+ A Pot you name with `pot` must equally exist already and be owned by that Executor.
294
+
295
+ Because it is shared, **leave nothing in it**. Deliver assets, use them, and move the remainder out
296
+ within the same fulfillment. Anything resting there, or any allowance left standing, belongs to
297
+ whoever drives the Executor next.
298
+
299
+ ### Overrides
300
+
301
+ Everything derived can be overridden through `compile.intents`, and `Base(...)` passes its own
302
+ fields down so the common case sets none of them:
303
+
304
+ | Field | Overrides |
305
+ | ---------------------------- | -------------------------------------------------------------------- |
306
+ | `deadline`, `rewardDeadline` | The route and reward deadlines |
307
+ | `creator`, `prover` | The reward's creator and prover |
308
+ | `sourcePortal` | Where the intent is published |
309
+ | `destinationPortal` | The Portal recorded in the child's route |
310
+ | `pot`, `engine` | Where a program body cooks, and on what; a named Pot is not deployed |
311
+ | `executionFee` | The cook's value |
312
+ | `salt`, `allowPartial` | The route salt, and partial funding |
313
+ | `generation`, `environment` | Which eco-routes deployment to address |
314
+
315
+ ### What is refused
316
+
317
+ Each of these is a compile error naming the construct, never a silently different intent:
318
+
319
+ - An identifier that is neither a compile-time value nor a variable of the enclosing program.
320
+ - A `.reward(...)` that is not an object, or a token entry missing `token` or `amount`.
321
+ - A missing `deadline`, a missing `creator`, or a missing `executionFee` for a program body.
322
+ - A chain with no eco-routes deployment, or a pair with no prover deployed on both sides.
323
+
324
+ Inside a program body an unknown name is the _compiler's_ error rather than this lowering's, and
325
+ reads the same way: it names the variable that is not declared.
326
+
109
327
  ## Callbacks are compiled source
110
328
 
111
329
  A callback is read with `Function.prototype.toString()`, parsed, and compiled as SauceScript. It is never invoked as a JavaScript callback and captures no outer variables. An `amount` in surrounding JavaScript does not become a value inside the program.
@@ -155,4 +373,4 @@ export async function readVault(
155
373
 
156
374
  Execute this read on the source chain. `hashCall()` cross-checks hashes against the Portal; `fundedCall()` checks funding. `predictVault({ portal, vaultInitCodeHash })` provides an offline CREATE2 prediction when you have verified the deployed vault configuration.
157
375
 
158
- The current SVM route emitter produces an older direct-engine instruction and cannot target the released gated engine. Code staging alone does not make those routes executable. See the [Solana guide](solana.md) for supported Kitchen execution and route-helper limitations.
376
+ For a Solana destination, build the execution with the Kitchen client rather than the SVM route helpers: the instruction those helpers emit is not one the Solana engine accepts, and staging the code does not change that. The [Solana guide](solana.md) has the supported path.