@somnia-chain/contracts-sdk 0.1.0 → 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 (394) hide show
  1. package/README.md +55 -23
  2. package/dist/abis.d.ts +32 -0
  3. package/dist/abis.js +26 -0
  4. package/dist/decode-core.d.ts +51 -0
  5. package/dist/decode-core.js +145 -0
  6. package/dist/decode.d.ts +15 -0
  7. package/dist/decode.js +30 -0
  8. package/dist/digest.d.ts +11 -0
  9. package/dist/digest.js +33 -0
  10. package/dist/gen/abi/deployer-contract/ProtocolDeployer.d.ts +2 -0
  11. package/dist/gen/abi/deployer-contract/ProtocolDeployer.js +3 -0
  12. package/dist/gen/abi/somnia-accounts/CompatibilityFallbackHandler.d.ts +2 -0
  13. package/dist/gen/abi/somnia-accounts/CompatibilityFallbackHandler.js +3 -0
  14. package/dist/gen/abi/somnia-accounts/MultiSend.d.ts +2 -0
  15. package/dist/gen/abi/somnia-accounts/MultiSend.js +3 -0
  16. package/dist/gen/abi/somnia-accounts/MultiSendCallOnly.d.ts +2 -0
  17. package/dist/gen/abi/somnia-accounts/MultiSendCallOnly.js +3 -0
  18. package/dist/gen/abi/somnia-accounts/Safe.d.ts +2 -0
  19. package/dist/gen/abi/somnia-accounts/Safe.js +3 -0
  20. package/dist/gen/abi/somnia-accounts/SomniaAccountFactory.d.ts +2 -0
  21. package/dist/gen/abi/somnia-accounts/SomniaAccountFactory.js +3 -0
  22. package/dist/gen/abi/somnia-accounts/SomniaAccountFactoryImpl.d.ts +2 -0
  23. package/dist/gen/abi/somnia-accounts/SomniaAccountFactoryImpl.js +3 -0
  24. package/dist/gen/abi/somnia-accounts/SomniaAccountFactoryImplV2.d.ts +2 -0
  25. package/dist/gen/abi/somnia-accounts/SomniaAccountFactoryImplV2.js +3 -0
  26. package/dist/gen/abi/somnia-accounts/SomniaAccountFactoryImplV3.d.ts +2 -0
  27. package/dist/gen/abi/somnia-accounts/SomniaAccountFactoryImplV3.js +3 -0
  28. package/dist/gen/abi/somnia-agents/agentRegistry.d.ts +2 -0
  29. package/dist/gen/abi/somnia-agents/agentRegistry.js +3 -0
  30. package/dist/gen/abi/somnia-agents/committee.d.ts +2 -0
  31. package/dist/gen/abi/somnia-agents/committee.js +3 -0
  32. package/dist/gen/abi/somnia-agents/somniaAgents.d.ts +2 -0
  33. package/dist/gen/abi/somnia-agents/somniaAgents.js +3 -0
  34. package/dist/gen/abi/somnia-dex-protocol/agent-aggregate-oracle.SBTCD_reader.d.ts +2 -0
  35. package/dist/gen/abi/somnia-dex-protocol/agent-aggregate-oracle.SBTCD_reader.js +3 -0
  36. package/dist/gen/abi/somnia-dex-protocol/agent-aggregate-oracle.aggregateImplementation.d.ts +2 -0
  37. package/dist/gen/abi/somnia-dex-protocol/agent-aggregate-oracle.aggregateImplementation.js +3 -0
  38. package/dist/gen/abi/somnia-dex-protocol/agent-aggregate-oracle.aggregateOracle.d.ts +2 -0
  39. package/dist/gen/abi/somnia-dex-protocol/agent-aggregate-oracle.aggregateOracle.js +3 -0
  40. package/dist/gen/abi/somnia-dex-protocol/agent-oracles.factory.d.ts +2 -0
  41. package/dist/gen/abi/somnia-dex-protocol/agent-oracles.factory.js +3 -0
  42. package/dist/gen/abi/somnia-dex-protocol/binary-market-makers.accessControl.d.ts +2 -0
  43. package/dist/gen/abi/somnia-dex-protocol/binary-market-makers.accessControl.js +3 -0
  44. package/dist/gen/abi/somnia-dex-protocol/binary-market-makers.upgradeableBeacon.d.ts +2 -0
  45. package/dist/gen/abi/somnia-dex-protocol/binary-market-makers.upgradeableBeacon.js +3 -0
  46. package/dist/gen/abi/somnia-dex-protocol/deploy.spotPoolImplementation.d.ts +2 -0
  47. package/dist/gen/abi/somnia-dex-protocol/deploy.spotPoolImplementation.js +3 -0
  48. package/dist/gen/abi/somnia-dex-protocol/dream-vault.d.ts +2 -0
  49. package/dist/gen/abi/somnia-dex-protocol/dream-vault.implementation.d.ts +2 -0
  50. package/dist/gen/abi/somnia-dex-protocol/dream-vault.implementation.js +3 -0
  51. package/dist/gen/abi/somnia-dex-protocol/dream-vault.js +3 -0
  52. package/dist/gen/abi/somnia-dex-protocol/linked-wallet-registry.registryImplementation.d.ts +2 -0
  53. package/dist/gen/abi/somnia-dex-protocol/linked-wallet-registry.registryImplementation.js +3 -0
  54. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.ADA_manual.d.ts +2 -0
  55. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.ADA_manual.js +3 -0
  56. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.AVAX_manual.d.ts +2 -0
  57. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.AVAX_manual.js +3 -0
  58. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.BNB_manual.d.ts +2 -0
  59. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.BNB_manual.js +3 -0
  60. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.BTC_manual.d.ts +2 -0
  61. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.BTC_manual.js +3 -0
  62. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.DOGE_manual.d.ts +2 -0
  63. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.DOGE_manual.js +3 -0
  64. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.ETH_manual.d.ts +2 -0
  65. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.ETH_manual.js +3 -0
  66. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.HYPE_manual.d.ts +2 -0
  67. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.HYPE_manual.js +3 -0
  68. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.LINK_manual.d.ts +2 -0
  69. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.LINK_manual.js +3 -0
  70. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.NEAR_manual.d.ts +2 -0
  71. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.NEAR_manual.js +3 -0
  72. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.SOL_manual.d.ts +2 -0
  73. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.SOL_manual.js +3 -0
  74. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.SUI_manual.d.ts +2 -0
  75. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.SUI_manual.js +3 -0
  76. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.TAO_manual.d.ts +2 -0
  77. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.TAO_manual.js +3 -0
  78. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.WLD_manual.d.ts +2 -0
  79. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.WLD_manual.js +3 -0
  80. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.XLM_manual.d.ts +2 -0
  81. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.XLM_manual.js +3 -0
  82. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.XRP_manual.d.ts +2 -0
  83. package/dist/gen/abi/somnia-dex-protocol/manual-oracles.XRP_manual.js +3 -0
  84. package/dist/gen/abi/somnia-dex-protocol/market-makers.accessControl.d.ts +2 -0
  85. package/dist/gen/abi/somnia-dex-protocol/market-makers.accessControl.js +3 -0
  86. package/dist/gen/abi/somnia-dex-protocol/market-makers.marketMakers.mm-native-usdso.d.ts +2 -0
  87. package/dist/gen/abi/somnia-dex-protocol/market-makers.marketMakers.mm-native-usdso.js +3 -0
  88. package/dist/gen/abi/somnia-dex-protocol/market-makers.marketMakers.mm-usdce-usdso.d.ts +2 -0
  89. package/dist/gen/abi/somnia-dex-protocol/market-makers.marketMakers.mm-usdce-usdso.js +3 -0
  90. package/dist/gen/abi/somnia-dex-protocol/market-makers.marketMakers.mm-wbtc-usdso.d.ts +2 -0
  91. package/dist/gen/abi/somnia-dex-protocol/market-makers.marketMakers.mm-wbtc-usdso.js +3 -0
  92. package/dist/gen/abi/somnia-dex-protocol/market-makers.marketMakers.mm-weth-usdso.d.ts +2 -0
  93. package/dist/gen/abi/somnia-dex-protocol/market-makers.marketMakers.mm-weth-usdso.js +3 -0
  94. package/dist/gen/abi/somnia-dex-protocol/market-makers.upgradeableBeacon.d.ts +2 -0
  95. package/dist/gen/abi/somnia-dex-protocol/market-makers.upgradeableBeacon.js +3 -0
  96. package/dist/gen/abi/somnia-dex-protocol/multi-source-oracle.SBNB_incumbentRouter.d.ts +2 -0
  97. package/dist/gen/abi/somnia-dex-protocol/multi-source-oracle.SBNB_incumbentRouter.js +3 -0
  98. package/dist/gen/abi/somnia-dex-protocol/multi-source-oracle.SBTCD_incumbentRouter.d.ts +2 -0
  99. package/dist/gen/abi/somnia-dex-protocol/multi-source-oracle.SBTCD_incumbentRouter.js +3 -0
  100. package/dist/gen/abi/somnia-dex-protocol/multi-source-oracle.SDOGE_incumbentRouter.d.ts +2 -0
  101. package/dist/gen/abi/somnia-dex-protocol/multi-source-oracle.SDOGE_incumbentRouter.js +3 -0
  102. package/dist/gen/abi/somnia-dex-protocol/multi-source-oracle.SETH_incumbentRouter.d.ts +2 -0
  103. package/dist/gen/abi/somnia-dex-protocol/multi-source-oracle.SETH_incumbentRouter.js +3 -0
  104. package/dist/gen/abi/somnia-dex-protocol/multi-source-oracle.SSOL_incumbentRouter.d.ts +2 -0
  105. package/dist/gen/abi/somnia-dex-protocol/multi-source-oracle.SSOL_incumbentRouter.js +3 -0
  106. package/dist/gen/abi/somnia-dex-protocol/multi-source-oracle.factory.d.ts +2 -0
  107. package/dist/gen/abi/somnia-dex-protocol/multi-source-oracle.factory.js +3 -0
  108. package/dist/gen/abi/somnia-dex-protocol/operator-permissions-registry.registryImplementation.d.ts +2 -0
  109. package/dist/gen/abi/somnia-dex-protocol/operator-permissions-registry.registryImplementation.js +3 -0
  110. package/dist/gen/abi/somnia-dex-protocol/operator-permissions-registry.registryProxy.d.ts +2 -0
  111. package/dist/gen/abi/somnia-dex-protocol/operator-permissions-registry.registryProxy.js +3 -0
  112. package/dist/gen/abi/somnia-dex-protocol/perp-liquidation-swapper.d.ts +2 -0
  113. package/dist/gen/abi/somnia-dex-protocol/perp-liquidation-swapper.implementation.d.ts +2 -0
  114. package/dist/gen/abi/somnia-dex-protocol/perp-liquidation-swapper.implementation.js +7 -0
  115. package/dist/gen/abi/somnia-dex-protocol/perp-liquidation-swapper.js +3 -0
  116. package/dist/gen/abi/somnia-dex-protocol/perp-market-makers.perpMarketMakers.sim-mm-bnb-perp.d.ts +2 -0
  117. package/dist/gen/abi/somnia-dex-protocol/perp-market-makers.perpMarketMakers.sim-mm-bnb-perp.js +3 -0
  118. package/dist/gen/abi/somnia-dex-protocol/perp-market-makers.perpMarketMakers.sim-mm-btc-perp.d.ts +2 -0
  119. package/dist/gen/abi/somnia-dex-protocol/perp-market-makers.perpMarketMakers.sim-mm-btc-perp.js +3 -0
  120. package/dist/gen/abi/somnia-dex-protocol/perp-market-makers.perpMarketMakers.sim-mm-near-perp.d.ts +2 -0
  121. package/dist/gen/abi/somnia-dex-protocol/perp-market-makers.perpMarketMakers.sim-mm-near-perp.js +3 -0
  122. package/dist/gen/abi/somnia-dex-protocol/perp-taker-3.d.ts +2 -0
  123. package/dist/gen/abi/somnia-dex-protocol/perp-taker-3.js +3 -0
  124. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.ADA-PERP_baseToken.d.ts +2 -0
  125. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.ADA-PERP_baseToken.js +3 -0
  126. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.AVAX-PERP_baseToken.d.ts +2 -0
  127. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.AVAX-PERP_baseToken.js +3 -0
  128. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.BNB-PERP_baseToken.d.ts +2 -0
  129. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.BNB-PERP_baseToken.js +3 -0
  130. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.BTC-PERP_baseToken.d.ts +2 -0
  131. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.BTC-PERP_baseToken.js +3 -0
  132. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.DOGE-PERP_baseToken.d.ts +2 -0
  133. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.DOGE-PERP_baseToken.js +3 -0
  134. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.ETH-PERP_baseToken.d.ts +2 -0
  135. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.ETH-PERP_baseToken.js +3 -0
  136. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.HYPE-PERP_baseToken.d.ts +2 -0
  137. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.HYPE-PERP_baseToken.js +3 -0
  138. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.LINK-PERP_baseToken.d.ts +2 -0
  139. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.LINK-PERP_baseToken.js +3 -0
  140. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.NEAR-PERP_baseToken.d.ts +2 -0
  141. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.NEAR-PERP_baseToken.js +3 -0
  142. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.SBTCC-PERP_baseToken.d.ts +2 -0
  143. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.SBTCC-PERP_baseToken.js +3 -0
  144. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.SOL-PERP_baseToken.d.ts +2 -0
  145. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.SOL-PERP_baseToken.js +3 -0
  146. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.SSOL-PERP_baseToken.d.ts +2 -0
  147. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.SSOL-PERP_baseToken.js +3 -0
  148. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.SUI-PERP_baseToken.d.ts +2 -0
  149. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.SUI-PERP_baseToken.js +3 -0
  150. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.TAO-PERP_baseToken.d.ts +2 -0
  151. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.TAO-PERP_baseToken.js +3 -0
  152. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.WLD-PERP_baseToken.d.ts +2 -0
  153. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.WLD-PERP_baseToken.js +3 -0
  154. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.XLM-PERP_baseToken.d.ts +2 -0
  155. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.XLM-PERP_baseToken.js +3 -0
  156. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.XRP-PERP_baseToken.d.ts +2 -0
  157. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.XRP-PERP_baseToken.js +3 -0
  158. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.adlRanker.d.ts +2 -0
  159. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.adlRanker.js +3 -0
  160. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.insuranceFund.d.ts +2 -0
  161. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.insuranceFund.js +3 -0
  162. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.linkedWalletAwareAdlRanker.d.ts +2 -0
  163. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.linkedWalletAwareAdlRanker.js +3 -0
  164. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.linkedWalletRegistry.d.ts +2 -0
  165. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.linkedWalletRegistry.js +3 -0
  166. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.liquidationEngine.d.ts +2 -0
  167. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.liquidationEngine.js +3 -0
  168. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.marginBank.d.ts +2 -0
  169. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.marginBank.js +3 -0
  170. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.perpPoolFactory.d.ts +2 -0
  171. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.perpPoolFactory.js +3 -0
  172. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.simBidder.d.ts +2 -0
  173. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.simBidder.js +3 -0
  174. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.unlinkGuard.d.ts +2 -0
  175. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.unlinkGuard.js +3 -0
  176. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.voucherDistributor.d.ts +2 -0
  177. package/dist/gen/abi/somnia-dex-protocol/perps-protocol.voucherDistributor.js +3 -0
  178. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.ADA.d.ts +2 -0
  179. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.ADA.js +3 -0
  180. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.AVAX.d.ts +2 -0
  181. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.AVAX.js +3 -0
  182. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.BNB.d.ts +2 -0
  183. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.BNB.js +3 -0
  184. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.BTC.d.ts +2 -0
  185. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.BTC.js +3 -0
  186. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.DOGE.d.ts +2 -0
  187. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.DOGE.js +3 -0
  188. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.ETH.d.ts +2 -0
  189. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.ETH.js +3 -0
  190. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.HYPE.d.ts +2 -0
  191. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.HYPE.js +3 -0
  192. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.LINK.d.ts +2 -0
  193. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.LINK.js +3 -0
  194. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.NEAR.d.ts +2 -0
  195. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.NEAR.js +3 -0
  196. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.SOL.d.ts +2 -0
  197. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.SOL.js +3 -0
  198. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.SUI.d.ts +2 -0
  199. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.SUI.js +3 -0
  200. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.TAO.d.ts +2 -0
  201. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.TAO.js +3 -0
  202. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.WLD.d.ts +2 -0
  203. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.WLD.js +3 -0
  204. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.XLM.d.ts +2 -0
  205. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.XLM.js +3 -0
  206. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.XRP.d.ts +2 -0
  207. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistries.XRP.js +3 -0
  208. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistryBeacon.d.ts +2 -0
  209. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistryBeacon.js +3 -0
  210. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistryImplementation.d.ts +2 -0
  211. package/dist/gen/abi/somnia-dex-protocol/perps.perpStopOrderRegistryImplementation.js +3 -0
  212. package/dist/gen/abi/somnia-dex-protocol/prophecy-oracle.d.ts +2 -0
  213. package/dist/gen/abi/somnia-dex-protocol/prophecy-oracle.js +3 -0
  214. package/dist/gen/abi/somnia-dex-protocol/router.routerImplementation.d.ts +2 -0
  215. package/dist/gen/abi/somnia-dex-protocol/router.routerImplementation.js +3 -0
  216. package/dist/gen/abi/somnia-dex-protocol/router.routerProxy.d.ts +2 -0
  217. package/dist/gen/abi/somnia-dex-protocol/router.routerProxy.js +3 -0
  218. package/dist/gen/abi/somnia-dex-protocol/settlement-scheduler.d.ts +2 -0
  219. package/dist/gen/abi/somnia-dex-protocol/settlement-scheduler.implementation.d.ts +2 -0
  220. package/dist/gen/abi/somnia-dex-protocol/settlement-scheduler.implementation.js +3 -0
  221. package/dist/gen/abi/somnia-dex-protocol/settlement-scheduler.js +3 -0
  222. package/dist/gen/abi/somnia-dex-protocol/sim-oracle-proxies.SBNB_proxy.d.ts +2 -0
  223. package/dist/gen/abi/somnia-dex-protocol/sim-oracle-proxies.SBNB_proxy.js +3 -0
  224. package/dist/gen/abi/somnia-dex-protocol/sim-oracle-proxies.SDOGE_proxy.d.ts +2 -0
  225. package/dist/gen/abi/somnia-dex-protocol/sim-oracle-proxies.SDOGE_proxy.js +3 -0
  226. package/dist/gen/abi/somnia-dex-protocol/sim-oracle-proxies.SETH_proxy.d.ts +2 -0
  227. package/dist/gen/abi/somnia-dex-protocol/sim-oracle-proxies.SETH_proxy.js +3 -0
  228. package/dist/gen/abi/somnia-dex-protocol/sim-oracle-proxies.SSOL_proxy.d.ts +2 -0
  229. package/dist/gen/abi/somnia-dex-protocol/sim-oracle-proxies.SSOL_proxy.js +3 -0
  230. package/dist/gen/abi/somnia-dex-protocol/spot-pool-registry.d.ts +2 -0
  231. package/dist/gen/abi/somnia-dex-protocol/spot-pool-registry.js +3 -0
  232. package/dist/gen/abi/somnia-dex-protocol/spot-pool.NATIVE_TOKEN_USDso.d.ts +2 -0
  233. package/dist/gen/abi/somnia-dex-protocol/spot-pool.NATIVE_TOKEN_USDso.js +3 -0
  234. package/dist/gen/abi/somnia-dex-protocol/spot-pool.SpotPool_Beacon.d.ts +2 -0
  235. package/dist/gen/abi/somnia-dex-protocol/spot-pool.SpotPool_Beacon.js +3 -0
  236. package/dist/gen/abi/somnia-dex-protocol/spot-pool.SpotPool_Implementation.d.ts +2 -0
  237. package/dist/gen/abi/somnia-dex-protocol/spot-pool.SpotPool_Implementation.js +3 -0
  238. package/dist/gen/abi/somnia-dex-protocol/spot-pool.USDC.e_USDso.d.ts +2 -0
  239. package/dist/gen/abi/somnia-dex-protocol/spot-pool.USDC.e_USDso.js +3 -0
  240. package/dist/gen/abi/somnia-dex-protocol/spot-pool.USDT_USDso.d.ts +2 -0
  241. package/dist/gen/abi/somnia-dex-protocol/spot-pool.USDT_USDso.js +3 -0
  242. package/dist/gen/abi/somnia-dex-protocol/spot-pool.WBTC_USDso.d.ts +2 -0
  243. package/dist/gen/abi/somnia-dex-protocol/spot-pool.WBTC_USDso.js +3 -0
  244. package/dist/gen/abi/somnia-dex-protocol/spot-pool.WETH_USDso.d.ts +2 -0
  245. package/dist/gen/abi/somnia-dex-protocol/spot-pool.WETH_USDso.js +3 -0
  246. package/dist/gen/abi/somnia-dex-protocol/stop-order-registries.spotStopOrderRegistryBeacon.d.ts +2 -0
  247. package/dist/gen/abi/somnia-dex-protocol/stop-order-registries.spotStopOrderRegistryBeacon.js +3 -0
  248. package/dist/gen/abi/somnia-dex-protocol/stop-order-registries.spotStopOrderRegistryImplementation.d.ts +2 -0
  249. package/dist/gen/abi/somnia-dex-protocol/stop-order-registries.spotStopOrderRegistryImplementation.js +3 -0
  250. package/dist/gen/abi/somnia-dex-protocol/stop-order-registries.stopOrderRegistries.NATIVE_TOKEN_USDso.d.ts +2 -0
  251. package/dist/gen/abi/somnia-dex-protocol/stop-order-registries.stopOrderRegistries.NATIVE_TOKEN_USDso.js +3 -0
  252. package/dist/gen/abi/somnia-dex-protocol/stop-order-registries.stopOrderRegistries.USDC.e_USDso.d.ts +2 -0
  253. package/dist/gen/abi/somnia-dex-protocol/stop-order-registries.stopOrderRegistries.USDC.e_USDso.js +3 -0
  254. package/dist/gen/abi/somnia-dex-protocol/stop-order-registries.stopOrderRegistries.WBTC_USDso.d.ts +2 -0
  255. package/dist/gen/abi/somnia-dex-protocol/stop-order-registries.stopOrderRegistries.WBTC_USDso.js +3 -0
  256. package/dist/gen/abi/somnia-dex-protocol/stop-order-registries.stopOrderRegistries.WETH_USDso.d.ts +2 -0
  257. package/dist/gen/abi/somnia-dex-protocol/stop-order-registries.stopOrderRegistries.WETH_USDso.js +3 -0
  258. package/dist/gen/abi/somnia-dex-protocol/stork-oracle.d.ts +2 -0
  259. package/dist/gen/abi/somnia-dex-protocol/stork-oracle.js +3 -0
  260. package/dist/gen/abi/somnia-markets/BinaryClobFactory.d.ts +2 -0
  261. package/dist/gen/abi/somnia-markets/BinaryClobFactory.js +3 -0
  262. package/dist/gen/abi/somnia-markets/BinaryMarketImpl.d.ts +2 -0
  263. package/dist/gen/abi/somnia-markets/BinaryMarketImpl.js +3 -0
  264. package/dist/gen/abi/somnia-markets/BinaryMarketsModule.d.ts +2 -0
  265. package/dist/gen/abi/somnia-markets/BinaryMarketsModule.js +3 -0
  266. package/dist/gen/abi/somnia-markets/BinaryPoolImpl.d.ts +2 -0
  267. package/dist/gen/abi/somnia-markets/BinaryPoolImpl.js +3 -0
  268. package/dist/gen/abi/somnia-markets/BinarySettlement.d.ts +2 -0
  269. package/dist/gen/abi/somnia-markets/BinarySettlement.js +3 -0
  270. package/dist/gen/abi/somnia-markets/CollateralRouter.d.ts +2 -0
  271. package/dist/gen/abi/somnia-markets/CollateralRouter.js +3 -0
  272. package/dist/gen/abi/somnia-markets/MarketCreatorFactory.d.ts +2 -0
  273. package/dist/gen/abi/somnia-markets/MarketCreatorFactory.js +3 -0
  274. package/dist/gen/abi/somnia-markets/MarketCreatorFactory.legacy1.d.ts +2 -0
  275. package/dist/gen/abi/somnia-markets/MarketCreatorFactory.legacy1.js +3 -0
  276. package/dist/gen/abi/somnia-markets/MarketsCore.d.ts +2 -0
  277. package/dist/gen/abi/somnia-markets/MarketsCore.js +3 -0
  278. package/dist/gen/abi/somnia-markets/OracleHub.d.ts +2 -0
  279. package/dist/gen/abi/somnia-markets/OracleHub.js +3 -0
  280. package/dist/gen/abi/somnia-markets/OutcomeToken6909.d.ts +2 -0
  281. package/dist/gen/abi/somnia-markets/OutcomeToken6909.js +3 -0
  282. package/dist/gen/abi/somnia-markets/venue-1.marketCreator.d.ts +2 -0
  283. package/dist/gen/abi/somnia-markets/venue-1.marketCreator.js +3 -0
  284. package/dist/gen/abi/somnia-markets/venue-1.marketCreatorPolicy.d.ts +2 -0
  285. package/dist/gen/abi/somnia-markets/venue-1.marketCreatorPolicy.js +3 -0
  286. package/dist/gen/abi/somnia-markets/venue-2.marketCreator.d.ts +2 -0
  287. package/dist/gen/abi/somnia-markets/venue-2.marketCreator.js +3 -0
  288. package/dist/gen/abi/somnia-markets/venue-2.marketCreatorPolicy.d.ts +2 -0
  289. package/dist/gen/abi/somnia-markets/venue-2.marketCreatorPolicy.js +3 -0
  290. package/dist/gen/abi/somnia-markets/venue-3.marketCreator.d.ts +2 -0
  291. package/dist/gen/abi/somnia-markets/venue-3.marketCreator.js +3 -0
  292. package/dist/gen/abi/somnia-markets/venue-3.marketCreatorPolicy.d.ts +2 -0
  293. package/dist/gen/abi/somnia-markets/venue-3.marketCreatorPolicy.js +3 -0
  294. package/dist/gen/abi/somnia-markets/venue-5.marketCreator.d.ts +2 -0
  295. package/dist/gen/abi/somnia-markets/venue-5.marketCreator.js +3 -0
  296. package/dist/gen/abi/somnia-markets/venue-5.marketCreatorPolicy.d.ts +2 -0
  297. package/dist/gen/abi/somnia-markets/venue-5.marketCreatorPolicy.js +3 -0
  298. package/dist/gen/abis/072309c539e4.d.ts +864 -0
  299. package/dist/gen/abis/072309c539e4.js +1114 -0
  300. package/dist/gen/abis/0b3cd40e0bc8.d.ts +12 -0
  301. package/dist/gen/abis/0b3cd40e0bc8.js +17 -0
  302. package/dist/gen/abis/1a2db3035880.d.ts +891 -0
  303. package/dist/gen/abis/1a2db3035880.js +1149 -0
  304. package/dist/gen/abis/1a5696b34cbf.d.ts +589 -0
  305. package/dist/gen/abis/1a5696b34cbf.js +763 -0
  306. package/dist/gen/abis/1e00c7896e9e.d.ts +342 -0
  307. package/dist/gen/abis/1e00c7896e9e.js +442 -0
  308. package/dist/gen/abis/28f7c4e190be.d.ts +56 -0
  309. package/dist/gen/abis/28f7c4e190be.js +76 -0
  310. package/dist/gen/abis/2fc4ebdf8536.d.ts +492 -0
  311. package/dist/gen/abis/2fc4ebdf8536.js +641 -0
  312. package/dist/gen/abis/3197a9b71399.d.ts +690 -0
  313. package/dist/gen/abis/3197a9b71399.js +896 -0
  314. package/dist/gen/abis/3d5f1ad25c1d.d.ts +370 -0
  315. package/dist/gen/abis/3d5f1ad25c1d.js +480 -0
  316. package/dist/gen/abis/3eafdb9c0c96.d.ts +264 -0
  317. package/dist/gen/abis/3eafdb9c0c96.js +345 -0
  318. package/dist/gen/abis/403090974089.d.ts +590 -0
  319. package/dist/gen/abis/403090974089.js +766 -0
  320. package/dist/gen/abis/4167268939aa.d.ts +306 -0
  321. package/dist/gen/abis/4167268939aa.js +393 -0
  322. package/dist/gen/abis/46a90f031627.d.ts +940 -0
  323. package/dist/gen/abis/46a90f031627.js +1196 -0
  324. package/dist/gen/abis/49cb4deac436.d.ts +2041 -0
  325. package/dist/gen/abis/49cb4deac436.js +2618 -0
  326. package/dist/gen/abis/4d8bacb29f20.d.ts +991 -0
  327. package/dist/gen/abis/4d8bacb29f20.js +1271 -0
  328. package/dist/gen/abis/69f7ea016674.d.ts +202 -0
  329. package/dist/gen/abis/69f7ea016674.js +265 -0
  330. package/dist/gen/abis/734133340224.d.ts +1371 -0
  331. package/dist/gen/abis/734133340224.js +1767 -0
  332. package/dist/gen/abis/73ce587427d9.d.ts +2509 -0
  333. package/dist/gen/abis/73ce587427d9.js +3227 -0
  334. package/dist/gen/abis/7837fce34f57.d.ts +169 -0
  335. package/dist/gen/abis/7837fce34f57.js +221 -0
  336. package/dist/gen/abis/7efe899eb023.d.ts +1005 -0
  337. package/dist/gen/abis/7efe899eb023.js +1283 -0
  338. package/dist/gen/abis/836562f8baa3.d.ts +951 -0
  339. package/dist/gen/abis/836562f8baa3.js +1227 -0
  340. package/dist/gen/abis/83cdff66efa0.d.ts +278 -0
  341. package/dist/gen/abis/83cdff66efa0.js +365 -0
  342. package/dist/gen/abis/947a1caa8a16.d.ts +59 -0
  343. package/dist/gen/abis/947a1caa8a16.js +80 -0
  344. package/dist/gen/abis/9611b42c6d5f.d.ts +452 -0
  345. package/dist/gen/abis/9611b42c6d5f.js +590 -0
  346. package/dist/gen/abis/96e8cf2c064f.d.ts +1494 -0
  347. package/dist/gen/abis/96e8cf2c064f.js +1927 -0
  348. package/dist/gen/abis/9818d0265866.d.ts +874 -0
  349. package/dist/gen/abis/9818d0265866.js +1115 -0
  350. package/dist/gen/abis/9d6d8799f16f.d.ts +457 -0
  351. package/dist/gen/abis/9d6d8799f16f.js +587 -0
  352. package/dist/gen/abis/acdb264ea8c1.d.ts +2185 -0
  353. package/dist/gen/abis/acdb264ea8c1.js +2817 -0
  354. package/dist/gen/abis/b127df9297ac.d.ts +226 -0
  355. package/dist/gen/abis/b127df9297ac.js +292 -0
  356. package/dist/gen/abis/b3a5eed8be5c.d.ts +270 -0
  357. package/dist/gen/abis/b3a5eed8be5c.js +356 -0
  358. package/dist/gen/abis/b60156cb0dcf.d.ts +287 -0
  359. package/dist/gen/abis/b60156cb0dcf.js +376 -0
  360. package/dist/gen/abis/be2135567d5c.d.ts +358 -0
  361. package/dist/gen/abis/be2135567d5c.js +461 -0
  362. package/dist/gen/abis/c76e9681cb2f.d.ts +200 -0
  363. package/dist/gen/abis/c76e9681cb2f.js +265 -0
  364. package/dist/gen/abis/c84f8d0f9550.d.ts +16 -0
  365. package/dist/gen/abis/c84f8d0f9550.js +22 -0
  366. package/dist/gen/abis/cf9c2beac210.d.ts +139 -0
  367. package/dist/gen/abis/cf9c2beac210.js +180 -0
  368. package/dist/gen/abis/d407c410234a.d.ts +490 -0
  369. package/dist/gen/abis/d407c410234a.js +640 -0
  370. package/dist/gen/abis/d898521cbf00.d.ts +1591 -0
  371. package/dist/gen/abis/d898521cbf00.js +2070 -0
  372. package/dist/gen/abis/ecc4ba1d4404.d.ts +51 -0
  373. package/dist/gen/abis/ecc4ba1d4404.js +69 -0
  374. package/dist/gen/abis/eeb301f1a74b.d.ts +1466 -0
  375. package/dist/gen/abis/eeb301f1a74b.js +1872 -0
  376. package/dist/gen/abis/f4c6a88bd236.d.ts +686 -0
  377. package/dist/gen/abis/f4c6a88bd236.js +884 -0
  378. package/dist/gen/abis/f97be7b72b2f.d.ts +633 -0
  379. package/dist/gen/abis/f97be7b72b2f.js +810 -0
  380. package/dist/gen/abis/faaa48786a09.d.ts +547 -0
  381. package/dist/gen/abis/faaa48786a09.js +703 -0
  382. package/dist/gen/abis/fd1f15294d67.d.ts +774 -0
  383. package/dist/gen/abis/fd1f15294d67.js +1001 -0
  384. package/dist/gen/abis/fea5d0628b94.d.ts +109 -0
  385. package/dist/gen/abis/fea5d0628b94.js +144 -0
  386. package/dist/gen/abis-index.d.ts +29245 -0
  387. package/dist/gen/abis-index.js +91 -0
  388. package/dist/gen/meta.d.ts +5 -0
  389. package/dist/gen/meta.js +6 -0
  390. package/dist/gen/registry.d.ts +216 -92124
  391. package/dist/gen/registry.js +3696 -38212
  392. package/dist/index.d.ts +63 -16
  393. package/dist/index.js +94 -37
  394. package/package.json +24 -1
