@hyperlane-xyz/sdk 41.3.1 → 42.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 (166) 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 +20 -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 +80 -2602
  15. package/dist/core/types.d.ts.map +1 -1
  16. package/dist/core/types.js +19 -1
  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/warp.d.ts +119 -3
  21. package/dist/deploy/warp.d.ts.map +1 -1
  22. package/dist/deploy/warp.js +696 -33
  23. package/dist/deploy/warp.js.map +1 -1
  24. package/dist/deploy/warp.test.d.ts +2 -0
  25. package/dist/deploy/warp.test.d.ts.map +1 -0
  26. package/dist/deploy/warp.test.js +358 -0
  27. package/dist/deploy/warp.test.js.map +1 -0
  28. package/dist/deploy/warpHybridPlan.d.ts +104 -0
  29. package/dist/deploy/warpHybridPlan.d.ts.map +1 -0
  30. package/dist/deploy/warpHybridPlan.js +178 -0
  31. package/dist/deploy/warpHybridPlan.js.map +1 -0
  32. package/dist/deploy/warpHybridPlan.test.d.ts +2 -0
  33. package/dist/deploy/warpHybridPlan.test.d.ts.map +1 -0
  34. package/dist/deploy/warpHybridPlan.test.js +141 -0
  35. package/dist/deploy/warpHybridPlan.test.js.map +1 -0
  36. package/dist/hook/EvmHookModule.d.ts +1 -1
  37. package/dist/hook/EvmHookModule.d.ts.map +1 -1
  38. package/dist/hook/EvmHookModule.js +16 -3
  39. package/dist/hook/EvmHookModule.js.map +1 -1
  40. package/dist/hook/EvmHookReader.d.ts +10 -0
  41. package/dist/hook/EvmHookReader.d.ts.map +1 -1
  42. package/dist/hook/EvmHookReader.js +92 -11
  43. package/dist/hook/EvmHookReader.js.map +1 -1
  44. package/dist/hook/EvmHookReader.test.js +155 -1
  45. package/dist/hook/EvmHookReader.test.js.map +1 -1
  46. package/dist/hook/types.d.ts +107 -1983
  47. package/dist/hook/types.d.ts.map +1 -1
  48. package/dist/hook/types.js +49 -0
  49. package/dist/hook/types.js.map +1 -1
  50. package/dist/hook/types.test.js +21 -1
  51. package/dist/hook/types.test.js.map +1 -1
  52. package/dist/hook/updates.d.ts +1 -0
  53. package/dist/hook/updates.d.ts.map +1 -1
  54. package/dist/hook/updates.js +2 -2
  55. package/dist/hook/updates.js.map +1 -1
  56. package/dist/hook/utils.d.ts +28 -1
  57. package/dist/hook/utils.d.ts.map +1 -1
  58. package/dist/hook/utils.js +89 -0
  59. package/dist/hook/utils.js.map +1 -1
  60. package/dist/ica/types.d.ts +4 -674
  61. package/dist/ica/types.d.ts.map +1 -1
  62. package/dist/index.d.ts +6 -5
  63. package/dist/index.d.ts.map +1 -1
  64. package/dist/index.js +6 -5
  65. package/dist/index.js.map +1 -1
  66. package/dist/ism/EvmIsmModule.d.ts +28 -2
  67. package/dist/ism/EvmIsmModule.d.ts.map +1 -1
  68. package/dist/ism/EvmIsmModule.hardhat-test.js +478 -3
  69. package/dist/ism/EvmIsmModule.hardhat-test.js.map +1 -1
  70. package/dist/ism/EvmIsmModule.js +224 -10
  71. package/dist/ism/EvmIsmModule.js.map +1 -1
  72. package/dist/ism/EvmIsmReader.d.ts.map +1 -1
  73. package/dist/ism/EvmIsmReader.js +77 -1
  74. package/dist/ism/EvmIsmReader.js.map +1 -1
  75. package/dist/ism/EvmIsmReader.test.js +245 -4
  76. package/dist/ism/EvmIsmReader.test.js.map +1 -1
  77. package/dist/ism/HyperlaneIsmFactory.d.ts +14 -4
  78. package/dist/ism/HyperlaneIsmFactory.d.ts.map +1 -1
  79. package/dist/ism/HyperlaneIsmFactory.hardhat-test.js +372 -3
  80. package/dist/ism/HyperlaneIsmFactory.hardhat-test.js.map +1 -1
  81. package/dist/ism/HyperlaneIsmFactory.js +80 -6
  82. package/dist/ism/HyperlaneIsmFactory.js.map +1 -1
  83. package/dist/ism/delayedFlow.d.ts +31 -0
  84. package/dist/ism/delayedFlow.d.ts.map +1 -0
  85. package/dist/ism/delayedFlow.js +33 -0
  86. package/dist/ism/delayedFlow.js.map +1 -0
  87. package/dist/ism/types.d.ts +135 -4
  88. package/dist/ism/types.d.ts.map +1 -1
  89. package/dist/ism/types.js +263 -11
  90. package/dist/ism/types.js.map +1 -1
  91. package/dist/ism/types.test.js +433 -1
  92. package/dist/ism/types.test.js.map +1 -1
  93. package/dist/ism/utils.d.ts.map +1 -1
  94. package/dist/ism/utils.js +113 -3
  95. package/dist/ism/utils.js.map +1 -1
  96. package/dist/ism/utils.test.js +44 -0
  97. package/dist/ism/utils.test.js.map +1 -1
  98. package/dist/providers/MultiProviderAdapter.d.ts +3 -3
  99. package/dist/providers/MultiProviderAdapter.d.ts.map +1 -1
  100. package/dist/providers/MultiProviderAdapter.js +2 -1
  101. package/dist/providers/MultiProviderAdapter.js.map +1 -1
  102. package/dist/providers/SmartProvider/HyperlaneJsonRpcProvider.d.ts.map +1 -1
  103. package/dist/providers/SmartProvider/HyperlaneJsonRpcProvider.js +4 -0
  104. package/dist/providers/SmartProvider/HyperlaneJsonRpcProvider.js.map +1 -1
  105. package/dist/providers/transactionFeeEstimators.d.ts +16 -9
  106. package/dist/providers/transactionFeeEstimators.d.ts.map +1 -1
  107. package/dist/providers/transactionFeeEstimators.js +66 -17
  108. package/dist/providers/transactionFeeEstimators.js.map +1 -1
  109. package/dist/providers/transactionFeeEstimators.test.js +153 -1
  110. package/dist/providers/transactionFeeEstimators.test.js.map +1 -1
  111. package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.d.ts +14 -1
  112. package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.d.ts.map +1 -1
  113. package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.js +46 -5
  114. package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.js.map +1 -1
  115. package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.test.d.ts +2 -0
  116. package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.test.d.ts.map +1 -0
  117. package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.test.js +125 -0
  118. package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.test.js.map +1 -0
  119. package/dist/router/HyperlaneRouterDeployer.d.ts +3 -1
  120. package/dist/router/HyperlaneRouterDeployer.d.ts.map +1 -1
  121. package/dist/router/HyperlaneRouterDeployer.js +4 -2
  122. package/dist/router/HyperlaneRouterDeployer.js.map +1 -1
  123. package/dist/router/types.d.ts +6 -1011
  124. package/dist/router/types.d.ts.map +1 -1
  125. package/dist/test/testUtils.d.ts +1 -1
  126. package/dist/test/testUtils.d.ts.map +1 -1
  127. package/dist/test/testUtils.js +17 -0
  128. package/dist/test/testUtils.js.map +1 -1
  129. package/dist/test/testUtils.test.d.ts +2 -0
  130. package/dist/test/testUtils.test.d.ts.map +1 -0
  131. package/dist/test/testUtils.test.js +28 -0
  132. package/dist/test/testUtils.test.js.map +1 -0
  133. package/dist/token/EvmWarpModule.d.ts +44 -8
  134. package/dist/token/EvmWarpModule.d.ts.map +1 -1
  135. package/dist/token/EvmWarpModule.hardhat-test.js +574 -4
  136. package/dist/token/EvmWarpModule.hardhat-test.js.map +1 -1
  137. package/dist/token/EvmWarpModule.js +237 -25
  138. package/dist/token/EvmWarpModule.js.map +1 -1
  139. package/dist/token/configUtils.d.ts +17 -7
  140. package/dist/token/configUtils.d.ts.map +1 -1
  141. package/dist/token/configUtils.js +108 -0
  142. package/dist/token/configUtils.js.map +1 -1
  143. package/dist/token/configUtils.test.js +155 -1
  144. package/dist/token/configUtils.test.js.map +1 -1
  145. package/dist/token/deploy.d.ts +3 -1
  146. package/dist/token/deploy.d.ts.map +1 -1
  147. package/dist/token/deploy.hardhat-test.js +454 -3
  148. package/dist/token/deploy.hardhat-test.js.map +1 -1
  149. package/dist/token/deploy.js +25 -6
  150. package/dist/token/deploy.js.map +1 -1
  151. package/dist/token/types.d.ts +169 -2931
  152. package/dist/token/types.d.ts.map +1 -1
  153. package/dist/token/types.test.js +48 -0
  154. package/dist/token/types.test.js.map +1 -1
  155. package/dist/token/warpCheck.d.ts.map +1 -1
  156. package/dist/token/warpCheck.js +36 -1
  157. package/dist/token/warpCheck.js.map +1 -1
  158. package/dist/utils/ism.d.ts +167 -1
  159. package/dist/utils/ism.d.ts.map +1 -1
  160. package/dist/utils/ism.js +412 -2
  161. package/dist/utils/ism.js.map +1 -1
  162. package/dist/utils/ism.test.d.ts +2 -0
  163. package/dist/utils/ism.test.d.ts.map +1 -0
  164. package/dist/utils/ism.test.js +372 -0
  165. package/dist/utils/ism.test.js.map +1 -0
  166. package/package.json +10 -10
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAEnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,OAAO,KAAK,EAAE,iBAAiB,EAAc,MAAM,kBAAkB,CAAC;AAOtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AA0D7C,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAG3B,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ import { hookTreeContainsLegacyIgp } from '../hook/utils.js';
5
5
  import { DerivedIcaRouterConfigSchema, IcaRouterConfigSchema, } from '../ica/types.js';
