@chainlink/cre-sdk 0.0.1-alpha → 0.0.3-alpha

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 (377) hide show
  1. package/LICENSE.md +7 -7
  2. package/README.md +142 -247
  3. package/dist/generated/chain-selectors/mainnet/aptos/aptos-mainnet.js +1 -1
  4. package/dist/generated/chain-selectors/mainnet/evm/0g-mainnet.js +1 -1
  5. package/dist/generated/chain-selectors/mainnet/evm/abstract-mainnet.js +1 -1
  6. package/dist/generated/chain-selectors/mainnet/evm/apechain-mainnet.js +1 -1
  7. package/dist/generated/chain-selectors/mainnet/evm/areon-mainnet.js +1 -1
  8. package/dist/generated/chain-selectors/mainnet/evm/avalanche-mainnet.js +1 -1
  9. package/dist/generated/chain-selectors/mainnet/evm/avalanche-subnet-dexalot-mainnet.js +1 -1
  10. package/dist/generated/chain-selectors/mainnet/evm/berachain-mainnet.js +1 -1
  11. package/dist/generated/chain-selectors/mainnet/evm/binance.smart.chain-mainnet-opbnb-1.js +1 -1
  12. package/dist/generated/chain-selectors/mainnet/evm/binance.smart.chain-mainnet.js +1 -1
  13. package/dist/generated/chain-selectors/mainnet/evm/bitcichain-mainnet.js +1 -1
  14. package/dist/generated/chain-selectors/mainnet/evm/bitcoin-mainnet-bitlayer-1.js +1 -1
  15. package/dist/generated/chain-selectors/mainnet/evm/bitcoin-mainnet-bob-1.js +1 -1
  16. package/dist/generated/chain-selectors/mainnet/evm/bitcoin-mainnet-botanix.js +1 -1
  17. package/dist/generated/chain-selectors/mainnet/evm/bitcoin-mainnet-bsquared-1.js +1 -1
  18. package/dist/generated/chain-selectors/mainnet/evm/bitcoin-merlin-mainnet.js +1 -1
  19. package/dist/generated/chain-selectors/mainnet/evm/bittensor-mainnet.js +1 -1
  20. package/dist/generated/chain-selectors/mainnet/evm/bittorrent.chain-mainnet.js +1 -1
  21. package/dist/generated/chain-selectors/mainnet/evm/celo-mainnet.js +1 -1
  22. package/dist/generated/chain-selectors/mainnet/evm/codex-mainnet.js +1 -1
  23. package/dist/generated/chain-selectors/mainnet/evm/coinex.smart.chain-mainnet.js +1 -1
  24. package/dist/generated/chain-selectors/mainnet/evm/conflux-mainnet.js +1 -1
  25. package/dist/generated/chain-selectors/mainnet/evm/core-mainnet.js +1 -1
  26. package/dist/generated/chain-selectors/mainnet/evm/corn-mainnet.js +1 -1
  27. package/dist/generated/chain-selectors/mainnet/evm/cronos-mainnet.js +1 -1
  28. package/dist/generated/chain-selectors/mainnet/evm/cronos-zkevm-mainnet.js +1 -1
  29. package/dist/generated/chain-selectors/mainnet/evm/ethereum-mainnet-arbitrum-1-l3x-1.js +1 -1
  30. package/dist/generated/chain-selectors/mainnet/evm/ethereum-mainnet-arbitrum-1-treasure-1.js +1 -1
  31. package/dist/generated/chain-selectors/mainnet/evm/ethereum-mainnet-arbitrum-1.js +1 -1
  32. package/dist/generated/chain-selectors/mainnet/evm/ethereum-mainnet-astar-zkevm-1.js +1 -1
  33. package/dist/generated/chain-selectors/mainnet/evm/ethereum-mainnet-base-1.js +1 -1
  34. package/dist/generated/chain-selectors/mainnet/evm/ethereum-mainnet-blast-1.js +1 -1
  35. package/dist/generated/chain-selectors/mainnet/evm/ethereum-mainnet-hashkey-1.js +1 -1
  36. package/dist/generated/chain-selectors/mainnet/evm/ethereum-mainnet-immutable-zkevm-1.js +1 -1
  37. package/dist/generated/chain-selectors/mainnet/evm/ethereum-mainnet-ink-1.js +1 -1
  38. package/dist/generated/chain-selectors/mainnet/evm/ethereum-mainnet-kroma-1.js +1 -1
  39. package/dist/generated/chain-selectors/mainnet/evm/ethereum-mainnet-linea-1.js +1 -1
  40. package/dist/generated/chain-selectors/mainnet/evm/ethereum-mainnet-mantle-1.js +1 -1
  41. package/dist/generated/chain-selectors/mainnet/evm/ethereum-mainnet-metis-1.js +1 -1
  42. package/dist/generated/chain-selectors/mainnet/evm/ethereum-mainnet-mode-1.js +1 -1
  43. package/dist/generated/chain-selectors/mainnet/evm/ethereum-mainnet-optimism-1.js +1 -1
  44. package/dist/generated/chain-selectors/mainnet/evm/ethereum-mainnet-polygon-zkevm-1.js +1 -1
  45. package/dist/generated/chain-selectors/mainnet/evm/ethereum-mainnet-scroll-1.js +1 -1
  46. package/dist/generated/chain-selectors/mainnet/evm/ethereum-mainnet-taiko-1.js +1 -1
  47. package/dist/generated/chain-selectors/mainnet/evm/ethereum-mainnet-unichain-1.js +1 -1
  48. package/dist/generated/chain-selectors/mainnet/evm/ethereum-mainnet-worldchain-1.js +1 -1
  49. package/dist/generated/chain-selectors/mainnet/evm/ethereum-mainnet-xlayer-1.js +1 -1
  50. package/dist/generated/chain-selectors/mainnet/evm/ethereum-mainnet-zircuit-1.js +1 -1
  51. package/dist/generated/chain-selectors/mainnet/evm/ethereum-mainnet-zksync-1.js +1 -1
  52. package/dist/generated/chain-selectors/mainnet/evm/ethereum-mainnet.js +1 -1
  53. package/dist/generated/chain-selectors/mainnet/evm/etherlink-mainnet.js +1 -1
  54. package/dist/generated/chain-selectors/mainnet/evm/fantom-mainnet.js +1 -1
  55. package/dist/generated/chain-selectors/mainnet/evm/filecoin-mainnet.js +1 -1
  56. package/dist/generated/chain-selectors/mainnet/evm/fraxtal-mainnet.js +1 -1
  57. package/dist/generated/chain-selectors/mainnet/evm/gnosis.chain-mainnet.js +1 -1
  58. package/dist/generated/chain-selectors/mainnet/evm/hedera-mainnet.js +1 -1
  59. package/dist/generated/chain-selectors/mainnet/evm/hemi-mainnet.js +1 -1
  60. package/dist/generated/chain-selectors/mainnet/evm/hyperliquid-mainnet.js +1 -1
  61. package/dist/generated/chain-selectors/mainnet/evm/janction-mainnet.js +1 -1
  62. package/dist/generated/chain-selectors/mainnet/evm/kaia-mainnet.js +1 -1
  63. package/dist/generated/chain-selectors/mainnet/evm/kava-mainnet.js +1 -1
  64. package/dist/generated/chain-selectors/mainnet/evm/kusama-mainnet-moonriver.js +1 -1
  65. package/dist/generated/chain-selectors/mainnet/evm/lens-mainnet.js +1 -1
  66. package/dist/generated/chain-selectors/mainnet/evm/lisk-mainnet.js +1 -1
  67. package/dist/generated/chain-selectors/mainnet/evm/memento-mainnet.js +1 -1
  68. package/dist/generated/chain-selectors/mainnet/evm/metal-mainnet.js +1 -1
  69. package/dist/generated/chain-selectors/mainnet/evm/mind-mainnet.js +1 -1
  70. package/dist/generated/chain-selectors/mainnet/evm/mint-mainnet.js +1 -1
  71. package/dist/generated/chain-selectors/mainnet/evm/monad-mainnet.js +1 -1
  72. package/dist/generated/chain-selectors/mainnet/evm/morph-mainnet.js +1 -1
  73. package/dist/generated/chain-selectors/mainnet/evm/near-mainnet.js +1 -1
  74. package/dist/generated/chain-selectors/mainnet/evm/neonlink-mainnet.js +1 -1
  75. package/dist/generated/chain-selectors/mainnet/evm/neox-mainnet.js +1 -1
  76. package/dist/generated/chain-selectors/mainnet/evm/nexon-mainnet-henesys.js +1 -1
  77. package/dist/generated/chain-selectors/mainnet/evm/nexon-mainnet-lith.js +1 -1
  78. package/dist/generated/chain-selectors/mainnet/evm/nexon-qa.js +1 -1
  79. package/dist/generated/chain-selectors/mainnet/evm/nexon-stage.js +1 -1
  80. package/dist/generated/chain-selectors/mainnet/evm/nibiru-mainnet.js +1 -1
  81. package/dist/generated/chain-selectors/mainnet/evm/plasma-mainnet.js +1 -1
  82. package/dist/generated/chain-selectors/mainnet/evm/plume-mainnet.js +1 -1
  83. package/dist/generated/chain-selectors/mainnet/evm/polkadot-mainnet-astar.js +1 -1
  84. package/dist/generated/chain-selectors/mainnet/evm/polkadot-mainnet-centrifuge.js +1 -1
  85. package/dist/generated/chain-selectors/mainnet/evm/polkadot-mainnet-darwinia.js +1 -1
  86. package/dist/generated/chain-selectors/mainnet/evm/polkadot-mainnet-moonbeam.js +1 -1
  87. package/dist/generated/chain-selectors/mainnet/evm/polygon-mainnet-katana.js +1 -1
  88. package/dist/generated/chain-selectors/mainnet/evm/polygon-mainnet.js +1 -1
  89. package/dist/generated/chain-selectors/mainnet/evm/ronin-mainnet.js +1 -1
  90. package/dist/generated/chain-selectors/mainnet/evm/rootstock-mainnet.js +1 -1
  91. package/dist/generated/chain-selectors/mainnet/evm/sei-mainnet.js +1 -1
  92. package/dist/generated/chain-selectors/mainnet/evm/shibarium-mainnet.js +1 -1
  93. package/dist/generated/chain-selectors/mainnet/evm/soneium-mainnet.js +1 -1
  94. package/dist/generated/chain-selectors/mainnet/evm/sonic-mainnet.js +1 -1
  95. package/dist/generated/chain-selectors/mainnet/evm/superseed-mainnet.js +1 -1
  96. package/dist/generated/chain-selectors/mainnet/evm/tac-mainnet.js +1 -1
  97. package/dist/generated/chain-selectors/mainnet/evm/telos-evm-mainnet.js +1 -1
  98. package/dist/generated/chain-selectors/mainnet/evm/treasure-mainnet.js +1 -1
  99. package/dist/generated/chain-selectors/mainnet/evm/tron-mainnet-evm.js +1 -1
  100. package/dist/generated/chain-selectors/mainnet/evm/velas-mainnet.js +1 -1
  101. package/dist/generated/chain-selectors/mainnet/evm/wemix-mainnet.js +1 -1
  102. package/dist/generated/chain-selectors/mainnet/evm/xdc-mainnet.js +1 -1
  103. package/dist/generated/chain-selectors/mainnet/evm/zetachain-mainnet.js +1 -1
  104. package/dist/generated/chain-selectors/mainnet/evm/zklink.nova-mainnet.js +1 -1
  105. package/dist/generated/chain-selectors/mainnet/evm/zora-mainnet.js +1 -1
  106. package/dist/generated/chain-selectors/mainnet/solana/solana-mainnet.js +1 -1
  107. package/dist/generated/chain-selectors/mainnet/sui/sui-mainnet.js +1 -1
  108. package/dist/generated/chain-selectors/mainnet/ton/ton-mainnet.js +1 -1
  109. package/dist/generated/chain-selectors/mainnet/tron/tron-mainnet.js +1 -1
  110. package/dist/generated/chain-selectors/testnet/aptos/aptos-localnet.js +1 -1
  111. package/dist/generated/chain-selectors/testnet/aptos/aptos-testnet.js +1 -1
  112. package/dist/generated/chain-selectors/testnet/evm/0g-testnet-galileo.js +1 -1
  113. package/dist/generated/chain-selectors/testnet/evm/0g-testnet-newton.js +1 -1
  114. package/dist/generated/chain-selectors/testnet/evm/abstract-testnet.js +1 -1
  115. package/dist/generated/chain-selectors/testnet/evm/anvil-devnet.js +1 -1
  116. package/dist/generated/chain-selectors/testnet/evm/apechain-testnet-curtis.js +1 -1
  117. package/dist/generated/chain-selectors/testnet/evm/areon-testnet.js +1 -1
  118. package/dist/generated/chain-selectors/testnet/evm/avalanche-subnet-dexalot-testnet.js +1 -1
  119. package/dist/generated/chain-selectors/testnet/evm/avalanche-testnet-fuji.js +1 -1
  120. package/dist/generated/chain-selectors/testnet/evm/avalanche-testnet-nexon.js +1 -1
  121. package/dist/generated/chain-selectors/testnet/evm/berachain-testnet-artio.js +1 -1
  122. package/dist/generated/chain-selectors/testnet/evm/berachain-testnet-bartio.js +1 -1
  123. package/dist/generated/chain-selectors/testnet/evm/berachain-testnet-bepolia.js +1 -1
  124. package/dist/generated/chain-selectors/testnet/evm/binance.smart.chain-testnet-opbnb-1.js +1 -1
  125. package/dist/generated/chain-selectors/testnet/evm/binance.smart.chain-testnet.js +1 -1
  126. package/dist/generated/chain-selectors/testnet/evm/bitcichain-testnet.js +1 -1
  127. package/dist/generated/chain-selectors/testnet/evm/bitcoin-testnet-bitlayer-1.js +1 -1
  128. package/dist/generated/chain-selectors/testnet/evm/bitcoin-testnet-botanix.js +1 -1
  129. package/dist/generated/chain-selectors/testnet/evm/bitcoin-testnet-bsquared-1.js +1 -1
  130. package/dist/generated/chain-selectors/testnet/evm/bitcoin-testnet-merlin.js +1 -1
  131. package/dist/generated/chain-selectors/testnet/evm/bitcoin-testnet-rootstock.js +1 -1
  132. package/dist/generated/chain-selectors/testnet/evm/bitcoin-testnet-sepolia-bob-1.js +1 -1
  133. package/dist/generated/chain-selectors/testnet/evm/bittensor-testnet.js +1 -1
  134. package/dist/generated/chain-selectors/testnet/evm/bittorrent.chain-testnet.js +1 -1
  135. package/dist/generated/chain-selectors/testnet/evm/celo-testnet-alfajores.js +1 -1
  136. package/dist/generated/chain-selectors/testnet/evm/codex-testnet.js +1 -1
  137. package/dist/generated/chain-selectors/testnet/evm/coinex.smart.chain-testnet.js +1 -1
  138. package/dist/generated/chain-selectors/testnet/evm/core-testnet.js +1 -1
  139. package/dist/generated/chain-selectors/testnet/evm/cronos-testnet-zkevm-1.js +1 -1
  140. package/dist/generated/chain-selectors/testnet/evm/cronos-testnet.js +1 -1
  141. package/dist/generated/chain-selectors/testnet/evm/cronos-zkevm-testnet-sepolia.js +1 -1
  142. package/dist/generated/chain-selectors/testnet/evm/dtcc-testnet-andesite.js +1 -1
  143. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-goerli-arbitrum-1.js +1 -1
  144. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-goerli-base-1.js +1 -1
  145. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-goerli-linea-1.js +1 -1
  146. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-goerli-mantle-1.js +1 -1
  147. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-goerli-optimism-1.js +1 -1
  148. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-goerli-polygon-zkevm-1.js +1 -1
  149. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-goerli-zksync-1.js +1 -1
  150. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-holesky-fraxtal-1.js +1 -1
  151. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-holesky-morph-1.js +1 -1
  152. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-holesky-taiko-1.js +1 -1
  153. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-holesky.js +1 -1
  154. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-sepolia-arbitrum-1-l3x-1.js +1 -1
  155. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-sepolia-arbitrum-1-treasure-1.js +1 -1
  156. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-sepolia-arbitrum-1.js +1 -1
  157. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-sepolia-base-1.js +1 -1
  158. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-sepolia-blast-1.js +1 -1
  159. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-sepolia-corn-1.js +1 -1
  160. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-sepolia-hashkey-1.js +1 -1
  161. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-sepolia-immutable-zkevm-1.js +1 -1
  162. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-sepolia-kroma-1.js +1 -1
  163. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-sepolia-lens-1.js +1 -1
  164. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-sepolia-linea-1.js +1 -1
  165. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-sepolia-lisk-1.js +1 -1
  166. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-sepolia-mantle-1.js +1 -1
  167. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-sepolia-metis-1.js +1 -1
  168. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-sepolia-mode-1.js +1 -1
  169. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-sepolia-optimism-1.js +1 -1
  170. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-sepolia-polygon-validium-1.js +1 -1
  171. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-sepolia-polygon-zkevm-1.js +1 -1
  172. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-sepolia-scroll-1.js +1 -1
  173. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-sepolia-soneium-1.js +1 -1
  174. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-sepolia-unichain-1.js +1 -1
  175. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-sepolia-worldchain-1.js +1 -1
  176. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-sepolia-xlayer-1.js +1 -1
  177. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-sepolia-zircuit-1.js +1 -1
  178. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-sepolia-zksync-1.js +1 -1
  179. package/dist/generated/chain-selectors/testnet/evm/ethereum-testnet-sepolia.js +1 -1
  180. package/dist/generated/chain-selectors/testnet/evm/etherlink-testnet.js +1 -1
  181. package/dist/generated/chain-selectors/testnet/evm/fantom-testnet.js +1 -1
  182. package/dist/generated/chain-selectors/testnet/evm/filecoin-testnet.js +1 -1
  183. package/dist/generated/chain-selectors/testnet/evm/geth-testnet.js +1 -1
  184. package/dist/generated/chain-selectors/testnet/evm/gnosis.chain-testnet-chiado.js +1 -1
  185. package/dist/generated/chain-selectors/testnet/evm/hedera-testnet.js +1 -1
  186. package/dist/generated/chain-selectors/testnet/evm/hemi-testnet-sepolia.js +1 -1
  187. package/dist/generated/chain-selectors/testnet/evm/hyperliquid-testnet.js +1 -1
  188. package/dist/generated/chain-selectors/testnet/evm/ink-testnet-sepolia.js +1 -1
  189. package/dist/generated/chain-selectors/testnet/evm/janction-testnet-sepolia.js +1 -1
  190. package/dist/generated/chain-selectors/testnet/evm/jovay-testnet.js +1 -1
  191. package/dist/generated/chain-selectors/testnet/evm/kaia-testnet-kairos.js +1 -1
  192. package/dist/generated/chain-selectors/testnet/evm/kava-testnet.js +1 -1
  193. package/dist/generated/chain-selectors/testnet/evm/megaeth-testnet.js +1 -1
  194. package/dist/generated/chain-selectors/testnet/evm/memento-testnet.js +1 -1
  195. package/dist/generated/chain-selectors/testnet/evm/metal-testnet.js +1 -1
  196. package/dist/generated/chain-selectors/testnet/evm/mind-testnet.js +1 -1
  197. package/dist/generated/chain-selectors/testnet/evm/mint-testnet.js +1 -1
  198. package/dist/generated/chain-selectors/testnet/evm/monad-testnet.js +1 -1
  199. package/dist/generated/chain-selectors/testnet/evm/near-testnet.js +1 -1
  200. package/dist/generated/chain-selectors/testnet/evm/neonlink-testnet.js +1 -1
  201. package/dist/generated/chain-selectors/testnet/evm/neox-testnet-t4.js +1 -1
  202. package/dist/generated/chain-selectors/testnet/evm/nexon-dev.js +1 -1
  203. package/dist/generated/chain-selectors/testnet/evm/nibiru-testnet.js +1 -1
  204. package/dist/generated/chain-selectors/testnet/evm/ondo-testnet.js +1 -1
  205. package/dist/generated/chain-selectors/testnet/evm/pharos-testnet.js +1 -1
  206. package/dist/generated/chain-selectors/testnet/evm/plasma-testnet.js +1 -1
  207. package/dist/generated/chain-selectors/testnet/evm/plume-devnet.js +1 -1
  208. package/dist/generated/chain-selectors/testnet/evm/plume-testnet-sepolia.js +1 -1
  209. package/dist/generated/chain-selectors/testnet/evm/plume-testnet.js +1 -1
  210. package/dist/generated/chain-selectors/testnet/evm/polkadot-testnet-astar-shibuya.js +1 -1
  211. package/dist/generated/chain-selectors/testnet/evm/polkadot-testnet-centrifuge-altair.js +1 -1
  212. package/dist/generated/chain-selectors/testnet/evm/polkadot-testnet-darwinia-pangoro.js +1 -1
  213. package/dist/generated/chain-selectors/testnet/evm/polkadot-testnet-moonbeam-moonbase.js +1 -1
  214. package/dist/generated/chain-selectors/testnet/evm/polygon-testnet-amoy.js +1 -1
  215. package/dist/generated/chain-selectors/testnet/evm/polygon-testnet-mumbai.js +1 -1
  216. package/dist/generated/chain-selectors/testnet/evm/polygon-testnet-tatara.js +1 -1
  217. package/dist/generated/chain-selectors/testnet/evm/private-testnet-andesite.js +1 -1
  218. package/dist/generated/chain-selectors/testnet/evm/private-testnet-granite.js +1 -1
  219. package/dist/generated/chain-selectors/testnet/evm/private-testnet-mica.js +1 -1
  220. package/dist/generated/chain-selectors/testnet/evm/private-testnet-obsidian.js +1 -1
  221. package/dist/generated/chain-selectors/testnet/evm/private-testnet-opala.js +1 -1
  222. package/dist/generated/chain-selectors/testnet/evm/ronin-testnet-saigon.js +1 -1
  223. package/dist/generated/chain-selectors/testnet/evm/sei-testnet-atlantic.js +1 -1
  224. package/dist/generated/chain-selectors/testnet/evm/shibarium-testnet-puppynet.js +1 -1
  225. package/dist/generated/chain-selectors/testnet/evm/sonic-testnet-blaze.js +1 -1
  226. package/dist/generated/chain-selectors/testnet/evm/story-testnet.js +1 -1
  227. package/dist/generated/chain-selectors/testnet/evm/superseed-testnet.js +1 -1
  228. package/dist/generated/chain-selectors/testnet/evm/tac-testnet.js +1 -1
  229. package/dist/generated/chain-selectors/testnet/evm/telos-evm-testnet.js +1 -1
  230. package/dist/generated/chain-selectors/testnet/evm/treasure-testnet-topaz.js +1 -1
  231. package/dist/generated/chain-selectors/testnet/evm/tron-devnet-evm.js +1 -1
  232. package/dist/generated/chain-selectors/testnet/evm/tron-testnet-nile-evm.js +1 -1
  233. package/dist/generated/chain-selectors/testnet/evm/tron-testnet-shasta-evm.js +1 -1
  234. package/dist/generated/chain-selectors/testnet/evm/velas-testnet.js +1 -1
  235. package/dist/generated/chain-selectors/testnet/evm/wemix-testnet.js +1 -1
  236. package/dist/generated/chain-selectors/testnet/evm/xdc-testnet.js +1 -1
  237. package/dist/generated/chain-selectors/testnet/evm/zero-g-testnet-galileo.js +1 -1
  238. package/dist/generated/chain-selectors/testnet/evm/zircuit-testnet-garfield.js +1 -1
  239. package/dist/generated/chain-selectors/testnet/evm/zklink.nova-testnet.js +1 -1
  240. package/dist/generated/chain-selectors/testnet/evm/zora-testnet.js +1 -1
  241. package/dist/generated/chain-selectors/testnet/solana/solana-devnet.js +1 -1
  242. package/dist/generated/chain-selectors/testnet/solana/solana-testnet.js +1 -1
  243. package/dist/generated/chain-selectors/testnet/sui/sui-localnet.js +1 -1
  244. package/dist/generated/chain-selectors/testnet/sui/sui-testnet.js +1 -1
  245. package/dist/generated/chain-selectors/testnet/ton/ton-localnet.js +1 -1
  246. package/dist/generated/chain-selectors/testnet/ton/ton-testnet.js +1 -1
  247. package/dist/generated/chain-selectors/testnet/tron/tron-devnet.js +1 -1
  248. package/dist/generated/chain-selectors/testnet/tron/tron-testnet-nile.js +1 -1
  249. package/dist/generated/chain-selectors/testnet/tron/tron-testnet-shasta.js +1 -1
  250. package/dist/generated/networks.d.ts +14 -14
  251. package/dist/generated/networks.js +495 -495
  252. package/dist/generated-sdk/capabilities/blockchain/evm/v1alpha/client_sdk_gen.d.ts +23 -28
  253. package/dist/generated-sdk/capabilities/blockchain/evm/v1alpha/client_sdk_gen.js +80 -280
  254. package/dist/generated-sdk/capabilities/internal/consensus/v1alpha/consensus_sdk_gen.d.ts +6 -10
  255. package/dist/generated-sdk/capabilities/internal/consensus/v1alpha/consensus_sdk_gen.js +16 -64
  256. package/dist/generated-sdk/capabilities/networking/http/v1alpha/client_sdk_gen.d.ts +17 -8
  257. package/dist/generated-sdk/capabilities/networking/http/v1alpha/client_sdk_gen.js +35 -37
  258. package/dist/generated-sdk/capabilities/networking/http/v1alpha/http_sdk_gen.d.ts +1 -8
  259. package/dist/generated-sdk/capabilities/networking/http/v1alpha/http_sdk_gen.js +6 -21
  260. package/dist/generated-sdk/capabilities/scheduler/cron/v1/cron_sdk_gen.d.ts +1 -8
  261. package/dist/generated-sdk/capabilities/scheduler/cron/v1/cron_sdk_gen.js +6 -21
  262. package/dist/index.d.ts +1 -0
  263. package/dist/index.js +1 -0
  264. package/dist/sdk/cre/index.d.ts +7 -20
  265. package/dist/sdk/cre/index.js +2 -18
  266. package/dist/sdk/errors.d.ts +12 -0
  267. package/dist/sdk/errors.js +21 -0
  268. package/dist/sdk/impl/runtime-impl.d.ts +42 -0
  269. package/dist/sdk/impl/runtime-impl.js +213 -0
  270. package/dist/sdk/index.d.ts +3 -0
  271. package/dist/sdk/index.js +2 -0
  272. package/dist/sdk/runtime.d.ts +27 -0
  273. package/dist/sdk/utils/capabilities/capability-error.d.ts +0 -3
  274. package/dist/sdk/utils/capabilities/capability-error.js +0 -2
  275. package/dist/sdk/utils/chain-selectors/getNetwork.d.ts +2 -2
  276. package/dist/sdk/utils/chain-selectors/getNetwork.js +56 -15
  277. package/dist/sdk/utils/chain-selectors/types.d.ts +1 -1
  278. package/dist/sdk/utils/config/index.d.ts +4 -6
  279. package/dist/sdk/utils/config/index.js +10 -34
  280. package/dist/sdk/utils/index.d.ts +1 -3
  281. package/dist/sdk/utils/index.js +1 -3
  282. package/dist/sdk/utils/safe-json-stringify.d.ts +6 -0
  283. package/dist/sdk/utils/safe-json-stringify.js +6 -0
  284. package/dist/sdk/utils/triggers/trigger-interface.d.ts +1 -1
  285. package/dist/sdk/utils/values/consensus_aggregators.d.ts +1 -1
  286. package/dist/sdk/utils/values/serializer_types.d.ts +1 -1
  287. package/dist/sdk/{runtime → wasm}/host-bindings.d.ts +0 -1
  288. package/dist/sdk/{runtime → wasm}/host-bindings.js +0 -4
  289. package/dist/sdk/wasm/index.d.ts +1 -0
  290. package/dist/sdk/wasm/index.js +1 -0
  291. package/dist/sdk/wasm/runner.d.ts +14 -0
  292. package/dist/sdk/wasm/runner.js +114 -0
  293. package/dist/sdk/wasm/runtime.d.ts +7 -0
  294. package/dist/sdk/wasm/runtime.js +58 -0
  295. package/dist/sdk/workflow.d.ts +13 -15
  296. package/dist/sdk/workflow.js +1 -21
  297. package/package.json +4 -3
  298. package/scripts/run-standard-tests.sh +3 -0
  299. package/scripts/src/generate-chain-selectors.ts +23 -16
  300. package/dist/generated/capabilities/internal/actionandtrigger/v1/action_and_trigger_pb.d.ts +0 -135
  301. package/dist/generated/capabilities/internal/actionandtrigger/v1/action_and_trigger_pb.js +0 -43
  302. package/dist/generated/capabilities/internal/basicaction/v1/basic_action_pb.d.ts +0 -77
  303. package/dist/generated/capabilities/internal/basicaction/v1/basic_action_pb.js +0 -33
  304. package/dist/generated/capabilities/internal/basictrigger/v1/basic_trigger_pb.d.ts +0 -77
  305. package/dist/generated/capabilities/internal/basictrigger/v1/basic_trigger_pb.js +0 -29
  306. package/dist/generated-sdk/capabilities/internal/actionandtrigger/v1/basic_sdk_gen.d.ts +0 -48
  307. package/dist/generated-sdk/capabilities/internal/actionandtrigger/v1/basic_sdk_gen.js +0 -108
  308. package/dist/generated-sdk/capabilities/internal/basicaction/v1/basicaction_sdk_gen.d.ts +0 -23
  309. package/dist/generated-sdk/capabilities/internal/basicaction/v1/basicaction_sdk_gen.js +0 -63
  310. package/dist/generated-sdk/capabilities/internal/basictrigger/v1/basic_sdk_gen.d.ts +0 -45
  311. package/dist/generated-sdk/capabilities/internal/basictrigger/v1/basic_sdk_gen.js +0 -71
  312. package/dist/sdk/engine/execute.d.ts +0 -4
  313. package/dist/sdk/engine/execute.js +0 -12
  314. package/dist/sdk/engine/execute.test.js +0 -129
  315. package/dist/sdk/engine/handleExecutionPhase.d.ts +0 -4
  316. package/dist/sdk/engine/handleExecutionPhase.js +0 -34
  317. package/dist/sdk/engine/handleSubscribePhase.d.ts +0 -3
  318. package/dist/sdk/engine/handleSubscribePhase.js +0 -23
  319. package/dist/sdk/logger.d.ts +0 -7
  320. package/dist/sdk/logger.js +0 -18
  321. package/dist/sdk/runtime/errors.d.ts +0 -23
  322. package/dist/sdk/runtime/errors.js +0 -30
  323. package/dist/sdk/runtime/index.d.ts +0 -3
  324. package/dist/sdk/runtime/index.js +0 -2
  325. package/dist/sdk/runtime/run-in-node-mode.d.ts +0 -12
  326. package/dist/sdk/runtime/run-in-node-mode.js +0 -47
  327. package/dist/sdk/runtime/run-in-node-mode.test.d.ts +0 -1
  328. package/dist/sdk/runtime/run-in-node-mode.test.js +0 -116
  329. package/dist/sdk/runtime/runtime.d.ts +0 -36
  330. package/dist/sdk/runtime/runtime.js +0 -84
  331. package/dist/sdk/runtime/runtime.test.d.ts +0 -1
  332. package/dist/sdk/runtime/runtime.test.js +0 -58
  333. package/dist/sdk/testhelpers/dangerously-call-capability.d.ts +0 -10
  334. package/dist/sdk/testhelpers/dangerously-call-capability.js +0 -26
  335. package/dist/sdk/testhelpers/mock-host-bindings.d.ts +0 -15
  336. package/dist/sdk/testhelpers/mock-host-bindings.js +0 -25
  337. package/dist/sdk/testhelpers/mock-runtime.d.ts +0 -2
  338. package/dist/sdk/testhelpers/mock-runtime.js +0 -16
  339. package/dist/sdk/utils/await-async-request.d.ts +0 -9
  340. package/dist/sdk/utils/await-async-request.js +0 -27
  341. package/dist/sdk/utils/capabilities/call-capability.d.ts +0 -22
  342. package/dist/sdk/utils/capabilities/call-capability.js +0 -33
  343. package/dist/sdk/utils/capabilities/callback-id.d.ts +0 -3
  344. package/dist/sdk/utils/capabilities/callback-id.js +0 -22
  345. package/dist/sdk/utils/capabilities/http/fetch.d.ts +0 -44
  346. package/dist/sdk/utils/capabilities/http/fetch.js +0 -63
  347. package/dist/sdk/utils/do-request-async.d.ts +0 -12
  348. package/dist/sdk/utils/do-request-async.js +0 -17
  349. package/dist/sdk/utils/error-boundary.d.ts +0 -2
  350. package/dist/sdk/utils/error-boundary.js +0 -30
  351. package/dist/sdk/utils/get-request.d.ts +0 -1
  352. package/dist/sdk/utils/get-request.js +0 -15
  353. package/dist/sdk/utils/lazy-promise.d.ts +0 -59
  354. package/dist/sdk/utils/lazy-promise.js +0 -81
  355. package/dist/sdk/utils/random/get-rand.d.ts +0 -3
  356. package/dist/sdk/utils/random/get-rand.js +0 -6
  357. package/dist/sdk/utils/random/random.d.ts +0 -35
  358. package/dist/sdk/utils/random/random.js +0 -123
  359. package/dist/sdk/utils/secrets/await-async-secret.d.ts +0 -1
  360. package/dist/sdk/utils/secrets/await-async-secret.js +0 -29
  361. package/dist/sdk/utils/secrets/do-get-secret.d.ts +0 -1
  362. package/dist/sdk/utils/secrets/do-get-secret.js +0 -14
  363. package/dist/sdk/utils/secrets/get-secret.d.ts +0 -1
  364. package/dist/sdk/utils/secrets/get-secret.js +0 -10
  365. package/dist/sdk/utils/send-error.d.ts +0 -1
  366. package/dist/sdk/utils/send-error.js +0 -16
  367. package/dist/sdk/utils/send-response-value.d.ts +0 -2
  368. package/dist/sdk/utils/send-response-value.js +0 -15
  369. package/dist/sdk/utils/time/get-time.d.ts +0 -16
  370. package/dist/sdk/utils/time/get-time.js +0 -21
  371. package/dist/sdk/utils/values/consensus_aggregators.test.d.ts +0 -1
  372. package/dist/sdk/utils/values/consensus_aggregators.test.js +0 -172
  373. package/dist/sdk/utils/values/serializer_types.test.d.ts +0 -1
  374. package/dist/sdk/utils/values/serializer_types.test.js +0 -104
  375. package/dist/sdk/utils/values/value.test.d.ts +0 -1
  376. package/dist/sdk/utils/values/value.test.js +0 -439
  377. /package/dist/sdk/{engine/execute.test.d.ts → runtime.js} +0 -0
