@hyperlane-xyz/sdk 41.3.1 → 43.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (324) hide show
  1. package/dist/ccip/consts.d.ts.map +1 -1
  2. package/dist/ccip/consts.js +20 -0
  3. package/dist/ccip/consts.js.map +1 -1
  4. package/dist/consts/multisigIsm.d.ts.map +1 -1
  5. package/dist/consts/multisigIsm.js +32 -0
  6. package/dist/consts/multisigIsm.js.map +1 -1
  7. package/dist/contracts/contracts.d.ts.map +1 -1
  8. package/dist/contracts/contracts.js +15 -0
  9. package/dist/contracts/contracts.js.map +1 -1
  10. package/dist/contracts/contracts.test.d.ts +2 -0
  11. package/dist/contracts/contracts.test.d.ts.map +1 -0
  12. package/dist/contracts/contracts.test.js +88 -0
  13. package/dist/contracts/contracts.test.js.map +1 -0
  14. package/dist/core/types.d.ts +48 -4158
  15. package/dist/core/types.d.ts.map +1 -1
  16. package/dist/core/types.js +21 -3
  17. package/dist/core/types.js.map +1 -1
  18. package/dist/core/types.test.js +58 -0
  19. package/dist/core/types.test.js.map +1 -1
  20. package/dist/deploy/HyperlaneDeployer.js +1 -1
  21. package/dist/deploy/proxy.d.ts +8 -40
  22. package/dist/deploy/proxy.d.ts.map +1 -1
  23. package/dist/deploy/proxy.js +4 -4
  24. package/dist/deploy/proxy.js.map +1 -1
  25. package/dist/deploy/types.d.ts +1 -19
  26. package/dist/deploy/types.d.ts.map +1 -1
  27. package/dist/deploy/warp.d.ts +119 -3
  28. package/dist/deploy/warp.d.ts.map +1 -1
  29. package/dist/deploy/warp.js +696 -33
  30. package/dist/deploy/warp.js.map +1 -1
  31. package/dist/deploy/warp.test.d.ts +2 -0
  32. package/dist/deploy/warp.test.d.ts.map +1 -0
  33. package/dist/deploy/warp.test.js +358 -0
  34. package/dist/deploy/warp.test.js.map +1 -0
  35. package/dist/deploy/warpHybridPlan.d.ts +104 -0
  36. package/dist/deploy/warpHybridPlan.d.ts.map +1 -0
  37. package/dist/deploy/warpHybridPlan.js +178 -0
  38. package/dist/deploy/warpHybridPlan.js.map +1 -0
  39. package/dist/deploy/warpHybridPlan.test.d.ts +2 -0
  40. package/dist/deploy/warpHybridPlan.test.d.ts.map +1 -0
  41. package/dist/deploy/warpHybridPlan.test.js +141 -0
  42. package/dist/deploy/warpHybridPlan.test.js.map +1 -0
  43. package/dist/fee/EvmTokenFeeDeployer.d.ts.map +1 -1
  44. package/dist/fee/EvmTokenFeeDeployer.hardhat-test.js +68 -0
  45. package/dist/fee/EvmTokenFeeDeployer.hardhat-test.js.map +1 -1
  46. package/dist/fee/EvmTokenFeeDeployer.js +18 -10
  47. package/dist/fee/EvmTokenFeeDeployer.js.map +1 -1
  48. package/dist/fee/EvmTokenFeeModule.d.ts.map +1 -1
  49. package/dist/fee/EvmTokenFeeModule.hardhat-test.js +18 -8
  50. package/dist/fee/EvmTokenFeeModule.hardhat-test.js.map +1 -1
  51. package/dist/fee/EvmTokenFeeModule.js +8 -1
  52. package/dist/fee/EvmTokenFeeModule.js.map +1 -1
  53. package/dist/fee/EvmTokenFeeReader.d.ts +2 -2
  54. package/dist/fee/EvmTokenFeeReader.d.ts.map +1 -1
  55. package/dist/fee/EvmTokenFeeReader.js.map +1 -1
  56. package/dist/fee/feeConfigMapping.d.ts.map +1 -1
  57. package/dist/fee/feeConfigMapping.js +1 -0
  58. package/dist/fee/feeConfigMapping.js.map +1 -1
  59. package/dist/fee/types.d.ts +147 -646
  60. package/dist/fee/types.d.ts.map +1 -1
  61. package/dist/fee/types.js +26 -17
  62. package/dist/fee/types.js.map +1 -1
  63. package/dist/fork/types.d.ts +125 -1924
  64. package/dist/fork/types.d.ts.map +1 -1
  65. package/dist/fork/types.js +3 -3
  66. package/dist/fork/types.js.map +1 -1
  67. package/dist/gas/oracle/types.d.ts +5 -56
  68. package/dist/gas/oracle/types.d.ts.map +1 -1
  69. package/dist/hook/EvmHookModule.d.ts +1 -1
  70. package/dist/hook/EvmHookModule.d.ts.map +1 -1
  71. package/dist/hook/EvmHookModule.hardhat-test.js +12 -1
  72. package/dist/hook/EvmHookModule.hardhat-test.js.map +1 -1
  73. package/dist/hook/EvmHookModule.js +19 -3
  74. package/dist/hook/EvmHookModule.js.map +1 -1
  75. package/dist/hook/EvmHookReader.d.ts +10 -0
  76. package/dist/hook/EvmHookReader.d.ts.map +1 -1
  77. package/dist/hook/EvmHookReader.js +92 -11
  78. package/dist/hook/EvmHookReader.js.map +1 -1
  79. package/dist/hook/EvmHookReader.test.js +155 -1
  80. package/dist/hook/EvmHookReader.test.js.map +1 -1
  81. package/dist/hook/HyperlaneHookDeployer.d.ts +12 -0
  82. package/dist/hook/HyperlaneHookDeployer.d.ts.map +1 -1
  83. package/dist/hook/HyperlaneHookDeployer.hardhat-test.d.ts +2 -0
  84. package/dist/hook/HyperlaneHookDeployer.hardhat-test.d.ts.map +1 -0
  85. package/dist/hook/HyperlaneHookDeployer.hardhat-test.js +322 -0
  86. package/dist/hook/HyperlaneHookDeployer.hardhat-test.js.map +1 -0
  87. package/dist/hook/HyperlaneHookDeployer.js +262 -5
  88. package/dist/hook/HyperlaneHookDeployer.js.map +1 -1
  89. package/dist/hook/types.d.ts +72 -2223
  90. package/dist/hook/types.d.ts.map +1 -1
  91. package/dist/hook/types.js +66 -10
  92. package/dist/hook/types.js.map +1 -1
  93. package/dist/hook/types.test.js +21 -1
  94. package/dist/hook/types.test.js.map +1 -1
  95. package/dist/hook/updates.d.ts +1 -0
  96. package/dist/hook/updates.d.ts.map +1 -1
  97. package/dist/hook/updates.js +2 -2
  98. package/dist/hook/updates.js.map +1 -1
  99. package/dist/hook/utils.d.ts +28 -1
  100. package/dist/hook/utils.d.ts.map +1 -1
  101. package/dist/hook/utils.js +89 -0
  102. package/dist/hook/utils.js.map +1 -1
  103. package/dist/ica/types.d.ts +35 -1570
  104. package/dist/ica/types.d.ts.map +1 -1
  105. package/dist/ica/types.js +1 -1
  106. package/dist/ica/types.js.map +1 -1
  107. package/dist/index.d.ts +7 -6
  108. package/dist/index.d.ts.map +1 -1
  109. package/dist/index.js +7 -6
  110. package/dist/index.js.map +1 -1
  111. package/dist/ism/EvmIsmModule.d.ts +29 -3
  112. package/dist/ism/EvmIsmModule.d.ts.map +1 -1
  113. package/dist/ism/EvmIsmModule.hardhat-test.js +512 -3
  114. package/dist/ism/EvmIsmModule.hardhat-test.js.map +1 -1
  115. package/dist/ism/EvmIsmModule.js +239 -21
  116. package/dist/ism/EvmIsmModule.js.map +1 -1
  117. package/dist/ism/EvmIsmReader.d.ts.map +1 -1
  118. package/dist/ism/EvmIsmReader.js +77 -1
  119. package/dist/ism/EvmIsmReader.js.map +1 -1
  120. package/dist/ism/EvmIsmReader.test.js +245 -4
  121. package/dist/ism/EvmIsmReader.test.js.map +1 -1
  122. package/dist/ism/HyperlaneIsmFactory.d.ts +17 -5
  123. package/dist/ism/HyperlaneIsmFactory.d.ts.map +1 -1
  124. package/dist/ism/HyperlaneIsmFactory.hardhat-test.js +431 -4
  125. package/dist/ism/HyperlaneIsmFactory.hardhat-test.js.map +1 -1
  126. package/dist/ism/HyperlaneIsmFactory.js +121 -11
  127. package/dist/ism/HyperlaneIsmFactory.js.map +1 -1
  128. package/dist/ism/delayedFlow.d.ts +31 -0
  129. package/dist/ism/delayedFlow.d.ts.map +1 -0
  130. package/dist/ism/delayedFlow.js +33 -0
  131. package/dist/ism/delayedFlow.js.map +1 -0
  132. package/dist/ism/types.d.ts +86 -237
  133. package/dist/ism/types.d.ts.map +1 -1
  134. package/dist/ism/types.js +270 -20
  135. package/dist/ism/types.js.map +1 -1
  136. package/dist/ism/types.test.js +433 -1
  137. package/dist/ism/types.test.js.map +1 -1
  138. package/dist/ism/utils.d.ts.map +1 -1
  139. package/dist/ism/utils.js +113 -3
  140. package/dist/ism/utils.js.map +1 -1
  141. package/dist/ism/utils.test.js +44 -0
  142. package/dist/ism/utils.test.js.map +1 -1
  143. package/dist/metadata/agentConfig.d.ts +537 -10384
  144. package/dist/metadata/agentConfig.d.ts.map +1 -1
  145. package/dist/metadata/agentConfig.js +14 -16
  146. package/dist/metadata/agentConfig.js.map +1 -1
  147. package/dist/metadata/chainMetadataTypes.d.ts +70 -4678
  148. package/dist/metadata/chainMetadataTypes.d.ts.map +1 -1
  149. package/dist/metadata/chainMetadataTypes.js +5 -5
  150. package/dist/metadata/chainMetadataTypes.js.map +1 -1
  151. package/dist/metadata/customZodTypes.d.ts +5 -5
  152. package/dist/metadata/customZodTypes.d.ts.map +1 -1
  153. package/dist/metadata/customZodTypes.js +4 -5
  154. package/dist/metadata/customZodTypes.js.map +1 -1
  155. package/dist/metadata/deploymentArtifacts.d.ts +1 -13
  156. package/dist/metadata/deploymentArtifacts.d.ts.map +1 -1
  157. package/dist/metadata/matchingList.d.ts +12 -40
  158. package/dist/metadata/matchingList.d.ts.map +1 -1
  159. package/dist/metadata/warpRouteConfig.d.ts +8 -114
  160. package/dist/metadata/warpRouteConfig.d.ts.map +1 -1
  161. package/dist/metadata/warpRouteConfig.js +3 -3
  162. package/dist/metadata/warpRouteConfig.js.map +1 -1
  163. package/dist/middleware/account/InterchainAccount.d.ts.map +1 -1
  164. package/dist/middleware/account/InterchainAccount.js +12 -8
  165. package/dist/middleware/account/InterchainAccount.js.map +1 -1
  166. package/dist/middleware/account/InterchainAccount.test.js +22 -3
  167. package/dist/middleware/account/InterchainAccount.test.js.map +1 -1
  168. package/dist/middleware/account/icaCalls.d.ts +13 -145
  169. package/dist/middleware/account/icaCalls.d.ts.map +1 -1
  170. package/dist/middleware/account/types.d.ts +11 -105
  171. package/dist/middleware/account/types.d.ts.map +1 -1
  172. package/dist/predicate/PredicateApiClient.d.ts +1 -11
  173. package/dist/predicate/PredicateApiClient.d.ts.map +1 -1
  174. package/dist/providers/MultiProvider.d.ts.map +1 -1
  175. package/dist/providers/MultiProvider.js +3 -2
  176. package/dist/providers/MultiProvider.js.map +1 -1
  177. package/dist/providers/MultiProviderAdapter.d.ts +3 -3
  178. package/dist/providers/MultiProviderAdapter.d.ts.map +1 -1
  179. package/dist/providers/MultiProviderAdapter.js +2 -1
  180. package/dist/providers/MultiProviderAdapter.js.map +1 -1
  181. package/dist/providers/SmartProvider/HyperlaneJsonRpcProvider.d.ts.map +1 -1
  182. package/dist/providers/SmartProvider/HyperlaneJsonRpcProvider.js +4 -0
  183. package/dist/providers/SmartProvider/HyperlaneJsonRpcProvider.js.map +1 -1
  184. package/dist/providers/transactionFeeEstimators.d.ts +16 -9
  185. package/dist/providers/transactionFeeEstimators.d.ts.map +1 -1
  186. package/dist/providers/transactionFeeEstimators.js +66 -17
  187. package/dist/providers/transactionFeeEstimators.js.map +1 -1
  188. package/dist/providers/transactionFeeEstimators.test.js +153 -1
  189. package/dist/providers/transactionFeeEstimators.test.js.map +1 -1
  190. package/dist/providers/transactions/submitter/builder/types.d.ts +13 -280
  191. package/dist/providers/transactions/submitter/builder/types.d.ts.map +1 -1
  192. package/dist/providers/transactions/submitter/builder/types.js +2 -4
  193. package/dist/providers/transactions/submitter/builder/types.js.map +1 -1
  194. package/dist/providers/transactions/submitter/ethersV5/EV5GnosisSafeTxSubmitter.d.ts +2 -0
  195. package/dist/providers/transactions/submitter/ethersV5/EV5GnosisSafeTxSubmitter.d.ts.map +1 -1
  196. package/dist/providers/transactions/submitter/ethersV5/EV5GnosisSafeTxSubmitter.js +15 -7
  197. package/dist/providers/transactions/submitter/ethersV5/EV5GnosisSafeTxSubmitter.js.map +1 -1
  198. package/dist/providers/transactions/submitter/ethersV5/EV5GnosisSafeTxSubmitter.test.d.ts +2 -0
  199. package/dist/providers/transactions/submitter/ethersV5/EV5GnosisSafeTxSubmitter.test.d.ts.map +1 -0
  200. package/dist/providers/transactions/submitter/ethersV5/EV5GnosisSafeTxSubmitter.test.js +145 -0
  201. package/dist/providers/transactions/submitter/ethersV5/EV5GnosisSafeTxSubmitter.test.js.map +1 -0
  202. package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.d.ts +14 -1
  203. package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.d.ts.map +1 -1
  204. package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.js +46 -5
  205. package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.js.map +1 -1
  206. package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.test.d.ts +2 -0
  207. package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.test.d.ts.map +1 -0
  208. package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.test.js +125 -0
  209. package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.test.js.map +1 -0
  210. package/dist/providers/transactions/submitter/ethersV5/types.d.ts +30 -102
  211. package/dist/providers/transactions/submitter/ethersV5/types.d.ts.map +1 -1
  212. package/dist/providers/transactions/submitter/ethersV5/types.js +3 -21
  213. package/dist/providers/transactions/submitter/ethersV5/types.js.map +1 -1
  214. package/dist/providers/transactions/submitter/types.d.ts +5 -51
  215. package/dist/providers/transactions/submitter/types.d.ts.map +1 -1
  216. package/dist/providers/transactions/types.d.ts +1 -9
  217. package/dist/providers/transactions/types.d.ts.map +1 -1
  218. package/dist/router/HyperlaneRouterDeployer.d.ts +3 -1
  219. package/dist/router/HyperlaneRouterDeployer.d.ts.map +1 -1
  220. package/dist/router/HyperlaneRouterDeployer.js +4 -2
  221. package/dist/router/HyperlaneRouterDeployer.js.map +1 -1
  222. package/dist/router/types.d.ts +33 -1824
  223. package/dist/router/types.d.ts.map +1 -1
  224. package/dist/router/types.js +4 -4
  225. package/dist/router/types.js.map +1 -1
  226. package/dist/rpc/evm/EvmEventLogsReader.d.ts +19 -27
  227. package/dist/rpc/evm/EvmEventLogsReader.d.ts.map +1 -1
  228. package/dist/rpc/evm/EvmEventLogsReader.js +23 -0
  229. package/dist/rpc/evm/EvmEventLogsReader.js.map +1 -1
  230. package/dist/rpc/evm/EvmEventLogsReader.test.js +53 -1
  231. package/dist/rpc/evm/EvmEventLogsReader.test.js.map +1 -1
  232. package/dist/signers/turnkeyClient.d.ts +1 -15
  233. package/dist/signers/turnkeyClient.d.ts.map +1 -1
  234. package/dist/test/testUtils.d.ts +1 -1
  235. package/dist/test/testUtils.d.ts.map +1 -1
  236. package/dist/test/testUtils.js +17 -0
  237. package/dist/test/testUtils.js.map +1 -1
  238. package/dist/test/testUtils.test.d.ts +2 -0
  239. package/dist/test/testUtils.test.d.ts.map +1 -0
  240. package/dist/test/testUtils.test.js +28 -0
  241. package/dist/test/testUtils.test.js.map +1 -0
  242. package/dist/timelock/types.d.ts +8 -32
  243. package/dist/timelock/types.d.ts.map +1 -1
  244. package/dist/token/EvmWarpModule.d.ts +44 -8
  245. package/dist/token/EvmWarpModule.d.ts.map +1 -1
  246. package/dist/token/EvmWarpModule.hardhat-test.js +574 -4
  247. package/dist/token/EvmWarpModule.hardhat-test.js.map +1 -1
  248. package/dist/token/EvmWarpModule.js +237 -25
  249. package/dist/token/EvmWarpModule.js.map +1 -1
  250. package/dist/token/EvmWarpRouteReader.d.ts.map +1 -1
  251. package/dist/token/EvmWarpRouteReader.js +36 -19
  252. package/dist/token/EvmWarpRouteReader.js.map +1 -1
  253. package/dist/token/EvmWarpRouteReader.test.js +219 -2
  254. package/dist/token/EvmWarpRouteReader.test.js.map +1 -1
  255. package/dist/token/EvmXERC20Reader.d.ts +9 -21
  256. package/dist/token/EvmXERC20Reader.d.ts.map +1 -1
  257. package/dist/token/EvmXERC20Reader.js +24 -48
  258. package/dist/token/EvmXERC20Reader.js.map +1 -1
  259. package/dist/token/EvmXERC20Reader.test.js +97 -0
  260. package/dist/token/EvmXERC20Reader.test.js.map +1 -1
  261. package/dist/token/ITokenMetadata.d.ts +12 -130
  262. package/dist/token/ITokenMetadata.d.ts.map +1 -1
  263. package/dist/token/ITokenMetadata.js +2 -2
  264. package/dist/token/ITokenMetadata.js.map +1 -1
  265. package/dist/token/TokenConnection.d.ts +3 -35
  266. package/dist/token/TokenConnection.d.ts.map +1 -1
  267. package/dist/token/configUtils.d.ts +17 -7
  268. package/dist/token/configUtils.d.ts.map +1 -1
  269. package/dist/token/configUtils.js +124 -0
  270. package/dist/token/configUtils.js.map +1 -1
  271. package/dist/token/configUtils.test.js +212 -11
  272. package/dist/token/configUtils.test.js.map +1 -1
  273. package/dist/token/deploy.d.ts +3 -1
  274. package/dist/token/deploy.d.ts.map +1 -1
  275. package/dist/token/deploy.hardhat-test.js +617 -6
  276. package/dist/token/deploy.hardhat-test.js.map +1 -1
  277. package/dist/token/deploy.js +25 -6
  278. package/dist/token/deploy.js.map +1 -1
  279. package/dist/token/types.d.ts +4373 -25929
  280. package/dist/token/types.d.ts.map +1 -1
  281. package/dist/token/types.js +10 -12
  282. package/dist/token/types.js.map +1 -1
  283. package/dist/token/types.test.js +48 -0
  284. package/dist/token/types.test.js.map +1 -1
  285. package/dist/token/warpCheck.d.ts.map +1 -1
  286. package/dist/token/warpCheck.js +36 -1
  287. package/dist/token/warpCheck.js.map +1 -1
  288. package/dist/token/xerc20-abi.d.ts +31 -0
  289. package/dist/token/xerc20-abi.d.ts.map +1 -1
  290. package/dist/token/xerc20-abi.js +40 -0
  291. package/dist/token/xerc20-abi.js.map +1 -1
  292. package/dist/token/xerc20-limits.d.ts +63 -0
  293. package/dist/token/xerc20-limits.d.ts.map +1 -0
  294. package/dist/token/xerc20-limits.js +80 -0
  295. package/dist/token/xerc20-limits.js.map +1 -0
  296. package/dist/token/xerc20.d.ts +30 -1
  297. package/dist/token/xerc20.d.ts.map +1 -1
  298. package/dist/token/xerc20.js +137 -54
  299. package/dist/token/xerc20.js.map +1 -1
  300. package/dist/token/xerc20.test.js +461 -169
  301. package/dist/token/xerc20.test.js.map +1 -1
  302. package/dist/types.d.ts +6 -36
  303. package/dist/types.d.ts.map +1 -1
  304. package/dist/types.js +1 -1
  305. package/dist/types.js.map +1 -1
  306. package/dist/utils/cosmos.d.ts +113 -844
  307. package/dist/utils/cosmos.d.ts.map +1 -1
  308. package/dist/utils/cosmos.js +50 -91
  309. package/dist/utils/cosmos.js.map +1 -1
  310. package/dist/utils/ism.d.ts +167 -1
  311. package/dist/utils/ism.d.ts.map +1 -1
  312. package/dist/utils/ism.js +412 -2
  313. package/dist/utils/ism.js.map +1 -1
  314. package/dist/utils/ism.test.d.ts +2 -0
  315. package/dist/utils/ism.test.d.ts.map +1 -0
  316. package/dist/utils/ism.test.js +372 -0
  317. package/dist/utils/ism.test.js.map +1 -0
  318. package/dist/utils/schemas.d.ts +3 -3
  319. package/dist/utils/schemas.d.ts.map +1 -1
  320. package/dist/utils/schemas.js +2 -1
  321. package/dist/utils/schemas.js.map +1 -1
  322. package/dist/warp/types.d.ts +25 -367
  323. package/dist/warp/types.d.ts.map +1 -1
  324. package/package.json +11 -11