6
6
  import { IsmConfigSchema } from '../ism/types.js';
7
7
  import { DeployedOwnableSchema, OwnableSchema } from '../types.js';
8
- import { ismTreeContainsRateLimited } from '../utils/ism.js';
8
+ import { ismTreeContainsMailboxDefaultOrHybrid, ismTreeContainsRateLimited, } from '../utils/ism.js';
9
9
  const CoreConfigBaseSchema = OwnableSchema.extend({
10
10
  defaultIsm: IsmConfigSchema,
11
11
  defaultHook: HookConfigSchema,
@@ -20,6 +20,22 @@ const CoreConfigBaseSchema = OwnableSchema.extend({
20
20
  deployQuotedCalls: z.boolean().optional(),
21
21
  contractVersion: z.string().optional(),
22
22
  });
23
+ /**
24
+ * DefaultIsm routes to `mailbox.defaultIsm()`. Installed AS the mailbox's
25
+ * default ISM it routes to itself, so verification recurses until it runs out
26
+ * of gas and no inbound message can be delivered. The warp-route hybrid
27
+ * hook/ISMs are equally invalid here: they are bound to a specific warp router
28
+ * and meter its flow, which is meaningless for chain-wide default verification.
29
+ */
30
+ const rejectWarpOnlyDefaultIsm = (val, ctx) => {
31
+ if (ismTreeContainsMailboxDefaultOrHybrid(val.defaultIsm)) {
32
+ ctx.addIssue({
33
+ code: z.ZodIssueCode.custom,
34
+ message: 'DefaultIsm, NetFlowRateLimitedHookIsm and DelayedFlowRouterHookIsm cannot be used as (or nested inside) a core default ISM',
35
+ path: ['defaultIsm'],
36
+ });
37
+ }
38
+ };
23
39
  const rejectRateLimitedDefaultIsm = (val, ctx) => {
24
40
  if (ismTreeContainsRateLimited(val.defaultIsm)) {
25
41
  ctx.addIssue({
@@ -47,12 +63,14 @@ const rejectQuotedCallsWithLegacyIgp = (val, ctx) => {
47
63
  };
48
64
  export const CoreConfigSchema = CoreConfigBaseSchema.superRefine((val, ctx) => {
49
65
  rejectRateLimitedDefaultIsm(val, ctx);
66
+ rejectWarpOnlyDefaultIsm(val, ctx);
50
67
  rejectQuotedCallsWithLegacyIgp(val, ctx);
51
68
  });
52
69
  export const DerivedCoreConfigSchema = CoreConfigBaseSchema.merge(z.object({
53
70
  interchainAccountRouter: DerivedIcaRouterConfigSchema.optional(),
54
71
  })).superRefine((val, ctx) => {
55
72
  rejectRateLimitedDefaultIsm(val, ctx);
73
+ rejectWarpOnlyDefaultIsm(val, ctx);
56
74
  rejectQuotedCallsWithLegacyIgp(val, ctx);
57
75
  });
58
76
  export const DeployedCoreAddressesSchema = ProxyFactoryFactoriesSchema.extend({
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAEjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EACL,4BAA4B,EAC5B,qBAAqB,GACtB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACnE,OAAO,EACL,qCAAqC,EACrC,0BAA0B,GAC3B,MAAM,iBAAiB,CAAC;AAEzB,MAAM,oBAAoB,GAAG,aAAa,CAAC,MAAM,CAAC;IAChD,UAAU,EAAE,eAAe;IAC3B,WAAW,EAAE,gBAAgB;IAC7B,YAAY,EAAE,gBAAgB;IAC9B,8DAA8D;IAC9D,mEAAmE;IACnE,UAAU,EAAE,qBAAqB,CAAC,QAAQ,EAAE;IAC5C,uBAAuB,EAAE,qBAAqB,CAAC,QAAQ,EAAE;IACzD,gEAAgE;IAChE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,oEAAoE;IACpE,iBAAiB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACzC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACvC,CAAC,CAAC;AAEH;;;;;;GAMG;AACH,MAAM,wBAAwB,GAAG,CAC/B,GAA4B,EAC5B,GAAoB,EACpB,EAAE;IACF,IAAI,qCAAqC,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;QAC1D,GAAG,CAAC,QAAQ,CAAC;YACX,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;YAC3B,OAAO,EACL,4HAA4H;YAC9H,IAAI,EAAE,CAAC,YAAY,CAAC;SACrB,CAAC,CAAC;IACL,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,2BAA2B,GAAG,CAClC,GAA4B,EAC5B,GAAoB,EACpB,EAAE;IACF,IAAI,0BAA0B,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/C,GAAG,CAAC,QAAQ,CAAC;YACX,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;YAC3B,OAAO,EAAE,qDAAqD;YAC9D,IAAI,EAAE,CAAC,YAAY,CAAC;SACrB,CAAC,CAAC;IACL,CAAC;AACH,CAAC,CAAC;AAEF,2EAA2E;AAC3E,6EAA6E;AAC7E,4EAA4E;AAC5E,wCAAwC;AACxC,MAAM,8BAA8B,GAAG,CACrC,GAIC,EACD,GAAoB,EACpB,EAAE;IACF,IAAI,GAAG,CAAC,iBAAiB,KAAK,KAAK;QAAE,OAAO;IAC5C,IACE,yBAAyB,CAAC,GAAG,CAAC,WAAW,CAAC;QAC1C,yBAAyB,CAAC,GAAG,CAAC,YAAY,CAAC,EAC3C,CAAC;QACD,GAAG,CAAC,QAAQ,CAAC;YACX,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;YAC3B,OAAO,EACL,oLAAoL;YACtL,IAAI,EAAE,CAAC,mBAAmB,CAAC;SAC5B,CAAC,CAAC;IACL,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IAC5E,2BAA2B,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACtC,wBAAwB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACnC,8BAA8B,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AAC3C,CAAC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,uBAAuB,GAAG,oBAAoB,CAAC,KAAK,CAC/D,CAAC,CAAC,MAAM,CAAC;IACP,uBAAuB,EAAE,4BAA4B,CAAC,QAAQ,EAAE;CACjE,CAAC,CACH,CAAC,WAAW,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IACzB,2BAA2B,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACtC,wBAAwB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACnC,8BAA8B,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AAC3C,CAAC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,2BAA2B,GAAG,2BAA2B,CAAC,MAAM,CAAC;IAC5E,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE;IAC7B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;IACzB,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzC,uBAAuB,EAAE,CAAC,CAAC,MAAM,EAAE;IACnC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,oBAAoB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3C,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACrC,sBAAsB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC9C,CAAC,CAAC;AASH,MAAM,UAAU,yBAAyB,CAAC,MAAkB;IAC1D,OAAO,MAAM,CAAC,cAAc,EAAE,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,MAA6C;IAE7C,OAAO,MAAM,CAAC,iBAAiB,KAAK,KAAK,CAAC;AAC5C,CAAC;AAaD,MAAM,CAAN,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IAC3B,wCAAmB,CAAA;IACnB,4DAAuC,CAAA;IACvC,4DAAuC,CAAA;AACzC,CAAC,EAJW,iBAAiB,KAAjB,iBAAiB,QAI5B;AAED,MAAM,CAAN,IAAY,oBAGX;AAHD,WAAY,oBAAoB;IAC9B,iDAAyB,CAAA;IACzB,iDAAyB,CAAA;AAC3B,CAAC,EAHW,oBAAoB,KAApB,oBAAoB,QAG/B"}
@@ -1,5 +1,6 @@
1
1
  import { expect } from 'chai';
2
2
  import { HookType, IgpVersion } from '../hook/types.js';
3
+ import { IsmType } from '../ism/types.js';
3
4
  import { CoreConfigSchema } from './types.js';
4
5
  const ADDRESS = '0x0000000000000000000000000000000000000001';
5
6
  const igpHook = (igpVersion) => ({
@@ -18,6 +19,63 @@ const baseConfig = (overrides) => ({
18
19
  requiredHook: ADDRESS,
19
20
  ...overrides,
20
21
  });
22
+ describe('CoreConfigSchema warp-only default ISM guard', () => {
23
+ const netFlow = {
24
+ type: IsmType.NET_FLOW_RATE_LIMITED,
25
+ warpRouter: ADDRESS,
26
+ thresholdBps: 500,
27
+ duration: 86400n,
28
+ owner: ADDRESS,
29
+ };
30
+ const delayedFlow = {
31
+ type: IsmType.DELAYED_FLOW_ROUTER,
32
+ warpRouter: ADDRESS,
33
+ thresholdBps: 500,
34
+ maxDelay: 3600,
35
+ duration: 86400n,
36
+ owner: ADDRESS,
37
+ };
38
+ // DefaultIsm.route() returns mailbox.defaultIsm(); as the default ISM it
39
+ // resolves to itself and recurses until out of gas.
40
+ it('rejects DefaultIsm as the core default ISM', () => {
41
+ const result = CoreConfigSchema.safeParse(baseConfig({ defaultIsm: { type: IsmType.MAILBOX_DEFAULT } }));
42
+ expect(result.success).to.be.false;
43
+ });
44
+ it('rejects DefaultIsm nested inside a core default ISM tree', () => {
45
+ const result = CoreConfigSchema.safeParse(baseConfig({
46
+ defaultIsm: {
47
+ type: IsmType.AGGREGATION,
48
+ threshold: 2,
49
+ modules: [
50
+ { type: IsmType.TRUSTED_RELAYER, relayer: ADDRESS },
51
+ { type: IsmType.MAILBOX_DEFAULT },
52
+ ],
53
+ },
54
+ }));
55
+ expect(result.success).to.be.false;
56
+ });
57
+ for (const hybrid of [netFlow, delayedFlow]) {
58
+ it(`rejects ${hybrid.type} nested in a core default ISM tree`, () => {
59
+ const result = CoreConfigSchema.safeParse(baseConfig({
60
+ defaultIsm: {
61
+ type: IsmType.AGGREGATION,
62
+ threshold: 2,
63
+ modules: [
64
+ { type: IsmType.TRUSTED_RELAYER, relayer: ADDRESS },
65
+ hybrid,
66
+ ],
67
+ },
68
+ }));
69
+ expect(result.success).to.be.false;
70
+ });
71
+ }
72
+ it('still accepts an ordinary default ISM', () => {
73
+ const result = CoreConfigSchema.safeParse(baseConfig({
74
+ defaultIsm: { type: IsmType.TRUSTED_RELAYER, relayer: ADDRESS },
75
+ }));
76
+ expect(result.success).to.be.true;
77
+ });
78
+ });
21
79
  describe('CoreConfigSchema legacy IGP / QuotedCalls guard', () => {
22
80
  it('rejects a legacy IGP hook when deployQuotedCalls is not false', () => {
23
81
  const result = CoreConfigSchema.safeParse(baseConfig({ defaultHook: igpHook(IgpVersion.Legacy) }));
@@ -1 +1 @@
1
- {"version":3,"file":"types.test.js","sourceRoot":"","sources":["../../src/core/types.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAE9B,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAExD,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,MAAM,OAAO,GAAG,4CAA4C,CAAC;AAE7D,MAAM,OAAO,GAAG,CAAC,UAAuB,EAAE,EAAE,CAAC,CAAC;IAC5C,IAAI,EAAE,QAAQ,CAAC,wBAAwB;IACvC,KAAK,EAAE,OAAO;IACd,WAAW,EAAE,OAAO;IACpB,SAAS,EAAE,OAAO;IAClB,QAAQ,EAAE,EAAE;IACZ,YAAY,EAAE,EAAE;IAChB,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;CACtC,CAAC,CAAC;AAEH,MAAM,UAAU,GAAG,CAAC,SAAkC,EAAE,EAAE,CAAC,CAAC;IAC1D,KAAK,EAAE,OAAO;IACd,UAAU,EAAE,OAAO;IACnB,WAAW,EAAE,OAAO;IACpB,YAAY,EAAE,OAAO;IACrB,GAAG,SAAS;CACb,CAAC,CAAC;AAEH,QAAQ,CAAC,iDAAiD,EAAE,GAAG,EAAE;IAC/D,EAAE,CAAC,+DAA+D,EAAE,GAAG,EAAE;QACvE,MAAM,MAAM,GAAG,gBAAgB,CAAC,SAAS,CACvC,UAAU,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CACxD,CAAC;QACF,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;QACnC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;QAClE,MAAM,MAAM,GAAG,gBAAgB,CAAC,SAAS,CACvC,UAAU,CAAC;YACT,WAAW,EAAE,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;YACvC,iBAAiB,EAAE,KAAK;SACzB,CAAC,CACH,CAAC;QACF,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,MAAM,GAAG,gBAAgB,CAAC,SAAS,CACvC,UAAU,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CACxD,CAAC;QACF,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wDAAwD,EAAE,GAAG,EAAE;QAChE,MAAM,MAAM,GAAG,gBAAgB,CAAC,SAAS,CACvC,UAAU,CAAC;YACT,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ,CAAC,WAAW;gBAC1B,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,WAAW,EAAE,EAAE,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;aACpE;SACF,CAAC,CACH,CAAC;QACF,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;IACrC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"types.test.js","sourceRoot":"","sources":["../../src/core/types.test.ts"],"names":[],"mappings":"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"}
@@ -4,10 +4,11 @@ import { type FeeReadContext } from '@hyperlane-xyz/provider-sdk/fee';
4
4
  import { AnnotatedTx, TxReceipt } from '@hyperlane-xyz/provider-sdk/module';
5
5
  import { WarpConfig as ProviderWarpConfig } from '@hyperlane-xyz/provider-sdk/warp';
6
6
  import { Address } from '@hyperlane-xyz/utils';
7
+ import { DelayedFlowRouterHookIsmConfig } from '../ism/types.js';
7
8
  import { MultiProvider } from '../providers/MultiProvider.js';
8
- import { TypedAnnotatedTransaction } from '../providers/ProviderType.js';
9
- import { WarpRouteDeployConfigMailboxRequired } from '../token/types.js';
10
- import { ChainMap } from '../types.js';
9
+ import { AnnotatedEV5Transaction, TypedAnnotatedTransaction } from '../providers/ProviderType.js';
10
+ import { WarpRouteDeployConfig, WarpRouteDeployConfigMailboxRequired } from '../token/types.js';
11
+ import { ChainMap, ChainName } from '../types.js';
11
12
  type ChainAddresses = Record<string, string>;
12
13
  /**
13
14
  * Builds a `FeeReadContext` directly from a warp deploy config, bypassing
@@ -23,7 +24,122 @@ type ChainAddresses = Record<string, string>;
23
24
  */
24
25
  export declare function buildFeeReadContextFromWarpDeployConfig(config: WarpRouteDeployConfigMailboxRequired[string], chainLookup: ChainLookup): FeeReadContext;
25
26
  export declare function validateWarpConfigForAltVM(config: WarpRouteDeployConfigMailboxRequired[string], chain: string, protocol?: ProtocolType): ProviderWarpConfig;
27
+ export type WarpDeployArgs = {
28
+ warpDeployConfig: WarpRouteDeployConfigMailboxRequired;
29
+ multiProvider: MultiProvider;
30
+ altVmSigners: ChainMap<AltVM.ISigner<AnnotatedTx, TxReceipt>>;
31
+ registryAddresses: ChainMap<ChainAddresses>;
32
+ apiKeys: ChainMap<string>;
33
+ };
34
+ /**
35
+ * Deploys a WHOLE warp route: its routers, plus the ISM and hook trees they
36
+ * install.
37
+ *
38
+ * Everything decidable from the config is decided before any gas is spent —
39
+ * the full `IsmConfigSchema`/`HookConfigSchema` refinement over both trees, the
40
+ * hybrid hook/ISM pairing (planWarpRouteHybrids), and the route-scoped
41
+ * delayed-flow invariants. The route-scoped ones read the config's chain set as
42
+ * "the route", so they belong to this entry point alone: shrinking the config
43
+ * does not narrow them, it enlarges what counts as outside the route. Use
44
+ * `executeWarpRouteExtensionDeploy` for the chains an extension adds.
45
+ */
26
46
  export declare function executeWarpDeploy(warpDeployConfig: WarpRouteDeployConfigMailboxRequired, multiProvider: MultiProvider, altVmSigners: ChainMap<AltVM.ISigner<AnnotatedTx, TxReceipt>>, registryAddresses: ChainMap<ChainAddresses>, apiKeys: ChainMap<string>): Promise<ChainMap<Address>>;
47
+ /**
48
+ * Deploys the chains an extension adds to an EXISTING route.
49
+ *
50
+ * Same engine as `executeWarpDeploy`, minus the invariants that measure the
51
+ * route by the config's own chain set — the caller holds the full route config
52
+ * and has already checked those (runWarpRouteApply). Everything per chain still
53
+ * runs here, so an extension cannot deploy a chain whose composition can never
54
+ * work.
55
+ *
56
+ * A separate entry point rather than a flag: which validation applies is a
57
+ * property of what the caller is deploying, not something to infer from the
58
+ * shape of the config it happens to pass.
59
+ */
60
+ export declare function executeWarpRouteExtensionDeploy(warpDeployConfig: WarpRouteDeployConfigMailboxRequired, multiProvider: MultiProvider, altVmSigners: ChainMap<AltVM.ISigner<AnnotatedTx, TxReceipt>>, registryAddresses: ChainMap<ChainAddresses>, apiKeys: ChainMap<string>): Promise<ChainMap<Address>>;
61
+ export type DelayedFlowEnrollmentTarget = {
62
+ ismAddress: Address;
63
+ userNode: DelayedFlowRouterHookIsmConfig;
64
+ };
65
+ /**
66
+ * Whole-route coverage: every leg carries an instance
67
+ * (assertDelayedFlowLegCoverage), and a `remoteRouters` entry naming a chain
68
+ * outside the route has to enroll that counterpart explicitly
69
+ * (assertDelayedFlowRemoteRouterCoverage).
70
+ *
71
+ * Correct only against the FULL route config. Shrinking the config enlarges
72
+ * what counts as outside the route, so running this on a subset — the single
73
+ * chain `warp apply` deploys per extension, say — rejects `remoteRouters`
74
+ * entries naming the very legs that chain is joining.
75
+ */
76
+ export declare function assertDelayedFlowRouteCoverage({ multiProvider, warpDeployConfig, }: {
77
+ multiProvider: MultiProvider;
78
+ warpDeployConfig: WarpRouteDeployConfigMailboxRequired;
79
+ }): void;
80
+ /**
81
+ * The full delayed-flow preconditions for a whole route, checked before any
82
+ * on-chain work: assertDelayedFlowRouteCoverage — which adds the route-scoped
83
+ * external `remoteRouters` check to the leg coverage above — and the
84
+ * mailbox nonce guard.
85
+ *
86
+ * Call this with every chain of the route. The CLI entry points do
87
+ * (runWarpRouteDeploy, runWarpRouteApply); executeWarpDeploy cannot, because
88
+ * an extension reaches it one chain at a time.
89
+ */
90
+ export declare function assertDelayedFlowRoutePreconditions({ multiProvider, warpDeployConfig, }: {
91
+ multiProvider: MultiProvider;
92
+ warpDeployConfig: WarpRouteDeployConfigMailboxRequired;
93
+ }): Promise<void>;
94
+ /**
95
+ * Resolves the shared hybrid instance behind each chain's ISM tree.
96
+ *
97
+ * Callers pass whichever tree is authoritative for them: the address a run has
98
+ * just deployed but not yet installed, or the tree already on the router.
99
+ * Nothing here guesses between the two — a caller that knows both states knows
100
+ * which one it means.
101
+ */
102
+ export declare function resolveHybridIsmAddresses(multiProvider: MultiProvider, ismTreeAddresses: ChainMap<Address>): Promise<ChainMap<Address>>;
103
+ /**
104
+ * Resolves the hybrid instance installed on each router, by reading the ISM the
105
+ * router currently points at. Used by callers holding only routers, such as
106
+ * `warp apply` on chains it is not re-deploying.
107
+ */
108
+ export declare function readInstalledHybridIsmAddresses(multiProvider: MultiProvider, routers: ChainMap<Address>): Promise<ChainMap<Address>>;
109
+ /**
110
+ * Pairs the route's DelayedFlowRouterHookIsm instances so each one's enrollment
111
+ * transactions can name every other one.
112
+ *
113
+ * `hybridIsmAddresses` is supplied by the caller (resolveHybridIsmAddresses /
114
+ * readInstalledHybridIsmAddresses) rather than re-derived here: which tree is
115
+ * authoritative differs per caller, and a chain whose instance the caller could
116
+ * not resolve is skipped rather than silently paired against a stale one. The
117
+ * config node is carried through as `userNode` so configured external
118
+ * `remoteIsms` are merged with the route-derived pairing.
119
+ */
120
+ export declare function deriveDelayedFlowEnrollmentTargets(multiProvider: MultiProvider, warpDeployConfig: WarpRouteDeployConfig, deployedContracts: ChainMap<Address>, hybridIsmAddresses?: ChainMap<Address>): Promise<ChainMap<DelayedFlowEnrollmentTarget>>;
121
+ /**
122
+ * Builds the enrollment transactions for one chain's
123
+ * DelayedFlowRouterHookIsm: enrolls every other chain's instance as a remote
124
+ * counterpart, plus configured peers outside the route, and
125
+ * optionally transfers ownership to the configured owner LAST (the enrollment
126
+ * calls are owner-gated). Converges to zero transactions once the on-chain
127
+ * state already matches.
128
+ *
129
+ * Shared by the deploy flow (deployer-owned instances) and `warp apply`
130
+ * (instances that may be owned by a Safe/ICA — the returned transactions carry
131
+ * no signing assumptions and ride whichever submitter the caller uses).
132
+ */
133
+ export declare function buildDelayedFlowEnrollmentTxs({ chain, multiProvider, registryAddresses, warpRouter, target, allTargets, reconcileOwnership, }: {
134
+ chain: ChainName;
135
+ multiProvider: MultiProvider;
136
+ registryAddresses: ChainMap<ChainAddresses>;
137
+ warpRouter: Address;
138
+ target: DelayedFlowEnrollmentTarget;
139
+ allTargets: ChainMap<DelayedFlowEnrollmentTarget>;
140
+ /** Preserve the current owner when ownership is handled by another phase. */
141
+ reconcileOwnership?: boolean;
142
+ }): Promise<AnnotatedEV5Transaction[]>;
27
143
  export declare function enrollCrossChainRouters({ multiProvider, altVmSigners, registryAddresses, warpDeployConfig, }: {
28
144
  multiProvider: MultiProvider;
29
145
  altVmSigners: ChainMap<AltVM.ISigner<AnnotatedTx, TxReceipt>>;
@@ -1 +1 @@
1
- {"version":3,"file":"warp.d.ts","sourceRoot":"","sources":["../../src/deploy/warp.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAElE,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAStE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EAOL,UAAU,IAAI,kBAAkB,EAEjC,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,OAAO,EAaR,MAAM,sBAAsB,CAAC;AAgB9B,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAUzE,OAAO,EAEL,oCAAoC,EAErC,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AASvC,KAAK,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAgB7C;;;;;;;;;;;GAWG;AACH,wBAAgB,uCAAuC,CACrD,MAAM,EAAE,oCAAoC,CAAC,MAAM,CAAC,EACpD,WAAW,EAAE,WAAW,GACvB,cAAc,CAmChB;AAED,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,oCAAoC,CAAC,MAAM,CAAC,EACpD,KAAK,EAAE,MAAM,EACb,QAAQ,CAAC,EAAE,YAAY,GACtB,kBAAkB,CAuGpB;AA0CD,wBAAsB,iBAAiB,CACrC,gBAAgB,EAAE,oCAAoC,EACtD,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,EAC7D,iBAAiB,EAAE,QAAQ,CAAC,cAAc,CAAC,EAC3C,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,GACxB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAyO5B;AAmUD,wBAAsB,uBAAuB,CAC3C,EACE,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,gBAAgB,GACjB,EAAE;IACD,aAAa,EAAE,aAAa,CAAC;IAC7B,YAAY,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC;IAC9D,iBAAiB,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC;IAC5C,gBAAgB,EAAE,oCAAoC,CAAC;CACxD,EACD,iBAAiB,EAAE,QAAQ,CAAC,OAAO,CAAC,GACnC,OAAO,CAAC,QAAQ,CAAC,yBAAyB,EAAE,CAAC,CAAC,CAiOhD"}
1
+ {"version":3,"file":"warp.d.ts","sourceRoot":"","sources":["../../src/deploy/warp.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAElE,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAStE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EAOL,UAAU,IAAI,kBAAkB,EAEjC,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,OAAO,EAeR,MAAM,sBAAsB,CAAC;AAkB9B,OAAO,EACL,8BAA8B,EAG/B,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EAC1B,MAAM,8BAA8B,CAAC;AAUtC,OAAO,EAEL,qBAAqB,EACrB,oCAAoC,EAGrC,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAqBlD,KAAK,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAgB7C;;;;;;;;;;;GAWG;AACH,wBAAgB,uCAAuC,CACrD,MAAM,EAAE,oCAAoC,CAAC,MAAM,CAAC,EACpD,WAAW,EAAE,WAAW,GACvB,cAAc,CAmChB;AAED,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,oCAAoC,CAAC,MAAM,CAAC,EACpD,KAAK,EAAE,MAAM,EACb,QAAQ,CAAC,EAAE,YAAY,GACtB,kBAAkB,CAuGpB;AA0CD,MAAM,MAAM,cAAc,GAAG;IAC3B,gBAAgB,EAAE,oCAAoC,CAAC;IACvD,aAAa,EAAE,aAAa,CAAC;IAC7B,YAAY,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC;IAC9D,iBAAiB,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC;IAC5C,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;CAC3B,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,wBAAsB,iBAAiB,CACrC,gBAAgB,EAAE,oCAAoC,EACtD,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,EAC7D,iBAAiB,EAAE,QAAQ,CAAC,cAAc,CAAC,EAC3C,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,GACxB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAiB5B;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,+BAA+B,CACnD,gBAAgB,EAAE,oCAAoC,EACtD,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,EAC7D,iBAAiB,EAAE,QAAQ,CAAC,cAAc,CAAC,EAC3C,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,GACxB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAiB5B;AA+5BD,MAAM,MAAM,2BAA2B,GAAG;IACxC,UAAU,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,8BAA8B,CAAC;CAC1C,CAAC;AA+KF;;;;;;;;;;GAUG;AACH,wBAAgB,8BAA8B,CAAC,EAC7C,aAAa,EACb,gBAAgB,GACjB,EAAE;IACD,aAAa,EAAE,aAAa,CAAC;IAC7B,gBAAgB,EAAE,oCAAoC,CAAC;CACxD,GAAG,IAAI,CAUP;AAyCD;;;;;;;;;GASG;AACH,wBAAsB,mCAAmC,CAAC,EACxD,aAAa,EACb,gBAAgB,GACjB,EAAE;IACD,aAAa,EAAE,aAAa,CAAC;IAC7B,gBAAgB,EAAE,oCAAoC,CAAC;CACxD,GAAG,OAAO,CAAC,IAAI,CAAC,CAGhB;AAkCD;;;;;;;GAOG;AACH,wBAAsB,yBAAyB,CAC7C,aAAa,EAAE,aAAa,EAC5B,gBAAgB,EAAE,QAAQ,CAAC,OAAO,CAAC,GAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAa5B;AAED;;;;GAIG;AACH,wBAAsB,+BAA+B,CACnD,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,GACzB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAkB5B;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,kCAAkC,CACtD,aAAa,EAAE,aAAa,EAG5B,gBAAgB,EAAE,qBAAqB,EACvC,iBAAiB,EAAE,QAAQ,CAAC,OAAO,CAAC,EACpC,kBAAkB,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,GACrC,OAAO,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAC,CAgFhD;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,6BAA6B,CAAC,EAClD,KAAK,EACL,aAAa,EACb,iBAAiB,EACjB,UAAU,EACV,MAAM,EACN,UAAU,EACV,kBAAyB,GAC1B,EAAE;IACD,KAAK,EAAE,SAAS,CAAC;IACjB,aAAa,EAAE,aAAa,CAAC;IAC7B,iBAAiB,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC;IAC5C,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,2BAA2B,CAAC;IACpC,UAAU,EAAE,QAAQ,CAAC,2BAA2B,CAAC,CAAC;IAClD,6EAA6E;IAC7E,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC,CA+CrC;AAED,wBAAsB,uBAAuB,CAC3C,EACE,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,gBAAgB,GACjB,EAAE;IACD,aAAa,EAAE,aAAa,CAAC;IAC7B,YAAY,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC;IAC9D,iBAAiB,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC;IAC5C,gBAAgB,EAAE,oCAAoC,CAAC;CACxD,EACD,iBAAiB,EAAE,QAAQ,CAAC,OAAO,CAAC,GACnC,OAAO,CAAC,QAAQ,CAAC,yBAAyB,EAAE,CAAC,CAAC,CAgShD"}