package/README.md CHANGED
@@ -8,44 +8,76 @@ reconciled against.
8
8
  npm install @somnia-chain/contracts-sdk
9
9
  ```
10
10
 
11
+ The package is split by delivery mechanism, deliberately. Addresses and chain
12
+ information are small and change on every deploy — they live in the root
13
+ entry, ~170 kB of data. ABIs are megabytes that change only when contracts
14
+ change — they ship one module per contract, so a client bundle carries exactly
15
+ the ABIs it imports and a bundle that needs only addresses carries none.
16
+
17
+ ## Addresses and networks — the root entry
18
+
11
19
  ```ts
12
- import { getAddress, getAbi, getContract, registry } from "@somnia-chain/contracts-sdk";
20
+ import { address, tryAddress, contracts, identify } from "@somnia-chain/contracts-sdk";
21
+
22
+ address("somnia-mainnet", "somnia-markets", "MarketsCore");
23
+ // throws on unknown names — the "this must exist" form; every slug and
24
+ // name is autocompleted and the address is a literal type
13
25
 
14
- getAddress("somnia-mainnet", "somnia-markets", "MarketsCore");
15
- // -> "0x…", typed as the literal, with every slug and name autocompleted
26
+ tryAddress("hideki-testnet", "somnia-markets", "MarketsCore"); // Address | null
27
+ // the "is it deployed here?" form — projects do not span every network
16
28
 
