@oakagentkit/core 0.1.2 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (580) hide show
  1. package/build/dist/api/addresses.d.ts +0 -1219
  2. package/build/dist/api/addresses.js +1 -1
  3. package/build/dist/api/amounts.d.ts +0 -1
  4. package/build/dist/api/amounts.js +1 -1
  5. package/build/dist/api/args.js +1 -1
  6. package/build/dist/api/canonical.d.ts +0 -1
  7. package/build/dist/api/canonical.js +1 -1
  8. package/build/dist/api/chain.d.ts +2 -0
  9. package/build/dist/api/chain.js +1 -1
  10. package/build/dist/api/deployments.d.ts +26 -0
  11. package/build/dist/api/deployments.js +1 -0
  12. package/build/dist/api/errors.js +1 -1
  13. package/build/dist/api/gas.js +1 -1
  14. package/build/dist/api/grandfather.js +1 -1
  15. package/build/dist/api/guards.d.ts +23 -0
  16. package/build/dist/api/guards.js +1 -0
  17. package/build/dist/api/history.js +1 -1
  18. package/build/dist/api/http.js +1 -1
  19. package/build/dist/api/identity-link.js +1 -1
  20. package/build/dist/api/launch.d.ts +1 -0
  21. package/build/dist/api/launch.js +1 -1
  22. package/build/dist/api/merkle.js +1 -1
  23. package/build/dist/api/metadata.js +1 -1
  24. package/build/dist/api/module.js +1 -1
  25. package/build/dist/api/modules/beefy/boosts.d.ts +132 -0
  26. package/build/dist/api/modules/beefy/boosts.js +1 -0
  27. package/build/dist/api/modules/beefy/clm.d.ts +282 -0
  28. package/build/dist/api/modules/beefy/clm.js +1 -0
  29. package/build/dist/api/modules/beefy/guard.d.ts +5 -0
  30. package/build/dist/api/modules/beefy/guard.js +1 -0
  31. package/build/dist/api/modules/beefy/index.js +1 -1
  32. package/build/dist/api/modules/beefy/liquidity.d.ts +237 -0
  33. package/build/dist/api/modules/beefy/liquidity.js +1 -0
  34. package/build/dist/api/modules/beefy/management.d.ts +100 -0
  35. package/build/dist/api/modules/beefy/management.js +1 -0
  36. package/build/dist/api/modules/beefy/vaults.d.ts +14 -0
  37. package/build/dist/api/modules/beefy/vaults.js +1 -0
  38. package/build/dist/api/modules/clanker/extensions.d.ts +62 -0
  39. package/build/dist/api/modules/clanker/extensions.js +1 -0
  40. package/build/dist/api/modules/clanker/index.js +1 -1
  41. package/build/dist/api/modules/clanker/manage.d.ts +2 -0
  42. package/build/dist/api/modules/clanker/manage.js +1 -0
  43. package/build/dist/api/modules/clanker/pool-config.d.ts +96 -0
  44. package/build/dist/api/modules/clanker/pool-config.js +1 -0
  45. package/build/dist/api/modules/clanker/protocol.d.ts +2 -0
  46. package/build/dist/api/modules/clanker/protocol.js +1 -0
  47. package/build/dist/api/modules/clanker/state.d.ts +246 -0
  48. package/build/dist/api/modules/clanker/state.js +1 -0
  49. package/build/dist/api/modules/erc8004/abi.d.ts +808 -0
  50. package/build/dist/api/modules/erc8004/abi.js +1 -0
  51. package/build/dist/api/modules/erc8004/common.d.ts +69 -0
  52. package/build/dist/api/modules/erc8004/common.js +1 -0
  53. package/build/dist/api/modules/erc8004/domain.d.ts +3 -0
  54. package/build/dist/api/modules/erc8004/domain.js +1 -0
  55. package/build/dist/api/modules/erc8004/index.d.ts +3 -171
  56. package/build/dist/api/modules/erc8004/index.js +1 -1
  57. package/build/dist/api/modules/erc8004/management.d.ts +4 -0
  58. package/build/dist/api/modules/erc8004/management.js +1 -0
  59. package/build/dist/api/modules/erc8004/reputation.d.ts +3 -0
  60. package/build/dist/api/modules/erc8004/reputation.js +1 -0
  61. package/build/dist/api/modules/erc8004/services.d.ts +2 -0
  62. package/build/dist/api/modules/erc8004/services.js +1 -0
  63. package/build/dist/api/modules/erc8004/validation.d.ts +2 -0
  64. package/build/dist/api/modules/erc8004/validation.js +1 -0
  65. package/build/dist/api/modules/grove/index.js +1 -1
  66. package/build/dist/api/modules/heyresearch/freshness.d.ts +12 -0
  67. package/build/dist/api/modules/heyresearch/freshness.js +1 -0
  68. package/build/dist/api/modules/heyresearch/index.js +1 -1
  69. package/build/dist/api/modules/heyresearch/public-reads.d.ts +5 -0
  70. package/build/dist/api/modules/heyresearch/public-reads.js +1 -0
  71. package/build/dist/api/modules/hoodag/chain-reads.d.ts +33 -0
  72. package/build/dist/api/modules/hoodag/chain-reads.js +1 -0
  73. package/build/dist/api/modules/hoodag/index.d.ts +9 -1
  74. package/build/dist/api/modules/hoodag/index.js +1 -1
  75. package/build/dist/api/modules/hoodag/management.d.ts +2 -0
  76. package/build/dist/api/modules/hoodag/management.js +1 -0
  77. package/build/dist/api/modules/hoodag/public-reads.d.ts +2 -0
  78. package/build/dist/api/modules/hoodag/public-reads.js +1 -0
  79. package/build/dist/api/modules/hoodag/reconstruct.d.ts +14 -0
  80. package/build/dist/api/modules/hoodag/reconstruct.js +1 -0
  81. package/build/dist/api/modules/hoodlock/airdrop.js +1 -1
  82. package/build/dist/api/modules/hoodlock/buyback.d.ts +28 -0
  83. package/build/dist/api/modules/hoodlock/buyback.js +1 -0
  84. package/build/dist/api/modules/hoodlock/commerce.d.ts +24 -0
  85. package/build/dist/api/modules/hoodlock/commerce.js +1 -0
  86. package/build/dist/api/modules/hoodlock/fee.d.ts +15 -0
  87. package/build/dist/api/modules/hoodlock/fee.js +1 -0
  88. package/build/dist/api/modules/hoodlock/guard.d.ts +5 -0
  89. package/build/dist/api/modules/hoodlock/guard.js +1 -0
  90. package/build/dist/api/modules/hoodlock/index.d.ts +4 -0
  91. package/build/dist/api/modules/hoodlock/index.js +1 -1
  92. package/build/dist/api/modules/hoodlock/lifecycle.d.ts +285 -0
  93. package/build/dist/api/modules/hoodlock/lifecycle.js +1 -0
  94. package/build/dist/api/modules/hoodlock/locks-burn.d.ts +3 -3
  95. package/build/dist/api/modules/hoodlock/locks-burn.js +1 -1
  96. package/build/dist/api/modules/hoodlock/public.d.ts +3 -0
  97. package/build/dist/api/modules/hoodlock/public.js +1 -0
  98. package/build/dist/api/modules/hookr/actions.d.ts +4 -0
  99. package/build/dist/api/modules/hookr/actions.js +1 -0
  100. package/build/dist/api/modules/hookr/addons.d.ts +4 -0
  101. package/build/dist/api/modules/hookr/addons.js +1 -0
  102. package/build/dist/api/modules/hookr/contracts.d.ts +30 -0
  103. package/build/dist/api/modules/hookr/contracts.js +1 -0
  104. package/build/dist/api/modules/hookr/create-cancel.d.ts +10 -73
  105. package/build/dist/api/modules/hookr/create-cancel.js +1 -1
  106. package/build/dist/api/modules/hookr/discovery.d.ts +3 -0
  107. package/build/dist/api/modules/hookr/discovery.js +1 -0
  108. package/build/dist/api/modules/hookr/fill-bounty.js +1 -1
  109. package/build/dist/api/modules/hookr/index.d.ts +0 -3
  110. package/build/dist/api/modules/hookr/index.js +1 -1
  111. package/build/dist/api/modules/hookr/public-reads.d.ts +4 -0
  112. package/build/dist/api/modules/hookr/public-reads.js +1 -0
  113. package/build/dist/api/modules/hookr/relay.d.ts +304 -0
  114. package/build/dist/api/modules/hookr/relay.js +1 -0
  115. package/build/dist/api/modules/hookr/revenue.d.ts +5 -0
  116. package/build/dist/api/modules/hookr/revenue.js +1 -0
  117. package/build/dist/api/modules/kyberswap/index.d.ts +18 -2
  118. package/build/dist/api/modules/kyberswap/index.js +1 -1
  119. package/build/dist/api/modules/kyberswap/source-pools.d.ts +28 -0
  120. package/build/dist/api/modules/kyberswap/source-pools.js +1 -0
  121. package/build/dist/api/modules/lighter/index.js +1 -1
  122. package/build/dist/api/modules/longbow/administration.d.ts +119 -0
  123. package/build/dist/api/modules/longbow/administration.js +1 -0
  124. package/build/dist/api/modules/longbow/analytics.d.ts +272 -0
  125. package/build/dist/api/modules/longbow/analytics.js +1 -0
  126. package/build/dist/api/modules/longbow/fixed.d.ts +126 -0
  127. package/build/dist/api/modules/longbow/fixed.js +1 -0
  128. package/build/dist/api/modules/longbow/index.d.ts +16 -0
  129. package/build/dist/api/modules/longbow/index.js +1 -1
  130. package/build/dist/api/modules/longbow/nft.d.ts +236 -0
  131. package/build/dist/api/modules/longbow/nft.js +1 -0
  132. package/build/dist/api/modules/longbow/rebates.d.ts +152 -0
  133. package/build/dist/api/modules/longbow/rebates.js +1 -0
  134. package/build/dist/api/modules/longbow/staking.d.ts +4 -0
  135. package/build/dist/api/modules/longbow/staking.js +1 -0
  136. package/build/dist/api/modules/meridian/index.js +1 -1
  137. package/build/dist/api/modules/meridian/markets.js +1 -1
  138. package/build/dist/api/modules/meridian/perps-batch.d.ts +4 -0
  139. package/build/dist/api/modules/meridian/perps-batch.js +1 -0
  140. package/build/dist/api/modules/meridian/perps-common.d.ts +56 -0
  141. package/build/dist/api/modules/meridian/perps-common.js +1 -0
  142. package/build/dist/api/modules/meridian/perps-guards.d.ts +3 -0
  143. package/build/dist/api/modules/meridian/perps-guards.js +1 -0
  144. package/build/dist/api/modules/meridian/perps-intents.d.ts +18 -0
  145. package/build/dist/api/modules/meridian/perps-intents.js +1 -0
  146. package/build/dist/api/modules/meridian/perps-stream.d.ts +3 -0
  147. package/build/dist/api/modules/meridian/perps-stream.js +1 -0
  148. package/build/dist/api/modules/meridian/perps.d.ts +3 -0
  149. package/build/dist/api/modules/meridian/perps.js +1 -0
  150. package/build/dist/api/modules/meridian/predict-read.d.ts +2 -0
  151. package/build/dist/api/modules/meridian/predict-read.js +1 -0
  152. package/build/dist/api/modules/meridian/rfq.d.ts +29 -0
  153. package/build/dist/api/modules/meridian/rfq.js +1 -1
  154. package/build/dist/api/modules/merkl/discovery.d.ts +2 -0
  155. package/build/dist/api/modules/merkl/discovery.js +1 -0
  156. package/build/dist/api/modules/merkl/index.d.ts +10 -1
  157. package/build/dist/api/modules/merkl/index.js +1 -1
  158. package/build/dist/api/modules/merkl/manage.d.ts +2 -0
  159. package/build/dist/api/modules/merkl/manage.js +1 -0
  160. package/build/dist/api/modules/merkl/protocol.d.ts +2 -0
  161. package/build/dist/api/modules/merkl/protocol.js +1 -0
  162. package/build/dist/api/modules/morpho/allocator.d.ts +308 -0
  163. package/build/dist/api/modules/morpho/allocator.js +1 -0
  164. package/build/dist/api/modules/morpho/bundles-abi.d.ts +705 -0
  165. package/build/dist/api/modules/morpho/bundles-abi.js +1 -0
  166. package/build/dist/api/modules/morpho/bundles.d.ts +3 -0
  167. package/build/dist/api/modules/morpho/bundles.js +1 -0
  168. package/build/dist/api/modules/morpho/in-kind.d.ts +85 -0
  169. package/build/dist/api/modules/morpho/in-kind.js +1 -0
  170. package/build/dist/api/modules/morpho/index.d.ts +10 -2
  171. package/build/dist/api/modules/morpho/index.js +1 -12
  172. package/build/dist/api/modules/morpho/local-guard.d.ts +26 -0
  173. package/build/dist/api/modules/morpho/local-guard.js +1 -0
  174. package/build/dist/api/modules/morpho/midnight-abi.d.ts +1690 -0
  175. package/build/dist/api/modules/morpho/midnight-abi.js +1 -0
  176. package/build/dist/api/modules/morpho/midnight.d.ts +179 -0
  177. package/build/dist/api/modules/morpho/midnight.js +1 -0
  178. package/build/dist/api/modules/morpho/protocol.d.ts +290 -0
  179. package/build/dist/api/modules/morpho/protocol.js +1 -0
  180. package/build/dist/api/modules/morpho/surface.d.ts +4 -0
  181. package/build/dist/api/modules/morpho/surface.js +1 -0
  182. package/build/dist/api/modules/morpho/vault-management.d.ts +10 -0
  183. package/build/dist/api/modules/morpho/vault-management.js +1 -0
  184. package/build/dist/api/modules/morpho/vault-tools.d.ts +6 -0
  185. package/build/dist/api/modules/morpho/vault-tools.js +1 -0
  186. package/build/dist/api/modules/morpho/vault-v2.d.ts +190 -0
  187. package/build/dist/api/modules/morpho/vault-v2.js +1 -0
  188. package/build/dist/api/modules/netnet/blackjack-hashes.d.ts +89 -0
  189. package/build/dist/api/modules/netnet/blackjack-hashes.js +1 -0
  190. package/build/dist/api/modules/netnet/card-abi.d.ts +3758 -0
  191. package/build/dist/api/modules/netnet/card-abi.js +1 -0
  192. package/build/dist/api/modules/netnet/card-plan.d.ts +43 -0
  193. package/build/dist/api/modules/netnet/card-plan.js +1 -0
  194. package/build/dist/api/modules/netnet/card-policy.d.ts +10 -0
  195. package/build/dist/api/modules/netnet/card-policy.js +1 -0
  196. package/build/dist/api/modules/netnet/card-read.d.ts +2 -0
  197. package/build/dist/api/modules/netnet/card-read.js +1 -0
  198. package/build/dist/api/modules/netnet/card-recovery.d.ts +2 -0
  199. package/build/dist/api/modules/netnet/card-recovery.js +1 -0
  200. package/build/dist/api/modules/netnet/desk-action-abi.d.ts +2 -0
  201. package/build/dist/api/modules/netnet/desk-action-abi.js +1 -0
  202. package/build/dist/api/modules/netnet/desk-action.d.ts +3 -0
  203. package/build/dist/api/modules/netnet/desk-action.js +1 -0
  204. package/build/dist/api/modules/netnet/desk-read.d.ts +5 -0
  205. package/build/dist/api/modules/netnet/desk-read.js +1 -0
  206. package/build/dist/api/modules/netnet/desk-registry.d.ts +5 -0
  207. package/build/dist/api/modules/netnet/desk-registry.js +1 -0
  208. package/build/dist/api/modules/netnet/financial-abi.d.ts +1764 -0
  209. package/build/dist/api/modules/netnet/financial-abi.js +1 -0
  210. package/build/dist/api/modules/netnet/financial.d.ts +13 -0
  211. package/build/dist/api/modules/netnet/financial.js +1 -0
  212. package/build/dist/api/modules/netnet/index.d.ts +1 -0
  213. package/build/dist/api/modules/netnet/index.js +1 -1
  214. package/build/dist/api/modules/netnet/staking.d.ts +8 -0
  215. package/build/dist/api/modules/netnet/staking.js +1 -0
  216. package/build/dist/api/modules/orbio/gateway.d.ts +24 -0
  217. package/build/dist/api/modules/orbio/gateway.js +1 -0
  218. package/build/dist/api/modules/orbio/index.d.ts +3 -1
  219. package/build/dist/api/modules/orbio/index.js +1 -1
  220. package/build/dist/api/modules/orbio/pins.d.ts +457 -0
  221. package/build/dist/api/modules/orbio/pins.js +1 -0
  222. package/build/dist/api/modules/pons/claim.d.ts +33 -1
  223. package/build/dist/api/modules/pons/claim.js +1 -1
  224. package/build/dist/api/modules/pons/holder-directory.d.ts +35 -0
  225. package/build/dist/api/modules/pons/holder-directory.js +1 -0
  226. package/build/dist/api/modules/pons/index.js +1 -1
  227. package/build/dist/api/modules/pons/launch-status.d.ts +151 -5
  228. package/build/dist/api/modules/pons/launch-status.js +1 -1
  229. package/build/dist/api/modules/pons/prices.js +1 -1
  230. package/build/dist/api/modules/pons/reads.d.ts +3 -0
  231. package/build/dist/api/modules/pons/reads.js +1 -0
  232. package/build/dist/api/modules/pons/swap-terms.d.ts +77 -0
  233. package/build/dist/api/modules/pons/swap-terms.js +1 -0
  234. package/build/dist/api/modules/pons/trade.d.ts +13 -2
  235. package/build/dist/api/modules/pons/trade.js +1 -1
  236. package/build/dist/api/modules/poolstrade/index.js +1 -1
  237. package/build/dist/api/modules/priors/coverage.d.ts +23 -0
  238. package/build/dist/api/modules/priors/coverage.js +1 -0
  239. package/build/dist/api/modules/priors/discovery.d.ts +4 -0
  240. package/build/dist/api/modules/priors/discovery.js +1 -0
  241. package/build/dist/api/modules/priors/features.d.ts +62 -0
  242. package/build/dist/api/modules/priors/features.js +1 -0
  243. package/build/dist/api/modules/priors/index.d.ts +9 -2
  244. package/build/dist/api/modules/priors/index.js +1 -1
  245. package/build/dist/api/modules/priors/integration.d.ts +6 -0
  246. package/build/dist/api/modules/priors/integration.js +1 -0
  247. package/build/dist/api/modules/priors/market.d.ts +10 -0
  248. package/build/dist/api/modules/priors/market.js +1 -0
  249. package/build/dist/api/modules/priors/pt.d.ts +421 -0
  250. package/build/dist/api/modules/priors/pt.js +1 -0
  251. package/build/dist/api/modules/priors/savings-exit.d.ts +85 -0
  252. package/build/dist/api/modules/priors/savings-exit.js +1 -0
  253. package/build/dist/api/modules/priors/starter-line.d.ts +495 -0
  254. package/build/dist/api/modules/priors/starter-line.js +1 -0
  255. package/build/dist/api/modules/priors/stock-swap.d.ts +101 -0
  256. package/build/dist/api/modules/priors/stock-swap.js +1 -0
  257. package/build/dist/api/modules/relay/api.d.ts +52 -0
  258. package/build/dist/api/modules/relay/api.js +1 -0
  259. package/build/dist/api/modules/relay/bootstrap.d.ts +2 -0
  260. package/build/dist/api/modules/relay/bootstrap.js +1 -0
  261. package/build/dist/api/modules/relay/discovery.d.ts +2 -0
  262. package/build/dist/api/modules/relay/discovery.js +1 -0
  263. package/build/dist/api/modules/relay/inbound.js +1 -1
  264. package/build/dist/api/modules/relay/index.d.ts +2 -0
  265. package/build/dist/api/modules/relay/index.js +1 -1
  266. package/build/dist/api/modules/relay/order.d.ts +2 -0
  267. package/build/dist/api/modules/relay/order.js +1 -0
  268. package/build/dist/api/modules/relay/outbound-status.js +1 -1
  269. package/build/dist/api/modules/relay/readiness.d.ts +5 -0
  270. package/build/dist/api/modules/relay/readiness.js +1 -0
  271. package/build/dist/api/modules/relay/reads.d.ts +3 -0
  272. package/build/dist/api/modules/relay/reads.js +1 -0
  273. package/build/dist/api/modules/relay/vaults.d.ts +24 -0
  274. package/build/dist/api/modules/relay/vaults.js +1 -0
  275. package/build/dist/api/modules/spark/actions.d.ts +2 -0
  276. package/build/dist/api/modules/spark/actions.js +1 -0
  277. package/build/dist/api/modules/spark/details.d.ts +3 -0
  278. package/build/dist/api/modules/spark/details.js +1 -0
  279. package/build/dist/api/modules/spark/index.js +1 -1
  280. package/build/dist/api/modules/spark/management.d.ts +7 -0
  281. package/build/dist/api/modules/spark/management.js +1 -0
  282. package/build/dist/api/modules/steakhouse/analytics.d.ts +2 -0
  283. package/build/dist/api/modules/steakhouse/analytics.js +1 -0
  284. package/build/dist/api/modules/steakhouse/erc4626.d.ts +2 -0
  285. package/build/dist/api/modules/steakhouse/erc4626.js +1 -0
  286. package/build/dist/api/modules/steakhouse/index.js +1 -1
  287. package/build/dist/api/modules/steakhouse/local-guard.d.ts +7 -0
  288. package/build/dist/api/modules/steakhouse/local-guard.js +1 -0
  289. package/build/dist/api/modules/steakhouse/management.d.ts +3 -0
  290. package/build/dist/api/modules/steakhouse/management.js +1 -0
  291. package/build/dist/api/modules/steakhouse/v2-exit.d.ts +19 -0
  292. package/build/dist/api/modules/steakhouse/v2-exit.js +1 -0
  293. package/build/dist/api/modules/tickerspring/basket-routes.d.ts +2 -0
  294. package/build/dist/api/modules/tickerspring/basket-routes.js +1 -0
  295. package/build/dist/api/modules/tickerspring/contract-reads.d.ts +2 -0
  296. package/build/dist/api/modules/tickerspring/contract-reads.js +1 -0
  297. package/build/dist/api/modules/tickerspring/discovery.d.ts +27 -0
  298. package/build/dist/api/modules/tickerspring/discovery.js +1 -0
  299. package/build/dist/api/modules/tickerspring/exit-preview.d.ts +14 -0
  300. package/build/dist/api/modules/tickerspring/exit-preview.js +1 -0
  301. package/build/dist/api/modules/tickerspring/guards.d.ts +7 -0
  302. package/build/dist/api/modules/tickerspring/guards.js +1 -0
  303. package/build/dist/api/modules/tickerspring/index.d.ts +80 -1
  304. package/build/dist/api/modules/tickerspring/index.js +1 -1
  305. package/build/dist/api/modules/tickerspring/journeys.d.ts +31 -0
  306. package/build/dist/api/modules/tickerspring/journeys.js +1 -0
  307. package/build/dist/api/modules/tickerspring/ladder.d.ts +8 -0
  308. package/build/dist/api/modules/tickerspring/ladder.js +1 -0
  309. package/build/dist/api/modules/tickerspring/maker.d.ts +8 -0
  310. package/build/dist/api/modules/tickerspring/maker.js +1 -0
  311. package/build/dist/api/modules/tickerspring/order-accounting.d.ts +4 -0
  312. package/build/dist/api/modules/tickerspring/order-accounting.js +1 -0
  313. package/build/dist/api/modules/tickerspring/research.d.ts +2 -0
  314. package/build/dist/api/modules/tickerspring/research.js +1 -0
  315. package/build/dist/api/modules/tickerspring/strategies.d.ts +17 -0
  316. package/build/dist/api/modules/tickerspring/strategies.js +1 -0
  317. package/build/dist/api/modules/uniswap/auction-create.d.ts +112 -0
  318. package/build/dist/api/modules/uniswap/auction-create.js +1 -0
  319. package/build/dist/api/modules/uniswap/auction.d.ts +212 -0
  320. package/build/dist/api/modules/uniswap/auction.js +1 -0
  321. package/build/dist/api/modules/uniswap/batch.d.ts +22 -0
  322. package/build/dist/api/modules/uniswap/batch.js +1 -0
  323. package/build/dist/api/modules/uniswap/common.d.ts +12 -0
  324. package/build/dist/api/modules/uniswap/common.js +1 -0
  325. package/build/dist/api/modules/uniswap/fees.d.ts +54 -0
  326. package/build/dist/api/modules/uniswap/fees.js +1 -0
  327. package/build/dist/api/modules/uniswap/index.d.ts +2 -1
  328. package/build/dist/api/modules/uniswap/index.js +1 -1
  329. package/build/dist/api/modules/uniswap/local-guard.d.ts +16 -0
  330. package/build/dist/api/modules/uniswap/local-guard.js +1 -0
  331. package/build/dist/api/modules/uniswap/oracle.d.ts +2 -0
  332. package/build/dist/api/modules/uniswap/oracle.js +1 -0
  333. package/build/dist/api/modules/uniswap/pool-math.d.ts +13 -0
  334. package/build/dist/api/modules/uniswap/pool-math.js +1 -0
  335. package/build/dist/api/modules/uniswap/pools.d.ts +30 -0
  336. package/build/dist/api/modules/uniswap/pools.js +1 -0
  337. package/build/dist/api/modules/uniswap/position.d.ts +69 -0
  338. package/build/dist/api/modules/uniswap/position.js +1 -0
  339. package/build/dist/api/modules/uniswap/protocol.d.ts +154 -0
  340. package/build/dist/api/modules/uniswap/protocol.js +1 -0
  341. package/build/dist/api/modules/uniswap/token-jar.d.ts +52 -0
  342. package/build/dist/api/modules/uniswap/token-jar.js +1 -0
  343. package/build/dist/api/modules/uniswap/trade-batch.d.ts +2 -0
  344. package/build/dist/api/modules/uniswap/trade-batch.js +1 -0
  345. package/build/dist/api/modules/uniswap/trade.d.ts +406 -0
  346. package/build/dist/api/modules/uniswap/trade.js +1 -0
  347. package/build/dist/api/modules/uniswap/v2.d.ts +180 -0
  348. package/build/dist/api/modules/uniswap/v2.js +1 -0
  349. package/build/dist/api/modules/uniswap/v3.d.ts +23 -2
  350. package/build/dist/api/modules/uniswap/v3.js +1 -1
  351. package/build/dist/api/modules/uniswap/v4.d.ts +17 -28
  352. package/build/dist/api/modules/uniswap/v4.js +1 -1
  353. package/build/dist/api/modules/uniswap/wrap.d.ts +17 -0
  354. package/build/dist/api/modules/uniswap/wrap.js +1 -0
  355. package/build/dist/api/modules/velora/claims.d.ts +86 -0
  356. package/build/dist/api/modules/velora/claims.js +1 -0
  357. package/build/dist/api/modules/velora/delta-reads.d.ts +2 -0
  358. package/build/dist/api/modules/velora/delta-reads.js +1 -0
  359. package/build/dist/api/modules/velora/index.js +1 -1
  360. package/build/dist/api/owner-signature.d.ts +29 -0
  361. package/build/dist/api/owner-signature.js +1 -0
  362. package/build/dist/api/positions.js +1 -1
  363. package/build/dist/api/pricenote.d.ts +0 -1
  364. package/build/dist/api/pricenote.js +1 -1
  365. package/build/dist/api/prices.js +1 -1
  366. package/build/dist/api/pricing.d.ts +1 -14
  367. package/build/dist/api/pricing.js +1 -1
  368. package/build/dist/api/routes.d.ts +2 -0
  369. package/build/dist/api/routes.js +1 -1
  370. package/build/dist/api/rpc.d.ts +23 -0
  371. package/build/dist/api/rpc.js +1 -0
  372. package/build/dist/api/secret-fields.js +1 -1
  373. package/build/dist/api/send.js +1 -1
  374. package/build/dist/api/signing-registry.d.ts +19 -0
  375. package/build/dist/api/signing-registry.js +1 -0
  376. package/build/dist/api/signing.d.ts +162 -0
  377. package/build/dist/api/signing.js +1 -0
  378. package/build/dist/api/simulate.js +1 -1
  379. package/build/dist/api/swap.d.ts +61 -27
  380. package/build/dist/api/swap.js +1 -1
  381. package/build/dist/api/tokens.d.ts +5 -0
  382. package/build/dist/api/tokens.js +1 -1
  383. package/build/dist/api/tool-policy.d.ts +6 -0
  384. package/build/dist/api/tool-policy.js +1 -1
  385. package/build/dist/api/tx.js +1 -1
  386. package/build/dist/api/types.d.ts +2 -0
  387. package/build/dist/api/vendor-limits.js +1 -1
  388. package/build/dist/chunks/2EDXKJ3B.js +1 -0
  389. package/build/dist/chunks/2NA6JLEC.js +1 -0
  390. package/build/dist/chunks/2SNQWKHA.js +1 -0
  391. package/build/dist/chunks/3ACEWCKZ.js +1 -0
  392. package/build/dist/chunks/3CCBUYUM.js +1 -0
  393. package/build/dist/chunks/3RFSGU2Y.js +1 -0
  394. package/build/dist/chunks/46ZA2R5L.js +1 -0
  395. package/build/dist/chunks/4IPW5WZ4.js +1 -0
  396. package/build/dist/chunks/53N7PNJH.js +1 -0
  397. package/build/dist/chunks/55NX776C.js +1 -0
  398. package/build/dist/chunks/5EHQM6DM.js +1 -0
  399. package/build/dist/chunks/5FTSKYQH.js +1 -0
  400. package/build/dist/chunks/5HW6JKME.js +1 -0
  401. package/build/dist/chunks/5VXNQFYJ.js +1 -0
  402. package/build/dist/chunks/5XFXH2JT.js +1 -0
  403. package/build/dist/chunks/5YS5V2LK.js +1 -0
  404. package/build/dist/chunks/64AF7ECA.js +1 -0
  405. package/build/dist/chunks/65QFM4JU.js +1 -0
  406. package/build/dist/chunks/67TJOOBI.js +1 -0
  407. package/build/dist/chunks/6HV5BR7P.js +1 -0
  408. package/build/dist/chunks/{A5ITAEUQ.js → 6IM6A5VA.js} +1 -1
  409. package/build/dist/chunks/6JCEJ66K.js +1 -0
  410. package/build/dist/chunks/6LLOTPH2.js +1 -0
  411. package/build/dist/chunks/6NR7SVRO.js +1 -0
  412. package/build/dist/chunks/6PU2CMQZ.js +1 -0
  413. package/build/dist/chunks/6SCCW74G.js +1 -0
  414. package/build/dist/chunks/73N3TOJL.js +1 -0
  415. package/build/dist/chunks/74BPMUAG.js +1 -0
  416. package/build/dist/chunks/7B5UH2VS.js +1 -0
  417. package/build/dist/chunks/7BTELNNI.js +1 -0
  418. package/build/dist/chunks/7LDAJ6BM.js +1 -0
  419. package/build/dist/chunks/7MR37STI.js +1 -0
  420. package/build/dist/chunks/7T4BYFD4.js +1 -0
  421. package/build/dist/chunks/7US6PD56.js +1 -0
  422. package/build/dist/chunks/7YU6DELJ.js +1 -0
  423. package/build/dist/chunks/7Z5IM2QZ.js +1 -0
  424. package/build/dist/chunks/A25P24G2.js +1 -0
  425. package/build/dist/chunks/AFHHRDPJ.js +1 -0
  426. package/build/dist/chunks/ANQ43XJA.js +1 -0
  427. package/build/dist/chunks/{UCMNB2UP.js → AXYOJBX6.js} +1 -1
  428. package/build/dist/chunks/AYM5L6L7.js +1 -0
  429. package/build/dist/chunks/BFVLBENV.js +1 -0
  430. package/build/dist/chunks/BV3AHLH5.js +1 -0
  431. package/build/dist/chunks/BXN3MDS4.js +1 -0
  432. package/build/dist/chunks/BYXBS45D.js +1 -0
  433. package/build/dist/chunks/C2FEXLMA.js +1 -0
  434. package/build/dist/chunks/C3TJLARP.js +1 -0
  435. package/build/dist/chunks/C3ZZSGSP.js +1 -0
  436. package/build/dist/chunks/CAU44UWP.js +1 -0
  437. package/build/dist/chunks/CBA776XQ.js +1 -0
  438. package/build/dist/chunks/CCEWSOBT.js +1 -0
  439. package/build/dist/chunks/CEQNXF6A.js +1 -0
  440. package/build/dist/chunks/{6SYTB6FB.js → D3OWLDVB.js} +1 -1
  441. package/build/dist/chunks/D6VP3N27.js +3 -0
  442. package/build/dist/chunks/DHXVYHT4.js +1 -0
  443. package/build/dist/chunks/DLIOZCEG.js +1 -0
  444. package/build/dist/chunks/EA6IYKIB.js +1 -0
  445. package/build/dist/chunks/EC5W3UZD.js +1 -0
  446. package/build/dist/chunks/{B4MLWDPM.js → EG6M6SSO.js} +1 -1
  447. package/build/dist/chunks/EVANKNJV.js +1 -0
  448. package/build/dist/chunks/EYYUWFUR.js +1 -0
  449. package/build/dist/chunks/F2YH72GF.js +1 -0
  450. package/build/dist/chunks/F3TJCOVV.js +1 -0
  451. package/build/dist/chunks/F6WBPPBN.js +1 -0
  452. package/build/dist/chunks/FSPNOVKB.js +1 -0
  453. package/build/dist/chunks/G4PDM3MX.js +1 -0
  454. package/build/dist/chunks/G7UKNO2I.js +1 -0
  455. package/build/dist/chunks/GHDDVBPK.js +1 -0
  456. package/build/dist/chunks/GSI5COTD.js +1 -0
  457. package/build/dist/chunks/GZ5TW3WB.js +1 -0
  458. package/build/dist/chunks/H4S2ZCWK.js +1 -0
  459. package/build/dist/chunks/H6ED3RHF.js +1 -0
  460. package/build/dist/chunks/HFQS5344.js +1 -0
  461. package/build/dist/chunks/{Y3P6SUNL.js → HIMVOTIU.js} +1 -1
  462. package/build/dist/chunks/HL2MLC3O.js +1 -0
  463. package/build/dist/chunks/HNMOB76J.js +1 -0
  464. package/build/dist/chunks/HQVC6X3T.js +1 -0
  465. package/build/dist/chunks/HRG2VVPY.js +1 -0
  466. package/build/dist/chunks/IHGVCPVA.js +2 -0
  467. package/build/dist/chunks/ITV52TIE.js +1 -0
  468. package/build/dist/chunks/IUXOUKQN.js +1 -0
  469. package/build/dist/chunks/IWALIX7Q.js +1 -0
  470. package/build/dist/chunks/JC4SYMBV.js +18 -0
  471. package/build/dist/chunks/JREVERSC.js +1 -0
  472. package/build/dist/chunks/JRO6WTK4.js +1 -0
  473. package/build/dist/chunks/JRVTSGAT.js +1 -0
  474. package/build/dist/chunks/K463HFGC.js +1 -0
  475. package/build/dist/chunks/KQFDLDHL.js +1 -0
  476. package/build/dist/chunks/L24EOVLT.js +1 -0
  477. package/build/dist/chunks/LBEMCOND.js +1 -0
  478. package/build/dist/chunks/LI7FYINH.js +1 -0
  479. package/build/dist/chunks/MRWCFTMS.js +1 -0
  480. package/build/dist/chunks/MYBDO5SA.js +1 -0
  481. package/build/dist/chunks/N6RL3SUZ.js +1 -0
  482. package/build/dist/chunks/N77ANGBT.js +1 -0
  483. package/build/dist/chunks/{SJ7HDRI4.js → NBRMUFJP.js} +1 -1
  484. package/build/dist/chunks/NCQFWPAW.js +1 -0
  485. package/build/dist/chunks/NHCRJC5X.js +1 -0
  486. package/build/dist/chunks/NIOBE2LK.js +1 -0
  487. package/build/dist/chunks/NMFVXBTL.js +1 -0
  488. package/build/dist/chunks/NO57NGRV.js +1 -0
  489. package/build/dist/chunks/O47JXRXN.js +1 -0
  490. package/build/dist/chunks/O5SU2I3G.js +1 -0
  491. package/build/dist/chunks/{GIBF3YJO.js → OG5HRQU4.js} +1 -1
  492. package/build/dist/chunks/OJLMF5AR.js +1 -0
  493. package/build/dist/chunks/OJMYESQU.js +1 -0
  494. package/build/dist/chunks/OW7GOYKA.js +1 -0
  495. package/build/dist/chunks/P4UQGWCP.js +1 -0
  496. package/build/dist/chunks/PJ65ZOQ7.js +1 -0
  497. package/build/dist/chunks/Q2VMH2LB.js +1 -0
  498. package/build/dist/chunks/QCD33HMD.js +1 -0
  499. package/build/dist/chunks/QHHZDXRG.js +1 -0
  500. package/build/dist/chunks/QNPEKNWM.js +1 -0
  501. package/build/dist/chunks/QQWF6A4P.js +1 -0
  502. package/build/dist/chunks/QRUC7EFE.js +1 -0
  503. package/build/dist/chunks/QYKXWBZC.js +1 -0
  504. package/build/dist/chunks/QZM7CWZW.js +1 -0
  505. package/build/dist/chunks/QZTUMSQY.js +1 -0
  506. package/build/dist/chunks/R7D256HG.js +1 -0
  507. package/build/dist/chunks/RETS2ZEK.js +1 -0
  508. package/build/dist/chunks/RFJCG4NA.js +1 -0
  509. package/build/dist/chunks/RRSODRGT.js +1 -0
  510. package/build/dist/chunks/RTBOMWCB.js +1 -0
  511. package/build/dist/chunks/SDICP7BT.js +1 -0
  512. package/build/dist/chunks/SLSPWXR6.js +1 -0
  513. package/build/dist/chunks/SPRVVJXI.js +1 -0
  514. package/build/dist/chunks/SQ5BNSXR.js +1 -0
  515. package/build/dist/chunks/SQH7A4O3.js +1 -0
  516. package/build/dist/chunks/SXX52Y27.js +1 -0
  517. package/build/dist/chunks/T3NPRRTY.js +1 -0
  518. package/build/dist/chunks/T6MTTMLQ.js +1 -0
  519. package/build/dist/chunks/TAI63P6E.js +1 -0
  520. package/build/dist/chunks/TCS3ICNE.js +2 -0
  521. package/build/dist/chunks/TNRDCBGO.js +1 -0
  522. package/build/dist/chunks/TRCP7X5P.js +1 -0
  523. package/build/dist/chunks/TWR7BF72.js +1 -0
  524. package/build/dist/chunks/U3FMCX3L.js +1 -0
  525. package/build/dist/chunks/UIIJWIR6.js +1 -0
  526. package/build/dist/chunks/UMK564HS.js +1 -0
  527. package/build/dist/chunks/UPPYXY74.js +1 -0
  528. package/build/dist/chunks/UWOFA6GV.js +1 -0
  529. package/build/dist/chunks/UXG67LH3.js +1 -0
  530. package/build/dist/chunks/V6SDKPZS.js +1 -0
  531. package/build/dist/chunks/{GDP4JSAX.js → VJ3W2V3B.js} +1 -1
  532. package/build/dist/chunks/{BOFA26WU.js → VXLJRRKV.js} +1 -1
  533. package/build/dist/chunks/VY3P34PY.js +1 -0
  534. package/build/dist/chunks/WCKMQFGS.js +1117 -0
  535. package/build/dist/chunks/WDGPCPQJ.js +1 -0
  536. package/build/dist/chunks/WIDTTGSH.js +1 -0
  537. package/build/dist/chunks/WQZLYX64.js +1 -0
  538. package/build/dist/chunks/X5V2Z2NM.js +1 -0
  539. package/build/dist/chunks/XKRWJCYE.js +1 -0
  540. package/build/dist/chunks/XPFVT2EA.js +1 -0
  541. package/build/dist/chunks/XV6F3RET.js +1 -0
  542. package/build/dist/chunks/XW7RH7YY.js +1 -0
  543. package/build/dist/chunks/Y2IWPNEW.js +1 -0
  544. package/build/dist/chunks/YHPOXAKA.js +1 -0
  545. package/build/dist/chunks/YR3QJVJQ.js +1 -0
  546. package/build/dist/chunks/ZCGVBK5K.js +1 -0
  547. package/build/dist/chunks/ZGXNTWYG.js +1 -0
  548. package/build/dist/chunks/ZPM2MFXZ.js +1 -0
  549. package/build/dist/chunks/ZT67OMLW.js +1 -0
  550. package/build/dist/chunks/ZYR5LSVB.js +1 -0
  551. package/package.json +13 -9
  552. package/build/dist/chunks/2IRORNOH.js +0 -1
  553. package/build/dist/chunks/3PA2XT75.js +0 -1
  554. package/build/dist/chunks/52TGAWSI.js +0 -1
  555. package/build/dist/chunks/66DWJWDA.js +0 -1
  556. package/build/dist/chunks/73EABRFC.js +0 -1
  557. package/build/dist/chunks/A5KSG6LW.js +0 -1
  558. package/build/dist/chunks/B4FOHEBE.js +0 -1
  559. package/build/dist/chunks/BHR46XNW.js +0 -3
  560. package/build/dist/chunks/CQNZWL7F.js +0 -1
  561. package/build/dist/chunks/GN4QZ4JA.js +0 -1
  562. package/build/dist/chunks/I5CQ64EU.js +0 -1
  563. package/build/dist/chunks/ICCJ3TOO.js +0 -1
  564. package/build/dist/chunks/KL5YE7JA.js +0 -1
  565. package/build/dist/chunks/KVVTKM6E.js +0 -1
  566. package/build/dist/chunks/M6JGTQRY.js +0 -1
  567. package/build/dist/chunks/MK6L6TGI.js +0 -1
  568. package/build/dist/chunks/MOVRI5IV.js +0 -1
  569. package/build/dist/chunks/NA7HV7BR.js +0 -1
  570. package/build/dist/chunks/NGAI6GTU.js +0 -1
  571. package/build/dist/chunks/OBX7IZG5.js +0 -1
  572. package/build/dist/chunks/OSQ4AAM2.js +0 -2
  573. package/build/dist/chunks/OWEUVFB6.js +0 -1
  574. package/build/dist/chunks/P4G3EKF7.js +0 -1
  575. package/build/dist/chunks/QGDHMVPE.js +0 -1
  576. package/build/dist/chunks/SPAKOCR7.js +0 -1
  577. package/build/dist/chunks/T6O2L6HF.js +0 -1
  578. package/build/dist/chunks/TEVKPJV5.js +0 -1
  579. package/build/dist/chunks/YX4NVVSX.js +0 -1
  580. package/build/dist/chunks/ZUC6ILK2.js +0 -1
