@andrewkimjoseph/celina-sdk 0.9.7 → 0.9.9

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 (365) hide show
  1. package/build/analytics/mcp-tool-events.js +2 -0
  2. package/build/analytics/mcp-tool-events.js.map +1 -1
  3. package/build/index.d.ts +1 -1
  4. package/build/services/gooddollar.service.d.ts +16 -2
  5. package/build/services/gooddollar.service.js +54 -31
  6. package/build/services/gooddollar.service.js.map +1 -1
  7. package/build/src/a2a/agent-card.d.ts +37 -0
  8. package/build/src/a2a/agent-card.js +46 -0
  9. package/build/src/a2a/agent-card.js.map +1 -0
  10. package/build/src/a2a/index.d.ts +2 -0
  11. package/build/src/a2a/index.js +3 -0
  12. package/build/src/a2a/index.js.map +1 -0
  13. package/build/src/a2a/skills.d.ts +18 -0
  14. package/build/src/a2a/skills.js +101 -0
  15. package/build/src/a2a/skills.js.map +1 -0
  16. package/build/src/abis/aave-pool.d.ts +37 -0
  17. package/build/src/abis/aave-pool.js +26 -0
  18. package/build/src/abis/aave-pool.js.map +1 -0
  19. package/build/src/abis/accounts.d.ts +13 -0
  20. package/build/src/abis/accounts.js +10 -0
  21. package/build/src/abis/accounts.js.map +1 -0
  22. package/build/src/abis/election.d.ts +124 -0
  23. package/build/src/abis/election.js +88 -0
  24. package/build/src/abis/election.js.map +1 -0
  25. package/build/src/abis/gooddollar-broker.d.ts +77 -0
  26. package/build/src/abis/gooddollar-broker.js +44 -0
  27. package/build/src/abis/gooddollar-broker.js.map +1 -0
  28. package/build/src/abis/gooddollar-identity.d.ts +85 -0
  29. package/build/src/abis/gooddollar-identity.js +52 -0
  30. package/build/src/abis/gooddollar-identity.js.map +1 -0
  31. package/build/src/abis/governance.d.ts +86 -0
  32. package/build/src/abis/governance.js +68 -0
  33. package/build/src/abis/governance.js.map +1 -0
  34. package/build/src/abis/locked-gold.d.ts +10 -0
  35. package/build/src/abis/locked-gold.js +10 -0
  36. package/build/src/abis/locked-gold.js.map +1 -0
  37. package/build/src/abis/nft.d.ts +107 -0
  38. package/build/src/abis/nft.js +75 -0
  39. package/build/src/abis/nft.js.map +1 -0
  40. package/build/src/abis/permit2.d.ts +43 -0
  41. package/build/src/abis/permit2.js +30 -0
  42. package/build/src/abis/permit2.js.map +1 -0
  43. package/build/src/abis/self-registry.d.ts +194 -0
  44. package/build/src/abis/self-registry.js +120 -0
  45. package/build/src/abis/self-registry.js.map +1 -0
  46. package/build/src/abis/ubi-scheme.d.ts +91 -0
  47. package/build/src/abis/ubi-scheme.js +66 -0
  48. package/build/src/abis/ubi-scheme.js.map +1 -0
  49. package/build/src/abis/uniswap-state-view.d.ts +34 -0
  50. package/build/src/abis/uniswap-state-view.js +22 -0
  51. package/build/src/abis/uniswap-state-view.js.map +1 -0
  52. package/build/src/abis/uniswap-v4-quoter.d.ts +86 -0
  53. package/build/src/abis/uniswap-v4-quoter.js +64 -0
  54. package/build/src/abis/uniswap-v4-quoter.js.map +1 -0
  55. package/build/src/abis/universal-router.d.ts +16 -0
  56. package/build/src/abis/universal-router.js +14 -0
  57. package/build/src/abis/universal-router.js.map +1 -0
  58. package/build/src/abis/validators-minimal.d.ts +65 -0
  59. package/build/src/abis/validators-minimal.js +39 -0
  60. package/build/src/abis/validators-minimal.js.map +1 -0
  61. package/build/src/analytics/amplitude.d.ts +11 -0
  62. package/build/src/analytics/amplitude.js +76 -0
  63. package/build/src/analytics/amplitude.js.map +1 -0
  64. package/build/src/analytics/config.d.ts +7 -0
  65. package/build/src/analytics/config.js +28 -0
  66. package/build/src/analytics/config.js.map +1 -0
  67. package/build/src/analytics/consumer-package.d.ts +9 -0
  68. package/build/src/analytics/consumer-package.js +143 -0
  69. package/build/src/analytics/consumer-package.js.map +1 -0
  70. package/build/src/analytics/mcp-tool-events.d.ts +5 -0
  71. package/build/src/analytics/mcp-tool-events.js +53 -0
  72. package/build/src/analytics/mcp-tool-events.js.map +1 -0
  73. package/build/src/analytics/wallet-context.d.ts +11 -0
  74. package/build/src/analytics/wallet-context.js +81 -0
  75. package/build/src/analytics/wallet-context.js.map +1 -0
  76. package/build/src/analytics/wallet-extract.d.ts +9 -0
  77. package/build/src/analytics/wallet-extract.js +21 -0
  78. package/build/src/analytics/wallet-extract.js.map +1 -0
  79. package/build/src/analytics/wrap-service.d.ts +5 -0
  80. package/build/src/analytics/wrap-service.js +38 -0
  81. package/build/src/analytics/wrap-service.js.map +1 -0
  82. package/build/src/clients/celo-client.d.ts +17 -0
  83. package/build/src/clients/celo-client.js +28 -0
  84. package/build/src/clients/celo-client.js.map +1 -0
  85. package/build/src/clients/ens-client.d.ts +17 -0
  86. package/build/src/clients/ens-client.js +30 -0
  87. package/build/src/clients/ens-client.js.map +1 -0
  88. package/build/src/clients/mento-sdk.d.ts +2 -0
  89. package/build/src/clients/mento-sdk.js +9 -0
  90. package/build/src/clients/mento-sdk.js.map +1 -0
  91. package/build/src/clients/self-api.d.ts +82 -0
  92. package/build/src/clients/self-api.js +242 -0
  93. package/build/src/clients/self-api.js.map +1 -0
  94. package/build/src/clients/uniswap-sdk.d.ts +4 -0
  95. package/build/src/clients/uniswap-sdk.js +13 -0
  96. package/build/src/clients/uniswap-sdk.js.map +1 -0
  97. package/build/src/config/aave.d.ts +17 -0
  98. package/build/src/config/aave.js +77 -0
  99. package/build/src/config/aave.js.map +1 -0
  100. package/build/src/config/celina-tag.d.ts +4 -0
  101. package/build/src/config/celina-tag.js +13 -0
  102. package/build/src/config/celina-tag.js.map +1 -0
  103. package/build/src/config/celo-core-contracts.d.ts +8 -0
  104. package/build/src/config/celo-core-contracts.js +9 -0
  105. package/build/src/config/celo-core-contracts.js.map +1 -0
  106. package/build/src/config/chains.d.ts +937 -0
  107. package/build/src/config/chains.js +319 -0
  108. package/build/src/config/chains.js.map +1 -0
  109. package/build/src/config/gooddollar.d.ts +16 -0
  110. package/build/src/config/gooddollar.js +24 -0
  111. package/build/src/config/gooddollar.js.map +1 -0
  112. package/build/src/config/sdk-config.d.ts +33 -0
  113. package/build/src/config/sdk-config.js +31 -0
  114. package/build/src/config/sdk-config.js.map +1 -0
  115. package/build/src/config/self.d.ts +22 -0
  116. package/build/src/config/self.js +27 -0
  117. package/build/src/config/self.js.map +1 -0
  118. package/build/src/config/uniswap.d.ts +42 -0
  119. package/build/src/config/uniswap.js +76 -0
  120. package/build/src/config/uniswap.js.map +1 -0
  121. package/build/src/index.d.ts +90 -0
  122. package/build/src/index.js +65 -0
  123. package/build/src/index.js.map +1 -0
  124. package/build/src/oasf/index.d.ts +2 -0
  125. package/build/src/oasf/index.js +3 -0
  126. package/build/src/oasf/index.js.map +1 -0
  127. package/build/src/oasf/record.d.ts +39 -0
  128. package/build/src/oasf/record.js +35 -0
  129. package/build/src/oasf/record.js.map +1 -0
  130. package/build/src/oasf/taxonomy.d.ts +19 -0
  131. package/build/src/oasf/taxonomy.js +46 -0
  132. package/build/src/oasf/taxonomy.js.map +1 -0
  133. package/build/src/services/aave.service.d.ts +58 -0
  134. package/build/src/services/aave.service.js +210 -0
  135. package/build/src/services/aave.service.js.map +1 -0
  136. package/build/src/services/account.service.d.ts +22 -0
  137. package/build/src/services/account.service.js +29 -0
  138. package/build/src/services/account.service.js.map +1 -0
  139. package/build/src/services/blockchain.service.d.ts +107 -0
  140. package/build/src/services/blockchain.service.js +151 -0
  141. package/build/src/services/blockchain.service.js.map +1 -0
  142. package/build/src/services/contract.service.d.ts +78 -0
  143. package/build/src/services/contract.service.js +117 -0
  144. package/build/src/services/contract.service.js.map +1 -0
  145. package/build/src/services/ens.service.d.ts +44 -0
  146. package/build/src/services/ens.service.js +92 -0
  147. package/build/src/services/ens.service.js.map +1 -0
  148. package/build/src/services/gooddollar.service.d.ts +183 -0
  149. package/build/src/services/gooddollar.service.js +675 -0
  150. package/build/src/services/gooddollar.service.js.map +1 -0
  151. package/build/src/services/governance.service.d.ts +96 -0
  152. package/build/src/services/governance.service.js +255 -0
  153. package/build/src/services/governance.service.js.map +1 -0
  154. package/build/src/services/mento-fx.service.d.ts +80 -0
  155. package/build/src/services/mento-fx.service.js +319 -0
  156. package/build/src/services/mento-fx.service.js.map +1 -0
  157. package/build/src/services/nft.service.d.ts +58 -0
  158. package/build/src/services/nft.service.js +222 -0
  159. package/build/src/services/nft.service.js.map +1 -0
  160. package/build/src/services/self-session-store.d.ts +19 -0
  161. package/build/src/services/self-session-store.js +28 -0
  162. package/build/src/services/self-session-store.js.map +1 -0
  163. package/build/src/services/self.service.d.ts +241 -0
  164. package/build/src/services/self.service.js +699 -0
  165. package/build/src/services/self.service.js.map +1 -0
  166. package/build/src/services/staking.service.d.ts +140 -0
  167. package/build/src/services/staking.service.js +444 -0
  168. package/build/src/services/staking.service.js.map +1 -0
  169. package/build/src/services/token.service.d.ts +110 -0
  170. package/build/src/services/token.service.js +189 -0
  171. package/build/src/services/token.service.js.map +1 -0
  172. package/build/src/services/transaction.service.d.ts +68 -0
  173. package/build/src/services/transaction.service.js +198 -0
  174. package/build/src/services/transaction.service.js.map +1 -0
  175. package/build/src/services/uniswap-path-router.d.ts +40 -0
  176. package/build/src/services/uniswap-path-router.js +168 -0
  177. package/build/src/services/uniswap-path-router.js.map +1 -0
  178. package/build/src/services/uniswap-pool-discovery.d.ts +55 -0
  179. package/build/src/services/uniswap-pool-discovery.js +198 -0
  180. package/build/src/services/uniswap-pool-discovery.js.map +1 -0
  181. package/build/src/services/uniswap.service.d.ts +82 -0
  182. package/build/src/services/uniswap.service.js +352 -0
  183. package/build/src/services/uniswap.service.js.map +1 -0
  184. package/build/src/simulation/index.d.ts +5 -0
  185. package/build/src/simulation/index.js +2 -0
  186. package/build/src/simulation/index.js.map +1 -0
  187. package/build/src/simulation/simulate-prepared-step.d.ts +17 -0
  188. package/build/src/simulation/simulate-prepared-step.js +42 -0
  189. package/build/src/simulation/simulate-prepared-step.js.map +1 -0
  190. package/build/src/tools/catalog.d.ts +11 -0
  191. package/build/src/tools/catalog.js +43 -0
  192. package/build/src/tools/catalog.js.map +1 -0
  193. package/build/src/tools/domains/aave.d.ts +2 -0
  194. package/build/src/tools/domains/aave.js +115 -0
  195. package/build/src/tools/domains/aave.js.map +1 -0
  196. package/build/src/tools/domains/blockchain.d.ts +2 -0
  197. package/build/src/tools/domains/blockchain.js +86 -0
  198. package/build/src/tools/domains/blockchain.js.map +1 -0
  199. package/build/src/tools/domains/browser.d.ts +2 -0
  200. package/build/src/tools/domains/browser.js +45 -0
  201. package/build/src/tools/domains/browser.js.map +1 -0
  202. package/build/src/tools/domains/contract.d.ts +2 -0
  203. package/build/src/tools/domains/contract.js +67 -0
  204. package/build/src/tools/domains/contract.js.map +1 -0
  205. package/build/src/tools/domains/ens.d.ts +2 -0
  206. package/build/src/tools/domains/ens.js +16 -0
  207. package/build/src/tools/domains/ens.js.map +1 -0
  208. package/build/src/tools/domains/gooddollar.d.ts +2 -0
  209. package/build/src/tools/domains/gooddollar.js +171 -0
  210. package/build/src/tools/domains/gooddollar.js.map +1 -0
  211. package/build/src/tools/domains/governance.d.ts +2 -0
  212. package/build/src/tools/domains/governance.js +41 -0
  213. package/build/src/tools/domains/governance.js.map +1 -0
  214. package/build/src/tools/domains/index.d.ts +1 -0
  215. package/build/src/tools/domains/index.js +31 -0
  216. package/build/src/tools/domains/index.js.map +1 -0
  217. package/build/src/tools/domains/mento-fx.d.ts +2 -0
  218. package/build/src/tools/domains/mento-fx.js +67 -0
  219. package/build/src/tools/domains/mento-fx.js.map +1 -0
  220. package/build/src/tools/domains/nft.d.ts +2 -0
  221. package/build/src/tools/domains/nft.js +38 -0
  222. package/build/src/tools/domains/nft.js.map +1 -0
  223. package/build/src/tools/domains/self.d.ts +2 -0
  224. package/build/src/tools/domains/self.js +187 -0
  225. package/build/src/tools/domains/self.js.map +1 -0
  226. package/build/src/tools/domains/staking.d.ts +2 -0
  227. package/build/src/tools/domains/staking.js +74 -0
  228. package/build/src/tools/domains/staking.js.map +1 -0
  229. package/build/src/tools/domains/token.d.ts +2 -0
  230. package/build/src/tools/domains/token.js +74 -0
  231. package/build/src/tools/domains/token.js.map +1 -0
  232. package/build/src/tools/domains/transaction.d.ts +2 -0
  233. package/build/src/tools/domains/transaction.js +120 -0
  234. package/build/src/tools/domains/transaction.js.map +1 -0
  235. package/build/src/tools/domains/uniswap.d.ts +2 -0
  236. package/build/src/tools/domains/uniswap.js +67 -0
  237. package/build/src/tools/domains/uniswap.js.map +1 -0
  238. package/build/src/tools/filter.d.ts +2 -0
  239. package/build/src/tools/filter.js +50 -0
  240. package/build/src/tools/filter.js.map +1 -0
  241. package/build/src/tools/index.d.ts +7 -0
  242. package/build/src/tools/index.js +7 -0
  243. package/build/src/tools/index.js.map +1 -0
  244. package/build/src/tools/schemas/common.d.ts +165 -0
  245. package/build/src/tools/schemas/common.js +207 -0
  246. package/build/src/tools/schemas/common.js.map +1 -0
  247. package/build/src/tools/schemas/wallet-params.d.ts +9 -0
  248. package/build/src/tools/schemas/wallet-params.js +52 -0
  249. package/build/src/tools/schemas/wallet-params.js.map +1 -0
  250. package/build/src/tools/swap-routing.d.ts +25 -0
  251. package/build/src/tools/swap-routing.js +174 -0
  252. package/build/src/tools/swap-routing.js.map +1 -0
  253. package/build/src/tools/types.d.ts +124 -0
  254. package/build/src/tools/types.js +2 -0
  255. package/build/src/tools/types.js.map +1 -0
  256. package/build/src/tools/utils/normalize-token.d.ts +2 -0
  257. package/build/src/tools/utils/normalize-token.js +12 -0
  258. package/build/src/tools/utils/normalize-token.js.map +1 -0
  259. package/build/src/tools/utils/wallet.d.ts +4 -0
  260. package/build/src/tools/utils/wallet.js +8 -0
  261. package/build/src/tools/utils/wallet.js.map +1 -0
  262. package/build/src/tools/website-sync.d.ts +28 -0
  263. package/build/src/tools/website-sync.js +165 -0
  264. package/build/src/tools/website-sync.js.map +1 -0
  265. package/build/src/types/prepared.d.ts +28 -0
  266. package/build/src/types/prepared.js +12 -0
  267. package/build/src/types/prepared.js.map +1 -0
  268. package/build/src/utils/celo-format.d.ts +6 -0
  269. package/build/src/utils/celo-format.js +17 -0
  270. package/build/src/utils/celo-format.js.map +1 -0
  271. package/build/src/utils/erc20-allowance-storage.d.ts +20 -0
  272. package/build/src/utils/erc20-allowance-storage.js +64 -0
  273. package/build/src/utils/erc20-allowance-storage.js.map +1 -0
  274. package/build/src/utils/format-date.d.ts +2 -0
  275. package/build/src/utils/format-date.js +13 -0
  276. package/build/src/utils/format-date.js.map +1 -0
  277. package/build/src/utils/format-duration.d.ts +2 -0
  278. package/build/src/utils/format-duration.js +17 -0
  279. package/build/src/utils/format-duration.js.map +1 -0
  280. package/build/src/utils/format-unix-datetime.d.ts +4 -0
  281. package/build/src/utils/format-unix-datetime.js +18 -0
  282. package/build/src/utils/format-unix-datetime.js.map +1 -0
  283. package/build/src/utils/gooddollar-ubi-period.d.ts +23 -0
  284. package/build/src/utils/gooddollar-ubi-period.js +23 -0
  285. package/build/src/utils/gooddollar-ubi-period.js.map +1 -0
  286. package/build/src/utils/normalize-address.d.ts +7 -0
  287. package/build/src/utils/normalize-address.js +16 -0
  288. package/build/src/utils/normalize-address.js.map +1 -0
  289. package/build/src/utils/self-format.d.ts +28 -0
  290. package/build/src/utils/self-format.js +79 -0
  291. package/build/src/utils/self-format.js.map +1 -0
  292. package/build/src/utils/self-signing.d.ts +4 -0
  293. package/build/src/utils/self-signing.js +38 -0
  294. package/build/src/utils/self-signing.js.map +1 -0
  295. package/build/src/utils/transaction-errors.d.ts +3 -0
  296. package/build/src/utils/transaction-errors.js +17 -0
  297. package/build/src/utils/transaction-errors.js.map +1 -0
  298. package/build/tests/catalog/domains/blockchain.d.ts +2 -0
  299. package/build/tests/catalog/domains/blockchain.js +127 -0
  300. package/build/tests/catalog/domains/blockchain.js.map +1 -0
  301. package/build/tests/catalog/domains/chain-ext.d.ts +5 -0
  302. package/build/tests/catalog/domains/chain-ext.js +207 -0
  303. package/build/tests/catalog/domains/chain-ext.js.map +1 -0
  304. package/build/tests/catalog/domains/defi.d.ts +6 -0
  305. package/build/tests/catalog/domains/defi.js +581 -0
  306. package/build/tests/catalog/domains/defi.js.map +1 -0
  307. package/build/tests/catalog/domains/self.d.ts +2 -0
  308. package/build/tests/catalog/domains/self.js +208 -0
  309. package/build/tests/catalog/domains/self.js.map +1 -0
  310. package/build/tests/catalog/domains/token.d.ts +2 -0
  311. package/build/tests/catalog/domains/token.js +70 -0
  312. package/build/tests/catalog/domains/token.js.map +1 -0
  313. package/build/tests/catalog/domains/transaction.d.ts +2 -0
  314. package/build/tests/catalog/domains/transaction.js +96 -0
  315. package/build/tests/catalog/domains/transaction.js.map +1 -0
  316. package/build/tests/catalog/index.d.ts +2 -0
  317. package/build/tests/catalog/index.js +2 -0
  318. package/build/tests/catalog/index.js.map +1 -0
  319. package/build/tests/catalog/operations.d.ts +12 -0
  320. package/build/tests/catalog/operations.js +29 -0
  321. package/build/tests/catalog/operations.js.map +1 -0
  322. package/build/tests/catalog/types.d.ts +24 -0
  323. package/build/tests/catalog/types.js +2 -0
  324. package/build/tests/catalog/types.js.map +1 -0
  325. package/build/tests/fixtures/mainnet.d.ts +54 -0
  326. package/build/tests/fixtures/mainnet.js +53 -0
  327. package/build/tests/fixtures/mainnet.js.map +1 -0
  328. package/build/tests/helpers/assert.d.ts +4 -0
  329. package/build/tests/helpers/assert.js +24 -0
  330. package/build/tests/helpers/assert.js.map +1 -0
  331. package/build/tests/helpers/env.d.ts +11 -0
  332. package/build/tests/helpers/env.js +28 -0
  333. package/build/tests/helpers/env.js.map +1 -0
  334. package/build/tests/helpers/gating.d.ts +3 -0
  335. package/build/tests/helpers/gating.js +23 -0
  336. package/build/tests/helpers/gating.js.map +1 -0
  337. package/build/tests/testing-entry.d.ts +6 -0
  338. package/build/tests/testing-entry.js +6 -0
  339. package/build/tests/testing-entry.js.map +1 -0
  340. package/build/tools/domains/browser.js +4 -1
  341. package/build/tools/domains/browser.js.map +1 -1
  342. package/build/tools/domains/gooddollar.js +11 -7
  343. package/build/tools/domains/gooddollar.js.map +1 -1
  344. package/build/tools/schemas/common.d.ts +7 -0
  345. package/build/tools/schemas/common.js +9 -1
  346. package/build/tools/schemas/common.js.map +1 -1
  347. package/build/tools/swap-routing.d.ts +1 -0
  348. package/build/tools/swap-routing.js +2 -1
  349. package/build/tools/swap-routing.js.map +1 -1
  350. package/package.json +5 -9
  351. package/tests/README.md +0 -78
  352. package/tests/catalog/domains/blockchain.ts +0 -133
  353. package/tests/catalog/domains/chain-ext.ts +0 -219
  354. package/tests/catalog/domains/defi.ts +0 -532
  355. package/tests/catalog/domains/self.ts +0 -220
  356. package/tests/catalog/domains/token.ts +0 -74
  357. package/tests/catalog/domains/transaction.ts +0 -111
  358. package/tests/catalog/index.ts +0 -7
  359. package/tests/catalog/operations.ts +0 -53
  360. package/tests/catalog/types.ts +0 -27
  361. package/tests/fixtures/mainnet.ts +0 -93
  362. package/tests/helpers/assert.ts +0 -30
  363. package/tests/helpers/env.ts +0 -38
  364. package/tests/helpers/gating.ts +0 -36
  365. package/tests/testing-entry.ts +0 -27
