@echoclaw/echo-0g 1.0.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 (371) hide show
  1. package/README.md +1175 -0
  2. package/dist/0g-compute/account.d.ts +36 -0
  3. package/dist/0g-compute/account.d.ts.map +1 -0
  4. package/dist/0g-compute/account.js +85 -0
  5. package/dist/0g-compute/account.js.map +1 -0
  6. package/dist/0g-compute/bridge.d.ts +16 -0
  7. package/dist/0g-compute/bridge.d.ts.map +1 -0
  8. package/dist/0g-compute/bridge.js +40 -0
  9. package/dist/0g-compute/bridge.js.map +1 -0
  10. package/dist/0g-compute/broker-factory.d.ts +19 -0
  11. package/dist/0g-compute/broker-factory.d.ts.map +1 -0
  12. package/dist/0g-compute/broker-factory.js +65 -0
  13. package/dist/0g-compute/broker-factory.js.map +1 -0
  14. package/dist/0g-compute/constants.d.ts +10 -0
  15. package/dist/0g-compute/constants.d.ts.map +1 -0
  16. package/dist/0g-compute/constants.js +12 -0
  17. package/dist/0g-compute/constants.js.map +1 -0
  18. package/dist/0g-compute/monitor.d.ts +43 -0
  19. package/dist/0g-compute/monitor.d.ts.map +1 -0
  20. package/dist/0g-compute/monitor.js +302 -0
  21. package/dist/0g-compute/monitor.js.map +1 -0
  22. package/dist/0g-compute/pricing.d.ts +43 -0
  23. package/dist/0g-compute/pricing.d.ts.map +1 -0
  24. package/dist/0g-compute/pricing.js +53 -0
  25. package/dist/0g-compute/pricing.js.map +1 -0
  26. package/dist/0g-compute/sdk-bridge.cjs +17 -0
  27. package/dist/0g-compute/sdk-bridge.cjs.map +1 -0
  28. package/dist/0g-compute/sdk-bridge.d.cts +9 -0
  29. package/dist/0g-compute/sdk-bridge.d.cts.map +1 -0
  30. package/dist/0g-compute/smoke-test.d.ts +11 -0
  31. package/dist/0g-compute/smoke-test.d.ts.map +1 -0
  32. package/dist/0g-compute/smoke-test.js +172 -0
  33. package/dist/0g-compute/smoke-test.js.map +1 -0
  34. package/dist/bot/daemon.d.ts +34 -0
  35. package/dist/bot/daemon.d.ts.map +1 -0
  36. package/dist/bot/daemon.js +386 -0
  37. package/dist/bot/daemon.js.map +1 -0
  38. package/dist/bot/executor.d.ts +14238 -0
  39. package/dist/bot/executor.d.ts.map +1 -0
  40. package/dist/bot/executor.js +183 -0
  41. package/dist/bot/executor.js.map +1 -0
  42. package/dist/bot/nonce-queue.d.ts +20 -0
  43. package/dist/bot/nonce-queue.d.ts.map +1 -0
  44. package/dist/bot/nonce-queue.js +41 -0
  45. package/dist/bot/nonce-queue.js.map +1 -0
  46. package/dist/bot/notify.d.ts +15 -0
  47. package/dist/bot/notify.d.ts.map +1 -0
  48. package/dist/bot/notify.js +98 -0
  49. package/dist/bot/notify.js.map +1 -0
  50. package/dist/bot/orders.d.ts +30 -0
  51. package/dist/bot/orders.d.ts.map +1 -0
  52. package/dist/bot/orders.js +172 -0
  53. package/dist/bot/orders.js.map +1 -0
  54. package/dist/bot/state.d.ts +14 -0
  55. package/dist/bot/state.d.ts.map +1 -0
  56. package/dist/bot/state.js +109 -0
  57. package/dist/bot/state.js.map +1 -0
  58. package/dist/bot/stream.d.ts +28 -0
  59. package/dist/bot/stream.d.ts.map +1 -0
  60. package/dist/bot/stream.js +96 -0
  61. package/dist/bot/stream.js.map +1 -0
  62. package/dist/bot/triggers.d.ts +17 -0
  63. package/dist/bot/triggers.d.ts.map +1 -0
  64. package/dist/bot/triggers.js +95 -0
  65. package/dist/bot/triggers.js.map +1 -0
  66. package/dist/bot/types.d.ts +199 -0
  67. package/dist/bot/types.d.ts.map +1 -0
  68. package/dist/bot/types.js +12 -0
  69. package/dist/bot/types.js.map +1 -0
  70. package/dist/chainscan/client.d.ts +28 -0
  71. package/dist/chainscan/client.d.ts.map +1 -0
  72. package/dist/chainscan/client.js +361 -0
  73. package/dist/chainscan/client.js.map +1 -0
  74. package/dist/chainscan/constants.d.ts +15 -0
  75. package/dist/chainscan/constants.d.ts.map +1 -0
  76. package/dist/chainscan/constants.js +15 -0
  77. package/dist/chainscan/constants.js.map +1 -0
  78. package/dist/chainscan/types.d.ts +148 -0
  79. package/dist/chainscan/types.d.ts.map +1 -0
  80. package/dist/chainscan/types.js +2 -0
  81. package/dist/chainscan/types.js.map +1 -0
  82. package/dist/chainscan/validation.d.ts +35 -0
  83. package/dist/chainscan/validation.d.ts.map +1 -0
  84. package/dist/chainscan/validation.js +97 -0
  85. package/dist/chainscan/validation.js.map +1 -0
  86. package/dist/cli.d.ts +7 -0
  87. package/dist/cli.d.ts.map +1 -0
  88. package/dist/cli.js +328 -0
  89. package/dist/cli.js.map +1 -0
  90. package/dist/commands/0g-compute.d.ts +21 -0
  91. package/dist/commands/0g-compute.d.ts.map +1 -0
  92. package/dist/commands/0g-compute.js +850 -0
  93. package/dist/commands/0g-compute.js.map +1 -0
  94. package/dist/commands/chainscan.d.ts +17 -0
  95. package/dist/commands/chainscan.d.ts.map +1 -0
  96. package/dist/commands/chainscan.js +605 -0
  97. package/dist/commands/chainscan.js.map +1 -0
  98. package/dist/commands/config.d.ts +3 -0
  99. package/dist/commands/config.d.ts.map +1 -0
  100. package/dist/commands/config.js +251 -0
  101. package/dist/commands/config.js.map +1 -0
  102. package/dist/commands/echobook.d.ts +17 -0
  103. package/dist/commands/echobook.d.ts.map +1 -0
  104. package/dist/commands/echobook.js +905 -0
  105. package/dist/commands/echobook.js.map +1 -0
  106. package/dist/commands/jaine-subgraph.d.ts +3 -0
  107. package/dist/commands/jaine-subgraph.d.ts.map +1 -0
  108. package/dist/commands/jaine-subgraph.js +565 -0
  109. package/dist/commands/jaine-subgraph.js.map +1 -0
  110. package/dist/commands/jaine.d.ts +3 -0
  111. package/dist/commands/jaine.d.ts.map +1 -0
  112. package/dist/commands/jaine.js +1415 -0
  113. package/dist/commands/jaine.js.map +1 -0
  114. package/dist/commands/marketmaker.d.ts +6 -0
  115. package/dist/commands/marketmaker.d.ts.map +1 -0
  116. package/dist/commands/marketmaker.js +451 -0
  117. package/dist/commands/marketmaker.js.map +1 -0
  118. package/dist/commands/send.d.ts +3 -0
  119. package/dist/commands/send.d.ts.map +1 -0
  120. package/dist/commands/send.js +229 -0
  121. package/dist/commands/send.js.map +1 -0
  122. package/dist/commands/setup.d.ts +3 -0
  123. package/dist/commands/setup.d.ts.map +1 -0
  124. package/dist/commands/setup.js +263 -0
  125. package/dist/commands/setup.js.map +1 -0
  126. package/dist/commands/slop-app.d.ts +9 -0
  127. package/dist/commands/slop-app.d.ts.map +1 -0
  128. package/dist/commands/slop-app.js +708 -0
  129. package/dist/commands/slop-app.js.map +1 -0
  130. package/dist/commands/slop-stream.d.ts +9 -0
  131. package/dist/commands/slop-stream.d.ts.map +1 -0
  132. package/dist/commands/slop-stream.js +99 -0
  133. package/dist/commands/slop-stream.js.map +1 -0
  134. package/dist/commands/slop.d.ts +3 -0
  135. package/dist/commands/slop.d.ts.map +1 -0
  136. package/dist/commands/slop.js +1053 -0
  137. package/dist/commands/slop.js.map +1 -0
  138. package/dist/commands/wallet.d.ts +13 -0
  139. package/dist/commands/wallet.d.ts.map +1 -0
  140. package/dist/commands/wallet.js +748 -0
  141. package/dist/commands/wallet.js.map +1 -0
  142. package/dist/config/paths.d.ts +13 -0
  143. package/dist/config/paths.d.ts.map +1 -0
  144. package/dist/config/paths.js +33 -0
  145. package/dist/config/paths.js.map +1 -0
  146. package/dist/config/store.d.ts +48 -0
  147. package/dist/config/store.d.ts.map +1 -0
  148. package/dist/config/store.js +113 -0
  149. package/dist/config/store.js.map +1 -0
  150. package/dist/constants/chain.d.ts +57 -0
  151. package/dist/constants/chain.d.ts.map +1 -0
  152. package/dist/constants/chain.js +51 -0
  153. package/dist/constants/chain.js.map +1 -0
  154. package/dist/echobook/api.d.ts +38 -0
  155. package/dist/echobook/api.d.ts.map +1 -0
  156. package/dist/echobook/api.js +86 -0
  157. package/dist/echobook/api.js.map +1 -0
  158. package/dist/echobook/auth.d.ts +31 -0
  159. package/dist/echobook/auth.d.ts.map +1 -0
  160. package/dist/echobook/auth.js +93 -0
  161. package/dist/echobook/auth.js.map +1 -0
  162. package/dist/echobook/comments.d.ts +26 -0
  163. package/dist/echobook/comments.d.ts.map +1 -0
  164. package/dist/echobook/comments.js +20 -0
  165. package/dist/echobook/comments.js.map +1 -0
  166. package/dist/echobook/follows.d.ts +19 -0
  167. package/dist/echobook/follows.d.ts.map +1 -0
  168. package/dist/echobook/follows.js +21 -0
  169. package/dist/echobook/follows.js.map +1 -0
  170. package/dist/echobook/jwtCache.d.ts +15 -0
  171. package/dist/echobook/jwtCache.d.ts.map +1 -0
  172. package/dist/echobook/jwtCache.js +63 -0
  173. package/dist/echobook/jwtCache.js.map +1 -0
  174. package/dist/echobook/notifications.d.ts +30 -0
  175. package/dist/echobook/notifications.d.ts.map +1 -0
  176. package/dist/echobook/notifications.js +26 -0
  177. package/dist/echobook/notifications.js.map +1 -0
  178. package/dist/echobook/points.d.ts +35 -0
  179. package/dist/echobook/points.d.ts.map +1 -0
  180. package/dist/echobook/points.js +20 -0
  181. package/dist/echobook/points.js.map +1 -0
  182. package/dist/echobook/posts.d.ts +46 -0
  183. package/dist/echobook/posts.d.ts.map +1 -0
  184. package/dist/echobook/posts.js +43 -0
  185. package/dist/echobook/posts.js.map +1 -0
  186. package/dist/echobook/profile.d.ts +29 -0
  187. package/dist/echobook/profile.d.ts.map +1 -0
  188. package/dist/echobook/profile.js +14 -0
  189. package/dist/echobook/profile.js.map +1 -0
  190. package/dist/echobook/submolts.d.ts +22 -0
  191. package/dist/echobook/submolts.d.ts.map +1 -0
  192. package/dist/echobook/submolts.js +24 -0
  193. package/dist/echobook/submolts.js.map +1 -0
  194. package/dist/echobook/tradeProof.d.ts +21 -0
  195. package/dist/echobook/tradeProof.d.ts.map +1 -0
  196. package/dist/echobook/tradeProof.js +14 -0
  197. package/dist/echobook/tradeProof.js.map +1 -0
  198. package/dist/echobook/votes.d.ts +17 -0
  199. package/dist/echobook/votes.d.ts.map +1 -0
  200. package/dist/echobook/votes.js +20 -0
  201. package/dist/echobook/votes.js.map +1 -0
  202. package/dist/errors.d.ts +125 -0
  203. package/dist/errors.d.ts.map +1 -0
  204. package/dist/errors.js +147 -0
  205. package/dist/errors.js.map +1 -0
  206. package/dist/intents/store.d.ts +22 -0
  207. package/dist/intents/store.d.ts.map +1 -0
  208. package/dist/intents/store.js +76 -0
  209. package/dist/intents/store.js.map +1 -0
  210. package/dist/intents/types.d.ts +21 -0
  211. package/dist/intents/types.d.ts.map +1 -0
  212. package/dist/intents/types.js +2 -0
  213. package/dist/intents/types.js.map +1 -0
  214. package/dist/jaine/abi/erc20.d.ts +90 -0
  215. package/dist/jaine/abi/erc20.d.ts.map +1 -0
  216. package/dist/jaine/abi/erc20.js +65 -0
  217. package/dist/jaine/abi/erc20.js.map +1 -0
  218. package/dist/jaine/abi/factory.d.ts +38 -0
  219. package/dist/jaine/abi/factory.d.ts.map +1 -0
  220. package/dist/jaine/abi/factory.js +26 -0
  221. package/dist/jaine/abi/factory.js.map +1 -0
  222. package/dist/jaine/abi/index.d.ts +11 -0
  223. package/dist/jaine/abi/index.d.ts.map +1 -0
  224. package/dist/jaine/abi/index.js +11 -0
  225. package/dist/jaine/abi/index.js.map +1 -0
  226. package/dist/jaine/abi/nftManager.d.ts +282 -0
  227. package/dist/jaine/abi/nftManager.d.ts.map +1 -0
  228. package/dist/jaine/abi/nftManager.js +182 -0
  229. package/dist/jaine/abi/nftManager.js.map +1 -0
  230. package/dist/jaine/abi/pool.d.ts +77 -0
  231. package/dist/jaine/abi/pool.d.ts.map +1 -0
  232. package/dist/jaine/abi/pool.js +56 -0
  233. package/dist/jaine/abi/pool.js.map +1 -0
  234. package/dist/jaine/abi/quoter.d.ts +84 -0
  235. package/dist/jaine/abi/quoter.d.ts.map +1 -0
  236. package/dist/jaine/abi/quoter.js +53 -0
  237. package/dist/jaine/abi/quoter.js.map +1 -0
  238. package/dist/jaine/abi/router.d.ts +135 -0
  239. package/dist/jaine/abi/router.d.ts.map +1 -0
  240. package/dist/jaine/abi/router.js +88 -0
  241. package/dist/jaine/abi/router.js.map +1 -0
  242. package/dist/jaine/abi/w0g.d.ts +41 -0
  243. package/dist/jaine/abi/w0g.d.ts.map +1 -0
  244. package/dist/jaine/abi/w0g.js +34 -0
  245. package/dist/jaine/abi/w0g.js.map +1 -0
  246. package/dist/jaine/allowance.d.ts +48 -0
  247. package/dist/jaine/allowance.d.ts.map +1 -0
  248. package/dist/jaine/allowance.js +192 -0
  249. package/dist/jaine/allowance.js.map +1 -0
  250. package/dist/jaine/coreTokens.d.ts +32 -0
  251. package/dist/jaine/coreTokens.d.ts.map +1 -0
  252. package/dist/jaine/coreTokens.js +91 -0
  253. package/dist/jaine/coreTokens.js.map +1 -0
  254. package/dist/jaine/pathEncoding.d.ts +39 -0
  255. package/dist/jaine/pathEncoding.d.ts.map +1 -0
  256. package/dist/jaine/pathEncoding.js +98 -0
  257. package/dist/jaine/pathEncoding.js.map +1 -0
  258. package/dist/jaine/paths.d.ts +11 -0
  259. package/dist/jaine/paths.d.ts.map +1 -0
  260. package/dist/jaine/paths.js +20 -0
  261. package/dist/jaine/paths.js.map +1 -0
  262. package/dist/jaine/poolCache.d.ts +47 -0
  263. package/dist/jaine/poolCache.d.ts.map +1 -0
  264. package/dist/jaine/poolCache.js +195 -0
  265. package/dist/jaine/poolCache.js.map +1 -0
  266. package/dist/jaine/routing.d.ts +41 -0
  267. package/dist/jaine/routing.d.ts.map +1 -0
  268. package/dist/jaine/routing.js +247 -0
  269. package/dist/jaine/routing.js.map +1 -0
  270. package/dist/jaine/subgraph/client.d.ts +26 -0
  271. package/dist/jaine/subgraph/client.d.ts.map +1 -0
  272. package/dist/jaine/subgraph/client.js +201 -0
  273. package/dist/jaine/subgraph/client.js.map +1 -0
  274. package/dist/jaine/subgraph/constants.d.ts +9 -0
  275. package/dist/jaine/subgraph/constants.d.ts.map +1 -0
  276. package/dist/jaine/subgraph/constants.js +9 -0
  277. package/dist/jaine/subgraph/constants.js.map +1 -0
  278. package/dist/jaine/subgraph/queries.d.ts +21 -0
  279. package/dist/jaine/subgraph/queries.d.ts.map +1 -0
  280. package/dist/jaine/subgraph/queries.js +304 -0
  281. package/dist/jaine/subgraph/queries.js.map +1 -0
  282. package/dist/jaine/subgraph/types.d.ts +209 -0
  283. package/dist/jaine/subgraph/types.d.ts.map +1 -0
  284. package/dist/jaine/subgraph/types.js +7 -0
  285. package/dist/jaine/subgraph/types.js.map +1 -0
  286. package/dist/jaine/userTokens.d.ts +27 -0
  287. package/dist/jaine/userTokens.d.ts.map +1 -0
  288. package/dist/jaine/userTokens.js +89 -0
  289. package/dist/jaine/userTokens.js.map +1 -0
  290. package/dist/openclaw/config.d.ts +43 -0
  291. package/dist/openclaw/config.d.ts.map +1 -0
  292. package/dist/openclaw/config.js +231 -0
  293. package/dist/openclaw/config.js.map +1 -0
  294. package/dist/openclaw/hooks-client.d.ts +24 -0
  295. package/dist/openclaw/hooks-client.d.ts.map +1 -0
  296. package/dist/openclaw/hooks-client.js +119 -0
  297. package/dist/openclaw/hooks-client.js.map +1 -0
  298. package/dist/slop/abi/factory.d.ts +128 -0
  299. package/dist/slop/abi/factory.d.ts.map +1 -0
  300. package/dist/slop/abi/factory.js +70 -0
  301. package/dist/slop/abi/factory.js.map +1 -0
  302. package/dist/slop/abi/feeCollector.d.ts +95 -0
  303. package/dist/slop/abi/feeCollector.d.ts.map +1 -0
  304. package/dist/slop/abi/feeCollector.js +71 -0
  305. package/dist/slop/abi/feeCollector.js.map +1 -0
  306. package/dist/slop/abi/index.d.ts +5 -0
  307. package/dist/slop/abi/index.d.ts.map +1 -0
  308. package/dist/slop/abi/index.js +5 -0
  309. package/dist/slop/abi/index.js.map +1 -0
  310. package/dist/slop/abi/registry.d.ts +135 -0
  311. package/dist/slop/abi/registry.d.ts.map +1 -0
  312. package/dist/slop/abi/registry.js +90 -0
  313. package/dist/slop/abi/registry.js.map +1 -0
  314. package/dist/slop/abi/token.d.ts +320 -0
  315. package/dist/slop/abi/token.d.ts.map +1 -0
  316. package/dist/slop/abi/token.js +251 -0
  317. package/dist/slop/abi/token.js.map +1 -0
  318. package/dist/slop/auth.d.ts +19 -0
  319. package/dist/slop/auth.d.ts.map +1 -0
  320. package/dist/slop/auth.js +92 -0
  321. package/dist/slop/auth.js.map +1 -0
  322. package/dist/slop/jwtCache.d.ts +27 -0
  323. package/dist/slop/jwtCache.d.ts.map +1 -0
  324. package/dist/slop/jwtCache.js +91 -0
  325. package/dist/slop/jwtCache.js.map +1 -0
  326. package/dist/slop/quote.d.ts +80 -0
  327. package/dist/slop/quote.d.ts.map +1 -0
  328. package/dist/slop/quote.js +174 -0
  329. package/dist/slop/quote.js.map +1 -0
  330. package/dist/utils/canonicalJson.d.ts +8 -0
  331. package/dist/utils/canonicalJson.d.ts.map +1 -0
  332. package/dist/utils/canonicalJson.js +20 -0
  333. package/dist/utils/canonicalJson.js.map +1 -0
  334. package/dist/utils/env.d.ts +11 -0
  335. package/dist/utils/env.d.ts.map +1 -0
  336. package/dist/utils/env.js +20 -0
  337. package/dist/utils/env.js.map +1 -0
  338. package/dist/utils/http.d.ts +19 -0
  339. package/dist/utils/http.d.ts.map +1 -0
  340. package/dist/utils/http.js +61 -0
  341. package/dist/utils/http.js.map +1 -0
  342. package/dist/utils/logger.d.ts +4 -0
  343. package/dist/utils/logger.d.ts.map +1 -0
  344. package/dist/utils/logger.js +21 -0
  345. package/dist/utils/logger.js.map +1 -0
  346. package/dist/utils/output.d.ts +29 -0
  347. package/dist/utils/output.d.ts.map +1 -0
  348. package/dist/utils/output.js +51 -0
  349. package/dist/utils/output.js.map +1 -0
  350. package/dist/utils/rateLimit.d.ts +22 -0
  351. package/dist/utils/rateLimit.d.ts.map +1 -0
  352. package/dist/utils/rateLimit.js +58 -0
  353. package/dist/utils/rateLimit.js.map +1 -0
  354. package/dist/utils/respond.d.ts +19 -0
  355. package/dist/utils/respond.d.ts.map +1 -0
  356. package/dist/utils/respond.js +25 -0
  357. package/dist/utils/respond.js.map +1 -0
  358. package/dist/utils/ui.d.ts +38 -0
  359. package/dist/utils/ui.d.ts.map +1 -0
  360. package/dist/utils/ui.js +126 -0
  361. package/dist/utils/ui.js.map +1 -0
  362. package/dist/wallet/client.d.ts +4 -0
  363. package/dist/wallet/client.d.ts.map +1 -0
  364. package/dist/wallet/client.js +53 -0
  365. package/dist/wallet/client.js.map +1 -0
  366. package/dist/wallet/keystore.d.ts +22 -0
  367. package/dist/wallet/keystore.d.ts.map +1 -0
  368. package/dist/wallet/keystore.js +111 -0
  369. package/dist/wallet/keystore.js.map +1 -0
  370. package/package.json +63 -0
  371. package/skills/echo/SKILL.md +1121 -0