@@ -0,0 +1,162 @@
1
+ import { OakError } from './errors.js';
2
+ import type { Address, JsonValue, TypedDataRequest } from './types.js';
3
+ export type SignatureClass = 'order' | 'cancel' | 'link' | 'offer' | 'consent' | 'auth' | 'relayed';
4
+ export type NonceKind = 'local-random' | 'local-time' | 'program-counter' | 'program-bitmap' | 'server-observed';
5
+ export type DerivedYield = 'expiry' | 'nonce' | 'amount-out' | 'amount-in' | 'token-out' | 'token-in' | 'counterparty' | 'recipient';
6
+ export type FieldRole = {
7
+ role: 'signer';
8
+ } | {
9
+ role: 'account';
10
+ } | {
11
+ role: 'recipient';
12
+ } | {
13
+ role: 'delegate';
14
+ } | {
15
+ role: 'counterparty';
16
+ } | {
17
+ role: 'token';
18
+ side: 'out' | 'in';
19
+ arg: string;
20
+ } | {
21
+ role: 'amount';
22
+ side: 'out';
23
+ token: string;
24
+ arg: string;
25
+ } | {
26
+ role: 'amount';
27
+ side: 'in';
28
+ token: string;
29
+ minArg: string;
30
+ } | {
31
+ role: 'fee';
32
+ token: string;
33
+ maxBps?: number;
34
+ } | {
35
+ role: 'expiry';
36
+ } | {
37
+ role: 'nonce';
38
+ kind: NonceKind;
39
+ } | {
40
+ role: 'pinned';
41
+ value: JsonValue;
42
+ } | {
43
+ role: 'derived';
44
+ rebuild: string;
45
+ yields?: readonly DerivedYield[];
46
+ } | {
47
+ role: 'observed';
48
+ check: string;
49
+ };
50
+ export type DeclaredField = FieldRole & {
51
+ meaning: string;
52
+ };
53
+ export interface SignatureDomain {
54
+ name: string;
55
+ version?: string;
56
+ chainId: number;
57
+ verifyingContract?: Address;
58
+ }
59
+ export type TypedFields = readonly {
60
+ name: string;
61
+ type: string;
62
+ }[];
63
+ export interface SignatureSpec {
64
+ id: string;
65
+ program: string;
66
+ purpose: string;
67
+ tools: readonly string[];
68
+ class: SignatureClass;
69
+ encoding: 'eip712' | 'eip191-template' | 'eip191-packed-hash';
70
+ network?: 'mainnet' | 'testnet';
71
+ domain?: Readonly<SignatureDomain>;
72
+ primaryType: string;
73
+ types: Readonly<Record<string, TypedFields>>;
74
+ fields: Readonly<Record<string, DeclaredField>>;
75
+ maxLifetimeSeconds: number;
76
+ expiryBinding?: 'signed' | 'program-link' | 'auth-window' | 'cancel-only';
77
+ authWindow?: {
78
+ field: string;
79
+ maxAgeSeconds: number;
80
+ maxFutureSeconds: number;
81
+ };
82
+ expiry?: {
83
+ enforcedBy: 'api';
84
+ path: string;
85
+ };
86
+ ownerVerification?: {
87
+ caller: Address;
88
+ digestRule: string;
89
+ supportVector: string;
90
+ };
91
+ contractHash?: {
92
+ fn: string;
93
+ };
94
+ nonceRead?: string;
95
+ revoke?: {
96
+ onchainTool?: string;
97
+ offchainSpec?: string;
98
+ none?: string;
99
+ staysExecutableUntilExpiry: boolean;
100
+ };
101
+ status?: {
102
+ tool: string;
103
+ open: readonly string[];
104
+ terminal: readonly string[];
105
+ };
106
+ submit: {
107
+ by: 'addon';
108
+ host: string;
109
+ path: string;
110
+ } | {
111
+ by: 'server-continuation';
112
+ reason: string;
113
+ } | {
114
+ by: 'transaction';
115
+ };
116
+ allowance?: {
117
+ spender: Address;
118
+ amountRole: string;
119
+ sharedAcrossOpenOrders: boolean;
120
+ };
121
+ signatureEncoding?: 'rsv65' | 'erc2098';
122
+ relayedPaths?: readonly string[];
123
+ requireHuman: boolean;
124
+ humanException?: string;
125
+ enabled?: false;
126
+ disabledReason?: string;
127
+ }
128
+ export declare const MAX_SIGNATURE_LIFETIME = 2592000;
129
+ export declare const MAX_SIGNED_AMOUNT: bigint;
130
+ export declare const VALUE_CLASSES: ReadonlySet<SignatureClass>;
131
+ export declare function signingRefusal(reason: string): OakError;
132
+ export declare const isValueClass: (spec: Pick<SignatureSpec, "class">) => boolean;
133
+ export declare function typePaths(types: Readonly<Record<string, TypedFields>>, primaryType: string): Map<string, string>;
134
+ export declare function pinnedAddresses(extra?: readonly string[]): ReadonlySet<string>;
135
+ export declare function specViolations(spec: SignatureSpec, pins?: ReadonlySet<string>): string[];
136
+ export declare function registryViolations(specs: readonly SignatureSpec[], pins?: ReadonlySet<string>): string[];
137
+ export declare function specKey(spec: Pick<SignatureSpec, 'network' | 'domain' | 'primaryType' | 'encoding'>): string;
138
+ export declare function assertRequestMatchesSpec(spec: SignatureSpec, request: TypedDataRequest): void;
139
+ export declare function fieldValue(message: unknown, path: string): unknown;
140
+ export interface SignedTerms {
141
+ signer?: string;
142
+ account?: string;
143
+ recipient?: string;
144
+ delegate?: string;
145
+ counterparty?: string;
146
+ tokenOut?: string;
147
+ amountOut?: string;
148
+ tokenIn?: string;
149
+ minAmountIn?: string;
150
+ fees?: {
151
+ token: string;
152
+ value: string;
153
+ }[];
154
+ expiry?: number;
155
+ nonce?: string;
156
+ orderId?: string;
157
+ }
158
+ export declare function roleTerms(spec: SignatureSpec, message: unknown): SignedTerms;
159
+ export declare function assertExpiry(spec: Pick<SignatureSpec, 'maxLifetimeSeconds' | 'class' | 'humanException'>, expiry: number | undefined, now: number): void;
160
+ export declare function assertSignatureTime(spec: SignatureSpec, message: unknown, now: number, derivedExpiry?: number): number | undefined;
161
+ export declare function assertAmount(value: string | undefined): bigint;
162
+ export declare function fieldRows(spec: SignatureSpec, message: unknown): string[];
@@ -0,0 +1 @@
1
+ import{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q}from"../chunks/67TJOOBI.js";import"../chunks/XPFVT2EA.js";import"../chunks/5YS5V2LK.js";import"../chunks/JXOEJPJ4.js";export{a as MAX_SIGNATURE_LIFETIME,b as MAX_SIGNED_AMOUNT,c as VALUE_CLASSES,p as assertAmount,n as assertExpiry,k as assertRequestMatchesSpec,o as assertSignatureTime,q as fieldRows,l as fieldValue,e as isValueClass,g as pinnedAddresses,i as registryViolations,m as roleTerms,d as signingRefusal,j as specKey,h as specViolations,f as typePaths};
@@ -1 +1 @@
1
- import{a,b,c}from"../chunks/GDP4JSAX.js";import"../chunks/LIUXNOLP.js";import"../chunks/GIBF3YJO.js";import"../chunks/A5ITAEUQ.js";import"../chunks/I5CQ64EU.js";import"../chunks/5HCXZWUH.js";import"../chunks/M6JGTQRY.js";import"../chunks/ZUC6ILK2.js";import"../chunks/B4MLWDPM.js";import"../chunks/NGAI6GTU.js";import"../chunks/JXOEJPJ4.js";export{a as NATIVE_TOKEN_ADDRESS,c as createPreview,b as normalizeNativeTokenAddress};
1
+ import{a,b,c}from"../chunks/VJ3W2V3B.js";import"../chunks/LIUXNOLP.js";import"../chunks/OG5HRQU4.js";import"../chunks/6IM6A5VA.js";import"../chunks/EG6M6SSO.js";import"../chunks/RETS2ZEK.js";import"../chunks/5HCXZWUH.js";import"../chunks/IWALIX7Q.js";import"../chunks/XPFVT2EA.js";import"../chunks/5YS5V2LK.js";import"../chunks/JXOEJPJ4.js";export{a as NATIVE_TOKEN_ADDRESS,c as createPreview,b as normalizeNativeTokenAddress};
@@ -1,45 +1,78 @@
1
1
  import { OakError } from './errors.js';