@@ -0,0 +1,42 @@
1
+ import { type Message } from '@bufbuild/protobuf';
2
+ import { type AwaitCapabilitiesRequest, type AwaitCapabilitiesResponse, type AwaitSecretsRequest, type AwaitSecretsResponse, type CapabilityRequest, type GetSecretsRequest, Mode, type Secret, type SecretRequest, type SecretRequestJson } from '../../generated/sdk/v1alpha/sdk_pb';
3
+ import type { BaseRuntime, CallCapabilityParams, NodeRuntime, Runtime } from '../runtime';
4
+ import { type ConsensusAggregation, type PrimitiveTypes, type UnwrapOptions } from '../utils';
5
+ export declare class BaseRuntimeImpl<C> implements BaseRuntime<C> {
6
+ config: C;
7
+ nextCallId: number;
8
+ protected helpers: RuntimeHelpers;
9
+ protected maxResponseSize: bigint;
10
+ private mode;
11
+ modeError?: Error;
12
+ constructor(config: C, nextCallId: number, helpers: RuntimeHelpers, maxResponseSize: bigint, mode: Mode);
13
+ callCapability<I extends Message, O extends Message>({ capabilityId, method, payload, inputSchema, outputSchema, }: CallCapabilityParams<I, O>): {
14
+ result: () => O;
15
+ };
16
+ getNextCallId(): number;
17
+ now(): Date;
18
+ log(message: string): void;
19
+ }
20
+ export declare class NodeRuntimeImpl<C> extends BaseRuntimeImpl<C> implements NodeRuntime<C> {
21
+ _isNodeRuntime: true;
22
+ constructor(config: C, nextCallId: number, helpers: RuntimeHelpers, maxResponseSize: bigint);
23
+ }
24
+ export declare class RuntimeImpl<C> extends BaseRuntimeImpl<C> implements Runtime<C> {
25
+ private nextNodeCallId;
26
+ constructor(config: C, nextCallId: number, helpers: RuntimeHelpers, maxResponseSize: bigint);
27
+ runInNodeMode<TArgs extends unknown[], TOutput>(fn: (nodeRuntime: NodeRuntime<C>, ...args: TArgs) => TOutput, consesusAggretation: ConsensusAggregation<TOutput, true>, unwrapOptions?: TOutput extends PrimitiveTypes ? never : UnwrapOptions<TOutput>): (...args: TArgs) => {
28
+ result: () => TOutput;
29
+ };
30
+ getSecret(request: SecretRequest | SecretRequestJson): {
31
+ result: () => Secret;
32
+ };
33
+ }
34
+ export interface RuntimeHelpers {
35
+ call(request: CapabilityRequest): boolean;
36
+ await(request: AwaitCapabilitiesRequest, maxResponseSize: bigint): AwaitCapabilitiesResponse;
37
+ getSecrets(request: GetSecretsRequest, maxResponseSize: bigint): boolean;
38
+ awaitSecrets(request: AwaitSecretsRequest, maxResponseSize: bigint): AwaitSecretsResponse;
39
+ switchModes(mode: Mode): void;
40
+ now(): number;
41
+ log(message: string): void;
42
+ }
@@ -0,0 +1,213 @@
1
+ import { create } from '@bufbuild/protobuf';
2
+ import { anyPack, anyUnpack } from '@bufbuild/protobuf/wkt';
3
+ import { AwaitCapabilitiesRequestSchema, AwaitSecretsRequestSchema, CapabilityRequestSchema, GetSecretsRequestSchema, Mode, SecretRequestSchema, SimpleConsensusInputsSchema, } from '../../generated/sdk/v1alpha/sdk_pb';
4
+ import { ConsensusCapability } from '../../generated-sdk/capabilities/internal/consensus/v1alpha/consensus_sdk_gen';
5
+ import { Value, } from '../utils';
6
+ import { CapabilityError } from '../utils/capabilities/capability-error';
7
+ import { DonModeError, NodeModeError, SecretsError } from '../errors';
8
+ export class BaseRuntimeImpl {
9
+ config;
10
+ nextCallId;
11
+ helpers;
12
+ maxResponseSize;
13
+ mode;
14
+ // modeError must only be set from within NodeRuntimeImpl
15
+ modeError;
16
+ constructor(config, nextCallId, helpers, maxResponseSize, mode) {
17
+ this.config = config;
18
+ this.nextCallId = nextCallId;
19
+ this.helpers = helpers;
20
+ this.maxResponseSize = maxResponseSize;
21
+ this.mode = mode;
22
+ }
23
+ callCapability({ capabilityId, method, payload, inputSchema, outputSchema, }) {
24
+ if (this.modeError) {
25
+ return {
26
+ result: () => {
27
+ throw this.modeError;
28
+ },
29
+ };
30
+ }
31
+ // nextCallId tracks the unique id for a request to the WASM host.
32
+ // to avoid collisions of the ID in different modes, it is
33
+ // incremented in DON mode and decremented in Node mode.
34
+ // eg. - first call don mode: nextCallId = 1
35
+ // - second call: nextCallId = 2
36
+ // - first call node mode: nextCallId = -1
37
+ // - second call node mode: nextCallId = -2
38
+ // - etc...
39
+ const anyPayload = anyPack(inputSchema, payload);
40
+ const callbackId = this.nextCallId;
41
+ if (this.mode === Mode.DON)
42
+ this.nextCallId++;
43
+ else
44
+ this.nextCallId--;
45
+ const req = create(CapabilityRequestSchema, {
46
+ id: capabilityId,
47
+ method,
48
+ payload: anyPayload,
49
+ callbackId,
50
+ });
51
+ if (!this.helpers.call(req)) {
52
+ return {
53
+ result: () => {
54
+ throw new CapabilityError(`Capability not found ${capabilityId}`, {
55
+ callbackId,
56
+ method,
57
+ capabilityId,
58
+ });
59
+ },
60
+ };
61
+ }
62
+ return {
63
+ result: () => {
64
+ const awaitRequest = create(AwaitCapabilitiesRequestSchema, {
65
+ ids: [callbackId],
66
+ });
67
+ const awaitResponse = this.helpers.await(awaitRequest, this.maxResponseSize);
68
+ const capabilityResponse = awaitResponse.responses[callbackId];
69
+ if (!capabilityResponse) {
70
+ throw new CapabilityError(`No response found for callback ID ${callbackId}`, {
71
+ capabilityId,
72
+ method,
73
+ callbackId,
74
+ });
75
+ }
76
+ const response = capabilityResponse.response;
77
+ switch (response.case) {
78
+ case 'payload':
79
+ return anyUnpack(response.value, outputSchema);
80
+ case 'error':
81
+ throw new CapabilityError(`Error ${response.value}`, {
82
+ capabilityId,
83
+ method,
84
+ callbackId,
85
+ });
86
+ default:
87
+ throw new CapabilityError(`Error cannot unwrap ${response.case}`, {
88
+ capabilityId,
89
+ method,
90
+ callbackId,
91
+ });
92
+ }
93
+ },
94
+ };
95
+ }
96
+ getNextCallId() {
97
+ return this.nextCallId;
98
+ }
99
+ now() {
100
+ // ns to ms
101
+ return new Date(this.helpers.now() / 1000000);
102
+ }
103
+ log(message) {
104
+ this.helpers.log(message);
105
+ }
106
+ }
107
+ export class NodeRuntimeImpl extends BaseRuntimeImpl {
108
+ _isNodeRuntime = true;
109
+ constructor(config, nextCallId, helpers, maxResponseSize) {
110
+ helpers.switchModes(Mode.NODE);
111
+ super(config, nextCallId, helpers, maxResponseSize, Mode.NODE);
112
+ }
113
+ }
114
+ export class RuntimeImpl extends BaseRuntimeImpl {
115
+ nextNodeCallId = -1;
116
+ constructor(config, nextCallId, helpers, maxResponseSize) {
117
+ helpers.switchModes(Mode.DON);
118
+ super(config, nextCallId, helpers, maxResponseSize, Mode.DON);
119
+ }
120
+ runInNodeMode(fn, consesusAggretation, unwrapOptions) {
121
+ return (...args) => {
122
+ this.modeError = new DonModeError();
123
+ const nodeRuntime = new NodeRuntimeImpl(this.config, this.nextNodeCallId, this.helpers, this.maxResponseSize);
124
+ const consensusInput = create(SimpleConsensusInputsSchema, {
125
+ descriptors: consesusAggretation.descriptor,
126
+ });
127
+ if (consesusAggretation.defaultValue) {
128
+ // This cast is safe, since ConsensusAggregation can only have true its second argument if T extends CreSerializable<TOutput>
129
+ consensusInput.default = Value.from(consesusAggretation.defaultValue).proto();
130
+ }
131
+ try {
132
+ const observation = fn(nodeRuntime, ...args);
133
+ // This cast is safe, since ConsensusAggregation can only have true its second argument if T extends CreSerializable<TOutput>
134
+ consensusInput.observation = {
135
+ case: 'value',
136
+ value: Value.from(observation).proto(),
137
+ };
138
+ }
139
+ catch (e) {
140
+ consensusInput.observation = {
141
+ case: 'error',
142
+ value: (e instanceof Error && e.message) || String(e),
143
+ };
144
+ }
145
+ finally {
146
+ // Always restore DON mode before invoking consensus
147
+ this.modeError = undefined;
148
+ this.nextNodeCallId = nodeRuntime.nextCallId;
149
+ nodeRuntime.modeError = new NodeModeError();
150
+ this.helpers.switchModes(Mode.DON);
151
+ }
152
+ const consensus = new ConsensusCapability();
153
+ const call = consensus.simple(this, consensusInput);
154
+ return {
155
+ result: () => {
156
+ const result = call.result();
157
+ const wrappedValue = Value.wrap(result);
158
+ return unwrapOptions
159
+ ? wrappedValue.unwrapToType(unwrapOptions)
160
+ : wrappedValue.unwrap();
161
+ },
162
+ };
163
+ };
164
+ }
165
+ getSecret(request) {
166
+ if (this.modeError) {
167
+ return {
168
+ result: () => {
169
+ throw this.modeError;
170
+ },
171
+ };
172
+ }
173
+ const secretRequest = request.$typeName
174
+ ? create(SecretRequestSchema, request)
175
+ : request;
176
+ const id = this.nextCallId;
177
+ this.nextCallId++;
178
+ const secretsReq = create(GetSecretsRequestSchema, {
179
+ callbackId: id,
180
+ requests: [request],
181
+ });
182
+ if (!this.helpers.getSecrets(secretsReq, this.maxResponseSize)) {
183
+ return {
184
+ result: () => {
185
+ throw new SecretsError(secretRequest, 'host is not making the secrets request');
186
+ },
187
+ };
188
+ }
189
+ return {
190
+ result: () => {
191
+ const awaitRequest = create(AwaitSecretsRequestSchema, { ids: [id] });
192
+ const awaitResponse = this.helpers.awaitSecrets(awaitRequest, this.maxResponseSize);
193
+ const secretsResponse = awaitResponse.responses[id];
194
+ if (!secretsResponse) {
195
+ throw new SecretsError(secretRequest, 'no response');
196
+ }
197
+ const responses = secretsResponse.responses;
198
+ if (responses.length !== 1) {
199
+ throw new SecretsError(secretRequest, 'invalid value returned from host');
200
+ }
201
+ const response = responses[0].response;
202
+ switch (response.case) {
203
+ case 'secret':
204
+ return response.value;
205
+ case 'error':
206
+ throw new SecretsError(secretRequest, response.value.error);
207
+ default:
208
+ throw new SecretsError(secretRequest, 'cannot unmashal returned value from host');
209
+ }
210
+ },
211
+ };
212
+ }
213
+ }
@@ -1 +1,4 @@
1
1
  export * from './cre';