@@ -0,0 +1,77 @@
1
+ /**
2
+ * Jaine (Uniswap V3) Pool ABI - minimal subset for reading pool state
3
+ */
4
+ export declare const POOL_ABI: readonly [{
5
+ readonly type: "function";
6
+ readonly name: "token0";
7
+ readonly stateMutability: "view";
8
+ readonly inputs: readonly [];
9
+ readonly outputs: readonly [{
10
+ readonly name: "";
11
+ readonly type: "address";
12
+ }];
13
+ }, {
14
+ readonly type: "function";
15
+ readonly name: "token1";
16
+ readonly stateMutability: "view";
17
+ readonly inputs: readonly [];
18
+ readonly outputs: readonly [{
19
+ readonly name: "";
20
+ readonly type: "address";
21
+ }];
22
+ }, {
23
+ readonly type: "function";
24
+ readonly name: "fee";
25
+ readonly stateMutability: "view";
26
+ readonly inputs: readonly [];
27
+ readonly outputs: readonly [{
28
+ readonly name: "";
29
+ readonly type: "uint24";
30
+ }];
31
+ }, {
32
+ readonly type: "function";
33
+ readonly name: "liquidity";
34
+ readonly stateMutability: "view";
35
+ readonly inputs: readonly [];
36
+ readonly outputs: readonly [{
37
+ readonly name: "";
38
+ readonly type: "uint128";
39
+ }];
40
+ }, {
41
+ readonly type: "function";
42
+ readonly name: "slot0";
43
+ readonly stateMutability: "view";
44
+ readonly inputs: readonly [];
45
+ readonly outputs: readonly [{
46
+ readonly name: "sqrtPriceX96";
47
+ readonly type: "uint160";
48
+ }, {
49
+ readonly name: "tick";
50
+ readonly type: "int24";
51
+ }, {
52
+ readonly name: "observationIndex";
53
+ readonly type: "uint16";
54
+ }, {
55
+ readonly name: "observationCardinality";
56
+ readonly type: "uint16";
57
+ }, {
58
+ readonly name: "observationCardinalityNext";
59
+ readonly type: "uint16";
60
+ }, {
61
+ readonly name: "feeProtocol";
62
+ readonly type: "uint8";
63
+ }, {
64
+ readonly name: "unlocked";
65
+ readonly type: "bool";
66
+ }];
67
+ }, {
68
+ readonly type: "function";
69
+ readonly name: "tickSpacing";
70
+ readonly stateMutability: "view";
71
+ readonly inputs: readonly [];
72
+ readonly outputs: readonly [{
73
+ readonly name: "";
74
+ readonly type: "int24";
75
+ }];
76
+ }];
77
+ //# sourceMappingURL=pool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pool.d.ts","sourceRoot":"","sources":["../../../src/jaine/abi/pool.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmDX,CAAC"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * Jaine (Uniswap V3) Pool ABI - minimal subset for reading pool state
3
+ */
4
+ export const POOL_ABI = [
5
+ {
6
+ type: "function",
7
+ name: "token0",
8
+ stateMutability: "view",
9
+ inputs: [],
10
+ outputs: [{ name: "", type: "address" }],
11
+ },
12
+ {
13
+ type: "function",
14
+ name: "token1",
15
+ stateMutability: "view",
16
+ inputs: [],
17
+ outputs: [{ name: "", type: "address" }],
18
+ },
19
+ {
20
+ type: "function",
21
+ name: "fee",
22
+ stateMutability: "view",
23
+ inputs: [],
24
+ outputs: [{ name: "", type: "uint24" }],
25
+ },
26
+ {
27
+ type: "function",
28
+ name: "liquidity",
29
+ stateMutability: "view",
30
+ inputs: [],
31
+ outputs: [{ name: "", type: "uint128" }],
32
+ },
33
+ {
34
+ type: "function",
35
+ name: "slot0",
36
+ stateMutability: "view",
37
+ inputs: [],
38
+ outputs: [
39
+ { name: "sqrtPriceX96", type: "uint160" },
40
+ { name: "tick", type: "int24" },
41
+ { name: "observationIndex", type: "uint16" },
42
+ { name: "observationCardinality", type: "uint16" },
43
+ { name: "observationCardinalityNext", type: "uint16" },
44
+ { name: "feeProtocol", type: "uint8" },
45
+ { name: "unlocked", type: "bool" },
46
+ ],
47
+ },
48
+ {
49
+ type: "function",
50
+ name: "tickSpacing",
51
+ stateMutability: "view",
52
+ inputs: [],
53
+ outputs: [{ name: "", type: "int24" }],
54
+ },
55
+ ];
56
+ //# sourceMappingURL=pool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pool.js","sourceRoot":"","sources":["../../../src/jaine/abi/pool.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,QAAQ;QACd,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACzC;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,QAAQ;QACd,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACzC;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,KAAK;QACX,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;KACxC;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,WAAW;QACjB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACzC;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,OAAO;QACb,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE;YACzC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE;YAC/B,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC5C,EAAE,IAAI,EAAE,wBAAwB,EAAE,IAAI,EAAE,QAAQ,EAAE;YAClD,EAAE,IAAI,EAAE,4BAA4B,EAAE,IAAI,EAAE,QAAQ,EAAE;YACtD,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE;YACtC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE;SACnC;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,aAAa;QACnB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;KACvC;CACO,CAAC"}
@@ -0,0 +1,84 @@
1
+ /**
2
+ * Jaine (Uniswap V3) Quoter V1 ABI - for getting swap quotes
3
+ * Note: zer0dexV3Quoter returns single uint256, not tuple like QuoterV2
4
+ */
5
+ export declare const QUOTER_ABI: readonly [{
6
+ readonly type: "function";
7
+ readonly name: "quoteExactInput";
8
+ readonly stateMutability: "nonpayable";
9
+ readonly inputs: readonly [{
10
+ readonly name: "path";
11
+ readonly type: "bytes";
12
+ }, {
13
+ readonly name: "amountIn";
14
+ readonly type: "uint256";
15
+ }];
16
+ readonly outputs: readonly [{
17
+ readonly name: "amountOut";
18
+ readonly type: "uint256";
19
+ }];
20
+ }, {
21
+ readonly type: "function";
22
+ readonly name: "quoteExactInputSingle";
23
+ readonly stateMutability: "nonpayable";
24
+ readonly inputs: readonly [{
25
+ readonly name: "tokenIn";
26
+ readonly type: "address";
27
+ }, {
28
+ readonly name: "tokenOut";
29
+ readonly type: "address";
30
+ }, {
31
+ readonly name: "fee";
32
+ readonly type: "uint24";
33
+ }, {
34
+ readonly name: "amountIn";
35
+ readonly type: "uint256";
36
+ }, {
37
+ readonly name: "sqrtPriceLimitX96";
38
+ readonly type: "uint160";
39
+ }];
40
+ readonly outputs: readonly [{
41
+ readonly name: "amountOut";
42
+ readonly type: "uint256";
43
+ }];
44
+ }, {
45
+ readonly type: "function";
46
+ readonly name: "quoteExactOutput";
47
+ readonly stateMutability: "nonpayable";
48
+ readonly inputs: readonly [{
49
+ readonly name: "path";
50
+ readonly type: "bytes";
51
+ }, {
52
+ readonly name: "amountOut";
53
+ readonly type: "uint256";
54
+ }];
55
+ readonly outputs: readonly [{
56
+ readonly name: "amountIn";
57
+ readonly type: "uint256";
58
+ }];
59
+ }, {
60
+ readonly type: "function";
61
+ readonly name: "quoteExactOutputSingle";
62
+ readonly stateMutability: "nonpayable";
63
+ readonly inputs: readonly [{
64
+ readonly name: "tokenIn";
65
+ readonly type: "address";
66
+ }, {
67
+ readonly name: "tokenOut";
68
+ readonly type: "address";
69
+ }, {
70
+ readonly name: "fee";
71
+ readonly type: "uint24";
72
+ }, {
73
+ readonly name: "amount";
74
+ readonly type: "uint256";
75
+ }, {
76
+ readonly name: "sqrtPriceLimitX96";
77
+ readonly type: "uint160";
78
+ }];
79
+ readonly outputs: readonly [{
80
+ readonly name: "amountIn";
81
+ readonly type: "uint256";
82
+ }];
83
+ }];
84
+ //# sourceMappingURL=quoter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quoter.d.ts","sourceRoot":"","sources":["../../../src/jaine/abi/quoter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+Cb,CAAC"}
@@ -0,0 +1,53 @@
1
+ /**
2
+ * Jaine (Uniswap V3) Quoter V1 ABI - for getting swap quotes
3
+ * Note: zer0dexV3Quoter returns single uint256, not tuple like QuoterV2
4
+ */
5
+ export const QUOTER_ABI = [
6
+ {
7
+ type: "function",
8
+ name: "quoteExactInput",
9
+ stateMutability: "nonpayable",
10
+ inputs: [
11
+ { name: "path", type: "bytes" },
12
+ { name: "amountIn", type: "uint256" },
13
+ ],
14
+ outputs: [{ name: "amountOut", type: "uint256" }],
15
+ },
16
+ {
17
+ type: "function",
18
+ name: "quoteExactInputSingle",
19
+ stateMutability: "nonpayable",
20
+ inputs: [
21
+ { name: "tokenIn", type: "address" },
22
+ { name: "tokenOut", type: "address" },
23
+ { name: "fee", type: "uint24" },
24
+ { name: "amountIn", type: "uint256" },
25
+ { name: "sqrtPriceLimitX96", type: "uint160" },
26
+ ],
27
+ outputs: [{ name: "amountOut", type: "uint256" }],
28
+ },
29
+ {
30
+ type: "function",
31
+ name: "quoteExactOutput",
32
+ stateMutability: "nonpayable",
33
+ inputs: [
34
+ { name: "path", type: "bytes" },
35
+ { name: "amountOut", type: "uint256" },
36
+ ],
37
+ outputs: [{ name: "amountIn", type: "uint256" }],
38
+ },
39
+ {
40
+ type: "function",
41
+ name: "quoteExactOutputSingle",
42
+ stateMutability: "nonpayable",
43
+ inputs: [
44
+ { name: "tokenIn", type: "address" },
45
+ { name: "tokenOut", type: "address" },
46
+ { name: "fee", type: "uint24" },
47
+ { name: "amount", type: "uint256" },
48
+ { name: "sqrtPriceLimitX96", type: "uint160" },
49
+ ],
50
+ outputs: [{ name: "amountIn", type: "uint256" }],
51
+ },
52
+ ];
53
+ //# sourceMappingURL=quoter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quoter.js","sourceRoot":"","sources":["../../../src/jaine/abi/quoter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,iBAAiB;QACvB,eAAe,EAAE,YAAY;QAC7B,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE;YAC/B,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;SACtC;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KAClD;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,uBAAuB;QAC7B,eAAe,EAAE,YAAY;QAC7B,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;YACpC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;YACrC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC/B,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;YACrC,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,EAAE;SAC/C;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KAClD;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,kBAAkB;QACxB,eAAe,EAAE,YAAY;QAC7B,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE;YAC/B,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;SACvC;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACjD;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,wBAAwB;QAC9B,eAAe,EAAE,YAAY;QAC7B,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;YACpC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;YACrC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC/B,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;YACnC,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,EAAE;SAC/C;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACjD;CACO,CAAC"}
@@ -0,0 +1,135 @@
1
+ /**
2
+ * Jaine (Uniswap V3) SwapRouter ABI - for executing swaps
3
+ */
4
+ export declare const ROUTER_ABI: readonly [{
5
+ readonly type: "function";
6
+ readonly name: "exactInput";
7
+ readonly stateMutability: "payable";
8
+ readonly inputs: readonly [{
9
+ readonly name: "params";
10
+ readonly type: "tuple";
11
+ readonly components: readonly [{
12
+ readonly name: "path";
13
+ readonly type: "bytes";
14
+ }, {
15
+ readonly name: "recipient";
16
+ readonly type: "address";
17
+ }, {
18
+ readonly name: "deadline";
19
+ readonly type: "uint256";
20
+ }, {
21
+ readonly name: "amountIn";
22
+ readonly type: "uint256";
23
+ }, {
24
+ readonly name: "amountOutMinimum";
25
+ readonly type: "uint256";
26
+ }];
27
+ }];
28
+ readonly outputs: readonly [{
29
+ readonly name: "amountOut";
30
+ readonly type: "uint256";
31
+ }];
32
+ }, {
33
+ readonly type: "function";
34
+ readonly name: "exactInputSingle";
35
+ readonly stateMutability: "payable";
36
+ readonly inputs: readonly [{
37
+ readonly name: "params";
38
+ readonly type: "tuple";
39
+ readonly components: readonly [{
40
+ readonly name: "tokenIn";
41
+ readonly type: "address";
42
+ }, {
43
+ readonly name: "tokenOut";
44
+ readonly type: "address";
45
+ }, {
46
+ readonly name: "fee";
47
+ readonly type: "uint24";
48
+ }, {
49
+ readonly name: "recipient";
50
+ readonly type: "address";
51
+ }, {
52
+ readonly name: "deadline";
53
+ readonly type: "uint256";
54
+ }, {
55
+ readonly name: "amountIn";
56
+ readonly type: "uint256";
57
+ }, {
58
+ readonly name: "amountOutMinimum";
59
+ readonly type: "uint256";
60
+ }, {
61
+ readonly name: "sqrtPriceLimitX96";
62
+ readonly type: "uint160";
63
+ }];
64
+ }];
65
+ readonly outputs: readonly [{
66
+ readonly name: "amountOut";
67
+ readonly type: "uint256";
68
+ }];
69
+ }, {
70
+ readonly type: "function";
71
+ readonly name: "exactOutput";
72
+ readonly stateMutability: "payable";
73
+ readonly inputs: readonly [{
74
+ readonly name: "params";
75
+ readonly type: "tuple";
76
+ readonly components: readonly [{
77
+ readonly name: "path";
78
+ readonly type: "bytes";
79
+ }, {
80
+ readonly name: "recipient";
81
+ readonly type: "address";
82
+ }, {
83
+ readonly name: "deadline";
84
+ readonly type: "uint256";
85
+ }, {
86
+ readonly name: "amountOut";
87
+ readonly type: "uint256";
88
+ }, {
89
+ readonly name: "amountInMaximum";
90
+ readonly type: "uint256";
91
+ }];
92
+ }];
93
+ readonly outputs: readonly [{
94
+ readonly name: "amountIn";
95
+ readonly type: "uint256";
96
+ }];
97
+ }, {
98
+ readonly type: "function";
99
+ readonly name: "exactOutputSingle";
100
+ readonly stateMutability: "payable";
101
+ readonly inputs: readonly [{
102
+ readonly name: "params";
103
+ readonly type: "tuple";
104
+ readonly components: readonly [{
105
+ readonly name: "tokenIn";
106
+ readonly type: "address";
107
+ }, {
108
+ readonly name: "tokenOut";
109
+ readonly type: "address";
110
+ }, {
111
+ readonly name: "fee";
112
+ readonly type: "uint24";
113
+ }, {
114
+ readonly name: "recipient";
115
+ readonly type: "address";
116
+ }, {
117
+ readonly name: "deadline";
118
+ readonly type: "uint256";
119
+ }, {
120
+ readonly name: "amountOut";
121
+ readonly type: "uint256";
122
+ }, {
123
+ readonly name: "amountInMaximum";
124
+ readonly type: "uint256";
125
+ }, {
126
+ readonly name: "sqrtPriceLimitX96";
127
+ readonly type: "uint160";
128
+ }];
129
+ }];
130
+ readonly outputs: readonly [{
131
+ readonly name: "amountIn";
132
+ readonly type: "uint256";
133
+ }];
134
+ }];
135
+ //# sourceMappingURL=router.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../src/jaine/abi/router.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmFb,CAAC"}
@@ -0,0 +1,88 @@
1
+ /**
2
+ * Jaine (Uniswap V3) SwapRouter ABI - for executing swaps
3
+ */
4
+ export const ROUTER_ABI = [
5
+ {
6
+ type: "function",
7
+ name: "exactInput",
8
+ stateMutability: "payable",
9
+ inputs: [
10
+ {
11
+ name: "params",
12
+ type: "tuple",
13
+ components: [
14
+ { name: "path", type: "bytes" },
15
+ { name: "recipient", type: "address" },
16
+ { name: "deadline", type: "uint256" },
17
+ { name: "amountIn", type: "uint256" },
18
+ { name: "amountOutMinimum", type: "uint256" },
19
+ ],
20
+ },
21
+ ],
22
+ outputs: [{ name: "amountOut", type: "uint256" }],
23
+ },
24
+ {
25
+ type: "function",
26
+ name: "exactInputSingle",
27
+ stateMutability: "payable",
28
+ inputs: [
29
+ {
30
+ name: "params",
31
+ type: "tuple",
32
+ components: [
33
+ { name: "tokenIn", type: "address" },
34
+ { name: "tokenOut", type: "address" },
35
+ { name: "fee", type: "uint24" },
36
+ { name: "recipient", type: "address" },
37
+ { name: "deadline", type: "uint256" },
38
+ { name: "amountIn", type: "uint256" },
39
+ { name: "amountOutMinimum", type: "uint256" },
40
+ { name: "sqrtPriceLimitX96", type: "uint160" },
41
+ ],
42
+ },
43
+ ],
44
+ outputs: [{ name: "amountOut", type: "uint256" }],
45
+ },
46
+ {
47
+ type: "function",
48
+ name: "exactOutput",
49
+ stateMutability: "payable",
50
+ inputs: [
51
+ {
52
+ name: "params",
53
+ type: "tuple",
54
+ components: [
55
+ { name: "path", type: "bytes" },
56
+ { name: "recipient", type: "address" },
57
+ { name: "deadline", type: "uint256" },
58
+ { name: "amountOut", type: "uint256" },
59
+ { name: "amountInMaximum", type: "uint256" },
60
+ ],
61
+ },
62
+ ],
63
+ outputs: [{ name: "amountIn", type: "uint256" }],
64
+ },
65
+ {
66
+ type: "function",
67
+ name: "exactOutputSingle",
68
+ stateMutability: "payable",
69
+ inputs: [
70
+ {
71
+ name: "params",
72
+ type: "tuple",
73
+ components: [
74
+ { name: "tokenIn", type: "address" },
75
+ { name: "tokenOut", type: "address" },
76
+ { name: "fee", type: "uint24" },
77
+ { name: "recipient", type: "address" },
78
+ { name: "deadline", type: "uint256" },
79
+ { name: "amountOut", type: "uint256" },
80
+ { name: "amountInMaximum", type: "uint256" },
81
+ { name: "sqrtPriceLimitX96", type: "uint160" },
82
+ ],
83
+ },
84
+ ],
85
+ outputs: [{ name: "amountIn", type: "uint256" }],
86
+ },
87
+ ];
88
+ //# sourceMappingURL=router.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"router.js","sourceRoot":"","sources":["../../../src/jaine/abi/router.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Wrapped 0G (W0G) ABI - WETH9-style wrapper for native 0G token
3
+ */
4
+ export declare const W0G_ABI: readonly [{
5
+ readonly type: "function";
6
+ readonly name: "deposit";
7
+ readonly stateMutability: "payable";
8
+ readonly inputs: readonly [];
9
+ readonly outputs: readonly [];
10
+ }, {
11
+ readonly type: "function";
12
+ readonly name: "withdraw";
13
+ readonly stateMutability: "nonpayable";
14
+ readonly inputs: readonly [{
15
+ readonly name: "wad";
16
+ readonly type: "uint256";
17
+ }];
18
+ readonly outputs: readonly [];
19
+ }, {
20
+ readonly type: "function";
21
+ readonly name: "balanceOf";
22
+ readonly stateMutability: "view";
23
+ readonly inputs: readonly [{
24
+ readonly name: "account";
25
+ readonly type: "address";
26
+ }];
27
+ readonly outputs: readonly [{
28
+ readonly name: "";
29
+ readonly type: "uint256";
30
+ }];
31
+ }, {
32
+ readonly type: "function";
33
+ readonly name: "totalSupply";
34
+ readonly stateMutability: "view";
35
+ readonly inputs: readonly [];
36
+ readonly outputs: readonly [{
37
+ readonly name: "";
38
+ readonly type: "uint256";
39
+ }];
40
+ }];
41
+ //# sourceMappingURL=w0g.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"w0g.d.ts","sourceRoot":"","sources":["../../../src/jaine/abi/w0g.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6BV,CAAC"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Wrapped 0G (W0G) ABI - WETH9-style wrapper for native 0G token
3
+ */
4
+ export const W0G_ABI = [
5
+ {
6
+ type: "function",
7
+ name: "deposit",
8
+ stateMutability: "payable",
9
+ inputs: [],
10
+ outputs: [],
11
+ },
12
+ {
13
+ type: "function",
14
+ name: "withdraw",
15
+ stateMutability: "nonpayable",
16
+ inputs: [{ name: "wad", type: "uint256" }],
17
+ outputs: [],
18
+ },
19
+ {
20
+ type: "function",
21
+ name: "balanceOf",
22
+ stateMutability: "view",
23
+ inputs: [{ name: "account", type: "address" }],
24
+ outputs: [{ name: "", type: "uint256" }],
25
+ },
26
+ {
27
+ type: "function",
28
+ name: "totalSupply",
29
+ stateMutability: "view",
30
+ inputs: [],
31
+ outputs: [{ name: "", type: "uint256" }],
32
+ },
33
+ ];
34
+ //# sourceMappingURL=w0g.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"w0g.js","sourceRoot":"","sources":["../../../src/jaine/abi/w0g.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,SAAS;QACf,eAAe,EAAE,SAAS;QAC1B,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,EAAE;KACZ;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,YAAY;QAC7B,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC1C,OAAO,EAAE,EAAE;KACZ;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,WAAW;QACjB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC9C,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACzC;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,aAAa;QACnB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACzC;CACO,CAAC"}
@@ -0,0 +1,48 @@
1
+ import type { Address, Hex } from "viem";
2
+ /**
3
+ * Allowed spenders - only these addresses can be approved
4
+ */
5
+ export declare function getAllowedSpenders(): Record<string, Address>;
6
+ export type SpenderType = "router" | "nft";
7
+ /**
8
+ * Validate that spender is in the allowlist
9
+ */
10
+ export declare function validateSpender(spender: Address): void;
11
+ /**
12
+ * Get spender address by type
13
+ */
14
+ export declare function getSpenderAddress(spenderType: SpenderType): Address;
15
+ /**
16
+ * Get current allowance for a token
17
+ */
18
+ export declare function getAllowance(token: Address, owner: Address, spender: Address): Promise<bigint>;
19
+ /**
20
+ * Get allowances for both spenders
21
+ */
22
+ export declare function getAllAllowances(token: Address, owner: Address): Promise<Record<SpenderType, bigint>>;
23
+ export interface ApproveResult {
24
+ txHash: Hex;
25
+ resetTxHash?: Hex;
26
+ }
27
+ /**
28
+ * Safe approve with USDT-style reset handling
29
+ *
30
+ * Some tokens (like USDT) require setting allowance to 0 before
31
+ * setting a new non-zero allowance if current allowance is non-zero.
32
+ *
33
+ * @param token - Token address
34
+ * @param spender - Spender address (must be in allowlist)
35
+ * @param amount - Amount to approve (use maxUint256 for unlimited)
36
+ * @param privateKey - Private key for signing
37
+ * @returns Transaction hash(es)
38
+ */
39
+ export declare function safeApprove(token: Address, spender: Address, amount: bigint, privateKey: Hex): Promise<ApproveResult>;
40
+ /**
41
+ * Revoke approval (set to 0)
42
+ */
43
+ export declare function revokeApproval(token: Address, spender: Address, privateKey: Hex): Promise<Hex>;
44
+ /**
45
+ * Ensure allowance is sufficient, approve if needed
46
+ */
47
+ export declare function ensureAllowance(token: Address, spender: Address, requiredAmount: bigint, privateKey: Hex, approveExact?: boolean): Promise<ApproveResult | null>;
48
+ //# sourceMappingURL=allowance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"allowance.d.ts","sourceRoot":"","sources":["../../src/jaine/allowance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAUzC;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAM5D;AAED,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,KAAK,CAAC;AAE3C;;GAEG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAatD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAGnE;AAED;;GAEG;AACH,wBAAsB,YAAY,CAChC,KAAK,EAAE,OAAO,EACd,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,MAAM,CAAC,CAWjB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,OAAO,EACd,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAuBtC;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,GAAG,CAAC;IACZ,WAAW,CAAC,EAAE,GAAG,CAAC;CACnB;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,WAAW,CAC/B,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,GAAG,GACd,OAAO,CAAC,aAAa,CAAC,CA0ExB;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,GAAG,GACd,OAAO,CAAC,GAAG,CAAC,CAoCd;AAED;;GAEG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,MAAM,EACtB,UAAU,EAAE,GAAG,EACf,YAAY,GAAE,OAAe,GAC5B,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAU/B"}