2
2
  import type { Address, DecimalString, Hex, Quote, SwapArgs, SwapProvider, UnsignedTx } from './types.js';
3
+ import { ponsCurveSwapAbi } from './modules/pons/swap-terms.js';
3
4
  export declare const QUOTE_TTL_SECONDS: 60;
4
5
  export declare const DEFAULT_SLIPPAGE_BPS: 50;
5
6
  export declare const PRICE_IMPACT_WARNING_BPS: 200;
6
- export declare const ponsCurveSwapAbi: readonly [{
7
- readonly name: "buy";
7
+ export { ponsCurveSwapAbi };
8
+ export declare const NATIVE_ETH_ADDRESS: Address;
9
+ export declare const ZERO_ADDRESS: Address;
10
+ export declare const kyberSwapAbi: readonly [{
11
+ readonly name: "swap";
8
12
  readonly type: "function";
9
13
  readonly stateMutability: "payable";
10
14
  readonly inputs: readonly [{
11
- readonly type: "uint256";
12
- readonly name: "quoteIn";
13
- }, {
14
- readonly type: "uint256";
15
- readonly name: "minTokensOut";
16
- }, {
17
- readonly type: "address";
18
- readonly name: "recipient";
15
+ readonly type: "tuple";
16
+ readonly components: readonly [{
17
+ readonly type: "address";
18
+ readonly name: "callTarget";
19
+ }, {
20
+ readonly type: "address";
21
+ readonly name: "approveTarget";
22
+ }, {
23
+ readonly type: "bytes";
24
+ readonly name: "targetData";
25
+ }, {
26
+ readonly type: "tuple";
27
+ readonly components: readonly [{
28
+ readonly type: "address";
29
+ readonly name: "srcToken";
30
+ }, {
31
+ readonly type: "address";
32
+ readonly name: "dstToken";
33
+ }, {
34
+ readonly type: "address[]";
35
+ readonly name: "srcReceivers";
36
+ }, {
37
+ readonly type: "uint256[]";
38
+ readonly name: "srcAmounts";
39
+ }, {
40
+ readonly type: "address[]";
41
+ readonly name: "feeReceivers";
42
+ }, {
43
+ readonly type: "uint256[]";
44
+ readonly name: "feeAmounts";
45
+ }, {
46
+ readonly type: "address";
47
+ readonly name: "dstReceiver";
48
+ }, {
49
+ readonly type: "uint256";
50
+ readonly name: "amount";
51
+ }, {
52
+ readonly type: "uint256";
53
+ readonly name: "minReturnAmount";
54
+ }, {
55
+ readonly type: "uint256";
56
+ readonly name: "flags";
57
+ }, {
58
+ readonly type: "bytes";
59
+ readonly name: "permit";
60
+ }];
61
+ readonly name: "desc";
62
+ }, {
63
+ readonly type: "bytes";
64
+ readonly name: "clientData";
65
+ }];
66
+ readonly name: "execution";
19
67
  }];
20
68
  readonly outputs: readonly [{
21
69
  readonly type: "uint256";
22
- }];
23
- }, {
24
- readonly name: "sell";
25
- readonly type: "function";
26
- readonly stateMutability: "nonpayable";
27
- readonly inputs: readonly [{
28
- readonly type: "uint256";
29
- readonly name: "tokensIn";
30
- }, {
31
- readonly type: "uint256";
32
- readonly name: "minQuoteOut";
70
+ readonly name: "returnAmount";
33
71
  }, {
34
- readonly type: "address";
35
- readonly name: "recipient";
36
- }];
37
- readonly outputs: readonly [{
38
72
  readonly type: "uint256";
73
+ readonly name: "gasUsed";
39
74
  }];
40
75
  }];
41
- export declare const NATIVE_ETH_ADDRESS: Address;
42
- export declare const ZERO_ADDRESS: Address;
43
76
  export declare class NoRouteError extends OakError {
44
77
  name: string;
45
78
  constructor(message?: string);
@@ -68,6 +101,7 @@ export interface SwapQuote extends Quote {
68
101
  venueFeeBps?: number;
69
102
  oakFee?: DecimalString;
70
103
  feeDisclosure?: string;
104
+ sourcePoolRoute?: unknown;
71
105
  ponsCurveToken?: Address;
72
106
  ponsPoolToken?: Address;
73
107
  blockNumber?: DecimalString;
@@ -1 +1 @@
1
- import{A,B,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z}from"../chunks/2IRORNOH.js";import"../chunks/GDP4JSAX.js";import"../chunks/LIUXNOLP.js";import"../chunks/Y3P6SUNL.js";import"../chunks/GIBF3YJO.js";import"../chunks/A5ITAEUQ.js";import"../chunks/I5CQ64EU.js";import"../chunks/5HCXZWUH.js";import"../chunks/M6JGTQRY.js";import"../chunks/ZUC6ILK2.js";import"../chunks/B4MLWDPM.js";import"../chunks/NGAI6GTU.js";import"../chunks/JXOEJPJ4.js";export{b as DEFAULT_SLIPPAGE_BPS,h as ExpiredQuoteError,i as MAX_RECENT_QUOTES,p as MAX_VELORA_FEE_BPS,e as NATIVE_ETH_ADDRESS,g as NoRouteError,c as PRICE_IMPACT_WARNING_BPS,a as QUOTE_TTL_SECONDS,f as ZERO_ADDRESS,x as assertCalldataMinAmountOut,l as assertQuoteBinding,y as assertSwapTransaction,s as assertVeloraPartnerAndFee,B as buildSwapFromQuote,o as computeMinAmountOut,j as copyQuote,w as decodeSwapMinAmountOut,u as encodeKyberSwapData,v as encodeVeloraSwapData,t as formatVenueFeeDisclosure,A as getQuote,n as isNativeToken,z as normalizeQuote,d as ponsCurveSwapAbi,m as resolveNowSeconds,k as snapshotQuote,r as veloraCalldataMinimum,q as veloraVenueFeeBps};
1
+ import{A as B,B as C,a as b,b as c,c as d,d as e,e as f,f as g,g as h,h as i,i as j,j as k,k as l,l as m,m as n,n as o,o as p,p as q,q as r,r as s,s as t,t as u,u as v,v as w,w as x,x as y,y as z,z as A}from"../chunks/CAU44UWP.js";import"../chunks/EA6IYKIB.js";import{a}from"../chunks/HQVC6X3T.js";import"../chunks/NMFVXBTL.js";import"../chunks/VJ3W2V3B.js";import"../chunks/LIUXNOLP.js";import"../chunks/OG5HRQU4.js";import"../chunks/6IM6A5VA.js";import"../chunks/EG6M6SSO.js";import"../chunks/MYBDO5SA.js";import"../chunks/HIMVOTIU.js";import"../chunks/73N3TOJL.js";import"../chunks/RETS2ZEK.js";import"../chunks/5HCXZWUH.js";import"../chunks/IWALIX7Q.js";import"../chunks/XPFVT2EA.js";import"../chunks/5YS5V2LK.js";import"../chunks/JXOEJPJ4.js";export{c as DEFAULT_SLIPPAGE_BPS,i as ExpiredQuoteError,j as MAX_RECENT_QUOTES,q as MAX_VELORA_FEE_BPS,e as NATIVE_ETH_ADDRESS,h as NoRouteError,d as PRICE_IMPACT_WARNING_BPS,b as QUOTE_TTL_SECONDS,f as ZERO_ADDRESS,y as assertCalldataMinAmountOut,m as assertQuoteBinding,z as assertSwapTransaction,t as assertVeloraPartnerAndFee,C as buildSwapFromQuote,p as computeMinAmountOut,k as copyQuote,x as decodeSwapMinAmountOut,v as encodeKyberSwapData,w as encodeVeloraSwapData,u as formatVenueFeeDisclosure,B as getQuote,o as isNativeToken,g as kyberSwapAbi,A as normalizeQuote,a as ponsCurveSwapAbi,n as resolveNowSeconds,l as snapshotQuote,s as veloraCalldataMinimum,r as veloraVenueFeeBps};
@@ -16,6 +16,7 @@ export interface GetBalancesOptions {
16
16
  tokens?: readonly Token[];
17
17
  oakTokenAddress?: Address;
18
18
  includeStockTokens?: boolean;
19
+ includePoolTokens?: boolean;
19
20
  includeZero?: boolean;
20
21
  }
21
22
  interface StockDiscoveryOptions {
@@ -73,6 +74,10 @@ export declare const MULTICALL3_ABI: readonly [{
73
74
  }];
74
75
  }];
75
76
  export declare function getBalances(wallet: Address, options?: GetBalancesOptions): Promise<Balance[]>;
77
+ export declare function getReceivedTokenBalances(wallet: Address, addresses: readonly Address[], options: {
78
+ client: PublicClient;
79
+ chainId: number;
80
+ }): Promise<Balance[]>;
76
81
  export interface FoundToken extends Token {
77
82
  name: string;
78
83
  kind: 'native' | 'stablecoin' | 'wrapped' | 'oak' | 'official_stock' | 'launchpad' | 'erc20';
@@ -1 +1 @@
1
- import{a,b,c,d,e,f,g,h,i,j,k,l,m}from"../chunks/MOVRI5IV.js";import"../chunks/YX4NVVSX.js";import"../chunks/BHR46XNW.js";import"../chunks/73EABRFC.js";import"../chunks/2IRORNOH.js";import"../chunks/GDP4JSAX.js";import"../chunks/LIUXNOLP.js";import"../chunks/MK6L6TGI.js";import"../chunks/Y3P6SUNL.js";import"../chunks/GIBF3YJO.js";import"../chunks/UCMNB2UP.js";import"../chunks/Z25UKUJF.js";import"../chunks/A5ITAEUQ.js";import"../chunks/I5CQ64EU.js";import"../chunks/NA7HV7BR.js";import"../chunks/5HCXZWUH.js";import"../chunks/M6JGTQRY.js";import"../chunks/ZUC6ILK2.js";import"../chunks/B4MLWDPM.js";import"../chunks/NGAI6GTU.js";import"../chunks/JXOEJPJ4.js";export{j as MULTICALL3_ABI,b as NATIVE_ETH_TOKEN,a as STOCK_ASSETS_URL,e as USDE_TOKEN,c as USDG_TOKEN,d as WETH_TOKEN,h as assertOfficialStockIdentity,i as fetchOfficialStockTokens,l as findToken,k as getBalances,f as parseOfficialStockAssets,m as resolveQuoteToken,g as verifyOfficialStockToken};
1
+ import{a,b,c,d,e,f,g,h,i,j,k,l,m,n}from"../chunks/46ZA2R5L.js";import"../chunks/UIIJWIR6.js";import"../chunks/D6VP3N27.js";import"../chunks/6LLOTPH2.js";import"../chunks/QZM7CWZW.js";import"../chunks/CAU44UWP.js";import"../chunks/EA6IYKIB.js";import"../chunks/HQVC6X3T.js";import"../chunks/NMFVXBTL.js";import"../chunks/VJ3W2V3B.js";import"../chunks/LIUXNOLP.js";import"../chunks/HFQS5344.js";import"../chunks/G7UKNO2I.js";import"../chunks/BYXBS45D.js";import"../chunks/GZ5TW3WB.js";import"../chunks/5EHQM6DM.js";import"../chunks/OG5HRQU4.js";import"../chunks/P4UQGWCP.js";import"../chunks/AXYOJBX6.js";import"../chunks/Z25UKUJF.js";import"../chunks/6IM6A5VA.js";import"../chunks/EG6M6SSO.js";import"../chunks/MYBDO5SA.js";import"../chunks/HIMVOTIU.js";import"../chunks/UWOFA6GV.js";import"../chunks/73N3TOJL.js";import"../chunks/RETS2ZEK.js";import"../chunks/5HCXZWUH.js";import"../chunks/IWALIX7Q.js";import"../chunks/XPFVT2EA.js";import"../chunks/5YS5V2LK.js";import"../chunks/JXOEJPJ4.js";export{j as MULTICALL3_ABI,b as NATIVE_ETH_TOKEN,a as STOCK_ASSETS_URL,e as USDE_TOKEN,c as USDG_TOKEN,d as WETH_TOKEN,h as assertOfficialStockIdentity,i as fetchOfficialStockTokens,m as findToken,k as getBalances,l as getReceivedTokenBalances,f as parseOfficialStockAssets,n as resolveQuoteToken,g as verifyOfficialStockToken};
@@ -1,3 +1,9 @@
1
1
  import type { ToolArgs } from './types.js';
2
2
  export declare function isReadDiscovery(name: string, args: ToolArgs): boolean;
3
+ export { isRelayFundingBootstrap as isFundingBootstrap } from './modules/relay/bootstrap.js';
3
4
  export declare const COMING_SOON: ReadonlyMap<string, string>;
5
+ export declare const FIND_TOOL = "find_tool";
6
+ export declare const RUN_TOOL = "run_tool";
7
+ export declare const LOCAL_TOOLS: readonly string[];
8
+ export declare const VISIBLE_TOOLS: Readonly<Record<string, readonly string[]>>;
9
+ export declare function visibleTools(registered: Iterable<string>, network: 'mainnet' | 'testnet'): ReadonlySet<string>;
@@ -1 +1 @@
1
- import{a,b}from"../chunks/ICCJ3TOO.js";export{b as COMING_SOON,a as isReadDiscovery};
1
+ import{a as b,b as c,c as d,d as e,e as f,f as g,g as h}from"../chunks/6SCCW74G.js";import{a}from"../chunks/F3TJCOVV.js";import"../chunks/73N3TOJL.js";import"../chunks/RETS2ZEK.js";import"../chunks/XPFVT2EA.js";import"../chunks/5YS5V2LK.js";import"../chunks/JXOEJPJ4.js";export{c as COMING_SOON,d as FIND_TOOL,f as LOCAL_TOOLS,e as RUN_TOOL,g as VISIBLE_TOOLS,a as isFundingBootstrap,b as isReadDiscovery,h as visibleTools};
@@ -1 +1 @@
1
- import{a,b,c,d,e}from"../chunks/A5ITAEUQ.js";import"../chunks/I5CQ64EU.js";import"../chunks/NGAI6GTU.js";import"../chunks/JXOEJPJ4.js";export{c as approval,a as assertAddress,d as deposit,e as redeemAll,b as unsignedTx};
1
+ import{a,b,c,d,e}from"../chunks/6IM6A5VA.js";import"../chunks/RETS2ZEK.js";import"../chunks/5YS5V2LK.js";import"../chunks/JXOEJPJ4.js";export{c as approval,a as assertAddress,d as deposit,e as redeemAll,b as unsignedTx};
@@ -59,6 +59,7 @@ export interface SenderTransaction {
59
59
  }
60
60
  export interface SenderResult {
61
61
  hashes: string[];
62
+ warnings?: string[];
62
63
  transactions?: SenderTransaction[];
63
64
  summary: string;
64
65
  status?: 'submitted' | 'mined' | 'final' | 'not_submitted';
@@ -104,6 +105,7 @@ export interface HistoryItem {
104
105
  description: string;
105
106
  }
106
107
  export interface Position {
108
+ incomplete?: boolean;
107
109
  module: string;
108
110
  id: string;
109
111
  chainId: number;
@@ -1 +1 @@
1
- import{a,b,c}from"../chunks/Y3P6SUNL.js";import"../chunks/NGAI6GTU.js";import"../chunks/JXOEJPJ4.js";export{a as VendorBusyError,b as vendorBudget,c as vendorBusy};
1
+ import{a,b,c}from"../chunks/HIMVOTIU.js";import"../chunks/5YS5V2LK.js";import"../chunks/JXOEJPJ4.js";export{a as VendorBusyError,b as vendorBudget,c as vendorBusy};
@@ -0,0 +1 @@
1
+ import{a as g}from"./X5V2Z2NM.js";import{a as m}from"./6IM6A5VA.js";import{a as v}from"./UWOFA6GV.js";import{e as A,g as u,i as b}from"./73N3TOJL.js";import{a as l,i as x,s as y}from"./XPFVT2EA.js";import{a as o}from"./5YS5V2LK.js";import{b as w}from"./JXOEJPJ4.js";import{Buffer as k}from"node:buffer";import{decodeEventLog as $}from"viem";var R="Profile contents and oak.registrar are mutable, self-asserted metadata, not registry-validated claims or proof of provenance.",B="oak.registrar",D="0x6f616b",L=v("Agent ID as a decimal uint256 integer string."),j={type:"string",pattern:"^0x[0-9a-fA-F]{64}$"},q={type:"string",pattern:"^0x[0-9a-fA-F]{64}$",description:"32-byte hex value."},z={type:"string",pattern:"^0x([0-9a-fA-F]{2})*$"},T="0x0000000000000000000000000000000000000000";function h(t){let e=t.network??"mainnet",{chainId:n,identityRegistry:r}=y[e],s=e==="mainnet"?x[l].identity:void 0;return{network:e,chainId:n,registry:r,registryId:`eip155:${n}:${r}`,reputation:s?.reputationRegistry.address,validation:s?.validationRegistry.address}}function K(t){let{chainId:e,reputation:n}=h(t);if(!n)throw new o("Oak has no pinned ERC-8004 reputation registry for this network.");return{chainId:e,address:n}}function V(t){let{chainId:e,validation:n}=h(t);if(!n)throw new o("Oak has no pinned ERC-8004 validation registry for this network.");return{chainId:e,address:n}}function Z(t){return u(t,T)}function G(t){if(typeof t!="string"||!/^[0-9]+$/.test(t)||t.length>78||BigInt(t)>=2n**256n)throw new o("Provide an agent ID as a decimal uint256 integer string.");return BigInt(t)}function J(t,e){return b(t,`Provide a valid ${e} address.`)}function Q(t,e){let n=h(t).chainId;if(e!==void 0&&e!==n)throw new o(`ERC-8004 actions are supported only on chain ${n}.`)}function X(t,e){if(typeof t!="string"||!/^0x[0-9a-fA-F]{64}$/.test(t))throw new o(`Provide ${e} as 32-byte hex.`);return t.toLowerCase()}function I(t,e,n,r=!0){if(t===void 0){if(r)return"";throw new o(`Provide ${e}.`)}if(typeof t!="string"||!r&&!t.trim()||t.length>n||w(t))throw new o(`${e} must be plain text of at most ${n} characters.`);return t}function Y(t,e){if(typeof t!="string"||!t.trim()||t.length>2048)throw new o(`Provide a valid ${e}.`);try{let n=new URL(t);if(!["https:","ipfs:"].includes(n.protocol)||!n.hostname||n.username||n.password||w(t))throw new Error}catch{throw new o(`${e} must be an HTTPS or IPFS URI without credentials.`)}return t}function tt(t){let e=/^data:application\/json;base64,([A-Za-z0-9+/=]+)$/.exec(t);if(e)try{let n=JSON.parse(k.from(e[1],"base64").toString("utf8"));return A(n)?n:void 0}catch{return}}async function C(t,e,n,r,s=!0){let i=await t.preview(e,n),a=i.changes.map(({amount:d,token:f})=>{let c=d.startsWith("-");return`${c?"-":""}${t.formatAmount(c?d.slice(1):d,f.decimals)} ${f.symbol} (${f.address}, chain ${f.chainId})`});return{txs:e,summary:`${i.summary} ${a.join("; ")} ${s?`${R} `:""}${r}`}}async function et(t,e,n,r="update this profile"){let{chainId:s,registry:i}=h(t),a=t.clientFor(s),d=await a.readContract({address:i,abi:g,functionName:"ownerOf",args:[e]});if(m(d),u(d,n))return d;let[f,c]=await Promise.all([a.readContract({address:i,abi:g,functionName:"getApproved",args:[e]}),a.readContract({address:i,abi:g,functionName:"isApprovedForAll",args:[d,n]})]);if(m(f),typeof c!="boolean")throw new o("The registry returned invalid operator approval data.");if(!u(f,n)&&!c)throw new o(`Only the agent owner or an approved operator can ${r}.`);return d}async function nt(t,e,n){let{chainId:r,registry:s}=h(t),i=t.clientFor(r),a=await i.readContract({address:s,abi:g,functionName:"ownerOf",args:[e]});if(m(a),u(a,n))return a;if(await i.readContract({address:s,abi:g,functionName:"isApprovedForAll",args:[a,n]})!==!0)throw new o("Only the agent owner or an operator approved for all of its agents can change the token approval.");return a}async function H(t,e,n,r,s){let{chainId:i,registry:a}=h(t),d=s??a;if(typeof e!="string"||!/^0x[0-9a-fA-F]{64}$/.test(e))throw new o("Provide the mined transaction hash.");let f=t.clientFor(i),c=await f.getTransactionReceipt({hash:e});if(!c)throw new o("The transaction is not mined yet. Try again after confirmation.");if(c.status!=="success"||!c.to||!u(c.to,d)||!u(c.from,n)||!u(c.transactionHash,e))throw new o("The receipt is not a successful matching registry transaction.");let p=await f.getTransaction({hash:e});if(p.chainId!==i||p.value!==0n||!p.to||!u(p.to,d)||!u(p.from,n))throw new o("The transaction does not match this chain, registry and wallet.");if(!(typeof r=="function"?typeof p.input=="string"&&r(p.input):typeof p.input=="string"&&u(p.input,r)))throw new o("The mined transaction calldata does not match the exact operation Oak built.");return c}function rt(t,e,n,r){let s=t.logs.filter(i=>u(i.address,e)&&!i.removed).flatMap(i=>{try{let a=$({abi:n,topics:i.topics,data:i.data,strict:!0});return a.eventName===r?[a.args]:[]}catch{return[]}});if(s.length!==1)throw new o(`The receipt must contain one matching ${r} event.`);return s[0]}function ot(t){let e=I(t,"metadata key",128,!1);if(e==="agentWallet")throw new o("The key agentWallet is reserved: use erc8004_set_wallet / erc8004_unset_wallet, which prove control of the wallet.");return e}function it(t){if(t.value===void 0==(t.text===void 0))throw new o("Provide exactly one of value (0x hex bytes) or text (UTF-8).");let e;if(t.value!==void 0){if(typeof t.value!="string"||!/^0x([0-9a-fA-F]{2})*$/.test(t.value))throw new o("Metadata value must be 0x-prefixed hex bytes.");e=t.value}else{if(typeof t.text!="string")throw new o("Metadata text must be a string.");e=`0x${k.from(t.text,"utf8").toString("hex")}`}if((e.length-2)/2>4096)throw new o("Metadata values are limited to 4096 bytes.");return e}async function at(t,e,n,r){let{chainId:s}=h(t);if(n.transactionHash!==void 0){let a=await H(t,n.transactionHash,e,r.matcher??r.data,r.to);return r.verify(a)}await r.authority();let i=t.unsignedTx({to:r.to,data:r.data,value:"0",chainId:s,description:r.description});return C(t,[i],e,r.summary,!1)}export{R as a,B as b,D as c,L as d,j as e,q as f,z as g,h,K as i,V as j,Z as k,G as l,J as m,Q as n,X as o,I as p,Y as q,tt as r,C as s,et as t,nt as u,H as v,rt as w,ot as x,it as y,at as z};
@@ -0,0 +1 @@
1
+ import{a as d,b as f}from"./C3ZZSGSP.js";import{a}from"./P4UQGWCP.js";import{g as s}from"./73N3TOJL.js";import{a as n}from"./5YS5V2LK.js";import{getAddress as m,keccak256 as u}from"viem";var l=a.vaults;function c(t,o=!0){let e=l.find(r=>s(r.earnContractAddress,t));if(!e&&o)throw new n("This Beefy vault is not in the pinned chain 4663 standard-vault inventory.");return e}async function v(t,o,e){c(o);let[r,i]=await Promise.all([t.getCode({address:m(o),blockNumber:e}),t.getCode({address:d,blockNumber:e})]),p=`0x363d3d373d3d3d363d73${d.slice(2).toLowerCase()}5af43d82803e903d91602b57fd5bf3`;if(r?.toLowerCase()!==p||!i||u(i)!==f)throw new n("The Beefy standard vault or implementation no longer matches its verified code.")}export{l as a,c as b,v as c};
@@ -0,0 +1 @@
1
+ import{b as X}from"./SDICP7BT.js";import{b as N}from"./46ZA2R5L.js";import{a as h}from"./UWOFA6GV.js";import{c as b,i as q,l as j}from"./73N3TOJL.js";import{a as l}from"./XPFVT2EA.js";import{a as o}from"./5YS5V2LK.js";import{a as R}from"./JXOEJPJ4.js";import{encodeFunctionData as ye,erc20Abi as W,getAddress as S,zeroAddress as D}from"viem";var v={locker:{address:"0xd0f7d8c6e9f6d80c297bebe4f7fd1b9c8125c32f",source:"https://sourcify.dev/server/v2/contract/4663/0xd0f7d8c6e9f6d80c297bebe4f7fd1b9c8125c32f?fields=abi,sources,compilation",match:"exact_match",verifiedAt:"2026-07-08T19:01:30Z",fetchedAt:"2026-10-31",abi:[{name:"Extended",type:"event",inputs:[{name:"id",type:"uint256",indexed:!0,internalType:"uint256"},{name:"newUnlockTime",type:"uint256",indexed:!1,internalType:"uint256"}],anonymous:!1},{name:"FeeChanged",type:"event",inputs:[{name:"fee",type:"uint256",indexed:!1,internalType:"uint256"}],anonymous:!1},{name:"LockOwnershipTransferred",type:"event",inputs:[{name:"id",type:"uint256",indexed:!0,internalType:"uint256"},{name:"from",type:"address",indexed:!0,internalType:"address"},{name:"to",type:"address",indexed:!0,internalType:"address"}],anonymous:!1},{name:"Locked",type:"event",inputs:[{name:"id",type:"uint256",indexed:!0,internalType:"uint256"},{name:"owner",type:"address",indexed:!0,internalType:"address"},{name:"token",type:"address",indexed:!0,internalType:"address"},{name:"amount",type:"uint256",indexed:!1,internalType:"uint256"},{name:"unlockTime",type:"uint256",indexed:!1,internalType:"uint256"}],anonymous:!1},{name:"Withdrawn",type:"event",inputs:[{name:"id",type:"uint256",indexed:!0,internalType:"uint256"},{name:"owner",type:"address",indexed:!0,internalType:"address"},{name:"amount",type:"uint256",indexed:!1,internalType:"uint256"}],anonymous:!1},{name:"admin",type:"function",inputs:[],outputs:[{name:"",type:"address",internalType:"address"}],stateMutability:"view"},{name:"extend",type:"function",inputs:[{name:"id",type:"uint256",internalType:"uint256"},{name:"newUnlockTime",type:"uint256",internalType:"uint256"}],outputs:[],stateMutability:"nonpayable"},{name:"fee",type:"function",inputs:[],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"feeCollector",type:"function",inputs:[],outputs:[{name:"",type:"address",internalType:"address"}],stateMutability:"view"},{name:"getLock",type:"function",inputs:[{name:"id",type:"uint256",internalType:"uint256"}],outputs:[{name:"",type:"tuple",components:[{name:"owner",type:"address",internalType:"address"},{name:"token",type:"address",internalType:"address"},{name:"amount",type:"uint256",internalType:"uint256"},{name:"unlockTime",type:"uint256",internalType:"uint256"},{name:"withdrawn",type:"bool",internalType:"bool"}],internalType:"struct RobinhoodLocker.Lock"}],stateMutability:"view"},{name:"isUnlocked",type:"function",inputs:[{name:"id",type:"uint256",internalType:"uint256"}],outputs:[{name:"",type:"bool",internalType:"bool"}],stateMutability:"view"},{name:"lock",type:"function",inputs:[{name:"token",type:"address",internalType:"address"},{name:"amount",type:"uint256",internalType:"uint256"},{name:"unlockTime",type:"uint256",internalType:"uint256"}],outputs:[{name:"id",type:"uint256",internalType:"uint256"}],stateMutability:"payable"},{name:"lockedAmount",type:"function",inputs:[{name:"id",type:"uint256",internalType:"uint256"}],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"locks",type:"function",inputs:[{name:"",type:"uint256",internalType:"uint256"}],outputs:[{name:"owner",type:"address",internalType:"address"},{name:"token",type:"address",internalType:"address"},{name:"amount",type:"uint256",internalType:"uint256"},{name:"unlockTime",type:"uint256",internalType:"uint256"},{name:"withdrawn",type:"bool",internalType:"bool"}],stateMutability:"view"},{name:"locksByOwner",type:"function",inputs:[{name:"o",type:"address",internalType:"address"}],outputs:[{name:"",type:"uint256[]",internalType:"uint256[]"}],stateMutability:"view"},{name:"locksByToken",type:"function",inputs:[{name:"t",type:"address",internalType:"address"}],outputs:[{name:"",type:"uint256[]",internalType:"uint256[]"}],stateMutability:"view"},{name:"nextLockId",type:"function",inputs:[],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"setAdmin",type:"function",inputs:[{name:"a",type:"address",internalType:"address"}],outputs:[],stateMutability:"nonpayable"},{name:"setFee",type:"function",inputs:[{name:"_fee",type:"uint256",internalType:"uint256"}],outputs:[],stateMutability:"nonpayable"},{name:"setFeeCollector",type:"function",inputs:[{name:"c",type:"address",internalType:"address"}],outputs:[],stateMutability:"nonpayable"},{name:"timeRemaining",type:"function",inputs:[{name:"id",type:"uint256",internalType:"uint256"}],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"totalLocks",type:"function",inputs:[],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"transferLockOwnership",type:"function",inputs:[{name:"id",type:"uint256",internalType:"uint256"},{name:"newOwner",type:"address",internalType:"address"}],outputs:[],stateMutability:"nonpayable"},{name:"withdraw",type:"function",inputs:[{name:"id",type:"uint256",internalType:"uint256"}],outputs:[],stateMutability:"nonpayable"}]},burner:{address:"0x6bf43ca706faa8ea46803299c191484e82280652",source:"https://sourcify.dev/server/v2/contract/4663/0x6bf43ca706faa8ea46803299c191484e82280652?fields=abi,sources,compilation",match:"exact_match",verifiedAt:"2026-07-22T23:28:15Z",fetchedAt:"2026-10-31",abi:[{name:"Burned",type:"event",inputs:[{name:"id",type:"uint256",indexed:!0,internalType:"uint256"},{name:"burner",type:"address",indexed:!0,internalType:"address"},{name:"token",type:"address",indexed:!0,internalType:"address"},{name:"amount",type:"uint256",indexed:!1,internalType:"uint256"}],anonymous:!1},{name:"FeeChanged",type:"event",inputs:[{name:"fee",type:"uint256",indexed:!1,internalType:"uint256"}],anonymous:!1},{name:"DEAD",type:"function",inputs:[],outputs:[{name:"",type:"address",internalType:"address"}],stateMutability:"view"},{name:"admin",type:"function",inputs:[],outputs:[{name:"",type:"address",internalType:"address"}],stateMutability:"view"},{name:"burn",type:"function",inputs:[{name:"token",type:"address",internalType:"address"},{name:"amount",type:"uint256",internalType:"uint256"}],outputs:[{name:"id",type:"uint256",internalType:"uint256"}],stateMutability:"payable"},{name:"burns",type:"function",inputs:[{name:"",type:"uint256",internalType:"uint256"}],outputs:[{name:"burner",type:"address",internalType:"address"},{name:"token",type:"address",internalType:"address"},{name:"amount",type:"uint256",internalType:"uint256"},{name:"timestamp",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"burnsByBurner",type:"function",inputs:[{name:"b",type:"address",internalType:"address"}],outputs:[{name:"",type:"uint256[]",internalType:"uint256[]"}],stateMutability:"view"},{name:"burnsByToken",type:"function",inputs:[{name:"t",type:"address",internalType:"address"}],outputs:[{name:"",type:"uint256[]",internalType:"uint256[]"}],stateMutability:"view"},{name:"fee",type:"function",inputs:[],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"feeCollector",type:"function",inputs:[],outputs:[{name:"",type:"address",internalType:"address"}],stateMutability:"view"},{name:"getBurn",type:"function",inputs:[{name:"id",type:"uint256",internalType:"uint256"}],outputs:[{name:"",type:"tuple",components:[{name:"burner",type:"address",internalType:"address"},{name:"token",type:"address",internalType:"address"},{name:"amount",type:"uint256",internalType:"uint256"},{name:"timestamp",type:"uint256",internalType:"uint256"}],internalType:"struct RobinhoodBurner.Burn"}],stateMutability:"view"},{name:"nextBurnId",type:"function",inputs:[],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"setAdmin",type:"function",inputs:[{name:"a",type:"address",internalType:"address"}],outputs:[],stateMutability:"nonpayable"},{name:"setFee",type:"function",inputs:[{name:"_fee",type:"uint256",internalType:"uint256"}],outputs:[],stateMutability:"nonpayable"},{name:"setFeeCollector",type:"function",inputs:[{name:"c",type:"address",internalType:"address"}],outputs:[],stateMutability:"nonpayable"},{name:"totalBurnedOf",type:"function",inputs:[{name:"",type:"address",internalType:"address"}],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"totalBurns",type:"function",inputs:[],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"}]},vesting:{address:"0x910e19bcC4bce46999994Ed7297E0Fc4431ec72E",source:"https://sourcify.dev/server/v2/contract/4663/0x910e19bcC4bce46999994Ed7297E0Fc4431ec72E?fields=abi,sources,compilation",match:"exact_match",verifiedAt:"2026-07-27T00:28:59Z",fetchedAt:"2026-10-31",abi:[{name:"AdminTransferStarted",type:"event",inputs:[{name:"current",type:"address",indexed:!0,internalType:"address"},{name:"pending",type:"address",indexed:!0,internalType:"address"}],anonymous:!1},{name:"AdminTransferred",type:"event",inputs:[{name:"previous",type:"address",indexed:!0,internalType:"address"},{name:"current",type:"address",indexed:!0,internalType:"address"}],anonymous:!1},{name:"BeneficiaryTransferred",type:"event",inputs:[{name:"id",type:"uint256",indexed:!0,internalType:"uint256"},{name:"from",type:"address",indexed:!0,internalType:"address"},{name:"to",type:"address",indexed:!0,internalType:"address"}],anonymous:!1},{name:"Claimed",type:"event",inputs:[{name:"id",type:"uint256",indexed:!0,internalType:"uint256"},{name:"beneficiary",type:"address",indexed:!0,internalType:"address"},{name:"amount",type:"uint256",indexed:!1,internalType:"uint256"}],anonymous:!1},{name:"FeeChanged",type:"event",inputs:[{name:"fee",type:"uint256",indexed:!1,internalType:"uint256"}],anonymous:!1},{name:"FeeCollectorChanged",type:"event",inputs:[{name:"collector",type:"address",indexed:!1,internalType:"address"}],anonymous:!1},{name:"FeesWithdrawn",type:"event",inputs:[{name:"collector",type:"address",indexed:!0,internalType:"address"},{name:"amount",type:"uint256",indexed:!1,internalType:"uint256"}],anonymous:!1},{name:"VestingCreated",type:"event",inputs:[{name:"id",type:"uint256",indexed:!0,internalType:"uint256"},{name:"token",type:"address",indexed:!0,internalType:"address"},{name:"beneficiary",type:"address",indexed:!0,internalType:"address"},{name:"creator",type:"address",indexed:!1,internalType:"address"},{name:"total",type:"uint256",indexed:!1,internalType:"uint256"},{name:"start",type:"uint64",indexed:!1,internalType:"uint64"},{name:"cliff",type:"uint64",indexed:!1,internalType:"uint64"},{name:"end",type:"uint64",indexed:!1,internalType:"uint64"}],anonymous:!1},{name:"MAX_BATCH",type:"function",inputs:[],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"MAX_FEE",type:"function",inputs:[],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"MIN_DURATION",type:"function",inputs:[],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"acceptAdmin",type:"function",inputs:[],outputs:[],stateMutability:"nonpayable"},{name:"accruedFees",type:"function",inputs:[],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"admin",type:"function",inputs:[],outputs:[{name:"",type:"address",internalType:"address"}],stateMutability:"view"},{name:"claim",type:"function",inputs:[{name:"id",type:"uint256",internalType:"uint256"}],outputs:[],stateMutability:"nonpayable"},{name:"claimable",type:"function",inputs:[{name:"id",type:"uint256",internalType:"uint256"}],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"create",type:"function",inputs:[{name:"token",type:"address",internalType:"address"},{name:"beneficiary",type:"address",internalType:"address"},{name:"amount",type:"uint256",internalType:"uint256"},{name:"start",type:"uint64",internalType:"uint64"},{name:"cliff",type:"uint64",internalType:"uint64"},{name:"end",type:"uint64",internalType:"uint64"}],outputs:[{name:"id",type:"uint256",internalType:"uint256"}],stateMutability:"payable"},{name:"createMany",type:"function",inputs:[{name:"token",type:"address",internalType:"address"},{name:"beneficiaries",type:"address[]",internalType:"address[]"},{name:"amounts",type:"uint256[]",internalType:"uint256[]"},{name:"start",type:"uint64",internalType:"uint64"},{name:"cliff",type:"uint64",internalType:"uint64"},{name:"end",type:"uint64",internalType:"uint64"}],outputs:[{name:"firstId",type:"uint256",internalType:"uint256"}],stateMutability:"payable"},{name:"fee",type:"function",inputs:[],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"feeCollector",type:"function",inputs:[],outputs:[{name:"",type:"address",internalType:"address"}],stateMutability:"view"},{name:"getSchedule",type:"function",inputs:[{name:"id",type:"uint256",internalType:"uint256"}],outputs:[{name:"",type:"tuple",components:[{name:"creator",type:"address",internalType:"address"},{name:"start",type:"uint64",internalType:"uint64"},{name:"beneficiary",type:"address",internalType:"address"},{name:"cliff",type:"uint64",internalType:"uint64"},{name:"token",type:"address",internalType:"address"},{name:"end",type:"uint64",internalType:"uint64"},{name:"total",type:"uint128",internalType:"uint128"},{name:"claimed",type:"uint128",internalType:"uint128"}],internalType:"struct RobinhoodVesting.Schedule"}],stateMutability:"view"},{name:"nextScheduleId",type:"function",inputs:[],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"pendingAdmin",type:"function",inputs:[],outputs:[{name:"",type:"address",internalType:"address"}],stateMutability:"view"},{name:"schedules",type:"function",inputs:[{name:"",type:"uint256",internalType:"uint256"}],outputs:[{name:"creator",type:"address",internalType:"address"},{name:"start",type:"uint64",internalType:"uint64"},{name:"beneficiary",type:"address",internalType:"address"},{name:"cliff",type:"uint64",internalType:"uint64"},{name:"token",type:"address",internalType:"address"},{name:"end",type:"uint64",internalType:"uint64"},{name:"total",type:"uint128",internalType:"uint128"},{name:"claimed",type:"uint128",internalType:"uint128"}],stateMutability:"view"},{name:"schedulesByBeneficiary",type:"function",inputs:[{name:"b",type:"address",internalType:"address"}],outputs:[{name:"",type:"uint256[]",internalType:"uint256[]"}],stateMutability:"view"},{name:"schedulesByCreator",type:"function",inputs:[{name:"c",type:"address",internalType:"address"}],outputs:[{name:"",type:"uint256[]",internalType:"uint256[]"}],stateMutability:"view"},{name:"schedulesByToken",type:"function",inputs:[{name:"token",type:"address",internalType:"address"}],outputs:[{name:"",type:"uint256[]",internalType:"uint256[]"}],stateMutability:"view"},{name:"setFee",type:"function",inputs:[{name:"_fee",type:"uint256",internalType:"uint256"}],outputs:[],stateMutability:"nonpayable"},{name:"setFeeCollector",type:"function",inputs:[{name:"c",type:"address",internalType:"address"}],outputs:[],stateMutability:"nonpayable"},{name:"totalSchedules",type:"function",inputs:[],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"transferAdmin",type:"function",inputs:[{name:"newAdmin",type:"address",internalType:"address"}],outputs:[],stateMutability:"nonpayable"},{name:"transferBeneficiary",type:"function",inputs:[{name:"id",type:"uint256",internalType:"uint256"},{name:"newBeneficiary",type:"address",internalType:"address"}],outputs:[],stateMutability:"nonpayable"},{name:"withdrawFees",type:"function",inputs:[],outputs:[],stateMutability:"nonpayable"}]},airdrop:{address:"0x6B1fE7b821001144Ee74EEA258b0AafdE20102E8",source:"https://sourcify.dev/server/v2/contract/4663/0x6B1fE7b821001144Ee74EEA258b0AafdE20102E8?fields=abi,sources,compilation",match:"match",verifiedAt:"2026-07-30T16:48:51Z",fetchedAt:"2026-10-31",abi:[{name:"AdminTransferStarted",type:"event",inputs:[{name:"current",type:"address",indexed:!0,internalType:"address"},{name:"pending",type:"address",indexed:!0,internalType:"address"}],anonymous:!1},{name:"AdminTransferred",type:"event",inputs:[{name:"previous",type:"address",indexed:!0,internalType:"address"},{name:"current",type:"address",indexed:!0,internalType:"address"}],anonymous:!1},{name:"AirdropCreated",type:"event",inputs:[{name:"id",type:"uint256",indexed:!0,internalType:"uint256"},{name:"token",type:"address",indexed:!0,internalType:"address"},{name:"creator",type:"address",indexed:!0,internalType:"address"},{name:"merkleRoot",type:"bytes32",indexed:!1,internalType:"bytes32"},{name:"total",type:"uint256",indexed:!1,internalType:"uint256"},{name:"maxClaims",type:"uint32",indexed:!1,internalType:"uint32"},{name:"endTime",type:"uint64",indexed:!1,internalType:"uint64"},{name:"listURI",type:"string",indexed:!1,internalType:"string"}],anonymous:!1},{name:"Claimed",type:"event",inputs:[{name:"id",type:"uint256",indexed:!0,internalType:"uint256"},{name:"index",type:"uint256",indexed:!1,internalType:"uint256"},{name:"account",type:"address",indexed:!0,internalType:"address"},{name:"amount",type:"uint256",indexed:!1,internalType:"uint256"}],anonymous:!1},{name:"FeeChanged",type:"event",inputs:[{name:"feeBase",type:"uint256",indexed:!1,internalType:"uint256"},{name:"feePerWallet",type:"uint256",indexed:!1,internalType:"uint256"}],anonymous:!1},{name:"FeeCollectorChanged",type:"event",inputs:[{name:"collector",type:"address",indexed:!1,internalType:"address"}],anonymous:!1},{name:"FeesWithdrawn",type:"event",inputs:[{name:"collector",type:"address",indexed:!0,internalType:"address"},{name:"amount",type:"uint256",indexed:!1,internalType:"uint256"}],anonymous:!1},{name:"Swept",type:"event",inputs:[{name:"id",type:"uint256",indexed:!0,internalType:"uint256"},{name:"creator",type:"address",indexed:!0,internalType:"address"},{name:"amount",type:"uint256",indexed:!1,internalType:"uint256"}],anonymous:!1},{name:"MAX_FEE",type:"function",inputs:[],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"MAX_RECIPIENTS",type:"function",inputs:[],outputs:[{name:"",type:"uint32",internalType:"uint32"}],stateMutability:"view"},{name:"MAX_URI",type:"function",inputs:[],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"MIN_WINDOW",type:"function",inputs:[],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"acceptAdmin",type:"function",inputs:[],outputs:[],stateMutability:"nonpayable"},{name:"accruedFees",type:"function",inputs:[],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"admin",type:"function",inputs:[],outputs:[{name:"",type:"address",internalType:"address"}],stateMutability:"view"},{name:"airdrops",type:"function",inputs:[{name:"",type:"uint256",internalType:"uint256"}],outputs:[{name:"creator",type:"address",internalType:"address"},{name:"endTime",type:"uint64",internalType:"uint64"},{name:"maxClaims",type:"uint32",internalType:"uint32"},{name:"token",type:"address",internalType:"address"},{name:"claims",type:"uint32",internalType:"uint32"},{name:"swept",type:"bool",internalType:"bool"},{name:"merkleRoot",type:"bytes32",internalType:"bytes32"},{name:"total",type:"uint128",internalType:"uint128"},{name:"remaining",type:"uint128",internalType:"uint128"}],stateMutability:"view"},{name:"claim",type:"function",inputs:[{name:"id",type:"uint256",internalType:"uint256"},{name:"index",type:"uint256",internalType:"uint256"},{name:"account",type:"address",internalType:"address"},{name:"amount",type:"uint256",internalType:"uint256"},{name:"proof",type:"bytes32[]",internalType:"bytes32[]"}],outputs:[],stateMutability:"nonpayable"},{name:"create",type:"function",inputs:[{name:"token",type:"address",internalType:"address"},{name:"merkleRoot",type:"bytes32",internalType:"bytes32"},{name:"total",type:"uint256",internalType:"uint256"},{name:"maxClaims",type:"uint32",internalType:"uint32"},{name:"endTime",type:"uint64",internalType:"uint64"},{name:"uri",type:"string",internalType:"string"}],outputs:[{name:"id",type:"uint256",internalType:"uint256"}],stateMutability:"payable"},{name:"feeBase",type:"function",inputs:[],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"feeCollector",type:"function",inputs:[],outputs:[{name:"",type:"address",internalType:"address"}],stateMutability:"view"},{name:"feePerWallet",type:"function",inputs:[],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"getAirdrop",type:"function",inputs:[{name:"id",type:"uint256",internalType:"uint256"}],outputs:[{name:"",type:"tuple",components:[{name:"creator",type:"address",internalType:"address"},{name:"endTime",type:"uint64",internalType:"uint64"},{name:"maxClaims",type:"uint32",internalType:"uint32"},{name:"token",type:"address",internalType:"address"},{name:"claims",type:"uint32",internalType:"uint32"},{name:"swept",type:"bool",internalType:"bool"},{name:"merkleRoot",type:"bytes32",internalType:"bytes32"},{name:"total",type:"uint128",internalType:"uint128"},{name:"remaining",type:"uint128",internalType:"uint128"}],internalType:"struct RobinhoodAirdrop.Airdrop"}],stateMutability:"view"},{name:"isClaimed",type:"function",inputs:[{name:"id",type:"uint256",internalType:"uint256"},{name:"index",type:"uint256",internalType:"uint256"}],outputs:[{name:"",type:"bool",internalType:"bool"}],stateMutability:"view"},{name:"listURI",type:"function",inputs:[{name:"",type:"uint256",internalType:"uint256"}],outputs:[{name:"",type:"string",internalType:"string"}],stateMutability:"view"},{name:"nextAirdropId",type:"function",inputs:[],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"pendingAdmin",type:"function",inputs:[],outputs:[{name:"",type:"address",internalType:"address"}],stateMutability:"view"},{name:"quote",type:"function",inputs:[{name:"maxClaims",type:"uint32",internalType:"uint32"}],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"setFee",type:"function",inputs:[{name:"_feeBase",type:"uint256",internalType:"uint256"},{name:"_feePerWallet",type:"uint256",internalType:"uint256"}],outputs:[],stateMutability:"nonpayable"},{name:"setFeeCollector",type:"function",inputs:[{name:"c",type:"address",internalType:"address"}],outputs:[],stateMutability:"nonpayable"},{name:"sweep",type:"function",inputs:[{name:"id",type:"uint256",internalType:"uint256"}],outputs:[],stateMutability:"nonpayable"},{name:"totalAirdrops",type:"function",inputs:[],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"transferAdmin",type:"function",inputs:[{name:"newAdmin",type:"address",internalType:"address"}],outputs:[],stateMutability:"nonpayable"},{name:"withdrawFees",type:"function",inputs:[],outputs:[],stateMutability:"nonpayable"}]},liquidityLocker:{address:"0x91Aa2dA1956C77F8448E18DCaf53383bCc658e67",source:"https://sourcify.dev/server/v2/contract/4663/0x91Aa2dA1956C77F8448E18DCaf53383bCc658e67?fields=abi,sources,compilation",match:"exact_match",verifiedAt:"2026-10-04T15:10:02Z",fetchedAt:"2026-10-31",abi:[{name:"AdminTransferStarted",type:"event",inputs:[{name:"next",type:"address",indexed:!0,internalType:"address"}],anonymous:!1},{name:"AdminTransferred",type:"event",inputs:[{name:"previous",type:"address",indexed:!0,internalType:"address"},{name:"next",type:"address",indexed:!0,internalType:"address"}],anonymous:!1},{name:"CollectFailed",type:"event",inputs:[{name:"id",type:"uint256",indexed:!0,internalType:"uint256"}],anonymous:!1},{name:"CollectFeeChanged",type:"event",inputs:[{name:"bps",type:"uint16",indexed:!1,internalType:"uint16"}],anonymous:!1},{name:"Collected",type:"event",inputs:[{name:"id",type:"uint256",indexed:!0,internalType:"uint256"},{name:"recipient",type:"address",indexed:!0,internalType:"address"},{name:"amount0",type:"uint256",indexed:!1,internalType:"uint256"},{name:"amount1",type:"uint256",indexed:!1,internalType:"uint256"},{name:"cut0",type:"uint256",indexed:!1,internalType:"uint256"},{name:"cut1",type:"uint256",indexed:!1,internalType:"uint256"},{name:"byAdmin",type:"bool",indexed:!1,internalType:"bool"}],anonymous:!1},{name:"CutDeferred",type:"event",inputs:[{name:"token",type:"address",indexed:!0,internalType:"address"},{name:"amount",type:"uint256",indexed:!1,internalType:"uint256"}],anonymous:!1},{name:"CutSwept",type:"event",inputs:[{name:"token",type:"address",indexed:!0,internalType:"address"},{name:"amount",type:"uint256",indexed:!1,internalType:"uint256"}],anonymous:!1},{name:"EthClaimed",type:"event",inputs:[{name:"recipient",type:"address",indexed:!0,internalType:"address"},{name:"amount",type:"uint256",indexed:!1,internalType:"uint256"}],anonymous:!1},{name:"EthCredited",type:"event",inputs:[{name:"recipient",type:"address",indexed:!0,internalType:"address"},{name:"amount",type:"uint256",indexed:!1,internalType:"uint256"}],anonymous:!1},{name:"Extended",type:"event",inputs:[{name:"id",type:"uint256",indexed:!0,internalType:"uint256"},{name:"newUnlockTime",type:"uint256",indexed:!1,internalType:"uint256"}],anonymous:!1},{name:"FeeRecipientChanged",type:"event",inputs:[{name:"id",type:"uint256",indexed:!0,internalType:"uint256"},{name:"recipient",type:"address",indexed:!0,internalType:"address"}],anonymous:!1},{name:"FeeVaultChanged",type:"event",inputs:[{name:"vault",type:"address",indexed:!1,internalType:"address"}],anonymous:!1},{name:"FixedFeeChanged",type:"event",inputs:[{name:"fee",type:"uint256",indexed:!1,internalType:"uint256"}],anonymous:!1},{name:"HookAllowedChanged",type:"event",inputs:[{name:"hook",type:"address",indexed:!0,internalType:"address"},{name:"allowed",type:"bool",indexed:!1,internalType:"bool"}],anonymous:!1},{name:"KeeperChanged",type:"event",inputs:[{name:"keeper",type:"address",indexed:!0,internalType:"address"}],anonymous:!1},{name:"LockOwnershipTransferred",type:"event",inputs:[{name:"id",type:"uint256",indexed:!0,internalType:"uint256"},{name:"from",type:"address",indexed:!0,internalType:"address"},{name:"to",type:"address",indexed:!0,internalType:"address"}],anonymous:!1},{name:"Locked",type:"event",inputs:[{name:"id",type:"uint256",indexed:!0,internalType:"uint256"},{name:"owner",type:"address",indexed:!0,internalType:"address"},{name:"manager",type:"address",indexed:!0,internalType:"address"},{name:"tokenId",type:"uint256",indexed:!1,internalType:"uint256"},{name:"token0",type:"address",indexed:!1,internalType:"address"},{name:"token1",type:"address",indexed:!1,internalType:"address"},{name:"pool",type:"bytes32",indexed:!1,internalType:"bytes32"},{name:"unlockTime",type:"uint256",indexed:!1,internalType:"uint256"},{name:"collectFeeBps",type:"uint16",indexed:!1,internalType:"uint16"},{name:"hookVerified",type:"bool",indexed:!1,internalType:"bool"},{name:"feeRecipient",type:"address",indexed:!1,internalType:"address"},{name:"fixedFeePaid",type:"uint256",indexed:!1,internalType:"uint256"}],anonymous:!1},{name:"PausedChanged",type:"event",inputs:[{name:"paused",type:"bool",indexed:!1,internalType:"bool"}],anonymous:!1},{name:"PreLockFeesReturned",type:"event",inputs:[{name:"id",type:"uint256",indexed:!0,internalType:"uint256"},{name:"to",type:"address",indexed:!0,internalType:"address"},{name:"amount0",type:"uint256",indexed:!1,internalType:"uint256"},{name:"amount1",type:"uint256",indexed:!1,internalType:"uint256"}],anonymous:!1},{name:"Rescued",type:"event",inputs:[{name:"token",type:"address",indexed:!0,internalType:"address"},{name:"to",type:"address",indexed:!0,internalType:"address"},{name:"amount",type:"uint256",indexed:!1,internalType:"uint256"}],anonymous:!1},{name:"RevenueSinkChanged",type:"event",inputs:[{name:"sink",type:"address",indexed:!1,internalType:"address"}],anonymous:!1},{name:"ShareRedirected",type:"event",inputs:[{name:"id",type:"uint256",indexed:!0,internalType:"uint256"},{name:"token",type:"address",indexed:!0,internalType:"address"},{name:"to",type:"address",indexed:!0,internalType:"address"},{name:"amount",type:"uint256",indexed:!1,internalType:"uint256"}],anonymous:!1},{name:"StrayPositionReturned",type:"event",inputs:[{name:"manager",type:"address",indexed:!0,internalType:"address"},{name:"tokenId",type:"uint256",indexed:!0,internalType:"uint256"},{name:"to",type:"address",indexed:!0,internalType:"address"}],anonymous:!1},{name:"Withdrawn",type:"event",inputs:[{name:"id",type:"uint256",indexed:!0,internalType:"uint256"},{name:"to",type:"address",indexed:!0,internalType:"address"}],anonymous:!1},{name:"BATCH_GAS_PER_LOCK",type:"function",inputs:[],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"MAX_BATCH",type:"function",inputs:[],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"MAX_COLLECT_FEE_BPS",type:"function",inputs:[],outputs:[{name:"",type:"uint16",internalType:"uint16"}],stateMutability:"view"},{name:"MAX_FIXED_FEE",type:"function",inputs:[],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"MAX_LOCK_DURATION",type:"function",inputs:[],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"MIN_COLLECT_FEE_BPS",type:"function",inputs:[],outputs:[{name:"",type:"uint16",internalType:"uint16"}],stateMutability:"view"},{name:"V3_FACTORY",type:"function",inputs:[],outputs:[{name:"",type:"address",internalType:"address"}],stateMutability:"view"},{name:"V3_POSITIONS",type:"function",inputs:[],outputs:[{name:"",type:"address",internalType:"contract IV3PositionManager"}],stateMutability:"view"},{name:"V4_POOL_MANAGER",type:"function",inputs:[],outputs:[{name:"",type:"address",internalType:"address"}],stateMutability:"view"},{name:"V4_POSITIONS",type:"function",inputs:[],outputs:[{name:"",type:"address",internalType:"contract IV4PositionManager"}],stateMutability:"view"},{name:"acceptAdmin",type:"function",inputs:[],outputs:[],stateMutability:"nonpayable"},{name:"admin",type:"function",inputs:[],outputs:[{name:"",type:"address",internalType:"address"}],stateMutability:"view"},{name:"adminCollect",type:"function",inputs:[{name:"ids",type:"uint256[]",internalType:"uint256[]"}],outputs:[],stateMutability:"nonpayable"},{name:"claimOwedEth",type:"function",inputs:[],outputs:[],stateMutability:"nonpayable"},{name:"claimOwedEthTo",type:"function",inputs:[{name:"to",type:"address",internalType:"address"}],outputs:[],stateMutability:"nonpayable"},{name:"collect",type:"function",inputs:[{name:"id",type:"uint256",internalType:"uint256"}],outputs:[],stateMutability:"nonpayable"},{name:"collectFeeBps",type:"function",inputs:[],outputs:[{name:"",type:"uint16",internalType:"uint16"}],stateMutability:"view"},{name:"collectMany",type:"function",inputs:[{name:"ids",type:"uint256[]",internalType:"uint256[]"}],outputs:[],stateMutability:"nonpayable"},{name:"collectOneIsolated",type:"function",inputs:[{name:"id",type:"uint256",internalType:"uint256"},{name:"byAdmin",type:"bool",internalType:"bool"}],outputs:[],stateMutability:"nonpayable"},{name:"cutOf",type:"function",inputs:[{name:"amount",type:"uint256",internalType:"uint256"},{name:"bps",type:"uint16",internalType:"uint16"}],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"pure"},{name:"extend",type:"function",inputs:[{name:"id",type:"uint256",internalType:"uint256"},{name:"newUnlockTime",type:"uint256",internalType:"uint256"}],outputs:[],stateMutability:"nonpayable"},{name:"feeVault",type:"function",inputs:[],outputs:[{name:"",type:"address",internalType:"address"}],stateMutability:"view"},{name:"fixedFee",type:"function",inputs:[],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"getLock",type:"function",inputs:[{name:"id",type:"uint256",internalType:"uint256"}],outputs:[{name:"",type:"tuple",components:[{name:"owner",type:"address",internalType:"address"},{name:"unlockTime",type:"uint40",internalType:"uint40"},{name:"collectFeeBps",type:"uint16",internalType:"uint16"},{name:"isV4",type:"bool",internalType:"bool"},{name:"hookVerified",type:"bool",internalType:"bool"},{name:"withdrawn",type:"bool",internalType:"bool"},{name:"feeRecipient",type:"address",internalType:"address"},{name:"token0",type:"address",internalType:"address"},{name:"token1",type:"address",internalType:"address"},{name:"tokenId",type:"uint256",internalType:"uint256"}],internalType:"struct HoodLockLPLocker.Lock"}],stateMutability:"view"},{name:"hookAllowed",type:"function",inputs:[{name:"",type:"address",internalType:"address"}],outputs:[{name:"",type:"bool",internalType:"bool"}],stateMutability:"view"},{name:"isUnlocked",type:"function",inputs:[{name:"id",type:"uint256",internalType:"uint256"}],outputs:[{name:"",type:"bool",internalType:"bool"}],stateMutability:"view"},{name:"keeper",type:"function",inputs:[],outputs:[{name:"",type:"address",internalType:"address"}],stateMutability:"view"},{name:"lock",type:"function",inputs:[{name:"manager",type:"address",internalType:"address"},{name:"tokenId",type:"uint256",internalType:"uint256"},{name:"unlockTime",type:"uint256",internalType:"uint256"},{name:"feeRecipient",type:"address",internalType:"address"},{name:"acceptUnverifiedHook",type:"bool",internalType:"bool"},{name:"maxCollectFeeBps",type:"uint16",internalType:"uint16"}],outputs:[{name:"id",type:"uint256",internalType:"uint256"}],stateMutability:"payable"},{name:"lockIdOf",type:"function",inputs:[{name:"",type:"address",internalType:"address"},{name:"",type:"uint256",internalType:"uint256"}],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"locksOf",type:"function",inputs:[{name:"owner",type:"address",internalType:"address"}],outputs:[{name:"",type:"uint256[]",internalType:"uint256[]"}],stateMutability:"view"},{name:"name",type:"function",inputs:[],outputs:[{name:"",type:"string",internalType:"string"}],stateMutability:"view"},{name:"nextLockId",type:"function",inputs:[],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"onERC721Received",type:"function",inputs:[{name:"",type:"address",internalType:"address"},{name:"",type:"address",internalType:"address"},{name:"",type:"uint256",internalType:"uint256"},{name:"",type:"bytes",internalType:"bytes"}],outputs:[{name:"",type:"bytes4",internalType:"bytes4"}],stateMutability:"pure"},{name:"owedEth",type:"function",inputs:[{name:"",type:"address",internalType:"address"}],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"paused",type:"function",inputs:[],outputs:[{name:"",type:"bool",internalType:"bool"}],stateMutability:"view"},{name:"pendingAdmin",type:"function",inputs:[],outputs:[{name:"",type:"address",internalType:"address"}],stateMutability:"view"},{name:"pendingCut",type:"function",inputs:[{name:"",type:"address",internalType:"address"}],outputs:[{name:"",type:"uint256",internalType:"uint256"}],stateMutability:"view"},{name:"pushOwedEth",type:"function",inputs:[{name:"who",type:"address",internalType:"address"}],outputs:[],stateMutability:"nonpayable"},{name:"rescueERC20",type:"function",inputs:[{name:"token",type:"address",internalType:"address"},{name:"to",type:"address",internalType:"address"},{name:"amount",type:"uint256",internalType:"uint256"}],outputs:[],stateMutability:"nonpayable"},{name:"returnStrayPosition",type:"function",inputs:[{name:"manager",type:"address",internalType:"address"},{name:"tokenId",type:"uint256",internalType:"uint256"},{name:"to",type:"address",internalType:"address"}],outputs:[],stateMutability:"nonpayable"},{name:"revenueSink",type:"function",inputs:[],outputs:[{name:"",type:"address",internalType:"address"}],stateMutability:"view"},{name:"setCollectFeeBps",type:"function",inputs:[{name:"bps",type:"uint16",internalType:"uint16"}],outputs:[],stateMutability:"nonpayable"},{name:"setFeeRecipient",type:"function",inputs:[{name:"id",type:"uint256",internalType:"uint256"},{name:"recipient",type:"address",internalType:"address"}],outputs:[],stateMutability:"nonpayable"},{name:"setFeeVault",type:"function",inputs:[{name:"vault",type:"address",internalType:"address"}],outputs:[],stateMutability:"nonpayable"},{name:"setFixedFee",type:"function",inputs:[{name:"fee_",type:"uint256",internalType:"uint256"}],outputs:[],stateMutability:"nonpayable"},{name:"setHookAllowed",type:"function",inputs:[{name:"hook",type:"address",internalType:"address"},{name:"allowed",type:"bool",internalType:"bool"}],outputs:[],stateMutability:"nonpayable"},{name:"setKeeper",type:"function",inputs:[{name:"k",type:"address",internalType:"address"}],outputs:[],stateMutability:"nonpayable"},{name:"setPaused",type:"function",inputs:[{name:"p",type:"bool",internalType:"bool"}],outputs:[],stateMutability:"nonpayable"},{name:"setRevenueSink",type:"function",inputs:[{name:"sink",type:"address",internalType:"address"}],outputs:[],stateMutability:"nonpayable"},{name:"sweepPendingCut",type:"function",inputs:[{name:"token",type:"address",internalType:"address"}],outputs:[],stateMutability:"nonpayable"},{name:"transferAdmin",type:"function",inputs:[{name:"next",type:"address",internalType:"address"}],outputs:[],stateMutability:"nonpayable"},{name:"transferLockOwnership",type:"function",inputs:[{name:"id",type:"uint256",internalType:"uint256"},{name:"newOwner",type:"address",internalType:"address"}],outputs:[],stateMutability:"nonpayable"},{name:"withdraw",type:"function",inputs:[{name:"id",type:"uint256",internalType:"uint256"},{name:"to",type:"address",internalType:"address"}],outputs:[],stateMutability:"nonpayable"}]}};var Fe=v,Ie=S(v.vesting.address),Ee=["hoodlock_read","hoodlock_record","hoodlock_vesting_status","hoodlock_public"],$e=["hoodlock_vesting_create","hoodlock_vesting_claim","hoodlock_vesting_transfer","hoodlock_withdraw","hoodlock_extend","hoodlock_transfer_lock","hoodlock_set_fee_recipient","hoodlock_collect","hoodlock_airdrop_sweep","hoodlock_recover","hoodlock_admin"],C=h("Decimal record ID, including zero for token locks, burns, vesting and airdrops. LP IDs start at one."),le={id:C,kind:{type:"string",enum:["token","v2","v3","v4"]}},Y=(1n<<256n)-1n;function c(e,n,t=256){if(typeof e!="string"||!/^\d+$/.test(e))throw new o(`${n} must be a decimal base-unit string.`);let a=BigInt(e);if(a>(1n<<BigInt(t))-1n)throw new o(`${n} exceeds uint${t}.`);return a}function f(e,n,t=!1){let a=q(e,`Provide a valid ${n} address.`);return t?a:j(a,`${n} must not be the zero address.`)}function me(e,n){let t=c(e,n);if(t===0n||t===Y)throw new o(`${n} must be a positive exact amount, never unlimited.`);return t}function Q(e){if(typeof e!="string"||!Object.hasOwn(v,e))throw new o("Choose locker, burner, vesting, airdrop or liquidityLocker.");return e}function B(e){return v[e].abi}function k(e){return S(v[e].address)}function V(e,n){let t=B(e).find(a=>a.type==="function"&&a.name===n);if(!t)throw new o(`No published HoodLock ${e}.${n} function exists.`);return t}async function p(e,n,t,a=[]){return e.clientFor(l).readContract({address:k(n),abi:B(n),functionName:t,args:a})}function _(e,n){if(Array.isArray(e))return Object.fromEntries(n.map((t,a)=>[t,e[a]]));if(e&&typeof e=="object")return e;throw new o("HoodLock returned an invalid record. Retry the chain read.")}var ce=["owner","token","amount","unlockTime","withdrawn"],fe=["owner","unlockTime","collectFeeBps","isV4","hookVerified","withdrawn","feeRecipient","token0","token1","tokenId"],ee=["creator","start","beneficiary","cliff","token","end","total","claimed"],K=["creator","endTime","maxClaims","token","claims","swept","merkleRoot","total","remaining"];function M(e){return JSON.parse(JSON.stringify(e,(n,t)=>typeof t=="bigint"?t.toString():t))}async function g(e,n){let t=f(n,"token",!0);if(t===D)return N;let a=e.clientFor(l),[i,s]=await Promise.all([a.readContract({address:t,abi:W,functionName:"symbol"}),a.readContract({address:t,abi:W,functionName:"decimals"})]);if(!Number.isInteger(s)||s<0||s>255)throw new o("Token decimals are invalid.");return{address:t,chainId:l,symbol:R(String(i)),decimals:s}}function F(e,n,t="current owner"){if(f(e,t)!==S(n))throw new o(`This wallet is not the ${t}.`)}function z(e){if(e.withdrawn)throw new o("This HoodLock lock was already withdrawn.")}function Z(e){if(!["token","v2","v3","v4"].includes(String(e.kind)))throw new o("Provide kind: token, v2, v3 or v4.");return e.kind==="token"||e.kind==="v2"?"locker":"liquidityLocker"}async function H(e,n,t){return _(await p(e,n,"getLock",[t]),n==="locker"?ce:fe)}function G(e,n){if((e.kind==="v3"||e.kind==="v4")&&!!n.isV4!=(e.kind==="v4"))throw new o("Lock kind disagrees with the on-chain NFT version.")}async function T(e,n,t,a,i,s,r=0n,u=[]){let d=e.unsignedTx({to:k(t),chainId:l,value:r.toString(),data:ye({abi:B(t),functionName:a,args:i}),description:s}),m=await e.preview([...u,d],S(n));return{txs:m.txs,preview:m,summary:s,contract:k(t),chainId:l,method:a,arguments:M(i)}}function w(e,n,t,a,i){return{name:n,inputSchema:{type:"object",properties:t,required:a,additionalProperties:!1},async execute(s,r){try{return await i(s,S(r))}catch(u){throw new o(e.plainError(u))}}}}async function Te(e,n,t){let a=f(n.token,"token"),i=c(n.start,"start",64),s=c(n.cliff,"cliff",64),r=c(n.end,"end",64),[u,d,m,y,x]=await Promise.all([e.clientFor(l).getBlock(),p(e,"vesting","fee"),p(e,"vesting","MIN_DURATION"),p(e,"vesting","MAX_BATCH"),g(e,a)]);if(i>s||s>r||r<=i)throw new o("Vesting dates require start <= cliff <= end and end > start.");if(r>=1000000000000n||r<=u.timestamp+BigInt(String(m))+30n)throw new o("Vesting end must be Unix seconds, more than 24 hours plus a 30-second inclusion margin after the current block.");let I=n.entries!==void 0;if(I&&(n.beneficiary!==void 0||n.amount!==void 0))throw new o("Use entries or beneficiary/amount, not both.");if(I&&(!Array.isArray(n.entries)||n.entries.length===0||n.entries.length>Number(y)))throw new o(`Provide between 1 and ${String(y)} vesting entries.`);let $=I?n.entries:[{beneficiary:n.beneficiary,amount:n.amount}],P=$.map(A=>f(A?.beneficiary,"beneficiary")),L=$.map(A=>me(A?.amount,"amount"));if(L.some(A=>A>=1n<<128n))throw new o("Each vesting amount must fit uint128.");let O=L.reduce((A,de)=>A+de,0n);if(O>=Y)throw new o("Vesting total exceeds the exact approval range.");let E=BigInt(String(d))*BigInt($.length);if(n.maxFee!==void 0&&E>c(n.maxFee,"maxFee"))throw new o("Live vesting fee exceeds maxFee.");let re=I?"createMany":"create",oe=I?[a,P,L,i,s,r]:[a,P[0],L[0],i,s,r],ue=`Create ${$.length} irrevocable HoodLock vesting schedule(s): ${O} ${x.symbol} base units (${a}, decimals ${x.decimals}) for ${P.join(", ")}; start ${i}, cliff ${s}, end ${r}; exact fee ${E} wei. Creator cannot cancel or recover principal. Recorded totals use tokens actually received; preserve mined schedule IDs.`;return X(e,{...await T(e,t,"vesting",re,oe,ue,E,[e.approval(a,k("vesting"),O.toString(),l)]),token:x,amount:O.toString(),fee:{token:N,amount:E.toString()}},k("vesting"),E)}async function te(e,n){let t=_(await p(e,"vesting","getSchedule",[n]),ee);if(BigInt(String(t.total))===0n)throw new o("No HoodLock vesting schedule exists for this ID.");let[a,i]=await Promise.all([p(e,"vesting","claimable",[n]),g(e,t.token)]);return{id:n.toString(),contract:k("vesting"),chainId:l,schedule:M(t),token:i,claimable:String(a),remaining:(BigInt(String(t.total))-BigInt(String(t.claimed))).toString(),proofUrl:`https://hoodlock.tech/proof/vesting/${n}`}}async function ne(e,n,t){let a=n.account===void 0?t:f(n.account,"account"),i=n.role??"beneficiary";if(!["beneficiary","creator","token"].includes(String(i)))throw new o("Choose beneficiary, creator or token for vesting discovery.");let r=await p(e,"vesting",i==="creator"?"schedulesByCreator":i==="token"?"schedulesByToken":"schedulesByBeneficiary",[a]),u=[];for(let d of[...new Set(r.map(String))]){let m=await te(e,BigInt(d));(i!=="beneficiary"||f(m.schedule.beneficiary,"beneficiary")===a)&&u.push(m)}return{account:a,role:i,schedules:u,summary:`Found ${u.length} HoodLock vesting schedule(s); completed schedules remain visible.`}}async function J(e,n,t){return n.id===void 0?ne(e,n,t):te(e,c(n.id,"id"))}function Le(e){return{tools:[w(e,"hoodlock_vesting_create",{token:b,beneficiary:b,amount:h(),entries:{type:"array",minItems:1,maxItems:200,items:{type:"object",properties:{beneficiary:b,amount:h()},required:["beneficiary","amount"],additionalProperties:!1}},start:h(),cliff:h(),end:h(),maxFee:h()},["token","start","cliff","end"],(t,a)=>Te(e,t,a)),w(e,"hoodlock_vesting_status",{id:C,account:b,role:{type:"string",enum:["beneficiary","creator","token"]}},[],(t,a)=>J(e,t,a)),...["claim","transfer"].map(t=>w(e,`hoodlock_vesting_${t}`,{id:C,...t==="transfer"?{beneficiary:b}:{}},t==="transfer"?["id","beneficiary"]:["id"],async(a,i)=>{let s=c(a.id,"id"),r=_(await p(e,"vesting","getSchedule",[s]),ee);if(F(r.beneficiary,i,"current beneficiary"),t==="transfer"){let m=f(a.beneficiary,"beneficiary");return T(e,i,"vesting","transferBeneficiary",[s,m],`Transfer beneficiary rights for vesting #${s} from ${i} to ${m}. Remaining tokens follow the schedule; creator cannot revoke it.`)}let u=BigInt(String(await p(e,"vesting","claimable",[s])));if(u===0n)throw new o("Nothing is claimable yet; check the cliff and previous claims.");let d=await g(e,r.token);return{...await T(e,i,"vesting","claim",[s],`Claim currently ${u} ${d.symbol} base units from vesting #${s} to current beneficiary ${i}; live inclusion time determines the final amount.`),token:d,amount:u.toString()}})),...["withdraw","extend","transfer_lock","set_fee_recipient"].map(t=>w(e,`hoodlock_${t}`,{...le,...t==="withdraw"?{to:b}:t==="extend"?{unlockTime:h()}:t==="transfer_lock"?{owner:b}:{recipient:b}},["kind","id",...t==="extend"?["unlockTime"]:t==="transfer_lock"?["owner"]:t==="set_fee_recipient"?["recipient"]:[]],async(a,i)=>{let s=Z(a),r=c(a.id,"id"),u=await H(e,s,r);F(u.owner,i),z(u),G(a,u);let d=(await e.clientFor(l).getBlock()).timestamp;if(t==="withdraw"){if(d<BigInt(String(u.unlockTime)))throw new o(`Still locked until Unix ${String(u.unlockTime)}; expiry never withdraws automatically.`);let y=a.to===void 0?i:f(a.to,"withdrawal recipient");if(s==="locker"&&y!==i)throw new o("Token locks withdraw only to the current owner; omit to or use this wallet.");return{...await T(e,i,s,"withdraw",s==="locker"?[r]:[r,y],`Withdraw mature HoodLock ${a.kind} lock #${r} to ${y}; ${s==="locker"?`${String(u.amount)} token base units`:`position NFT #${String(u.tokenId)}`}.`),record:M(u),recipient:y}}if(t==="extend"){let y=c(a.unlockTime,"unlockTime");if(y<=BigInt(String(u.unlockTime))||y<=d||y>d+3153600000n)throw new o("New unlockTime must extend the lock, be future Unix seconds, and at most 100 years away.");return T(e,i,s,"extend",[r,y],`Extend HoodLock ${a.kind} lock #${r} from ${String(u.unlockTime)} to ${y}; it cannot be shortened.`)}if(t==="set_fee_recipient"){if(s!=="liquidityLocker")throw new o("Only NFT locks have a fee recipient.");let y=f(a.recipient,"fee recipient");return T(e,i,s,"setFeeRecipient",[r,y],`Redirect future collected fees for HoodLock NFT lock #${r} to ${y}; ownership and maturity stay the same.`)}let m=f(a.owner,"new owner");return T(e,i,s,"transferLockOwnership",[r,m],`Transfer HoodLock ${a.kind} lock #${r} to ${m}; that owner can withdraw after maturity.${s==="liquidityLocker"?" The contract also resets feeRecipient to the new owner.":""}`)})),w(e,"hoodlock_collect",{id:C,ids:{type:"array",minItems:1,maxItems:50,items:C}},[],async(t,a)=>{if(t.id===void 0==(t.ids===void 0))throw new o("Provide exactly one of id or ids.");let i=t.ids===void 0?[c(t.id,"id")]:ie(t.ids),s=[];for(let u of i){let d=await H(e,"liquidityLocker",u);F(d.owner,a),z(d),s.push({id:u.toString(),...M(d)})}let r=t.ids!==void 0;return{...await T(e,a,"liquidityLocker",r?"collectMany":"collect",r?[i]:[i[0]],`Collect fees for HoodLock NFT lock(s) ${i.join(", ")}; each lock's frozen collectFeeBps goes to HoodLock, the net to its recorded feeRecipient. Liquidity stays locked.${r?" Individual locks may fail; inspect Collected/CollectFailed events and balances.":""} Native ETH may become owedEth if delivery fails; refused ERC-20 fee shares fall back to the lock owner.`),locks:s}}),w(e,"hoodlock_airdrop_sweep",{id:C},["id"],async(t,a)=>{let i=c(t.id,"id"),s=_(await p(e,"airdrop","getAirdrop",[i]),K);if(F(s.creator,a,"airdrop creator"),s.swept)throw new o("This airdrop was already swept.");if(BigInt(String(s.endTime))===0n)throw new o("A zero-deadline airdrop can never be swept.");if((await e.clientFor(l).getBlock()).timestamp<BigInt(String(s.endTime)))throw new o("This airdrop has not ended; wait until endTime.");let r=await g(e,s.token);return{...await T(e,a,"airdrop","sweep",[i],`Recover the ${String(s.remaining)} remaining ${r.symbol} base units from expired airdrop #${i} to creator ${a}. This closes claims permanently.`),token:r,amount:String(s.remaining)}}),w(e,"hoodlock_record",{id:C,kind:{type:"string",enum:["token","v2","v3","v4","burn","vesting","airdrop"]}},["kind","id"],async(t,a)=>{let i=c(t.id,"id");if(t.kind==="vesting")return J(e,t,a);if(t.kind==="burn"){let d=_(await p(e,"burner","getBurn",[i]),["burner","token","amount","timestamp"]);if(BigInt(String(d.amount))===0n)throw new o("No HoodLock burn exists for this ID.");return{id:i.toString(),chainId:l,contract:k("burner"),record:M(d),token:await g(e,d.token),totalSupplyReduced:!1,proofUrl:`https://hoodlock.tech/proof/burn/${i}`}}if(t.kind==="airdrop"){let d=_(await p(e,"airdrop","getAirdrop",[i]),K);if(String(d.creator).toLowerCase()===D)throw new o("No HoodLock airdrop exists for this ID.");return{id:i.toString(),chainId:l,contract:k("airdrop"),record:M(d),token:await g(e,d.token),listURI:R(String(await p(e,"airdrop","listURI",[i])))}}let s=Z(t),r=await H(e,s,i);if(String(r.owner).toLowerCase()===D)throw new o("No HoodLock lock exists for this ID.");G(t,r);let u=s==="locker"?{token:await g(e,r.token)}:{token0:await g(e,r.token0),token1:await g(e,r.token1)};return{id:i.toString(),chainId:l,contract:k(s),record:M(r),...u,proofUrl:`https://hoodlock.tech/proof/${s==="locker"?"lock":"position"}/${i}`}}),w(e,"hoodlock_read",{contract:{type:"string",enum:Object.keys(v)},method:{type:"string",enum:be()},arguments:{type:"array",maxItems:6,items:{}}},["contract","method"],async t=>{let a=Q(t.contract),i=V(a,String(t.method));if(i.stateMutability!=="view"&&i.stateMutability!=="pure")throw new o("hoodlock_read accepts only published view/pure functions.");let s=U(i,t.arguments??[]),r=await p(e,a,i.name,s);return{chainId:l,contract:k(a),method:i.name,value:i.outputs.length===1&&i.outputs[0].type==="string"?R(String(r)):M(r),outputs:i.outputs,summary:"Raw contract view; owner indexes may include previous owners. Check current records. No transaction was built."}}),w(e,"hoodlock_recover",{method:{type:"string",enum:["claimOwedEth","claimOwedEthTo","pushOwedEth","sweepPendingCut"]},arguments:{type:"array",maxItems:1,items:b}},["method"],async(t,a)=>{let i=String(t.method);if(!["claimOwedEth","claimOwedEthTo","pushOwedEth","sweepPendingCut"].includes(i))throw new o("Choose a published deferred ETH or protocol-cut recovery method.");let s=U(V("liquidityLocker",i),t.arguments??[]),r=i==="claimOwedEthTo"||i==="pushOwedEth"?f(s[0],"recipient"):a,u=i==="sweepPendingCut"?await p(e,"liquidityLocker","pendingCut",s):await p(e,"liquidityLocker","owedEth",[i==="pushOwedEth"?r:a]);if(BigInt(String(u))===0n)throw new o("There is no deferred balance to recover.");let d=i==="sweepPendingCut"?String(await p(e,"liquidityLocker","feeVault")):r;return T(e,a,"liquidityLocker",i,s,`HoodLock ${i}: recover ${String(u)} base units to ${d}; only the contract-recorded credit or cut can move.`)}),w(e,"hoodlock_admin",{contract:{type:"string",enum:Object.keys(v)},method:{type:"string",enum:[...new Set(Object.values(se).flat())]},arguments:{type:"array",maxItems:3,items:{}}},["contract","method"],(t,a)=>we(e,t,a))],positions:async t=>((await ne(e,{},t)).schedules??[]).filter(s=>BigInt(s.remaining)>0n).map(s=>({module:"hoodlock",id:`vesting:${s.id}`,chainId:l,assets:[{token:s.token,amount:s.remaining}],description:`HoodLock vesting #${s.id}: ${s.claimable} base units claimable; ${s.remaining} remain for current beneficiary ${t}.`}))}}function ie(e){if(!Array.isArray(e)||e.length===0||e.length>50)throw new o("Provide between 1 and 50 distinct decimal IDs.");let n=e.map(t=>c(t,"id"));if(new Set(n.map(String)).size!==n.length)throw new o("Duplicate IDs are not allowed in a collection batch.");return n}function be(){return[...new Set(Object.keys(v).flatMap(e=>B(e).filter(n=>n.type==="function"&&["view","pure"].includes(n.stateMutability)&&n.name!=="onERC721Received").map(n=>n.name)))]}function ae(e,n){if(e.type.endsWith("[]")){if(!Array.isArray(n)||n.length>200)throw new o("Function arrays must contain at most 200 items.");return n.map(t=>ae({...e,type:e.type.slice(0,-2)},t))}if(e.type==="address")return f(n,e.name??"address",!0);if(e.type==="bool"){if(typeof n!="boolean")throw new o("Function boolean arguments must be booleans.");return n}if(/^uint\d*$/.test(e.type))return c(n,e.name??"integer",Number(e.type.slice(4)||256));throw new o(`Unsupported published argument type ${e.type}.`)}function U(e,n){if(!Array.isArray(n)||n.length!==e.inputs.length)throw new o(`${e.name} needs ${e.inputs.length} ABI-ordered arguments.`);return e.inputs.map((t,a)=>ae(t,n[a]))}var se={locker:["setAdmin","setFee","setFeeCollector"],burner:["setAdmin","setFee","setFeeCollector"],vesting:["setFee","setFeeCollector","transferAdmin","acceptAdmin","withdrawFees"],airdrop:["setFee","setFeeCollector","transferAdmin","acceptAdmin","withdrawFees"],liquidityLocker:["setCollectFeeBps","setFixedFee","setFeeVault","setRevenueSink","setPaused","setHookAllowed","setKeeper","transferAdmin","acceptAdmin","adminCollect","rescueERC20","returnStrayPosition"]};async function we(e,n,t){let a=Q(n.contract),i=String(n.method);if(!se[a].includes(i))throw new o(`No supported admin ${a}.${i} route exists.`);let s=U(V(a,i),n.arguments??[]),r=i==="acceptAdmin"?"pendingAdmin":i==="withdrawFees"?"feeCollector":"admin",u=await p(e,a,r);if(i==="adminCollect"&&S(String(u))!==t?F(await p(e,a,"keeper"),t,"admin or keeper"):F(u,t,r),i==="adminCollect"&&ie(s[0].map(String)),i==="returnStrayPosition"){let d=f(s[0],"manager"),m=["V3_POSITIONS","V4_POSITIONS"];if(!(await Promise.all(m.map(x=>p(e,"liquidityLocker",x)))).some(x=>S(String(x))===d))throw new o("Only a configured position manager can return a stray NFT.");if(BigInt(String(await p(e,"liquidityLocker","lockIdOf",s.slice(0,2))))!==0n)throw new o("An actively locked NFT cannot be rescued.")}return T(e,t,a,i,s,`HoodLock ${a}.${i}(${JSON.stringify(M(s))}) by authorized ${r} ${t}. This changes protocol configuration or recovers only assets allowed by the contract. Existing custody rights cannot be overridden.`)}export{Fe as a,Ie as b,Ee as c,$e as d,c as e,Le as f};
@@ -0,0 +1 @@
1
+ import{i as l}from"./NBRMUFJP.js";import{a}from"./5YS5V2LK.js";var m=4295128739n,h=1461446703485210103287273052203988822378723970342n,d=-887272,$=887272;function I(t){if(t<2n)return t;let n=t,i=n+1n>>1n;for(;i<n;)n=i,i=n+t/n>>1n;return n}function w(t,n){if(typeof t!="string"||!/^\d+(?:\.\d+)?$/.test(t.trim()))throw new a(`${n} must be a positive decimal string such as "3000.5".`);let[i,e=""]=t.trim().split("."),r=BigInt(`${i}${e}`);if(r<=0n)throw new a(`${n} must be greater than zero.`);return{n:r,d:10n**BigInt(e.length)}}function _(t,n,i){let{n:e,d:r}=w(t,"initialPrice"),s=e*10n**BigInt(i),o=r*10n**BigInt(n),c=I((s<<192n)/o);return b(c)}function b(t){if(t<m||t>=h)throw new a("Initial price is outside the range Uniswap can represent.");return t}function S(t){b(t);let n=d,i=$;for(;n<i;){let e=Math.ceil((n+i)/2);l(e)<=t?n=e:i=e-1}return n}function f(t,n,i){let r=(t*t*10n**BigInt(n+18)/((1n<<192n)*10n**BigInt(i))).toString().padStart(19,"0"),s=r.slice(0,-18),o=r.slice(-18).replace(/0+$/,"");return o?`${s}.${o}`:s}function x(t,n){let i=t*t,e=n*n;return(i>e?i-e:e-i)*10000n/e}var P=500n;function R(t,n,i,e,r){if(n.length===0)return"No other pool for this pair was found, so the starting price could not be checked against a market. Anyone can trade against a wrong price immediately.";let s=[...n].sort((p,u)=>p.sqrtPriceX96<u.sqrtPriceX96?-1:p.sqrtPriceX96>u.sqrtPriceX96?1:0),o=s[Math.floor(s.length/2)],c=x(t,o.sqrtPriceX96),g=`${f(o.sqrtPriceX96,e,r)} (${o.label})`;if(c>P&&!i)throw new a(`Initial price ${f(t,e,r)} is ${c} bps from the existing market price ${g}. A mispriced new pool is arbitraged against your deposit. Fix the price, or pass acceptPriceDeviation:true if this is intentional.`);return`Existing market price ${g}; starting price deviates ${c} bps.`}function T(t,n){return typeof t=="string"&&/^[A-Za-z0-9][A-Za-z0-9.$_-]{0,15}$/.test(t)?t:`${n.slice(0,6)}\u2026${n.slice(-4)}`}export{m as a,h as b,_ as c,b as d,S as e,f,x as g,P as h,R as i,T as j};