2
+ export type * from './runtime';
3
+ export * from './runtime';
4
+ export * from './workflow';
package/dist/sdk/index.js CHANGED
@@ -1 +1,3 @@
1
1
  export * from './cre';
2
+ export * from './runtime';
3
+ export * from './workflow';
@@ -0,0 +1,27 @@
1
+ import type { Message } from '@bufbuild/protobuf';
2
+ import type { GenMessage } from '@bufbuild/protobuf/codegenv2';
3
+ import type { ConsensusAggregation, PrimitiveTypes, UnwrapOptions } from './utils';
4
+ import type { SecretsProvider } from '.';
5
+ export type CallCapabilityParams<I extends Message, O extends Message> = {
6
+ capabilityId: string;
7
+ method: string;
8
+ payload: I;
9
+ inputSchema: GenMessage<I>;
10
+ outputSchema: GenMessage<O>;
11
+ };
12
+ export type BaseRuntime<C> = {
13
+ config: C;
14
+ callCapability<I extends Message, O extends Message>(params: CallCapabilityParams<I, O>): {
15
+ result: () => O;
16
+ };
17
+ now(): Date;
18
+ log(message: string): void;
19
+ };
20
+ export type Runtime<C> = BaseRuntime<C> & SecretsProvider & {
21
+ runInNodeMode<TArgs extends unknown[], TOutput>(fn: (nodeRuntime: NodeRuntime<C>, ...args: TArgs) => TOutput, consensusAggregation: ConsensusAggregation<TOutput, true>, unwrapOptions?: TOutput extends PrimitiveTypes ? never : UnwrapOptions<TOutput>): (...args: TArgs) => {
22
+ result: () => TOutput;
23
+ };
24
+ };
25
+ export type NodeRuntime<C> = BaseRuntime<C> & {
26
+ readonly _isNodeRuntime: true;
27
+ };
@@ -1,14 +1,11 @@
1
- import type { Mode } from '../../../generated/sdk/v1alpha/sdk_pb';
2
1
  export declare class CapabilityError extends Error {
3
2
  name: string;
4
3
  capabilityId?: string;
5
4
  method?: string;
6
- mode?: Mode;
7
5
  callbackId?: number;
8
6
  constructor(message: string, options?: {
9
7
  capabilityId?: string;
10
8
  method?: string;
11
- mode?: Mode;
12
9
  callbackId?: number;
13
10
  });
14
11
  }