17
- const { address, abi } = getContract("somnia-mainnet", "somnia-markets", "MarketsCore");
18
- // abi is `as const` — viem infers function names and argument types from it
29
+ contracts("somnia-mainnet", "somnia-markets"); // enumerate, for admin screens
30
+ identify("somnia-mainnet", "0x1a47…"); // reverse lookup: project, name, kind
19
31
  ```
20
32
 
21
- The whole tree is also there as one constant, `registry`, keyed
22
- network → project → contract, plus one exported constant per network
23
- (`somniaMainnet`, …) and `networks` with every network's chain information.
33
+ Networks: `networks` (all, retired included), `network(slug)`,
34
+ `liveNetworks()`, and `toChain(slug, { rpcUrl })` for a viem-`Chain`-shaped
35
+ object — you supply the RPC URL, the registry deliberately records no public
36
+ endpoint. `registryVersion` says which commit the data came from.
24
37
 
25
- For viem, `toChain` builds a `Chain`-shaped object — the registry records no
26
- public RPC endpoint, so you bring your own:
38
+ ### Chain IDs are not unique
27
39
 
28
- ```ts
29
- import { createPublicClient, http } from "viem";
30
- import { toChain } from "@somnia-chain/contracts-sdk";
40
+ Networks are keyed by **slug**, never by chain id: a testnet regenesis reuses
41
+ the chain id with none of the state, so one id can name two networks with
42
+ different contracts at identical addresses.
31
43
 