@@ -0,0 +1,242 @@
1
+ import { SELF_API_BASE, SELF_API_NETWORK, SELF_CHAIN_ID, } from "../config/self.js";
2
+ const DEFAULT_POLL_INTERVAL_MS = 5000;
3
+ const DEFAULT_TIMEOUT_MS = 30 * 60 * 1000;
4
+ export class SelfApiError extends Error {
5
+ constructor(message) {
6
+ super(message);
7
+ this.name = "SelfApiError";
8
+ }
9
+ }
10
+ export class SelfExpiredSessionError extends Error {
11
+ constructor(message = "Session expired. Start a new registration flow.") {
12
+ super(message);
13
+ this.name = "SelfExpiredSessionError";
14
+ }
15
+ }
16
+ function resolveApiBase(apiBase) {
17
+ return (apiBase ?? process.env.SELF_AGENT_API_BASE ?? SELF_API_BASE).replace(/\/+$/, "");
18
+ }
19
+ function sleep(ms) {
20
+ return new Promise((resolve) => setTimeout(resolve, ms));
21
+ }
22
+ async function apiFetch(url, init) {
23
+ const res = await fetch(url, init);
24
+ const body = (await res.json());
25
+ if (!res.ok) {
26
+ const errorMsg = typeof body.error === "string" ? body.error : `HTTP ${res.status}`;
27
+ throw new SelfApiError(errorMsg);
28
+ }
29
+ return body;
30
+ }
31
+ function sessionAuthHeaders(sessionToken) {
32
+ return { Authorization: `Bearer ${sessionToken}` };
33
+ }
34
+ async function fetchSessionStatus(apiBase, path, sessionToken) {
35
+ return apiFetch(`${apiBase}${path}?token=${encodeURIComponent(sessionToken)}`, { headers: sessionAuthHeaders(sessionToken) });
36
+ }
37
+ function handleSessionStatusError(error, expiredMessage) {
38
+ if (error instanceof SelfApiError &&
39
+ error.message.toLowerCase().includes("expired")) {
40
+ throw new SelfExpiredSessionError(expiredMessage);
41
+ }
42
+ throw error;
43
+ }
44
+ function optionalScanUrl(data) {
45
+ return typeof data.scanUrl === "string" ? data.scanUrl : undefined;
46
+ }
47
+ function buildRegistrationSession(data, apiBase) {
48
+ let currentToken = String(data.sessionToken);
49
+ return {
50
+ sessionToken: currentToken,
51
+ stage: String(data.stage),
52
+ deepLink: String(data.deepLink),
53
+ scanUrl: optionalScanUrl(data),
54
+ agentAddress: String(data.agentAddress),
55
+ expiresAt: String(data.expiresAt),
56
+ timeRemainingMs: typeof data.timeRemainingMs === "number" ? data.timeRemainingMs : undefined,
57
+ humanInstructions: Array.isArray(data.humanInstructions)
58
+ ? data.humanInstructions.map(String)
59
+ : [],
60
+ async waitForCompletion(opts) {
61
+ const timeout = opts?.timeoutMs ?? DEFAULT_TIMEOUT_MS;
62
+ const interval = opts?.pollIntervalMs ?? DEFAULT_POLL_INTERVAL_MS;
63
+ const deadline = Date.now() + timeout;
64
+ while (Date.now() < deadline) {
65
+ await sleep(interval);
66
+ let status;
67
+ try {
68
+ status = await fetchSessionStatus(apiBase, "/api/agent/register/status", currentToken);
69
+ }
70
+ catch (error) {
71
+ handleSessionStatusError(error, "Session expired. Start a new registration flow.");
72
+ }
73
+ currentToken = String(status.sessionToken);
74
+ if (status.stage === "completed") {
75
+ return {
76
+ agentId: Number(status.agentId),
77
+ agentAddress: String(status.agentAddress ?? data.agentAddress),
78
+ credentials: status.credentials,
79
+ txHash: typeof status.txHash === "string" ? status.txHash : undefined,
80
+ };
81
+ }
82
+ if (status.stage === "failed") {
83
+ throw new SelfApiError("Registration failed on-chain.");
84
+ }
85
+ if (status.stage === "expired") {
86
+ throw new SelfExpiredSessionError();
87
+ }
88
+ }
89
+ throw new SelfApiError(`Registration did not complete within ${timeout}ms. Call check_self_registration again to resume polling.`);
90
+ },
91
+ async exportKey() {
92
+ const result = await apiFetch(`${apiBase}/api/agent/register/export`, {
93
+ method: "POST",
94
+ headers: {
95
+ "Content-Type": "application/json",
96
+ ...sessionAuthHeaders(currentToken),
97
+ },
98
+ body: JSON.stringify({ token: currentToken }),
99
+ });
100
+ return result.privateKey;
101
+ },
102
+ };
103
+ }
104
+ function buildRefreshSession(data, apiBase) {
105
+ let currentToken = String(data.sessionToken);
106
+ return {
107
+ sessionToken: currentToken,
108
+ stage: String(data.stage),
109
+ deepLink: String(data.deepLink),
110
+ scanUrl: optionalScanUrl(data),
111
+ expiresAt: String(data.expiresAt),
112
+ timeRemainingMs: typeof data.timeRemainingMs === "number" ? data.timeRemainingMs : undefined,
113
+ humanInstructions: Array.isArray(data.humanInstructions)
114
+ ? data.humanInstructions.map(String)
115
+ : [],
116
+ async waitForCompletion(opts) {
117
+ const timeout = opts?.timeoutMs ?? DEFAULT_TIMEOUT_MS;
118
+ const interval = opts?.pollIntervalMs ?? DEFAULT_POLL_INTERVAL_MS;
119
+ const deadline = Date.now() + timeout;
120
+ while (Date.now() < deadline) {
121
+ await sleep(interval);
122
+ let status;
123
+ try {
124
+ status = await fetchSessionStatus(apiBase, "/api/agent/refresh/status", currentToken);
125
+ }
126
+ catch (error) {
127
+ handleSessionStatusError(error, "Proof refresh session expired. Call refresh_self_proof to start a new session.");
128
+ }
129
+ currentToken = String(status.sessionToken);
130
+ if (status.stage === "completed") {
131
+ const expiresAtRaw = status.proofExpiresAt;
132
+ const proofExpiresAt = typeof expiresAtRaw === "string" || typeof expiresAtRaw === "number"
133
+ ? new Date(expiresAtRaw)
134
+ : new Date(Date.now() + 365 * 24 * 60 * 60 * 1000);
135
+ return { proofExpiresAt };
136
+ }
137
+ if (status.stage === "failed") {
138
+ throw new SelfApiError("Proof refresh failed on-chain.");
139
+ }
140
+ if (status.stage === "expired") {
141
+ throw new SelfExpiredSessionError("Proof refresh session expired. Call refresh_self_proof to start a new session.");
142
+ }
143
+ }
144
+ throw new SelfApiError(`Proof refresh did not complete within ${timeout}ms. Call check_self_registration again to resume polling.`);
145
+ },
146
+ };
147
+ }
148
+ function buildDeregistrationSession(data, apiBase) {
149
+ let currentToken = String(data.sessionToken);
150
+ return {
151
+ sessionToken: currentToken,
152
+ stage: String(data.stage),
153
+ deepLink: String(data.deepLink),
154
+ scanUrl: optionalScanUrl(data),
155
+ expiresAt: String(data.expiresAt),
156
+ timeRemainingMs: typeof data.timeRemainingMs === "number" ? data.timeRemainingMs : undefined,
157
+ humanInstructions: Array.isArray(data.humanInstructions)
158
+ ? data.humanInstructions.map(String)
159
+ : [],
160
+ async waitForCompletion(opts) {
161
+ const timeout = opts?.timeoutMs ?? DEFAULT_TIMEOUT_MS;
162
+ const interval = opts?.pollIntervalMs ?? DEFAULT_POLL_INTERVAL_MS;
163
+ const deadline = Date.now() + timeout;
164
+ while (Date.now() < deadline) {
165
+ await sleep(interval);
166
+ let status;
167
+ try {
168
+ status = await fetchSessionStatus(apiBase, "/api/agent/deregister/status", currentToken);
169
+ }
170
+ catch (error) {
171
+ handleSessionStatusError(error, "Deregistration session expired. Call deregister_self_agent to start a new session.");
172
+ }
173
+ currentToken = String(status.sessionToken);
174
+ if (status.stage === "completed") {
175
+ return;
176
+ }
177
+ if (status.stage === "failed") {
178
+ throw new SelfApiError("Deregistration failed on-chain.");
179
+ }
180
+ if (status.stage === "expired") {
181
+ throw new SelfExpiredSessionError("Deregistration session expired. Call deregister_self_agent to start a new session.");
182
+ }
183
+ }
184
+ throw new SelfApiError(`Deregistration did not complete within ${timeout}ms. Call check_self_registration again to resume polling.`);
185
+ },
186
+ };
187
+ }
188
+ export async function requestRegistration(opts) {
189
+ const base = resolveApiBase(opts.apiBase);
190
+ const payload = {
191
+ mode: opts.mode ?? "wallet-free",
192
+ network: SELF_API_NETWORK,
193
+ disclosures: opts.disclosures,
194
+ humanAddress: opts.humanAddress,
195
+ agentName: opts.agentName,
196
+ agentDescription: opts.agentDescription,
197
+ };
198
+ const data = await apiFetch(`${base}/api/agent/register`, {
199
+ method: "POST",
200
+ headers: { "Content-Type": "application/json" },
201
+ body: JSON.stringify(payload),
202
+ });
203
+ return buildRegistrationSession(data, base);
204
+ }
205
+ export async function requestDeregistration(opts) {
206
+ const base = resolveApiBase(opts.apiBase);
207
+ const data = await apiFetch(`${base}/api/agent/deregister`, {
208
+ method: "POST",
209
+ headers: { "Content-Type": "application/json" },
210
+ body: JSON.stringify({
211
+ network: SELF_API_NETWORK,
212
+ agentAddress: opts.agentAddress,
213
+ disclosures: opts.disclosures,
214
+ }),
215
+ });
216
+ return buildDeregistrationSession(data, base);
217
+ }
218
+ export async function requestProofRefresh(opts) {
219
+ const base = resolveApiBase(opts.apiBase);
220
+ const data = await apiFetch(`${base}/api/agent/refresh`, {
221
+ method: "POST",
222
+ headers: { "Content-Type": "application/json" },
223
+ body: JSON.stringify({
224
+ agentId: opts.agentId,
225
+ network: SELF_API_NETWORK,
226
+ disclosures: opts.disclosures,
227
+ }),
228
+ });
229
+ return buildRefreshSession(data, base);
230
+ }
231
+ export async function getAgentInfo(agentId, apiBase) {
232
+ const base = resolveApiBase(apiBase);
233
+ return apiFetch(`${base}/api/agent/info/${SELF_CHAIN_ID}/${agentId}`);
234
+ }
235
+ export async function getAgentsForHuman(address, apiBase) {
236
+ const base = resolveApiBase(apiBase);
237
+ return apiFetch(`${base}/api/agent/agents/${SELF_CHAIN_ID}/${address}`);
238
+ }
239
+ export function selfQrUrl(sessionToken, apiBase) {
240
+ return `${resolveApiBase(apiBase)}/scan/${sessionToken}`;
241
+ }
242
+ //# sourceMappingURL=self-api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"self-api.js","sourceRoot":"","sources":["../../../src/clients/self-api.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export declare const Actions: typeof import("@uniswap/v4-sdk").Actions, V4Planner: typeof import("@uniswap/v4-sdk").V4Planner;
2
+ export declare const CommandType: typeof import("@uniswap/universal-router-sdk").CommandType, RoutePlanner: typeof import("@uniswap/universal-router-sdk").RoutePlanner;
3
+ export declare const ChainId: typeof import("@uniswap/sdk-core").ChainId;
4
+ export type { SwapExactInSingle, SwapExactIn } from "@uniswap/v4-sdk";
@@ -0,0 +1,13 @@
1
+ /**
2
+ * CJS re-exports for @uniswap/v4-sdk and @uniswap/universal-router-sdk.
3
+ * Uses createRequire because upstream ESM builds omit .js extensions on internal imports.
4
+ */
5
+ import { createRequire } from "node:module";
6
+ const require = createRequire(import.meta.url);
7
+ const v4Sdk = require("@uniswap/v4-sdk");
8
+ const universalRouterSdk = require("@uniswap/universal-router-sdk");
9
+ const sdkCore = require("@uniswap/sdk-core");
10
+ export const { Actions, V4Planner } = v4Sdk;
11
+ export const { CommandType, RoutePlanner } = universalRouterSdk;
12
+ export const { ChainId } = sdkCore;
13
+ //# sourceMappingURL=uniswap-sdk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uniswap-sdk.js","sourceRoot":"","sources":["../../../src/clients/uniswap-sdk.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE/C,MAAM,KAAK,GAAG,OAAO,CAAC,iBAAiB,CAAqC,CAAC;AAC7E,MAAM,kBAAkB,GACtB,OAAO,CAAC,+BAA+B,CAAmD,CAAC;AAC7F,MAAM,OAAO,GAAG,OAAO,CAAC,mBAAmB,CAAuC,CAAC;AAEnF,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;AAC5C,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,kBAAkB,CAAC;AAChE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC"}
@@ -0,0 +1,17 @@
1
+ /** Aave V3 on Celo mainnet — from bgd-labs/aave-address-book AaveV3Celo */
2
+ export declare const AAVE_POOL: "0x3E59A31363E2ad014dcbc521c4a0d5757d9f3402";
3
+ export declare const AAVE_CHAIN_ID = 42220;
4
+ /** Underlying and aToken addresses for one Aave V3 market on Celo. */
5
+ export type AaveAsset = {
6
+ symbol: string;
7
+ underlying: `0x${string}`;
8
+ aToken: `0x${string}`;
9
+ };
10
+ export declare const AAVE_ASSETS: Record<string, AaveAsset>;
11
+ export declare const AAVE_SUPPORTED_SYMBOLS: readonly ["USDT", "WETH", "USDm", "USDC", "CELO", "EURm"];
12
+ /**
13
+ * Resolve an Aave V3 Celo asset by symbol or underlying/aToken address.
14
+ * @param token - Registry symbol or hex address
15
+ * @throws When the token is not listed in `AAVE_SUPPORTED_SYMBOLS`
16
+ */
17
+ export declare function resolveAaveAsset(token: string): AaveAsset;
@@ -0,0 +1,77 @@
1
+ /**
2
+ * Aave V3 Celo mainnet pool addresses and supported asset registry.
3
+ */
4
+ import { findKnownToken } from "./chains.js";
5
+ const HEX_ADDRESS_RE = /^0x[a-fA-F0-9]{40}$/;
6
+ /** Aave V3 on Celo mainnet — from bgd-labs/aave-address-book AaveV3Celo */
7
+ export const AAVE_POOL = "0x3E59A31363E2ad014dcbc521c4a0d5757d9f3402";
8
+ export const AAVE_CHAIN_ID = 42220;
9
+ export const AAVE_ASSETS = {
10
+ USDT: {
11
+ symbol: "USDT",
12
+ underlying: "0x48065fbBE25f71C9282ddf5e1cD6D6A887483D5e",
13
+ aToken: "0xDeE98402A302e4D707fB9bf2bac66fAEEc31e8Df",
14
+ },
15
+ WETH: {
16
+ symbol: "WETH",
17
+ underlying: "0xD221812de1BD094f35587EE8E174B07B6167D9Af",
18
+ aToken: "0xf385280F36e009C157697D25E0B802EfaBfd789c",
19
+ },
20
+ USDm: {
21
+ symbol: "USDm",
22
+ underlying: "0x765DE816845861e75A25fCA122bb6898B8B1282a",
23
+ aToken: "0xBba98352628B0B0c4b40583F593fFCb630935a45",
24
+ },
25
+ USDC: {
26
+ symbol: "USDC",
27
+ underlying: "0xcebA9300f2b948710d2653dD7B07f33A8B32118C",
28
+ aToken: "0xFF8309b9e99bfd2D4021bc71a362aBD93dBd4785",
29
+ },
30
+ CELO: {
31
+ symbol: "CELO",
32
+ underlying: "0x471EcE3750Da237f93B8E339c536989b8978a438",
33
+ aToken: "0xC3e77dC389537Db1EEc7C33B95Cf3beECA71A209",
34
+ },
35
+ EURm: {
36
+ symbol: "EURm",
37
+ underlying: "0xD8763CBa276a3738E6DE85b4b3bF5FDed6D6cA73",
38
+ aToken: "0x34c02571094e08E935B8cf8dC10F1Ad6795f1f81",
39
+ },
40
+ };
41
+ export const AAVE_SUPPORTED_SYMBOLS = [
42
+ "USDT",
43
+ "WETH",
44
+ "USDm",
45
+ "USDC",
46
+ "CELO",
47
+ "EURm",
48
+ ];
49
+ /**
50
+ * Resolve an Aave V3 Celo asset by symbol or underlying/aToken address.
51
+ * @param token - Registry symbol or hex address
52
+ * @throws When the token is not listed in `AAVE_SUPPORTED_SYMBOLS`
53
+ */
54
+ export function resolveAaveAsset(token) {
55
+ const normalized = token.trim();
56
+ const known = findKnownToken(normalized);
57
+ if (known) {
58
+ const byKnownSymbol = AAVE_ASSETS[known.symbol];
59
+ if (byKnownSymbol) {
60
+ return byKnownSymbol;
61
+ }
62
+ }
63
+ if (HEX_ADDRESS_RE.test(normalized)) {
64
+ const lower = normalized.toLowerCase();
65
+ const byAddress = Object.values(AAVE_ASSETS).find((asset) => asset.underlying.toLowerCase() === lower ||
66
+ asset.aToken.toLowerCase() === lower);
67
+ if (byAddress) {
68
+ return byAddress;
69
+ }
70
+ }
71
+ const bySymbol = Object.values(AAVE_ASSETS).find((asset) => asset.symbol.toLowerCase() === normalized.toLowerCase());
72
+ if (bySymbol) {
73
+ return bySymbol;
74
+ }
75
+ throw new Error(`Token "${token}" is not supported on Aave V3 Celo. Supported: ${AAVE_SUPPORTED_SYMBOLS.join(", ")}.`);
76
+ }
77
+ //# sourceMappingURL=aave.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aave.js","sourceRoot":"","sources":["../../../src/config/aave.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,cAAc,GAAG,qBAAqB,CAAC;AAE7C,2EAA2E;AAC3E,MAAM,CAAC,MAAM,SAAS,GAAG,4CAAqD,CAAC;AAC/E,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,CAAC;AASnC,MAAM,CAAC,MAAM,WAAW,GAA8B;IACpD,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,4CAA4C;QACxD,MAAM,EAAE,4CAA4C;KACrD;IACD,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,4CAA4C;QACxD,MAAM,EAAE,4CAA4C;KACrD;IACD,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,4CAA4C;QACxD,MAAM,EAAE,4CAA4C;KACrD;IACD,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,4CAA4C;QACxD,MAAM,EAAE,4CAA4C;KACrD;IACD,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,4CAA4C;QACxD,MAAM,EAAE,4CAA4C;KACrD;IACD,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,4CAA4C;QACxD,MAAM,EAAE,4CAA4C;KACrD;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;CACE,CAAC;AAEX;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAChC,MAAM,KAAK,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;IAEzC,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,aAAa,GAAG,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,aAAa,EAAE,CAAC;YAClB,OAAO,aAAa,CAAC;QACvB,CAAC;IACH,CAAC;IAED,IAAI,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QACpC,MAAM,KAAK,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAC/C,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,KAAK;YACxC,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,KAAK,CACvC,CAAC;QACF,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAC9C,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC,WAAW,EAAE,CACnE,CAAC;IACF,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,IAAI,KAAK,CACb,UAAU,KAAK,kDAAkD,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CACtG,CAAC;AACJ,CAAC"}
@@ -0,0 +1,4 @@
1
+ /** Calldata suffix appended to prepared transactions for on-chain Celina attribution. */
2
+ export declare const CELINA_DATA_SUFFIX: `0x${string}`;
3
+ /** Append CELINA suffix to calldata; no-op when empty or already tagged. */
4
+ export declare function appendCelinaCalldataTag(data: `0x${string}`): `0x${string}`;
@@ -0,0 +1,13 @@
1
+ import { concat, stringToHex } from "viem";
2
+ /** Calldata suffix appended to prepared transactions for on-chain Celina attribution. */
3
+ export const CELINA_DATA_SUFFIX = stringToHex("CELINA");
4
+ /** Append CELINA suffix to calldata; no-op when empty or already tagged. */
5
+ export function appendCelinaCalldataTag(data) {
6
+ if (!data || data === "0x")
7
+ return data;
8
+ const suffix = CELINA_DATA_SUFFIX.slice(2);
9
+ if (data.toLowerCase().endsWith(suffix.toLowerCase()))
10
+ return data;
11
+ return concat([data, CELINA_DATA_SUFFIX]);
12
+ }
13
+ //# sourceMappingURL=celina-tag.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"celina-tag.js","sourceRoot":"","sources":["../../../src/config/celina-tag.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAE3C,yFAAyF;AACzF,MAAM,CAAC,MAAM,kBAAkB,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;AAExD,4EAA4E;AAC5E,MAAM,UAAU,uBAAuB,CAAC,IAAmB;IACzD,IAAI,CAAC,IAAI,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACxC,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC3C,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QAAE,OAAO,IAAI,CAAC;IACnE,OAAO,MAAM,CAAC,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC,CAAC;AAC5C,CAAC"}
@@ -0,0 +1,8 @@
1
+ /** Celo mainnet core contract addresses (Election, Governance, etc.). */
2
+ export declare const CELO_CORE_CONTRACTS: {
3
+ readonly governance: "0xD533Ca259b330c7A88f74E000a3FaEa2d63B7972";
4
+ readonly election: "0x8D6677192144292870907E3Fa8A5527fE55A7ff6";
5
+ readonly validators: "0xaEb865bCa93DdC8F47b8e29F40C5399cE34d0C58";
6
+ readonly accounts: "0x7d21685C17607338b313a7174bAb6620baD0aaB7";
7
+ readonly lockedGold: "0x6cC083Aed9e3ebe302A6336dBC7c921C9f03349E";
8
+ };
@@ -0,0 +1,9 @@
1
+ /** Celo mainnet core contract addresses (Election, Governance, etc.). */
2
+ export const CELO_CORE_CONTRACTS = {
3
+ governance: "0xD533Ca259b330c7A88f74E000a3FaEa2d63B7972",
4
+ election: "0x8D6677192144292870907E3Fa8A5527fE55A7ff6",
5
+ validators: "0xaEb865bCa93DdC8F47b8e29F40C5399cE34d0C58",
6
+ accounts: "0x7d21685C17607338b313a7174bAb6620baD0aaB7",
7
+ lockedGold: "0x6cC083Aed9e3ebe302A6336dBC7c921C9f03349E",
8
+ };
9
+ //# sourceMappingURL=celo-core-contracts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"celo-core-contracts.js","sourceRoot":"","sources":["../../../src/config/celo-core-contracts.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,UAAU,EAAE,4CAA4C;IACxD,QAAQ,EAAE,4CAA4C;IACtD,UAAU,EAAE,4CAA4C;IACxD,QAAQ,EAAE,4CAA4C;IACtD,UAAU,EAAE,4CAA4C;CAChD,CAAC"}