@@ -6,8 +6,8 @@ import { type TokenConnection } from './TokenConnection.js';
6
6
  import { TokenStandard } from './TokenStandard.js';
7
7
  export declare const TokenConfigSchema: z.ZodObject<{
8
8
  chainName: z.ZodString;
9
- standard: z.ZodNativeEnum<typeof TokenStandard>;
10
- tokenType: z.ZodOptional<z.ZodNativeEnum<{
9
+ standard: z.ZodEnum<typeof TokenStandard>;
10
+ tokenType: z.ZodOptional<z.ZodEnum<{
11
11
  readonly synthetic: 'synthetic';
12
12
  readonly syntheticRebase: 'syntheticRebase';
13
13
  readonly syntheticUri: 'syntheticUri';
@@ -34,35 +34,19 @@ export declare const TokenConfigSchema: z.ZodObject<{
34
34
  decimals: z.ZodNumber;
35
35
  symbol: z.ZodString;
36
36
  name: z.ZodString;
37
- addressOrDenom: z.ZodEffects<z.ZodNullable<z.ZodString>, string, string | null>;
37
+ addressOrDenom: z.ZodPipe<z.ZodNullable<z.ZodString>, z.ZodTransform<string, string | null>>;
38
38
  collateralAddressOrDenom: z.ZodOptional<z.ZodString>;
39
39
  igpTokenAddressOrDenom: z.ZodOptional<z.ZodString>;
40
40
  logoURI: z.ZodOptional<z.ZodString>;
41
41
  connections: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodUnion<[z.ZodObject<{
42
42
  type: z.ZodOptional<z.ZodLiteral<import("./TokenConnection.js").TokenConnectionType.Hyperlane>>;
43
43
  token: z.ZodString;
44
- }, "strip", z.ZodTypeAny, {
45
- type?: import("./TokenConnection.js").TokenConnectionType.Hyperlane | undefined;
46
- token: string;
47
- }, {
48
- type?: import("./TokenConnection.js").TokenConnectionType.Hyperlane | undefined;
49
- token: string;
50
- }>, z.ZodObject<{
44
+ }, z.core.$strip>, z.ZodObject<{
51
45
  type: z.ZodLiteral<import("./TokenConnection.js").TokenConnectionType.Ibc>;
52
46
  token: z.ZodString;
53
47
  sourcePort: z.ZodString;
54
48
  sourceChannel: z.ZodString;
55
- }, "strip", z.ZodTypeAny, {
56
- type: import("./TokenConnection.js").TokenConnectionType.Ibc;
57
- token: string;
58
- sourcePort: string;
59
- sourceChannel: string;
60
- }, {
61
- type: import("./TokenConnection.js").TokenConnectionType.Ibc;
62
- token: string;
63
- sourcePort: string;
64
- sourceChannel: string;
65
- }>]>, z.ZodObject<{
49
+ }, z.core.$strip>]>, z.ZodObject<{
66
50
  type: z.ZodLiteral<import("./TokenConnection.js").TokenConnectionType.IbcHyperlane>;
67
51
  token: z.ZodString;
68
52
  sourcePort: z.ZodString;
@@ -70,119 +54,17 @@ export declare const TokenConfigSchema: z.ZodObject<{
70
54
  intermediateChainName: z.ZodString;
71
55
  intermediateIbcDenom: z.ZodString;
72
56
  intermediateRouterAddress: z.ZodString;
73
- }, "strip", z.ZodTypeAny, {
74
- type: import("./TokenConnection.js").TokenConnectionType.IbcHyperlane;
75
- token: string;
76
- sourcePort: string;
77
- sourceChannel: string;
78
- intermediateChainName: string;
79
- intermediateIbcDenom: string;
80
- intermediateRouterAddress: string;
81
- }, {
82
- type: import("./TokenConnection.js").TokenConnectionType.IbcHyperlane;
83
- token: string;
84
- sourcePort: string;
85
- sourceChannel: string;
86
- intermediateChainName: string;
87
- intermediateIbcDenom: string;
88
- intermediateRouterAddress: string;
89
- }>]>, "many">>;
57
+ }, z.core.$strip>]>>>;
90
58
  coinGeckoId: z.ZodOptional<z.ZodString>;
91
- scale: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodObject<{
59
+ scale: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodObject<{
92
60
  numerator: z.ZodNumber;
93
61
  denominator: z.ZodNumber;
94
- }, "strip", z.ZodTypeAny, {
95
- numerator: number;
96
- denominator: number;
97
- }, {
98
- numerator: number;
99
- denominator: number;
100
- }>, z.ZodObject<{
101
- numerator: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodUnion<[z.ZodBigInt, z.ZodNumber]>, z.ZodString]>, bigint, string | number | bigint>, bigint, string | number | bigint>;
102
- denominator: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodUnion<[z.ZodBigInt, z.ZodNumber]>, z.ZodString]>, bigint, string | number | bigint>, bigint, string | number | bigint>;
103
- }, "strip", z.ZodTypeAny, {
104
- numerator: bigint;
105
- denominator: bigint;
106
- }, {
107
- numerator: string | number | bigint;
108
- denominator: string | number | bigint;
109
- }>]>>;
62
+ }, z.core.$strip>, z.ZodObject<{
63
+ numerator: z.ZodPipe<z.ZodUnion<[z.ZodUnion<[z.ZodBigInt, z.ZodNumber]>, z.ZodString]>, z.ZodTransform<bigint, string | number | bigint>>;
64
+ denominator: z.ZodPipe<z.ZodUnion<[z.ZodUnion<[z.ZodBigInt, z.ZodNumber]>, z.ZodString]>, z.ZodTransform<bigint, string | number | bigint>>;
65
+ }, z.core.$strip>]>>;
110
66
  warpRouteId: z.ZodOptional<z.ZodString>;