32
- const chain = toChain("somnia-mainnet", { rpcUrl: "https://your-rpc" });
33
- const client = createPublicClient({ chain, transport: http() });
44
+ ```ts
45
+ networksByChainId(50383); // -> both hideki testnets — an array, deliberately
34
46
  ```
35
47
 
36
- Exported types: `Registry`, `NetworkSlug`, `ProjectSlug`, `ContractName`,
37
- `ContractEntry`, `NetworkInfo`, `Address`.
48
+ ## ABIs — typed per contract, or the whole corpus
38
49
 
39
- ## Chain IDs are not unique
50
+ ```ts
51
+ // Build-time, typed, tree-shakeable: one module per contract.
52
+ import { SafeAbi } from "@somnia-chain/contracts-sdk/abi/somnia-accounts/Safe";
53
+ // as-const literal — viem infers function names and argument types
54
+
55
+ // Runtime, whole corpus (~1 MB — server/admin paths):
56
+ import { abiFor, abiByHash, verifyAbi, writeFunctions } from "@somnia-chain/contracts-sdk/abis";
57
+
58
+ abiFor("somnia-mainnet", "somnia-markets", "MarketsCore"); // Abi | null
59
+ abiByHash("sha256:…"); // historical ABIs too — decode an old tx correctly
60
+ verifyAbi("sha256:…", abi); // sha256 over key-sorted compact JSON — verify, don't trust filenames
61
+ writeFunctions("somnia-mainnet", "somnia-markets", "MarketsCore");
62
+ // all state-changing functions — allowlists are application policy, not deployment facts
63
+ ```
64
+
65
+ ## Decoding calldata
40
66
 