@@ -2,7 +2,6 @@ export class CapabilityError extends Error {
2
2
  name;
3
3
  capabilityId;
4
4
  method;
5
- mode;
6
5
  callbackId;
7
6
  constructor(message, options) {
8
7
  super(message);
@@ -10,7 +9,6 @@ export class CapabilityError extends Error {
10
9
  if (options) {
11
10
  this.capabilityId = options.capabilityId;
12
11
  this.method = options.method;
13
- this.mode = options.mode;
14
12
  this.callbackId = options.callbackId;
15
13
  }
16
14
  }
@@ -1,8 +1,8 @@
1
1
  import type { ChainFamily, NetworkInfo } from './types';
2
2
  interface GetNetworkOptions {
3
- chainSelector?: string;
3
+ chainSelector?: bigint;
4
4
  chainSelectorName?: string;
5
- isTestnet?: boolean;
5
+ isTestnet?: boolean | undefined;
6
6
  chainFamily?: ChainFamily;
7
7
  }
8
8
  /**
@@ -5,32 +5,73 @@ import { mainnetByName, mainnetByNameByFamily, mainnetBySelector, mainnetBySelec
5
5
  * @returns NetworkInfo if found, undefined otherwise
6
6
  */
7
7
  export const getNetwork = (options) => {
8
- const { chainSelector, chainSelectorName, isTestnet = false, chainFamily } = options;
8
+ const { chainSelector, chainSelectorName, isTestnet, chainFamily } = options;
9
+ const getBySelector = (map) => {
10
+ if (chainSelector === undefined)
11
+ return undefined;
12
+ return map.get(chainSelector);
13
+ };
9
14
  // Validate input - need either chainSelector or chainSelectorName
10
15
  if (!chainSelector && !chainSelectorName) {
11
16
  return undefined;
12
17
  }
13
18
  // If both chainFamily and network type are specified, use the most specific maps
14
- if (chainFamily && chainSelector) {
15
- const familyMap = isTestnet
16
- ? testnetBySelectorByFamily[chainFamily]
17
- : mainnetBySelectorByFamily[chainFamily];
18
- return familyMap?.get(chainSelector);
19
+ if (chainFamily && chainSelector !== undefined) {
20
+ if (isTestnet === false) {
21
+ return getBySelector(mainnetBySelectorByFamily[chainFamily]);
22
+ }
23
+ if (isTestnet === true) {
24
+ return getBySelector(testnetBySelectorByFamily[chainFamily]);
25
+ }
26
+ // If user haven't defined if it's testnet or not we can try all networks, starting from testnet
27
+ let network = getBySelector(testnetBySelectorByFamily[chainFamily]);
28
+ if (!network) {
29
+ network = getBySelector(mainnetBySelectorByFamily[chainFamily]);
30
+ }
31
+ return network;
19
32
  }
20
33
  if (chainFamily && chainSelectorName) {
21
- const familyMap = isTestnet
22
- ? testnetByNameByFamily[chainFamily]
23
- : mainnetByNameByFamily[chainFamily];
24
- return familyMap?.get(chainSelectorName);
34
+ if (isTestnet === false) {
35
+ return mainnetByNameByFamily[chainFamily].get(chainSelectorName);
36
+ }
37
+ if (isTestnet === true) {
38
+ return testnetByNameByFamily[chainFamily].get(chainSelectorName);
39
+ }
40
+ // If user haven't defined if it's testnet or not we can try all networks, starting from testnet
41
+ let network = testnetByNameByFamily[chainFamily].get(chainSelectorName);
42
+ if (!network) {
43
+ network = mainnetByNameByFamily[chainFamily].get(chainSelectorName);
44
+ }
45
+ return network;
25
46
  }
26
47
  // If only network type is specified, use the general maps
27
- if (chainSelector) {
28
- const selectorMap = isTestnet ? testnetBySelector : mainnetBySelector;
29
- return selectorMap.get(chainSelector);
48
+ if (chainSelector !== undefined) {
49
+ if (isTestnet === false) {
50
+ return getBySelector(mainnetBySelector);
51
+ }
52
+ if (isTestnet === true) {
53
+ return getBySelector(testnetBySelector);
54
+ }
55
+ // If user haven't defined if it's testnet or not we can try all networks, starting from testnet
56
+ let network = getBySelector(testnetBySelector);
57
+ if (!network) {
58
+ network = getBySelector(mainnetBySelector);
59
+ }
60
+ return network;
30
61
  }
31
62
  if (chainSelectorName) {
32
- const nameMap = isTestnet ? testnetByName : mainnetByName;
33
- return nameMap.get(chainSelectorName);
63
+ if (isTestnet === false) {
64
+ return mainnetByName.get(chainSelectorName);
65
+ }
66
+ if (isTestnet === true) {
67
+ return testnetByName.get(chainSelectorName);
68
+ }
69
+ // If user haven't defined if it's testnet or not we can try all networks, starting from testnet
70
+ let network = testnetByName.get(chainSelectorName);
71
+ if (!network) {
72
+ network = mainnetByName.get(chainSelectorName);
73
+ }
74
+ return network;
34
75
  }
35
76
  return undefined;
36
77
  };
@@ -2,7 +2,7 @@ export type ChainFamily = 'evm' | 'solana' | 'aptos' | 'sui' | 'ton' | 'tron';
2
2
  export type NetworkType = 'mainnet' | 'testnet';
3
3
  export interface ChainSelector {
4
4
  name: string;
5
- selector: string;
5
+ selector: bigint;
6
6
  }
7
7
  export interface NetworkInfo {
8
8
  chainId: string;
@@ -1,9 +1,7 @@
1
1
  import type { ExecuteRequest } from '../../../generated/sdk/v1alpha/sdk_pb';
2
2
  import type { StandardSchemaV1 } from '@standard-schema/spec';
3
- export declare const getConfigFromExecuteRequest: (executeRequest: ExecuteRequest) => any;
4
- export declare const getConfig: () => any;
5
- export type ConfigHandlerParams = {
6
- configParser?: (config: unknown) => unknown;
7
- configSchema?: StandardSchemaV1;
3
+ export type ConfigHandlerParams<TConfig, TIntermediateConfig = TConfig> = {
4
+ configParser?: (config: Uint8Array) => TIntermediateConfig;
5
+ configSchema?: StandardSchemaV1<TIntermediateConfig, TConfig>;
8
6
  };
9
- export declare const configHandler: <TConfig>({ configParser, configSchema, }?: ConfigHandlerParams) => Promise<TConfig>;
7
+ export declare const configHandler: <TConfig, TIntermediateConfig = TConfig>(request: ExecuteRequest, { configParser, configSchema }?: ConfigHandlerParams<TConfig, TIntermediateConfig>) => Promise<TConfig>;
@@ -1,26 +1,4 @@
1
- import { getRequest } from '../get-request';
2
- export const getConfigFromExecuteRequest = (executeRequest) => {
3
- const config = executeRequest.config;
4
- const configString = Buffer.from(config).toString();
5
- try {
6
- return JSON.parse(configString);
7
- }
8
- catch (e) {
9
- if (typeof configString === 'string') {
10
- return configString;
11
- }
12
- if (e instanceof Error) {
13
- console.error(e.message);
14
- console.error(e.stack);
15
- }
16
- throw e;
17
- }
18
- };
19
- export const getConfig = () => {
20
- const executeRequest = getRequest();
21
- return getConfigFromExecuteRequest(executeRequest);
22
- };
23
- const standardValidate = async (schema, input) => {
1
+ async function standardValidate(schema, input) {
24
2
  let result = schema['~standard'].validate(input);
25
3
  if (result instanceof Promise)
26
4
  result = await result;
@@ -32,15 +10,13 @@ const standardValidate = async (schema, input) => {
32
10
  throw new Error(JSON.stringify(result.issues, null, 2));
33
11
  }
34
12
  return result.value;
35
- };
36
- export const configHandler = async ({ configParser, configSchema, } = {}) => {
37
- const config = getConfig();
38
- let parsedConfig = config;
39
- if (configParser) {
40
- parsedConfig = configParser(config);
41
- }
42
- if (configSchema) {
43
- parsedConfig = await standardValidate(configSchema, parsedConfig);
44
- }
45
- return parsedConfig;
13
+ }
14
+ const defaultJsonParser = (config) => JSON.parse(Buffer.from(config).toString());
15
+ export const configHandler = async (request, { configParser, configSchema } = {}) => {
16
+ const config = request.config;
17
+ const parser = configParser || defaultJsonParser;
18
+ const intermediateConfig = parser(config);
19
+ return configSchema
20
+ ? standardValidate(configSchema, intermediateConfig)
21
+ : intermediateConfig;
46
22
  };
@@ -1,7 +1,5 @@
1
- export * from './error-boundary';
2
- export { withErrorBoundary } from './error-boundary';
1
+ export * from './chain-selectors';
3
2
  export * from './hex-utils';
4
- export * from './send-response-value';
5
3
  export * from './values/consensus_aggregators';
6
4
  export * from './values/serializer_types';
7
5
  export * from './values/value';
@@ -1,7 +1,5 @@
1
- export * from './error-boundary';
2
- export { withErrorBoundary } from './error-boundary';
1
+ export * from './chain-selectors';
3
2
  export * from './hex-utils';
4
- export * from './send-response-value';
5
3
  export * from './values/consensus_aggregators';
6
4
  export * from './values/serializer_types';
7
5
  export * from './values/value';
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Supports stringifying an object with bigints, treating bigints as strings.
3
+ * @param obj - The object to stringify
4
+ * @returns The stringified object
5
+ */
6
+ export declare const safeJsonStringify: (obj: any) => string;
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Supports stringifying an object with bigints, treating bigints as strings.
3
+ * @param obj - The object to stringify
4
+ * @returns The stringified object
5
+ */
6
+ export const safeJsonStringify = (obj) => JSON.stringify(obj, (_, value) => (typeof value === 'bigint' ? value.toString() : value), 2);
@@ -17,5 +17,5 @@ export interface Trigger<TRawTriggerOutput extends Message<string>, TTriggerOutp
17
17
  /** Get the configuration as an Any type for protobuf serialization */
18
18
  configAsAny(): Any;
19
19
  /** Transform the raw trigger output to the adapted type */
20
- adapt(rawOutput: TRawTriggerOutput): TTriggerOutput | Promise<TTriggerOutput>;
20
+ adapt(rawOutput: TRawTriggerOutput): TTriggerOutput;
21
21
  }
@@ -22,6 +22,6 @@ export declare class ConsensusFieldAggregation<T, U> {
22
22
  constructor(fieldDescriptor?: ConsensusDescriptor | undefined, t?: T | undefined, u?: U | undefined);
23
23
  }
24
24
  export type ConsensusAggregationFields<T extends object> = {
25
- [K in keyof T]: () => ConsensusFieldAggregation<T[K], true>;
25
+ [K in keyof T as K extends '$typeName' ? never : K]: () => ConsensusFieldAggregation<T[K], true>;
26
26
  };
27
27
  export declare function ConsensusAggregationByFields<T extends object>(aggregation: ConsensusAggregationFields<T>): ConsensusAggregation<T, true>;
@@ -1,7 +1,7 @@
1
1
  import type { Decimal, Int64, UInt64 } from './value';
2
2
  export type NumericType = number | bigint | Date | Decimal | Int64 | UInt64;
3
3
  export type PrimitiveTypes = NumericType | boolean | string;
4
- export type NonSerializable = null | Map<any, any> | Set<any> | RegExp | Int8Array;
4
+ export type NonSerializable = null | Map<unknown, unknown> | Set<unknown> | RegExp | Int8Array | Promise<unknown>;
5
5
  export type CreSerializableNested<T> = T extends PrimitiveTypes ? T : T extends Function ? T : T extends NonSerializable ? never : T extends any[] ? CreSerializableNested<T[number]>[] : T extends object ? {
6
6
  [K in keyof T]: CreSerializableNested<T[K]>;
7
7
  } : never;
@@ -3,7 +3,6 @@ export declare const hostBindings: {
3
3
  switchModes: (args_0: Mode, ...args: unknown[]) => void;
4
4
  log: (args_0: string, ...args: unknown[]) => void;
5
5
  sendResponse: (args_0: Uint8Array<ArrayBufferLike> | Uint8Array<ArrayBuffer>, ...args: unknown[]) => number;
6
- randomSeed: (args_0: Mode.DON | Mode.NODE, ...args: unknown[]) => number;
7
6
  versionV2: (...args: unknown[]) => void;
8
7
  callCapability: (args_0: Uint8Array<ArrayBufferLike> | Uint8Array<ArrayBuffer>, ...args: unknown[]) => number;
9
8
  awaitCapabilities: (args_0: Uint8Array<ArrayBufferLike> | Uint8Array<ArrayBuffer>, args_1: number, ...args: unknown[]) => Uint8Array<ArrayBufferLike> | Uint8Array<ArrayBuffer>;
@@ -8,10 +8,6 @@ const globalHostBindingsSchema = z.object({
8
8
  .function()
9
9
  .args(z.union([z.instanceof(Uint8Array), z.custom()]))
10
10
  .returns(z.number()),
11
- randomSeed: z
12
- .function()
13
- .args(z.union([z.literal(Mode.DON), z.literal(Mode.NODE)]))
14
- .returns(z.number()),
15
11
  versionV2: z.function().args().returns(z.void()),
16
12
  callCapability: z
17
13
  .function()
@@ -0,0 +1 @@
1
+ export { Runner } from './runner';
@@ -0,0 +1 @@
1
+ export { Runner } from './runner';
@@ -0,0 +1,14 @@
1
+ import { type ExecuteRequest, type ExecutionResult } from '../../generated/sdk/v1alpha/sdk_pb';
2
+ import { type ConfigHandlerParams } from '../utils/config';
3
+ import type { SecretsProvider, Workflow } from '../workflow';
4
+ import { Runtime } from './runtime';
5
+ export declare class Runner<TConfig> {
6
+ private readonly config;
7
+ private readonly request;
8
+ private constructor();
9
+ static newRunner<TConfig, TIntermediateConfig = TConfig>(configHandlerParams?: ConfigHandlerParams<TConfig, TIntermediateConfig>): Promise<Runner<TConfig>>;
10
+ private static getRequest;
11
+ run(initFn: (config: TConfig, secretsProvider: SecretsProvider) => Promise<Workflow<TConfig>> | Workflow<TConfig>): Promise<void>;
12
+ handleExecutionPhase<TConfig>(req: ExecuteRequest, workflow: Workflow<TConfig>, runtime: Runtime<TConfig>): Promise<ExecutionResult>;
13
+ handleSubscribePhase(req: ExecuteRequest, workflow: Workflow<TConfig>): ExecutionResult;
14
+ }