111
- }, "strip", z.ZodTypeAny, {
112
- chainName: string;
113
- standard: TokenStandard;
114
- tokenType?: "atomicLocalRebalancing" | "collateral" | "collateralCctp" | "collateralDepositAddress" | "collateralEverclear" | "collateralFiat" | "collateralOft" | "collateralUri" | "collateralVault" | "collateralVaultRebase" | "crossCollateral" | "ethEverclear" | "native" | "nativeOpL1" | "nativeOpL2" | "nativeScaled" | "synthetic" | "syntheticRebase" | "syntheticUri" | "unknown" | "xERC20" | "xERC20Lockbox" | undefined;
115
- decimals: number;
116
- symbol: string;
117
- name: string;
118
- addressOrDenom: string;
119
- collateralAddressOrDenom?: string | undefined;
120
- igpTokenAddressOrDenom?: string | undefined;
121
- logoURI?: string | undefined;
122
- connections?: ({
123
- type?: import("./TokenConnection.js").TokenConnectionType.Hyperlane | undefined;
124
- token: string;
125
- } | {
126
- type: import("./TokenConnection.js").TokenConnectionType.Ibc;
127
- token: string;
128
- sourcePort: string;
129
- sourceChannel: string;
130
- } | {
131
- type: import("./TokenConnection.js").TokenConnectionType.IbcHyperlane;
132
- token: string;
133
- sourcePort: string;
134
- sourceChannel: string;
135
- intermediateChainName: string;
136
- intermediateIbcDenom: string;
137
- intermediateRouterAddress: string;
138
- })[] | undefined;
139
- coinGeckoId?: string | undefined;
140
- scale?: number | {
141
- numerator: number;
142
- denominator: number;
143
- } | {
144
- numerator: bigint;
145
- denominator: bigint;
146
- } | undefined;
147
- warpRouteId?: string | undefined;
148
- }, {
149
- chainName: string;
150
- standard: TokenStandard;
151
- tokenType?: "atomicLocalRebalancing" | "collateral" | "collateralCctp" | "collateralDepositAddress" | "collateralEverclear" | "collateralFiat" | "collateralOft" | "collateralUri" | "collateralVault" | "collateralVaultRebase" | "crossCollateral" | "ethEverclear" | "native" | "nativeOpL1" | "nativeOpL2" | "nativeScaled" | "synthetic" | "syntheticRebase" | "syntheticUri" | "unknown" | "xERC20" | "xERC20Lockbox" | undefined;
152
- decimals: number;
153
- symbol: string;
154
- name: string;
155
- addressOrDenom: string | null;
156
- collateralAddressOrDenom?: string | undefined;
157
- igpTokenAddressOrDenom?: string | undefined;
158
- logoURI?: string | undefined;
159
- connections?: ({
160
- type?: import("./TokenConnection.js").TokenConnectionType.Hyperlane | undefined;
161
- token: string;
162
- } | {
163
- type: import("./TokenConnection.js").TokenConnectionType.Ibc;
164
- token: string;
165
- sourcePort: string;
166
- sourceChannel: string;
167
- } | {
168
- type: import("./TokenConnection.js").TokenConnectionType.IbcHyperlane;
169
- token: string;
170
- sourcePort: string;
171
- sourceChannel: string;
172
- intermediateChainName: string;
173
- intermediateIbcDenom: string;
174
- intermediateRouterAddress: string;
175
- })[] | undefined;
176
- coinGeckoId?: string | undefined;
177
- scale?: number | {
178
- numerator: number;
179
- denominator: number;
180
- } | {
181
- numerator: string | number | bigint;
182
- denominator: string | number | bigint;
183
- } | undefined;
184
- warpRouteId?: string | undefined;
185
- }>;
67
+ }, z.core.$strip>;
186
68
  export type TokenArgs = Omit<z.infer<typeof TokenConfigSchema>, 'addressOrDenom' | 'connections'> & {
187
69
  addressOrDenom: Address | string;
188
70
  connections?: Array<TokenConnection>;
@@ -1 +1 @@
1
- {"version":3,"file":"ITokenMetadata.d.ts","sourceRoot":"","sources":["../../src/token/ITokenMetadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGxE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EACL,KAAK,eAAe,EAErB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAMnD,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqD5B,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,IAAI,CAC1B,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,EACjC,gBAAgB,GAAG,aAAa,CACjC,GAAG;IACF,cAAc,EAAE,OAAO,GAAG,MAAM,CAAC;IACjC,WAAW,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;CACtC,CAAC;AAEF,MAAM,WAAW,cAAe,SAAQ,SAAS;IAC/C,QAAQ,EAAE,YAAY,CAAC;IAEvB,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAE7C,KAAK,IAAI,OAAO,CAAC;IACjB,QAAQ,IAAI,OAAO,CAAC;IACpB,WAAW,IAAI,OAAO,CAAC;IACvB,gBAAgB,IAAI,OAAO,CAAC;IAC5B,UAAU,IAAI,OAAO,CAAC;IACtB,UAAU,IAAI,OAAO,CAAC;IACtB,iBAAiB,IAAI,OAAO,CAAC;IAC7B,sBAAsB,IAAI,OAAO,CAAC;IAElC,cAAc,IAAI,eAAe,EAAE,CAAC;IAEpC,qBAAqB,CAAC,KAAK,EAAE,SAAS,GAAG,eAAe,GAAG,SAAS,CAAC;IACrE,aAAa,CAAC,UAAU,EAAE,eAAe,GAAG,cAAc,CAAC;IAC3D,gBAAgB,CAAC,KAAK,EAAE,cAAc,GAAG,cAAc,CAAC;IAExD,MAAM,CAAC,KAAK,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC;IACxC,cAAc,CAAC,KAAK,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC;CACjD"}
1
+ {"version":3,"file":"ITokenMetadata.d.ts","sourceRoot":"","sources":["../../src/token/ITokenMetadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGxE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EACL,KAAK,eAAe,EAErB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAMnD,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAqD5B,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,IAAI,CAC1B,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,EACjC,gBAAgB,GAAG,aAAa,CACjC,GAAG;IACF,cAAc,EAAE,OAAO,GAAG,MAAM,CAAC;IACjC,WAAW,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;CACtC,CAAC;AAEF,MAAM,WAAW,cAAe,SAAQ,SAAS;IAC/C,QAAQ,EAAE,YAAY,CAAC;IAEvB,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAE7C,KAAK,IAAI,OAAO,CAAC;IACjB,QAAQ,IAAI,OAAO,CAAC;IACpB,WAAW,IAAI,OAAO,CAAC;IACvB,gBAAgB,IAAI,OAAO,CAAC;IAC5B,UAAU,IAAI,OAAO,CAAC;IACtB,UAAU,IAAI,OAAO,CAAC;IACtB,iBAAiB,IAAI,OAAO,CAAC;IAC7B,sBAAsB,IAAI,OAAO,CAAC;IAElC,cAAc,IAAI,eAAe,EAAE,CAAC;IAEpC,qBAAqB,CAAC,KAAK,EAAE,SAAS,GAAG,eAAe,GAAG,SAAS,CAAC;IACrE,aAAa,CAAC,UAAU,EAAE,eAAe,GAAG,cAAc,CAAC;IAC3D,gBAAgB,CAAC,KAAK,EAAE,cAAc,GAAG,cAAc,CAAC;IAExD,MAAM,CAAC,KAAK,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC;IACxC,cAAc,CAAC,KAAK,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC;CACjD"}
@@ -9,10 +9,10 @@ import { TokenMetadataSchema } from './types.js';
9
9
  export const TokenConfigSchema = z.object({
10
10
  chainName: ZChainName.describe('The name of the chain, must correspond to a chain in the multiProvider chainMetadata'),
11
11
  standard: z
12
- .nativeEnum(TokenStandard)
12
+ .enum(TokenStandard)
13
13
  .describe('The type of token. See TokenStandard for valid values.'),
14
14
  tokenType: z
15
- .nativeEnum(TokenType)
15
+ .enum(TokenType)
16
16
  .optional()
17
17
  .describe('The warp route deploy token type. Used to preserve route implementation semantics when multiple deploy token types share the same token standard.'),
18
18
  decimals: ZUint.lt(256).describe('The decimals value (e.g. 18 for Eth)'),
@@ -1 +1 @@
1
- {"version":3,"file":"ITokenMetadata.js","sourceRoot":"","sources":["../../src/token/ITokenMetadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AAIlE,OAAO,EAEL,2BAA2B,GAC5B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEjD,4EAA4E;AAC5E,yDAAyD;AACzD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,SAAS,EAAE,UAAU,CAAC,QAAQ,CAC5B,sFAAsF,CACvF;IACD,QAAQ,EAAE,CAAC;SACR,UAAU,CAAC,aAAa,CAAC;SACzB,QAAQ,CAAC,wDAAwD,CAAC;IACrE,SAAS,EAAE,CAAC;SACT,UAAU,CAAC,SAAS,CAAC;SACrB,QAAQ,EAAE;SACV,QAAQ,CACP,mJAAmJ,CACpJ;IACH,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,sCAAsC,CAAC;IACxE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAAC;IAC7D,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,uBAAuB,CAAC;IACzD,cAAc,EAAE,CAAC;SACd,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;SACjC,QAAQ,CACP,8FAA8F,CAC/F;IACH,wBAAwB,EAAE,CAAC;SACxB,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,QAAQ,CAAC,kDAAkD,CAAC;IAC/D,sBAAsB,EAAE,CAAC;SACtB,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,QAAQ,CAAC,oDAAoD,CAAC;IACjE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;IACpE,WAAW,EAAE,CAAC;SACX,KAAK,CAAC,2BAA2B,CAAC;SAClC,QAAQ,EAAE;SACV,QAAQ,CAAC,kDAAkD,CAAC;IAC/D,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,uDAAuD,CAAC;IACpE,KAAK,EAAE,mBAAmB,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAC7C,iCAAiC,CAClC;IACD,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,QAAQ,CACP,wIAAwI,CACzI;CACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"ITokenMetadata.js","sourceRoot":"","sources":["../../src/token/ITokenMetadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AAIlE,OAAO,EAEL,2BAA2B,GAC5B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEjD,4EAA4E;AAC5E,yDAAyD;AACzD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,SAAS,EAAE,UAAU,CAAC,QAAQ,CAC5B,sFAAsF,CACvF;IACD,QAAQ,EAAE,CAAC;SACR,IAAI,CAAC,aAAa,CAAC;SACnB,QAAQ,CAAC,wDAAwD,CAAC;IACrE,SAAS,EAAE,CAAC;SACT,IAAI,CAAC,SAAS,CAAC;SACf,QAAQ,EAAE;SACV,QAAQ,CACP,mJAAmJ,CACpJ;IACH,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,sCAAsC,CAAC;IACxE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAAC;IAC7D,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,uBAAuB,CAAC;IACzD,cAAc,EAAE,CAAC;SACd,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;SACjC,QAAQ,CACP,8FAA8F,CAC/F;IACH,wBAAwB,EAAE,CAAC;SACxB,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,QAAQ,CAAC,kDAAkD,CAAC;IAC/D,sBAAsB,EAAE,CAAC;SACtB,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,QAAQ,CAAC,oDAAoD,CAAC;IACjE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;IACpE,WAAW,EAAE,CAAC;SACX,KAAK,CAAC,2BAA2B,CAAC;SAClC,QAAQ,EAAE;SACV,QAAQ,CAAC,kDAAkD,CAAC;IAC/D,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,uDAAuD,CAAC;IACpE,KAAK,EAAE,mBAAmB,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAC7C,iCAAiC,CAClC;IACD,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,QAAQ,CACP,wIAAwI,CACzI;CACJ,CAAC,CAAC"}
@@ -31,28 +31,12 @@ export type TokenConnection<TToken extends ITokenMetadata = ITokenMetadata> = Hy
31
31
  export declare const TokenConnectionConfigSchema: z.ZodUnion<[z.ZodUnion<[z.ZodObject<{
32
32
  type: z.ZodOptional<z.ZodLiteral<TokenConnectionType.Hyperlane>>;
33
33
  token: z.ZodString;
34
- }, "strip", z.ZodTypeAny, {
35
- type?: TokenConnectionType.Hyperlane | undefined;
36
- token: string;
37
- }, {
38
- type?: TokenConnectionType.Hyperlane | undefined;
39
- token: string;
40
- }>, z.ZodObject<{
34
+ }, z.core.$strip>, z.ZodObject<{
41
35
  type: z.ZodLiteral<TokenConnectionType.Ibc>;
42
36
  token: z.ZodString;
43
37
  sourcePort: z.ZodString;
44
38
  sourceChannel: z.ZodString;
45
- }, "strip", z.ZodTypeAny, {
46
- type: TokenConnectionType.Ibc;
47
- token: string;
48
- sourcePort: string;
49
- sourceChannel: string;
50
- }, {
51
- type: TokenConnectionType.Ibc;
52
- token: string;
53
- sourcePort: string;
54
- sourceChannel: string;
55
- }>]>, z.ZodObject<{
39
+ }, z.core.$strip>]>, z.ZodObject<{
56
40
  type: z.ZodLiteral<TokenConnectionType.IbcHyperlane>;
57
41
  token: z.ZodString;
58
42
  sourcePort: z.ZodString;
@@ -60,23 +44,7 @@ export declare const TokenConnectionConfigSchema: z.ZodUnion<[z.ZodUnion<[z.ZodO
60
44
  intermediateChainName: z.ZodString;
61
45
  intermediateIbcDenom: z.ZodString;
62
46
  intermediateRouterAddress: z.ZodString;
63
- }, "strip", z.ZodTypeAny, {
64
- type: TokenConnectionType.IbcHyperlane;
65
- token: string;
66
- sourcePort: string;
67
- sourceChannel: string;
68
- intermediateChainName: string;
69
- intermediateIbcDenom: string;
70
- intermediateRouterAddress: string;
71
- }, {
72
- type: TokenConnectionType.IbcHyperlane;
73
- token: string;
74
- sourcePort: string;
75
- sourceChannel: string;
76
- intermediateChainName: string;
77
- intermediateIbcDenom: string;
78
- intermediateRouterAddress: string;
79
- }>]>;
47
+ }, z.core.$strip>]>;
80
48
  export declare function getTokenConnectionId(protocol: ProtocolType, chainName: ChainName, address: Address): string;
81
49
  export declare function parseTokenConnectionId(data: string): {
82
50
  protocol: ProtocolType;
@@ -1 +1 @@
1
- {"version":3,"file":"TokenConnection.d.ts","sourceRoot":"","sources":["../../src/token/TokenConnection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,OAAO,EAAE,YAAY,EAAU,MAAM,sBAAsB,CAAC;AAGrE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,oBAAY,mBAAmB;IAC7B,SAAS,cAAc;IACvB,GAAG,QAAQ;IACX,YAAY,kBAAkB;CAC/B;AAED,UAAU,mBAAmB,CAAC,MAAM,SAAS,cAAc,GAAG,cAAc;IAC1E,IAAI,CAAC,EAAE,mBAAmB,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,wBAAwB,CACvC,MAAM,SAAS,cAAc,GAAG,cAAc,CAC9C,SAAQ,mBAAmB,CAAC,MAAM,CAAC;IACnC,IAAI,CAAC,EAAE,mBAAmB,CAAC,SAAS,CAAC;CACtC;AAED,MAAM,WAAW,kBAAkB,CACjC,MAAM,SAAS,cAAc,GAAG,cAAc,CAC9C,SAAQ,mBAAmB,CAAC,MAAM,CAAC;IACnC,IAAI,EAAE,mBAAmB,CAAC,GAAG,CAAC;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,6BAA6B,CAC5C,MAAM,SAAS,cAAc,GAAG,cAAc,CAC9C,SAAQ,mBAAmB,CAAC,MAAM,CAAC;IACnC,IAAI,EAAE,mBAAmB,CAAC,YAAY,CAAC;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,qBAAqB,EAAE,SAAS,CAAC;IACjC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,yBAAyB,EAAE,OAAO,CAAC;CACpC;AAED,MAAM,MAAM,eAAe,CAAC,MAAM,SAAS,cAAc,GAAG,cAAc,IACtE,wBAAwB,CAAC,MAAM,CAAC,GAChC,kBAAkB,CAAC,MAAM,CAAC,GAC1B,6BAA6B,CAAC,MAAM,CAAC,CAAC;AAO1C,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAuBrC,CAAC;AAEJ,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,YAAY,EACtB,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,OAAO,GACf,MAAM,CAMR;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG;IACpD,QAAQ,EAAE,YAAY,CAAC;IACvB,SAAS,EAAE,SAAS,CAAC;IACrB,cAAc,EAAE,OAAO,CAAC;CACzB,CAeA"}
1
+ {"version":3,"file":"TokenConnection.d.ts","sourceRoot":"","sources":["../../src/token/TokenConnection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,OAAO,EAAE,YAAY,EAAU,MAAM,sBAAsB,CAAC;AAGrE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,oBAAY,mBAAmB;IAC7B,SAAS,cAAc;IACvB,GAAG,QAAQ;IACX,YAAY,kBAAkB;CAC/B;AAED,UAAU,mBAAmB,CAAC,MAAM,SAAS,cAAc,GAAG,cAAc;IAC1E,IAAI,CAAC,EAAE,mBAAmB,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,wBAAwB,CACvC,MAAM,SAAS,cAAc,GAAG,cAAc,CAC9C,SAAQ,mBAAmB,CAAC,MAAM,CAAC;IACnC,IAAI,CAAC,EAAE,mBAAmB,CAAC,SAAS,CAAC;CACtC;AAED,MAAM,WAAW,kBAAkB,CACjC,MAAM,SAAS,cAAc,GAAG,cAAc,CAC9C,SAAQ,mBAAmB,CAAC,MAAM,CAAC;IACnC,IAAI,EAAE,mBAAmB,CAAC,GAAG,CAAC;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,6BAA6B,CAC5C,MAAM,SAAS,cAAc,GAAG,cAAc,CAC9C,SAAQ,mBAAmB,CAAC,MAAM,CAAC;IACnC,IAAI,EAAE,mBAAmB,CAAC,YAAY,CAAC;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,qBAAqB,EAAE,SAAS,CAAC;IACjC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,yBAAyB,EAAE,OAAO,CAAC;CACpC;AAED,MAAM,MAAM,eAAe,CAAC,MAAM,SAAS,cAAc,GAAG,cAAc,IACtE,wBAAwB,CAAC,MAAM,CAAC,GAChC,kBAAkB,CAAC,MAAM,CAAC,GAC1B,6BAA6B,CAAC,MAAM,CAAC,CAAC;AAO1C,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;mBAuBrC,CAAC;AAEJ,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,YAAY,EACtB,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,OAAO,GACf,MAAM,CAMR;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG;IACpD,QAAQ,EAAE,YAAY,CAAC;IACvB,SAAS,EAAE,SAAS,CAAC;IACrB,cAAc,EAAE,OAAO,CAAC;CACzB,CAeA"}
@@ -1,6 +1,8 @@
1
1
  import { providers } from 'ethers';
2
2
  import { Address } from '@hyperlane-xyz/utils';
3
+ import { IsmConfig } from '../ism/types.js';
3
4
  import { ResolvedTokenFeeConfigInput, TokenFeeConfigInput } from '../fee/types.js';
5
+ import { HookConfig } from '../hook/types.js';
4
6
  import { MultiProvider } from '../providers/MultiProvider.js';
5
7
  import { DestinationGas, RemoteRouters } from '../router/types.js';
6
8
  import { ChainMap } from '../types.js';
@@ -53,14 +55,22 @@ type AllowedRebalancingBridges = NonNullable<MovableTokenConfig['allowedRebalanc
53
55
  */
54
56
  export declare function canonicalizeAllowedRebalancingBridges(allowedRebalancingBridges: AllowedRebalancingBridges, resolveDomainId: (domainOrChain: string) => number | undefined): AllowedRebalancingBridges;
55
57
  /**
56
- * Expands a Warp deploy config with additional data
57
- *
58
- * @param multiProvider
59
- * @param warpDeployConfig - The warp deployment config
60
- * @param deployedRoutersAddresses - Addresses of deployed routers for each chain
61
- * @param virtualConfig - Optional virtual config to include in the warpDeployConfig
62
- * @returns A promise resolving to an expanded Warp deploy config with derived and virtual metadata
58
+ * Canonicalizes the keys of a domain-or-chain-name keyed map to domain ids,
59
+ * mirroring canonicalizeAllowedRebalancingBridges, so a name-keyed source
60
+ * config does not read as drift against the domain-id-keyed on-chain state.
61
+ * When two source keys collapse to the same domain their values are combined
62
+ * via `merge`. Keys the resolver does not recognize are kept as-is rather than
63
+ * erroring the whole route check.
64
+ */
65
+ export declare function canonicalizeDomainKeyedMap<V>(map: Record<string, V>, resolveDomainId: (domainOrChain: string) => number | undefined, merge: (existing: V | undefined, incoming: V) => V): Record<string, V>;
66
+ export declare function mergeRebalanceTargets(existing: string[] | undefined, incoming: string[]): string[];
67
+ /**
68
+ * Mirrors the completed hybrid ISM leaf into its hook-tree declaration. The
69
+ * route preflight requires exactly one identical leaf on both surfaces; using
70
+ * the already-completed ISM node here keeps warpRouter/default ownership and
71
+ * derived remoteIsms resolution single-sourced.
63
72
  */
73
+ export declare function completeHybridHookNodesFromIsm(hook: HookConfig, completedIsm: IsmConfig): HookConfig;
64
74
  export declare function expandWarpDeployConfig(params: {
65
75
  multiProvider: MultiProvider;
66
76
  warpDeployConfig: WarpRouteDeployConfigMailboxRequired;
@@ -1 +1 @@
1
- {"version":3,"file":"configUtils.d.ts","sourceRoot":"","sources":["../../src/token/configUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configUtils.d.ts","sourceRoot":"","sources":["../../src/token/configUtils.ts"],"names":[],"mappings":"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"}
@@ -4,11 +4,14 @@ import { HypXERC20Lockbox__factory, HypXERC20__factory, } from '@hyperlane-xyz/c
4
4
  import { ProtocolType } from '@hyperlane-xyz/provider-sdk';
5
5
  import { addressToBytes32, assert, deepCopy, intersection, isAddressEvm, isCosmosIbcDenomAddress, isEVMLike, isObjEmpty, objFilter, objMap, promiseObjAll, sortArraysInObject, transformObj, } from '@hyperlane-xyz/utils';
6
6
  import { isProxy } from '../deploy/proxy.js';
7
+ import { IsmType } from '../ism/types.js';
7
8
  import { TokenFeeType, } from '../fee/types.js';
8
9
  import { EvmHookReader } from '../hook/EvmHookReader.js';
10
+ import { collectHybridHookNodes, mapHybridHookNodes } from '../hook/utils.js';
9
11
  import { EvmIsmReader } from '../ism/EvmIsmReader.js';
10
12
  import { resolveRouterMapConfig, } from '../router/types.js';
11
13
  import { normalizeScale } from '../utils/decimals.js';
14
+ import { DelayedFlowRemoteIsmsSourceType, collectHybridIsmNodes, completeHybridIsmNodes, ismTreeContainsHybridHookIsm, } from '../utils/ism.js';
12
15
  import { EvmWarpRouteReader } from './EvmWarpRouteReader.js';
13
16
  import { TokenType, gasOverhead } from './config.js';
14
17
  import { deriveTokenMetadata } from './tokenMetadataUtils.js';
@@ -156,6 +159,32 @@ export function canonicalizeAllowedRebalancingBridges(allowedRebalancingBridges,
156
159
  }
157
160
  return canonicalized;
158
161
  }
162
+ /**
163
+ * Canonicalizes the keys of a domain-or-chain-name keyed map to domain ids,
164
+ * mirroring canonicalizeAllowedRebalancingBridges, so a name-keyed source
165
+ * config does not read as drift against the domain-id-keyed on-chain state.
166
+ * When two source keys collapse to the same domain their values are combined
167
+ * via `merge`. Keys the resolver does not recognize are kept as-is rather than
168
+ * erroring the whole route check.
169
+ */
170
+ export function canonicalizeDomainKeyedMap(map, resolveDomainId, merge) {
171
+ const canonicalized = {};
172
+ for (const [domainOrChain, value] of Object.entries(map)) {
173
+ const canonicalKey = resolveDomainId(domainOrChain)?.toString() ?? domainOrChain;
174
+ canonicalized[canonicalKey] = merge(canonicalized[canonicalKey], value);
175
+ }
176
+ return canonicalized;
177
+ }
178
+ export function mergeRebalanceTargets(existing, incoming) {
179
+ const byTarget = new Map();
180
+ for (const target of [...(existing ?? []), ...incoming]) {
181
+ const key = target.toLowerCase();
182
+ if (!byTarget.has(key)) {
183
+ byTarget.set(key, target);
184
+ }
185
+ }
186
+ return Array.from(byTarget.values());
187
+ }
159
188
  /**
160
189
  * Expands a Warp deploy config with additional data
161
190
  *
@@ -165,6 +194,44 @@ export function canonicalizeAllowedRebalancingBridges(allowedRebalancingBridges,
165
194
  * @param virtualConfig - Optional virtual config to include in the warpDeployConfig
166
195
  * @returns A promise resolving to an expanded Warp deploy config with derived and virtual metadata
167
196
  */
197
+ /**
198
+ * Collects the DelayedFlowRouterHookIsm addresses deployed on every chain
199
+ * other than `chain`, keyed by chain name as lowercase bytes32 — the expected
200
+ * `remoteIsms` pairing for `chain`'s own instance. Read from the derived
201
+ * on-chain configs (nested derived ISM nodes carry their address), so no
202
+ * extra RPC calls are needed.
203
+ */
204
+ function collectRemoteDelayedFlowIsms(chain, expandedOnChainWarpConfig) {
205
+ const remoteIsms = {};
206
+ for (const [remoteChain, remoteConfig] of Object.entries(expandedOnChainWarpConfig)) {
207
+ if (remoteChain === chain)
208
+ continue;
209
+ if (typeof remoteConfig.interchainSecurityModule !== 'object')
210
+ continue;
211
+ for (const node of collectHybridIsmNodes(remoteConfig.interchainSecurityModule)) {
212
+ if (node.type !== IsmType.DELAYED_FLOW_ROUTER)
213
+ continue;
214
+ if (!('address' in node) || typeof node.address !== 'string')
215
+ continue;
216
+ remoteIsms[remoteChain] = addressToBytes32(node.address).toLowerCase();
217
+ }
218
+ }
219
+ return remoteIsms;
220
+ }
221
+ /**
222
+ * Mirrors the completed hybrid ISM leaf into its hook-tree declaration. The
223
+ * route preflight requires exactly one identical leaf on both surfaces; using
224
+ * the already-completed ISM node here keeps warpRouter/default ownership and
225
+ * derived remoteIsms resolution single-sourced.
226
+ */
227
+ export function completeHybridHookNodesFromIsm(hook, completedIsm) {
228
+ const hookNodes = collectHybridHookNodes(hook);
229
+ const ismNodes = collectHybridIsmNodes(completedIsm);
230
+ assert(hookNodes.length === 1 && ismNodes.length === 1, `Expected exactly one hybrid hook/ISM node on each config surface, found ${hookNodes.length} hook node(s) and ${ismNodes.length} ISM node(s)`);
231
+ const completedNode = ismNodes[0];
232
+ assert(hookNodes[0].type === completedNode.type, `Hybrid hook/ISM type mismatch: hook has ${hookNodes[0].type}, ISM has ${completedNode.type}`);
233
+ return mapHybridHookNodes(hook, () => completedNode);
234
+ }
168
235
  export async function expandWarpDeployConfig(params) {
169
236
  const { multiProvider, warpDeployConfig, deployedRoutersAddresses, expandedOnChainWarpConfig, validateScale = true, } = params;
170
237
  const derivedTokenMetadata = await deriveTokenMetadata(multiProvider, warpDeployConfig, { validateScale });
@@ -203,6 +270,34 @@ export async function expandWarpDeployConfig(params) {
203
270
  config.owner,
204
271
  };
205
272
  }
273
+ // Hybrid hook/ISM trees: complete the expected nodes with the values
274
+ // the warp deploy machinery manages (warpRouter = the token itself;
275
+ // remoteIsms = the cross-chain DelayedFlowRouterHookIsm pairing, read
276
+ // from the other chains' derived on-chain trees). Deploy wires the
277
+ // explicitly declared single hybrid instance as BOTH the token's ISM
278
+ // (in-tree) and its hook.
279
+ if (typeof config.interchainSecurityModule === 'object' &&
280
+ ismTreeContainsHybridHookIsm(config.interchainSecurityModule)) {
281
+ const routerAddress = deployedRoutersAddresses[chain];
282
+ assert(routerAddress, `Missing deployed router address for ${chain}, which declares a hybrid hook/ISM`);
283
+ const remoteDelayedFlowIsms = expandedOnChainWarpConfig
284
+ ? collectRemoteDelayedFlowIsms(chain, expandedOnChainWarpConfig)
285
+ : undefined;
286
+ const completedIsm = completeHybridIsmNodes(config.interchainSecurityModule, routerAddress, {
287
+ type: DelayedFlowRemoteIsmsSourceType.Resolved,
288
+ derived: remoteDelayedFlowIsms,
289
+ }, config.owner, multiProvider);
290
+ chainConfig.interchainSecurityModule = completedIsm;
291
+ if (config.hook === undefined) {
292
+ const completedHybridNodes = collectHybridIsmNodes(completedIsm);
293
+ assert(completedHybridNodes.length === 1, `Expected exactly one hybrid hook/ISM node on ${chain}, found ${completedHybridNodes.length}`);
294
+ chainConfig.hook = completedHybridNodes[0];
295
+ }
296
+ else if (typeof config.hook === 'object' &&
297
+ collectHybridHookNodes(config.hook).length > 0) {
298
+ chainConfig.hook = completeHybridHookNodesFromIsm(config.hook, completedIsm);
299
+ }
300
+ }
206
301
  // Properly set the remote routers addresses to their 32 bytes representation
207
302
  // as that is how they are set on chain
208
303
  const formattedRemoteRouters = objMap(chainConfig.remoteRouters ?? {}, (_domainId, { address }) => ({
@@ -248,6 +343,19 @@ export async function expandWarpDeployConfig(params) {
248
343
  chainConfig.allowedRebalancingBridges =
249
344
  canonicalizeAllowedRebalancingBridges(chainConfig.allowedRebalancingBridges, (domainOrChain) => multiProvider.tryGetDomainId(domainOrChain) ?? undefined);
250
345
  }
346
+ // rebalanceTargets/rebalanceRecipients keys likewise accept a chain name
347
+ // or a domain id (RemoteRouterDomainOrChainNameSchema) while the on-chain
348
+ // reader emits domain-id keys, so canonicalize them the same way to avoid
349
+ // a false ConfigMismatch on a name-keyed source config.
350
+ if (isCrossCollateralTokenConfig(chainConfig)) {
351
+ const resolveDomainId = (domainOrChain) => multiProvider.tryGetDomainId(domainOrChain) ?? undefined;
352
+ if (chainConfig.rebalanceTargets) {
353
+ chainConfig.rebalanceTargets = canonicalizeDomainKeyedMap(chainConfig.rebalanceTargets, resolveDomainId, mergeRebalanceTargets);
354
+ }
355
+ if (chainConfig.rebalanceRecipients) {
356
+ chainConfig.rebalanceRecipients = canonicalizeDomainKeyedMap(chainConfig.rebalanceRecipients, resolveDomainId, (_existing, incoming) => incoming);
357
+ }
358
+ }
251
359
  const protocol = multiProvider.getProtocol(chain);
252
360
  const isEVMChain = isEVMLike(protocol);
253
361
  // Expand EVM warpDeployConfig virtual to the control states (states that we expect)
@@ -400,9 +508,12 @@ async function getFeeTokenAddress(routerAddress, tokenConfig, provider) {
400
508
  * through here without additional RPC calls.
401
509
  */
402
510
  function applyFeeTokenAddress(feeConfig, feeToken) {
511
+ const owner = feeConfig.owner;
512
+ assert(owner, `Owner is required to resolve ${feeConfig.type} fee config`);
403
513
  if (feeConfig.type === TokenFeeType.RoutingFee) {
404
514
  return {
405
515
  ...feeConfig,
516
+ owner,
406
517
  token: feeToken,
407
518
  feeContracts: objMap(feeConfig.feeContracts, (_chain, subFee) => applyFeeTokenAddress(subFee, feeToken)),
408
519
  };
@@ -410,11 +521,13 @@ function applyFeeTokenAddress(feeConfig, feeToken) {
410
521
  if (feeConfig.type === TokenFeeType.CrossCollateralRoutingFee) {
411
522
  return {
412
523
  ...feeConfig,
524
+ owner,
413
525
  feeContracts: objMap(feeConfig.feeContracts, (_chain, destinationConfig) => objMap(destinationConfig, (_router, subFee) => applyFeeTokenAddress(subFee, feeToken))),
414
526
  };
415
527
  }
416
528
  return {
417
529
  ...feeConfig,
530
+ owner,
418
531
  token: feeToken,
419
532
  };
420
533
  }
@@ -468,6 +581,17 @@ const sortArraysInConfigToCheck = (a, b) => {
468
581
  return 1;
469
582
  return 0;
470
583
  }
584
+ // Sort xERC20 extraBridges by the bridge they hold limits for. The derived
585
+ // side is ordered by the events the token emitted and the expected side by
586
+ // whoever wrote the deploy config, so without this the same set of bridges
587
+ // in two orders diffs index by index and reports drift that is not there.
588
+ if (a.lockbox && b.lockbox) {
589
+ if (a.lockbox < b.lockbox)
590
+ return -1;
591
+ if (a.lockbox > b.lockbox)
592
+ return 1;
593
+ return 0;
594
+ }
471
595
  if (a < b)
472
596
  return -1;
473
597
  if (a > b)
@@ -1 +1 @@
1
- {"version":3,"file":"configUtils.js","sourceRoot":"","sources":["../../src/token/configUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configUtils.js","sourceRoot":"","sources":["../../src/token/configUtils.ts"],"names":[],"mappings":"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"}