41
- Somnia networks are keyed by **slug**, never by chain id: a testnet regenesis
42
- reuses the chain id with none of the state, so one id can name two networks
43
- with different contracts at identical addresses. If an id is all you have:
67
+ Requires `viem` (optional peer dependency; only this entry needs it).
44
68
 
45
69
  ```ts
46
- import { getNetworksByChainId } from "@somnia-chain/contracts-sdk";
70
+ import { decodeCall, decodeBySelector } from "@somnia-chain/contracts-sdk/decode";
71
+
72
+ const call = decodeCall("somnia-mainnet", to, data);
73
+ // identifies the target, decodes against its recorded ABI, and recurses
74
+ // through Safe execTransaction / MultiSend, Multicall3 and upgradeToAndCall —
75
+ // what a signer staring at hex actually needs
76
+
77
+ if (call.status === "decoded") call.signature; // "transfer(address,uint256)"
78
+ else call.selector; // undecoded is a variant, not an error
47
79
 
48
- getNetworksByChainId(50383); // -> both hideki testnets; filter on `status`
80
+ decodeBySelector(data); // 4-byte fallback across every ABI the registry holds
49
81
  ```
50
82
 
51
83
  ## Versioning
package/dist/abis.d.ts ADDED
@@ -0,0 +1,32 @@
1
+ import { abisByHash } from "./gen/abis-index.js";
2
+ import { type NetworkSlug } from "./index.js";
3
+ export { abisByHash };
4
+ export { abiDigest, verifyAbi } from "./digest.js";
5
+ /**
6
+ * Everything in this module drags the full ABI corpus (about a megabyte)
7
+ * into the importing bundle — that is its job; decoders need the whole
8
+ * corpus. A client bundle that needs one contract's ABI typed should import
9
+ * its `./abi/<project>/<Contract>` module instead, and one that needs only
10
+ * addresses should stay on the package root.
11
+ */
12
+ export interface AbiItem {
13
+ type: string;
14
+ name?: string;
15
+ inputs?: readonly unknown[];
16
+ outputs?: readonly unknown[];
17
+ stateMutability?: string;
18
+ [key: string]: unknown;
19
+ }
20
+ export type AbiFunction = AbiItem & {
21
+ type: "function";
22
+ };
23
+ /** The recorded ABI for one deployment, or null where the registry has none — including an unknown name, because the decoder path treats absence as an answer. For literal types, import the contract's `./abi/*` module. */
24
+ export declare function abiFor(net: NetworkSlug, project: string, name: string): readonly AbiItem[] | null;
25
+ /** Resolve a digest — including a historical one no current deployment points at — to its ABI. */
26
+ export declare function abiByHash(digest: string): readonly AbiItem[] | null;
27
+ /**
28
+ * The state-changing functions of one deployment's ABI. Deliberately the
29
+ * whole set: trimming it to an allowlist is operational policy, and policy
30
+ * belongs to the application, not to a registry of deployment facts.
31
+ */
32
+ export declare function writeFunctions(net: NetworkSlug, project: string, name: string): AbiFunction[];
package/dist/abis.js ADDED
@@ -0,0 +1,26 @@
1
+ import { abisByHash } from "./gen/abis-index.js";
2
+ import { registry } from "./index.js";
3
+ export { abisByHash };
4
+ export { abiDigest, verifyAbi } from "./digest.js";
5
+ /** The recorded ABI for one deployment, or null where the registry has none — including an unknown name, because the decoder path treats absence as an answer. For literal types, import the contract's `./abi/*` module. */
6
+ export function abiFor(net, project, name) {
7
+ const book = registry[net]?.contracts;
8
+ const digest = book?.[project]?.[name]?.abi;
9
+ return digest ? abiByHash(digest) : null;
10
+ }
11
+ /** Resolve a digest — including a historical one no current deployment points at — to its ABI. */
12
+ export function abiByHash(digest) {
13
+ return abisByHash[digest] ?? null;
14
+ }
15
+ /**
16
+ * The state-changing functions of one deployment's ABI. Deliberately the
17
+ * whole set: trimming it to an allowlist is operational policy, and policy
18
+ * belongs to the application, not to a registry of deployment facts.
19
+ */
20
+ export function writeFunctions(net, project, name) {
21
+ const abi = abiFor(net, project, name);
22
+ if (!abi)
23
+ return [];
24
+ return abi.filter((item) => item.type === "function" &&
25
+ (item.stateMutability === "nonpayable" || item.stateMutability === "payable"));
26
+ }
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Calldata decoding against the registry's ABI corpus, engine only: the
3
+ * dependencies come in through `DecoderDeps`, so the engine is a pure
4
+ * function of them and testable without the generated data modules.
5
+ * `./decode` wires it to the real registry.
6
+ */
7
+ export type Hex = `0x${string}`;
8
+ export interface DecodedIdentity {
9
+ project: string;
10
+ name: string;
11
+ kind: string;
12
+ }
13
+ /**
14
+ * Undecoded is a variant, not an error: calldata to a contract the registry
15
+ * has never seen is normal on a permissionless chain, and the caller's UI
16
+ * has to render that state either way.
17
+ */
18
+ export type DecodedCall = {
19
+ status: "decoded";
20
+ to?: Hex;
21
+ contract?: DecodedIdentity;
22
+ functionName: string;
23
+ signature: string;
24
+ args: readonly unknown[];
25
+ /** Other registry signatures sharing the selector; present when the match was by selector and ambiguous. */
26
+ alternatives?: string[];
27
+ /** Nested decodes: Safe execTransaction/multiSend, Multicall3, upgradeToAndCall. */
28
+ calls?: DecodedCall[];
29
+ } | {
30
+ status: "undecoded";
31
+ to?: Hex;
32
+ selector: Hex | null;
33
+ data: Hex;
34
+ };
35
+ export interface DecoderDeps {
36
+ /** The recorded ABI for a deployment, or null. */
37
+ abiFor(net: string, project: string, name: string): readonly unknown[] | null;
38
+ /** Reverse lookup of an address on a network. */
39
+ identify(net: string, addr: string): {
40
+ project: string;
41
+ name: string;
42
+ kind: string;
43
+ } | null;
44
+ /** The whole ABI corpus, for the selector fallback. */
45
+ allAbis(): Iterable<readonly unknown[]>;
46
+ }
47
+ export interface Decoder {
48
+ decodeCall(net: string, to: Hex, data: Hex): DecodedCall;
49
+ decodeBySelector(data: Hex): DecodedCall;
50
+ }
51
+ export declare function createDecoder(deps: DecoderDeps): Decoder;
@@ -0,0 +1,145 @@
1
+ import { decodeFunctionData, toFunctionSelector } from "viem";
2
+ export function createDecoder(deps) {
3
+ let selectorIndex = null;
4
+ function bySelector() {
5
+ if (selectorIndex)
6
+ return selectorIndex;
7
+ selectorIndex = new Map();
8
+ const seen = new Set();
9
+ for (const abi of deps.allAbis()) {
10
+ for (const item of abi) {
11
+ if (item.type !== "function")
12
+ continue;
13
+ let selector;
14
+ let signature;
15
+ try {
16
+ selector = toFunctionSelector(item);
17
+ signature = fnSignature(item);
18
+ }
19
+ catch {
20
+ continue;
21
+ }
22
+ const key = `${selector} ${signature}`;
23
+ if (seen.has(key))
24
+ continue;
25
+ seen.add(key);
26
+ const list = selectorIndex.get(selector) ?? [];
27
+ list.push(item);
28
+ selectorIndex.set(selector, list);
29
+ }
30
+ }
31
+ return selectorIndex;
32
+ }
33
+ function tryDecode(abi, data) {
34
+ try {
35
+ const { functionName, args } = decodeFunctionData({ abi: abi, data });
36
+ const item = abi.find((i) => i.type === "function" && i.name === functionName && toFunctionSelector(i) === data.slice(0, 10));
37
+ return item ? { functionName, args: args ?? [], item } : null;
38
+ }
39
+ catch {
40
+ return null;
41
+ }
42
+ }
43
+ function nested(net, decoded) {
44
+ const { functionName, args } = decoded;
45
+ // Safe execTransaction(to, value, data, operation, …) — one wrapped call.
46
+ if (functionName === "execTransaction" && args.length >= 4) {
47
+ return [decodeCall(net, args[0], args[2])];
48
+ }
49
+ // Safe MultiSend multiSend(bytes) — packed (operation, to, value, dataLength, data)*.
50
+ if (functionName === "multiSend" && typeof args[0] === "string") {
51
+ return decodeMultiSendBlob(net, args[0]);
52
+ }
53
+ // Multicall3: aggregate((address,bytes)[]), tryAggregate(bool,(address,bytes)[]), aggregate3((address,bool,bytes)[]), aggregate3Value(…).
54
+ if (/^(aggregate3?(Value)?|tryAggregate(3)?|tryBlockAndAggregate|blockAndAggregate)$/.test(functionName)) {
55
+ const calls = args.find(Array.isArray);
56
+ if (calls) {
57
+ return calls
58
+ .filter((c) => c.target !== undefined && c.callData !== undefined)
59
+ .map((c) => decodeCall(net, c.target, c.callData));
60
+ }
61
+ }
62
+ // ERC-1967 upgradeToAndCall(newImplementation, data) — the payload runs against the new implementation.
63
+ if (functionName === "upgradeToAndCall" && args.length >= 2 && typeof args[1] === "string" && args[1].length > 2) {
64
+ return [decodeCall(net, args[0], args[1])];
65
+ }
66
+ return undefined;
67
+ }
68
+ function decodeMultiSendBlob(net, blob) {
69
+ const out = [];
70
+ const hex = blob.slice(2);
71
+ let i = 0;
72
+ // operation: 1 byte, to: 20, value: 32, dataLength: 32, data: dataLength.
73
+ while (i + 170 <= hex.length) {
74
+ const to = `0x${hex.slice(i + 2, i + 42)}`;
75
+ const dataLength = parseInt(hex.slice(i + 106, i + 170), 16);
76
+ if (!Number.isFinite(dataLength) || i + 170 + dataLength * 2 > hex.length)
77
+ break;
78
+ const data = `0x${hex.slice(i + 170, i + 170 + dataLength * 2)}`;
79
+ out.push(decodeCall(net, to, data));
80
+ i += 170 + dataLength * 2;
81
+ }
82
+ return out;
83
+ }
84
+ function decodeCall(net, to, data) {
85
+ const selector = data.length >= 10 ? data.slice(0, 10) : null;
86
+ const identity = deps.identify(net, to);
87
+ if (identity) {
88
+ const abi = deps.abiFor(net, identity.project, identity.name);
89
+ if (abi) {
90
+ const decoded = tryDecode(abi, data);
91
+ if (decoded) {
92
+ const calls = nested(net, decoded);
93
+ return {
94
+ status: "decoded",
95
+ to,
96
+ contract: { project: identity.project, name: identity.name, kind: identity.kind },
97
+ functionName: decoded.functionName,
98
+ signature: fnSignature(decoded.item),
99
+ args: decoded.args,
100
+ ...(calls ? { calls } : {}),
101
+ };
102
+ }
103
+ }
104
+ }
105
+ const fallback = decodeBySelector(data);
106
+ if (fallback.status === "decoded") {
107
+ return { ...fallback, to, ...(identity ? { contract: identity } : {}) };
108
+ }
109
+ return { status: "undecoded", to, selector, data };
110
+ }
111
+ function decodeBySelector(data) {
112
+ const selector = data.length >= 10 ? data.slice(0, 10) : null;
113
+ if (!selector)
114
+ return { status: "undecoded", selector: null, data };
115
+ const candidates = bySelector().get(selector) ?? [];
116
+ for (const item of candidates) {
117
+ const decoded = tryDecode([item], data);
118
+ if (!decoded)
119
+ continue;
120
+ const alternatives = candidates.filter((c) => c !== item).map(fnSignature);
121
+ const calls = nested("", decoded);
122
+ return {
123
+ status: "decoded",
124
+ functionName: decoded.functionName,
125
+ signature: fnSignature(item),
126
+ args: decoded.args,
127
+ ...(alternatives.length > 0 ? { alternatives } : {}),
128
+ ...(calls ? { calls } : {}),
129
+ };
130
+ }
131
+ return { status: "undecoded", selector, data };
132
+ }
133
+ return { decodeCall, decodeBySelector };
134
+ }
135
+ function fnSignature(item) {
136
+ const inputs = (item.inputs ?? []).map((input) => formatParam(input));
137
+ return `${item.name}(${inputs.join(",")})`;
138
+ }
139
+ function formatParam(param) {
140
+ if (param.type.startsWith("tuple") && param.components) {
141
+ const inner = param.components.map((c) => formatParam(c)).join(",");
142
+ return `(${inner})${param.type.slice(5)}`;
143
+ }
144
+ return param.type;
145
+ }
@@ -0,0 +1,15 @@
1
+ import { type NetworkSlug } from "./index.js";
2
+ import { createDecoder, type DecodedCall, type Decoder, type Hex } from "./decode-core.js";
3
+ export { createDecoder };
4
+ export type { DecodedCall, Decoder, Hex };
5
+ /**
6
+ * Decode calldata sent to an address on a network: reverse-lookup the
7
+ * contract, decode against its recorded ABI, and recurse through the
8
+ * wrappers a signer actually meets — Safe execTransaction and MultiSend,
9
+ * Multicall3 aggregates, upgradeToAndCall payloads. Falls back to a
10
+ * selector search across every registry ABI; an `undecoded` result is a
11
+ * normal variant, not an error.
12
+ */
13
+ export declare function decodeCall(net: NetworkSlug, to: Hex, data: Hex): DecodedCall;
14
+ /** Decode calldata by selector alone, against every ABI the registry holds. */
15
+ export declare function decodeBySelector(data: Hex): DecodedCall;
package/dist/decode.js ADDED
@@ -0,0 +1,30 @@
1
+ import { abisByHash } from "./gen/abis-index.js";
2
+ import { abiFor } from "./abis.js";
3
+ import { identify, registry } from "./index.js";
4
+ import { createDecoder } from "./decode-core.js";
5
+ export { createDecoder };
6
+ /**
7
+ * The registry-wired decoder. Importing this module pulls the full ABI
8
+ * corpus into the bundle and requires `viem` (an optional peer dependency
9
+ * everywhere else in the package).
10
+ */
11
+ const decoder = createDecoder({
12
+ abiFor: (net, project, name) => abiFor(net, project, name),
13
+ identify: (net, addr) => (net in registry ? identify(net, addr) : null),
14
+ allAbis: () => Object.values(abisByHash),
15
+ });
16
+ /**
17
+ * Decode calldata sent to an address on a network: reverse-lookup the
18
+ * contract, decode against its recorded ABI, and recurse through the
19
+ * wrappers a signer actually meets — Safe execTransaction and MultiSend,
20
+ * Multicall3 aggregates, upgradeToAndCall payloads. Falls back to a
21
+ * selector search across every registry ABI; an `undecoded` result is a
22
+ * normal variant, not an error.
23
+ */
24
+ export function decodeCall(net, to, data) {
25
+ return decoder.decodeCall(net, to, data);
26
+ }
27
+ /** Decode calldata by selector alone, against every ABI the registry holds. */
28
+ export function decodeBySelector(data) {
29
+ return decoder.decodeBySelector(data);
30
+ }
@@ -0,0 +1,11 @@
1
+ import type { AbiDigest } from "./index.js";
2
+ /**
3
+ * The registry's canonical ABI digest: sha256 over the ABI's canonical JSON —
4
+ * keys recursively sorted, compact separators, UTF-8. This mirrors the
5
+ * registry's own `abiDigest` exactly; the sorting is the part a consumer
6
+ * cannot guess from the digest alone, which is why the function is exported
7
+ * instead of being something everyone reverse-engineers.
8
+ */
9
+ export declare function abiDigest(abi: readonly unknown[]): AbiDigest;
10
+ /** Does this ABI hash to this digest? Verify instead of trusting a filename. */
11
+ export declare function verifyAbi(digest: string, abi: readonly unknown[]): boolean;
package/dist/digest.js ADDED
@@ -0,0 +1,33 @@
1
+ import { sha256 } from "@noble/hashes/sha2.js";
2
+ /**
3
+ * The registry's canonical ABI digest: sha256 over the ABI's canonical JSON —
4
+ * keys recursively sorted, compact separators, UTF-8. This mirrors the
5
+ * registry's own `abiDigest` exactly; the sorting is the part a consumer
6
+ * cannot guess from the digest alone, which is why the function is exported
7
+ * instead of being something everyone reverse-engineers.
8
+ */
9
+ export function abiDigest(abi) {
10
+ const canonical = JSON.stringify(sortKeys(abi));
11
+ const bytes = sha256(new TextEncoder().encode(canonical));
12
+ let hex = "";
13
+ for (const b of bytes)
14
+ hex += b.toString(16).padStart(2, "0");
15
+ return `sha256:${hex}`;
16
+ }
17
+ /** Does this ABI hash to this digest? Verify instead of trusting a filename. */
18
+ export function verifyAbi(digest, abi) {
19
+ return abiDigest(abi) === digest;
20
+ }
21
+ // Arrays keep their order — in an ABI, parameter order is meaning.
22
+ function sortKeys(value) {
23
+ if (Array.isArray(value))
24
+ return value.map(sortKeys);
25
+ if (value && typeof value === "object" && value.constructor === Object) {
26
+ const out = {};
27
+ for (const key of Object.keys(value).sort()) {
28
+ out[key] = sortKeys(value[key]);
29
+ }
30
+ return out;
31
+ }
32
+ return value;
33
+ }
@@ -0,0 +1,2 @@
1
+ export { abi_d407c410234a as ProtocolDeployerAbi } from "../../abis/d407c410234a.js";
2
+ export declare const ProtocolDeployerAbiDigest = "sha256:d407c410234ab956d2e27c73379269aeeb640dda07ad92687312da893af03888";
@@ -0,0 +1,3 @@
1
+ // Generated by `registry sdk` from dist-public/ — do not edit.
2
+ export { abi_d407c410234a as ProtocolDeployerAbi } from "../../abis/d407c410234a.js";
3
+ export const ProtocolDeployerAbiDigest = "sha256:d407c410234ab956d2e27c73379269aeeb640dda07ad92687312da893af03888";
@@ -0,0 +1,2 @@
1
+ export { abi_83cdff66efa0 as CompatibilityFallbackHandlerAbi } from "../../abis/83cdff66efa0.js";
2
+ export declare const CompatibilityFallbackHandlerAbiDigest = "sha256:83cdff66efa0922471f2e14c996ffeb2e5d54d8e0f0a2a841cb8b07a1b1ef10f";
@@ -0,0 +1,3 @@
1
+ // Generated by `registry sdk` from dist-public/ — do not edit.
2
+ export { abi_83cdff66efa0 as CompatibilityFallbackHandlerAbi } from "../../abis/83cdff66efa0.js";
3
+ export const CompatibilityFallbackHandlerAbiDigest = "sha256:83cdff66efa0922471f2e14c996ffeb2e5d54d8e0f0a2a841cb8b07a1b1ef10f";
@@ -0,0 +1,2 @@
1
+ export { abi_c84f8d0f9550 as MultiSendAbi } from "../../abis/c84f8d0f9550.js";
2
+ export declare const MultiSendAbiDigest = "sha256:c84f8d0f9550a2f87ed8b80bc9d211c8ec2fc9a32a146a905b75b8a54c3d1782";
@@ -0,0 +1,3 @@
1
+ // Generated by `registry sdk` from dist-public/ — do not edit.
2
+ export { abi_c84f8d0f9550 as MultiSendAbi } from "../../abis/c84f8d0f9550.js";
3
+ export const MultiSendAbiDigest = "sha256:c84f8d0f9550a2f87ed8b80bc9d211c8ec2fc9a32a146a905b75b8a54c3d1782";
@@ -0,0 +1,2 @@
1
+ export { abi_0b3cd40e0bc8 as MultiSendCallOnlyAbi } from "../../abis/0b3cd40e0bc8.js";
2
+ export declare const MultiSendCallOnlyAbiDigest = "sha256:0b3cd40e0bc8fe6ff365ad1eb3792ba5a06148a0701e837a9bfdf5d8e64e271b";
@@ -0,0 +1,3 @@
1
+ // Generated by `registry sdk` from dist-public/ — do not edit.
2
+ export { abi_0b3cd40e0bc8 as MultiSendCallOnlyAbi } from "../../abis/0b3cd40e0bc8.js";
3
+ export const MultiSendCallOnlyAbiDigest = "sha256:0b3cd40e0bc8fe6ff365ad1eb3792ba5a06148a0701e837a9bfdf5d8e64e271b";
@@ -0,0 +1,2 @@
1
+ export { abi_fd1f15294d67 as SafeAbi } from "../../abis/fd1f15294d67.js";
2
+ export declare const SafeAbiDigest = "sha256:fd1f15294d679f41f915a7963f3e46b5b6f6c5bc7d79d80c09a593ebf77f1303";
@@ -0,0 +1,3 @@
1
+ // Generated by `registry sdk` from dist-public/ — do not edit.
2
+ export { abi_fd1f15294d67 as SafeAbi } from "../../abis/fd1f15294d67.js";
3
+ export const SafeAbiDigest = "sha256:fd1f15294d679f41f915a7963f3e46b5b6f6c5bc7d79d80c09a593ebf77f1303";
@@ -0,0 +1,2 @@
1
+ export { abi_1a5696b34cbf as SomniaAccountFactoryAbi } from "../../abis/1a5696b34cbf.js";
2
+ export declare const SomniaAccountFactoryAbiDigest = "sha256:1a5696b34cbfca5b274e5369ac92d345cab05ea79e7f60f16c9a46766955f02e";
@@ -0,0 +1,3 @@
1
+ // Generated by `registry sdk` from dist-public/ — do not edit.
2
+ export { abi_1a5696b34cbf as SomniaAccountFactoryAbi } from "../../abis/1a5696b34cbf.js";
3
+ export const SomniaAccountFactoryAbiDigest = "sha256:1a5696b34cbfca5b274e5369ac92d345cab05ea79e7f60f16c9a46766955f02e";
@@ -0,0 +1,2 @@
1
+ export { abi_1a5696b34cbf as SomniaAccountFactoryImplAbi } from "../../abis/1a5696b34cbf.js";
2
+ export declare const SomniaAccountFactoryImplAbiDigest = "sha256:1a5696b34cbfca5b274e5369ac92d345cab05ea79e7f60f16c9a46766955f02e";
@@ -0,0 +1,3 @@
1
+ // Generated by `registry sdk` from dist-public/ — do not edit.
2
+ export { abi_1a5696b34cbf as SomniaAccountFactoryImplAbi } from "../../abis/1a5696b34cbf.js";
3
+ export const SomniaAccountFactoryImplAbiDigest = "sha256:1a5696b34cbfca5b274e5369ac92d345cab05ea79e7f60f16c9a46766955f02e";
@@ -0,0 +1,2 @@
1
+ export { abi_1a5696b34cbf as SomniaAccountFactoryImplV2Abi } from "../../abis/1a5696b34cbf.js";
2
+ export declare const SomniaAccountFactoryImplV2AbiDigest = "sha256:1a5696b34cbfca5b274e5369ac92d345cab05ea79e7f60f16c9a46766955f02e";
@@ -0,0 +1,3 @@
1
+ // Generated by `registry sdk` from dist-public/ — do not edit.
2
+ export { abi_1a5696b34cbf as SomniaAccountFactoryImplV2Abi } from "../../abis/1a5696b34cbf.js";
3
+ export const SomniaAccountFactoryImplV2AbiDigest = "sha256:1a5696b34cbfca5b274e5369ac92d345cab05ea79e7f60f16c9a46766955f02e";
@@ -0,0 +1,2 @@
1
+ export { abi_1a5696b34cbf as SomniaAccountFactoryImplV3Abi } from "../../abis/1a5696b34cbf.js";
2
+ export declare const SomniaAccountFactoryImplV3AbiDigest = "sha256:1a5696b34cbfca5b274e5369ac92d345cab05ea79e7f60f16c9a46766955f02e";
@@ -0,0 +1,3 @@
1
+ // Generated by `registry sdk` from dist-public/ — do not edit.
2
+ export { abi_1a5696b34cbf as SomniaAccountFactoryImplV3Abi } from "../../abis/1a5696b34cbf.js";
3
+ export const SomniaAccountFactoryImplV3AbiDigest = "sha256:1a5696b34cbfca5b274e5369ac92d345cab05ea79e7f60f16c9a46766955f02e";
@@ -0,0 +1,2 @@
1
+ export { abi_2fc4ebdf8536 as agentRegistryAbi } from "../../abis/2fc4ebdf8536.js";
2
+ export declare const agentRegistryAbiDigest = "sha256:2fc4ebdf8536a24df7c5b9e3eeafbf06c5469f9d0648da4761c7e2df158708ae";
@@ -0,0 +1,3 @@
1
+ // Generated by `registry sdk` from dist-public/ — do not edit.
2
+ export { abi_2fc4ebdf8536 as agentRegistryAbi } from "../../abis/2fc4ebdf8536.js";
3
+ export const agentRegistryAbiDigest = "sha256:2fc4ebdf8536a24df7c5b9e3eeafbf06c5469f9d0648da4761c7e2df158708ae";
@@ -0,0 +1,2 @@
1
+ export { abi_ecc4ba1d4404 as committeeAbi } from "../../abis/ecc4ba1d4404.js";
2
+ export declare const committeeAbiDigest = "sha256:ecc4ba1d4404f9487b4d5d3e2b34ef1b7a1d9d188dbc94925ee07cd57d02943e";
@@ -0,0 +1,3 @@
1
+ // Generated by `registry sdk` from dist-public/ — do not edit.
2
+ export { abi_ecc4ba1d4404 as committeeAbi } from "../../abis/ecc4ba1d4404.js";
3
+ export const committeeAbiDigest = "sha256:ecc4ba1d4404f9487b4d5d3e2b34ef1b7a1d9d188dbc94925ee07cd57d02943e";
@@ -0,0 +1,2 @@
1
+ export { abi_ecc4ba1d4404 as somniaAgentsAbi } from "../../abis/ecc4ba1d4404.js";
2
+ export declare const somniaAgentsAbiDigest = "sha256:ecc4ba1d4404f9487b4d5d3e2b34ef1b7a1d9d188dbc94925ee07cd57d02943e";
@@ -0,0 +1,3 @@
1
+ // Generated by `registry sdk` from dist-public/ — do not edit.
2
+ export { abi_ecc4ba1d4404 as somniaAgentsAbi } from "../../abis/ecc4ba1d4404.js";
3
+ export const somniaAgentsAbiDigest = "sha256:ecc4ba1d4404f9487b4d5d3e2b34ef1b7a1d9d188dbc94925ee07cd57d02943e";
@@ -0,0 +1,2 @@
1
+ export { abi_be2135567d5c as agent_aggregate_oracle_SBTCD_readerAbi } from "../../abis/be2135567d5c.js";
2
+ export declare const agent_aggregate_oracle_SBTCD_readerAbiDigest = "sha256:be2135567d5c10f0eb0aa30a9419672b2aac42121cc807e215cdbbaf6200770d";
@@ -0,0 +1,3 @@
1
+ // Generated by `registry sdk` from dist-public/ — do not edit.
2
+ export { abi_be2135567d5c as agent_aggregate_oracle_SBTCD_readerAbi } from "../../abis/be2135567d5c.js";
3
+ export const agent_aggregate_oracle_SBTCD_readerAbiDigest = "sha256:be2135567d5c10f0eb0aa30a9419672b2aac42121cc807e215cdbbaf6200770d";
@@ -0,0 +1,2 @@
1
+ export { abi_734133340224 as agent_aggregate_oracle_aggregateImplementationAbi } from "../../abis/734133340224.js";
2
+ export declare const agent_aggregate_oracle_aggregateImplementationAbiDigest = "sha256:73413334022417d0cca9c2f0f7194bd77f0120e9de7849bdf83a188390f3cc4d";
@@ -0,0 +1,3 @@
1
+ // Generated by `registry sdk` from dist-public/ — do not edit.
2
+ export { abi_734133340224 as agent_aggregate_oracle_aggregateImplementationAbi } from "../../abis/734133340224.js";
3
+ export const agent_aggregate_oracle_aggregateImplementationAbiDigest = "sha256:73413334022417d0cca9c2f0f7194bd77f0120e9de7849bdf83a188390f3cc4d";
@@ -0,0 +1,2 @@
1
+ export { abi_ecc4ba1d4404 as agent_aggregate_oracle_aggregateOracleAbi } from "../../abis/ecc4ba1d4404.js";
2
+ export declare const agent_aggregate_oracle_aggregateOracleAbiDigest = "sha256:ecc4ba1d4404f9487b4d5d3e2b34ef1b7a1d9d188dbc94925ee07cd57d02943e";
@@ -0,0 +1,3 @@
1
+ // Generated by `registry sdk` from dist-public/ — do not edit.
2
+ export { abi_ecc4ba1d4404 as agent_aggregate_oracle_aggregateOracleAbi } from "../../abis/ecc4ba1d4404.js";
3
+ export const agent_aggregate_oracle_aggregateOracleAbiDigest = "sha256:ecc4ba1d4404f9487b4d5d3e2b34ef1b7a1d9d188dbc94925ee07cd57d02943e";
@@ -0,0 +1,2 @@
1
+ export { abi_ecc4ba1d4404 as agent_oracles_factoryAbi } from "../../abis/ecc4ba1d4404.js";
2
+ export declare const agent_oracles_factoryAbiDigest = "sha256:ecc4ba1d4404f9487b4d5d3e2b34ef1b7a1d9d188dbc94925ee07cd57d02943e";
@@ -0,0 +1,3 @@
1
+ // Generated by `registry sdk` from dist-public/ — do not edit.
2
+ export { abi_ecc4ba1d4404 as agent_oracles_factoryAbi } from "../../abis/ecc4ba1d4404.js";
3
+ export const agent_oracles_factoryAbiDigest = "sha256:ecc4ba1d4404f9487b4d5d3e2b34ef1b7a1d9d188dbc94925ee07cd57d02943e";
@@ -0,0 +1,2 @@
1
+ export { abi_b60156cb0dcf as binary_market_makers_accessControlAbi } from "../../abis/b60156cb0dcf.js";
2
+ export declare const binary_market_makers_accessControlAbiDigest = "sha256:b60156cb0dcfdbb0e67a06273fa9b87a47c11f341fac18eee0dfd0bb8e833221";
@@ -0,0 +1,3 @@
1
+ // Generated by `registry sdk` from dist-public/ — do not edit.
2
+ export { abi_b60156cb0dcf as binary_market_makers_accessControlAbi } from "../../abis/b60156cb0dcf.js";
3
+ export const binary_market_makers_accessControlAbiDigest = "sha256:b60156cb0dcfdbb0e67a06273fa9b87a47c11f341fac18eee0dfd0bb8e833221";
@@ -0,0 +1,2 @@
1
+ export { abi_fea5d0628b94 as binary_market_makers_upgradeableBeaconAbi } from "../../abis/fea5d0628b94.js";
2
+ export declare const binary_market_makers_upgradeableBeaconAbiDigest = "sha256:fea5d0628b949411003bc70ef6e2030085993c765fac2e77cd07f97bd8c6d366";
@@ -0,0 +1,3 @@
1
+ // Generated by `registry sdk` from dist-public/ — do not edit.
2
+ export { abi_fea5d0628b94 as binary_market_makers_upgradeableBeaconAbi } from "../../abis/fea5d0628b94.js";
3
+ export const binary_market_makers_upgradeableBeaconAbiDigest = "sha256:fea5d0628b949411003bc70ef6e2030085993c765fac2e77cd07f97bd8c6d366";