@hyperlane-xyz/sdk 7.3.0 → 8.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 (214) hide show
  1. package/dist/consts/multisigIsm.d.ts.map +1 -1
  2. package/dist/consts/multisigIsm.js +221 -10
  3. package/dist/consts/multisigIsm.js.map +1 -1
  4. package/dist/contracts/contracts.d.ts +1 -2
  5. package/dist/contracts/contracts.d.ts.map +1 -1
  6. package/dist/contracts/contracts.js.map +1 -1
  7. package/dist/core/EvmCoreModule.d.ts +1 -2
  8. package/dist/core/EvmCoreModule.d.ts.map +1 -1
  9. package/dist/core/EvmCoreModule.js +1 -1
  10. package/dist/core/EvmCoreModule.js.map +1 -1
  11. package/dist/core/EvmCoreReader.d.ts.map +1 -1
  12. package/dist/core/EvmCoreReader.js.map +1 -1
  13. package/dist/core/HyperlaneCore.d.ts +1 -2
  14. package/dist/core/HyperlaneCore.d.ts.map +1 -1
  15. package/dist/core/HyperlaneCore.js +4 -2
  16. package/dist/core/HyperlaneCore.js.map +1 -1
  17. package/dist/core/HyperlaneRelayer.d.ts +73 -73
  18. package/dist/core/HyperlaneRelayer.d.ts.map +1 -1
  19. package/dist/core/HyperlaneRelayer.js +22 -0
  20. package/dist/core/HyperlaneRelayer.js.map +1 -1
  21. package/dist/core/types.d.ts +5688 -1
  22. package/dist/core/types.d.ts.map +1 -1
  23. package/dist/core/types.js +29 -0
  24. package/dist/core/types.js.map +1 -1
  25. package/dist/deploy/HyperlaneDeployer.d.ts +1 -2
  26. package/dist/deploy/HyperlaneDeployer.d.ts.map +1 -1
  27. package/dist/deploy/HyperlaneDeployer.js.map +1 -1
  28. package/dist/deploy/proxy.d.ts +1 -1
  29. package/dist/deploy/proxy.d.ts.map +1 -1
  30. package/dist/deploy/proxy.js.map +1 -1
  31. package/dist/deploy/types.d.ts +26 -3
  32. package/dist/deploy/types.d.ts.map +1 -1
  33. package/dist/deploy/types.js +10 -0
  34. package/dist/deploy/types.js.map +1 -1
  35. package/dist/gcp/storage.d.ts +6 -2
  36. package/dist/gcp/storage.d.ts.map +1 -1
  37. package/dist/gcp/storage.js +41 -22
  38. package/dist/gcp/storage.js.map +1 -1
  39. package/dist/hook/types.d.ts +1 -2
  40. package/dist/hook/types.d.ts.map +1 -1
  41. package/dist/hook/types.js +1 -1
  42. package/dist/hook/types.js.map +1 -1
  43. package/dist/ica/EvmIcaReader.d.ts.map +1 -1
  44. package/dist/ica/EvmIcaReader.js +1 -1
  45. package/dist/ica/EvmIcaReader.js.map +1 -1
  46. package/dist/ica/types.d.ts +105 -1
  47. package/dist/ica/types.d.ts.map +1 -1
  48. package/dist/ica/types.js +24 -1
  49. package/dist/ica/types.js.map +1 -1
  50. package/dist/index.d.ts +41 -50
  51. package/dist/index.d.ts.map +1 -1
  52. package/dist/index.js +39 -37
  53. package/dist/index.js.map +1 -1
  54. package/dist/ism/types.d.ts +1 -2
  55. package/dist/ism/types.d.ts.map +1 -1
  56. package/dist/ism/types.js +1 -1
  57. package/dist/ism/types.js.map +1 -1
  58. package/dist/metadata/agentConfig.d.ts +955 -230
  59. package/dist/metadata/agentConfig.d.ts.map +1 -1
  60. package/dist/metadata/agentConfig.js +50 -0
  61. package/dist/metadata/agentConfig.js.map +1 -1
  62. package/dist/metadata/matchingList.d.ts +6 -0
  63. package/dist/metadata/matchingList.d.ts.map +1 -1
  64. package/dist/metadata/matchingList.js +1 -0
  65. package/dist/metadata/matchingList.js.map +1 -1
  66. package/dist/middleware/account/types.d.ts +88 -1
  67. package/dist/middleware/account/types.d.ts.map +1 -1
  68. package/dist/middleware/account/types.js +18 -1
  69. package/dist/middleware/account/types.js.map +1 -1
  70. package/dist/providers/explorerHealthTest.d.ts +1 -1
  71. package/dist/providers/explorerHealthTest.d.ts.map +1 -1
  72. package/dist/providers/explorerHealthTest.js.map +1 -1
  73. package/dist/providers/transactions/submitter/builder/types.d.ts +344 -1
  74. package/dist/providers/transactions/submitter/builder/types.d.ts.map +1 -1
  75. package/dist/providers/transactions/submitter/builder/types.js +9 -1
  76. package/dist/providers/transactions/submitter/builder/types.js.map +1 -1
  77. package/dist/providers/transactions/submitter/ethersV5/types.d.ts +49 -1
  78. package/dist/providers/transactions/submitter/ethersV5/types.d.ts.map +1 -1
  79. package/dist/providers/transactions/submitter/ethersV5/types.js +19 -1
  80. package/dist/providers/transactions/submitter/ethersV5/types.js.map +1 -1
  81. package/dist/providers/transactions/submitter/ethersV5/types.test.d.ts +2 -0
  82. package/dist/providers/transactions/submitter/ethersV5/types.test.d.ts.map +1 -0
  83. package/dist/providers/transactions/submitter/ethersV5/{schemas.test.js → types.test.js} +2 -2
  84. package/dist/providers/transactions/submitter/ethersV5/types.test.js.map +1 -0
  85. package/dist/providers/transactions/submitter/types.d.ts +59 -1
  86. package/dist/providers/transactions/submitter/types.d.ts.map +1 -1
  87. package/dist/providers/transactions/submitter/types.js +21 -1
  88. package/dist/providers/transactions/submitter/types.js.map +1 -1
  89. package/dist/providers/transactions/transformer/ethersV5/types.d.ts +57 -1
  90. package/dist/providers/transactions/transformer/ethersV5/types.d.ts.map +1 -1
  91. package/dist/providers/transactions/transformer/ethersV5/types.js +6 -1
  92. package/dist/providers/transactions/transformer/ethersV5/types.js.map +1 -1
  93. package/dist/providers/transactions/transformer/ethersV5/types.test.d.ts +2 -0
  94. package/dist/providers/transactions/transformer/ethersV5/types.test.d.ts.map +1 -0
  95. package/dist/providers/transactions/transformer/ethersV5/{schemas.test.js → types.test.js} +2 -2
  96. package/dist/providers/transactions/transformer/ethersV5/types.test.js.map +1 -0
  97. package/dist/providers/transactions/transformer/types.d.ts +47 -1
  98. package/dist/providers/transactions/transformer/types.d.ts.map +1 -1
  99. package/dist/providers/transactions/transformer/types.js +9 -1
  100. package/dist/providers/transactions/transformer/types.js.map +1 -1
  101. package/dist/providers/transactions/types.d.ts +14 -1
  102. package/dist/providers/transactions/types.d.ts.map +1 -1
  103. package/dist/providers/transactions/types.js +8 -1
  104. package/dist/providers/transactions/types.js.map +1 -1
  105. package/dist/providers/transactions/types.test.d.ts +2 -0
  106. package/dist/providers/transactions/types.test.d.ts.map +1 -0
  107. package/dist/providers/transactions/{schemas.test.js → types.test.js} +2 -2
  108. package/dist/providers/transactions/types.test.js.map +1 -0
  109. package/dist/router/HyperlaneRouterChecker.d.ts.map +1 -1
  110. package/dist/router/HyperlaneRouterChecker.js +2 -3
  111. package/dist/router/HyperlaneRouterChecker.js.map +1 -1
  112. package/dist/router/types.d.ts.map +1 -1
  113. package/dist/router/types.js +1 -1
  114. package/dist/router/types.js.map +1 -1
  115. package/dist/token/EvmERC20WarpModule.d.ts +18 -17
  116. package/dist/token/EvmERC20WarpModule.d.ts.map +1 -1
  117. package/dist/token/EvmERC20WarpModule.hardhat-test.js.map +1 -1
  118. package/dist/token/EvmERC20WarpModule.js +4 -3
  119. package/dist/token/EvmERC20WarpModule.js.map +1 -1
  120. package/dist/token/EvmERC20WarpRouteReader.d.ts +6 -7
  121. package/dist/token/EvmERC20WarpRouteReader.d.ts.map +1 -1
  122. package/dist/token/EvmERC20WarpRouteReader.js +1 -1
  123. package/dist/token/EvmERC20WarpRouteReader.js.map +1 -1
  124. package/dist/token/app.d.ts +2 -1
  125. package/dist/token/app.d.ts.map +1 -1
  126. package/dist/token/app.js +1 -1
  127. package/dist/token/app.js.map +1 -1
  128. package/dist/token/checker.d.ts +2 -2
  129. package/dist/token/checker.d.ts.map +1 -1
  130. package/dist/token/checker.js +15 -14
  131. package/dist/token/checker.js.map +1 -1
  132. package/dist/token/deploy.d.ts +9 -10
  133. package/dist/token/deploy.d.ts.map +1 -1
  134. package/dist/token/deploy.hardhat-test.js +1 -1
  135. package/dist/token/deploy.hardhat-test.js.map +1 -1
  136. package/dist/token/deploy.js +11 -12
  137. package/dist/token/deploy.js.map +1 -1
  138. package/dist/token/types.d.ts +1835 -2
  139. package/dist/token/types.d.ts.map +1 -1
  140. package/dist/token/types.js +106 -1
  141. package/dist/token/types.js.map +1 -1
  142. package/dist/token/types.test.d.ts +2 -0
  143. package/dist/token/types.test.d.ts.map +1 -0
  144. package/dist/token/{schemas.test.js → types.test.js} +3 -3
  145. package/dist/token/types.test.js.map +1 -0
  146. package/dist/types.d.ts +51 -0
  147. package/dist/types.d.ts.map +1 -1
  148. package/dist/types.js +15 -1
  149. package/dist/types.js.map +1 -1
  150. package/dist/utils/validator.d.ts +1 -0
  151. package/dist/utils/validator.d.ts.map +1 -1
  152. package/dist/utils/validator.js +4 -0
  153. package/dist/utils/validator.js.map +1 -1
  154. package/package.json +3 -4
  155. package/dist/core/schemas.d.ts +0 -5690
  156. package/dist/core/schemas.d.ts.map +0 -1
  157. package/dist/core/schemas.js +0 -30
  158. package/dist/core/schemas.js.map +0 -1
  159. package/dist/deploy/schemas.d.ts +0 -36
  160. package/dist/deploy/schemas.d.ts.map +0 -1
  161. package/dist/deploy/schemas.js +0 -15
  162. package/dist/deploy/schemas.js.map +0 -1
  163. package/dist/ica/schemas.d.ts +0 -107
  164. package/dist/ica/schemas.d.ts.map +0 -1
  165. package/dist/ica/schemas.js +0 -25
  166. package/dist/ica/schemas.js.map +0 -1
  167. package/dist/middleware/account/schemas.d.ts +0 -90
  168. package/dist/middleware/account/schemas.d.ts.map +0 -1
  169. package/dist/middleware/account/schemas.js +0 -19
  170. package/dist/middleware/account/schemas.js.map +0 -1
  171. package/dist/providers/transactions/schemas.d.ts +0 -16
  172. package/dist/providers/transactions/schemas.d.ts.map +0 -1
  173. package/dist/providers/transactions/schemas.js +0 -9
  174. package/dist/providers/transactions/schemas.js.map +0 -1
  175. package/dist/providers/transactions/schemas.test.d.ts +0 -2
  176. package/dist/providers/transactions/schemas.test.d.ts.map +0 -1
  177. package/dist/providers/transactions/schemas.test.js.map +0 -1
  178. package/dist/providers/transactions/submitter/builder/schemas.d.ts +0 -316
  179. package/dist/providers/transactions/submitter/builder/schemas.d.ts.map +0 -1
  180. package/dist/providers/transactions/submitter/builder/schemas.js +0 -10
  181. package/dist/providers/transactions/submitter/builder/schemas.js.map +0 -1
  182. package/dist/providers/transactions/submitter/ethersV5/schemas.d.ts +0 -42
  183. package/dist/providers/transactions/submitter/ethersV5/schemas.d.ts.map +0 -1
  184. package/dist/providers/transactions/submitter/ethersV5/schemas.js +0 -18
  185. package/dist/providers/transactions/submitter/ethersV5/schemas.js.map +0 -1
  186. package/dist/providers/transactions/submitter/ethersV5/schemas.test.d.ts +0 -2
  187. package/dist/providers/transactions/submitter/ethersV5/schemas.test.d.ts.map +0 -1
  188. package/dist/providers/transactions/submitter/ethersV5/schemas.test.js.map +0 -1
  189. package/dist/providers/transactions/submitter/schemas.d.ts +0 -52
  190. package/dist/providers/transactions/submitter/schemas.d.ts.map +0 -1
  191. package/dist/providers/transactions/submitter/schemas.js +0 -22
  192. package/dist/providers/transactions/submitter/schemas.js.map +0 -1
  193. package/dist/providers/transactions/transformer/ethersV5/schemas.d.ts +0 -58
  194. package/dist/providers/transactions/transformer/ethersV5/schemas.d.ts.map +0 -1
  195. package/dist/providers/transactions/transformer/ethersV5/schemas.js +0 -7
  196. package/dist/providers/transactions/transformer/ethersV5/schemas.js.map +0 -1
  197. package/dist/providers/transactions/transformer/ethersV5/schemas.test.d.ts +0 -2
  198. package/dist/providers/transactions/transformer/ethersV5/schemas.test.d.ts.map +0 -1
  199. package/dist/providers/transactions/transformer/ethersV5/schemas.test.js.map +0 -1
  200. package/dist/providers/transactions/transformer/schemas.d.ts +0 -49
  201. package/dist/providers/transactions/transformer/schemas.d.ts.map +0 -1
  202. package/dist/providers/transactions/transformer/schemas.js +0 -10
  203. package/dist/providers/transactions/transformer/schemas.js.map +0 -1
  204. package/dist/schemas.d.ts +0 -48
  205. package/dist/schemas.d.ts.map +0 -1
  206. package/dist/schemas.js +0 -16
  207. package/dist/schemas.js.map +0 -1
  208. package/dist/token/schemas.d.ts +0 -1835
  209. package/dist/token/schemas.d.ts.map +0 -1
  210. package/dist/token/schemas.js +0 -107
  211. package/dist/token/schemas.js.map +0 -1
  212. package/dist/token/schemas.test.d.ts +0 -2
  213. package/dist/token/schemas.test.d.ts.map +0 -1
  214. package/dist/token/schemas.test.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/token/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EACL,mBAAmB,EACnB,uBAAuB,EACvB,2BAA2B,EAC5B,MAAM,cAAc,CAAC;AAEtB,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/token/types.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,107 @@
1
- export {};
1
+ import { z } from 'zod';
2
+ import { objMap } from '@hyperlane-xyz/utils';
3
+ import { GasRouterConfigSchema } from '../router/types.js';
4
+ import { isCompliant } from '../utils/schemas.js';
5
+ import { TokenType } from './config.js';
6
+ export const WarpRouteDeployConfigSchemaErrors = {
7
+ ONLY_SYNTHETIC_REBASE: `Config with ${TokenType.collateralVaultRebase} must be deployed with ${TokenType.syntheticRebase}`,
8
+ NO_SYNTHETIC_ONLY: `Config must include Native or Collateral OR all synthetics must define token metadata`,
9
+ };
10
+ export const TokenMetadataSchema = z.object({
11
+ name: z.string(),
12
+ symbol: z.string(),
13
+ totalSupply: z.string().or(z.number()),
14
+ decimals: z.number().optional(),
15
+ scale: z.number().optional(),
16
+ isNft: z.boolean().optional(),
17
+ });
18
+ export const isTokenMetadata = isCompliant(TokenMetadataSchema);
19
+ export const NativeTokenConfigSchema = TokenMetadataSchema.partial().extend({
20
+ type: z.enum([TokenType.native, TokenType.nativeScaled]),
21
+ });
22
+ export const isNativeTokenConfig = isCompliant(NativeTokenConfigSchema);
23
+ export const CollateralTokenConfigSchema = TokenMetadataSchema.partial().extend({
24
+ type: z.enum([
25
+ TokenType.collateral,
26
+ TokenType.collateralVault,
27
+ TokenType.collateralVaultRebase,
28
+ TokenType.XERC20,
29
+ TokenType.XERC20Lockbox,
30
+ TokenType.collateralFiat,
31
+ TokenType.fastCollateral,
32
+ TokenType.collateralUri,
33
+ ]),
34
+ token: z
35
+ .string()
36
+ .describe('Existing token address to extend with Warp Route functionality'),
37
+ });
38
+ export const isCollateralTokenConfig = isCompliant(CollateralTokenConfigSchema);
39
+ export const CollateralRebaseTokenConfigSchema = TokenMetadataSchema.omit({
40
+ totalSupply: true,
41
+ })
42
+ .partial()
43
+ .extend({
44
+ type: z.literal(TokenType.collateralVaultRebase),
45
+ });
46
+ export const isCollateralRebaseTokenConfig = isCompliant(CollateralRebaseTokenConfigSchema);
47
+ export const SyntheticTokenConfigSchema = TokenMetadataSchema.partial().extend({
48
+ type: z.enum([
49
+ TokenType.synthetic,
50
+ TokenType.syntheticUri,
51
+ TokenType.fastSynthetic,
52
+ ]),
53
+ });
54
+ export const isSyntheticTokenConfig = isCompliant(SyntheticTokenConfigSchema);
55
+ export const SyntheticRebaseTokenConfigSchema = TokenMetadataSchema.partial().extend({
56
+ type: z.literal(TokenType.syntheticRebase),
57
+ collateralChainName: z.string(),
58
+ });
59
+ export const isSyntheticRebaseTokenConfig = isCompliant(SyntheticRebaseTokenConfigSchema);
60
+ /**
61
+ * @remarks
62
+ * The discriminatedUnion is basically a switch statement for zod schemas
63
+ * It uses the 'type' key to pick from the array of schemas to validate
64
+ */
65
+ export const HypTokenConfigSchema = z.discriminatedUnion('type', [
66
+ NativeTokenConfigSchema,
67
+ CollateralTokenConfigSchema,
68
+ SyntheticTokenConfigSchema,
69
+ SyntheticRebaseTokenConfigSchema,
70
+ ]);
71
+ export const HypTokenRouterConfigSchema = HypTokenConfigSchema.and(GasRouterConfigSchema);
72
+ export const WarpRouteDeployConfigSchema = z
73
+ .record(HypTokenRouterConfigSchema)
74
+ .refine((configMap) => {
75
+ const entries = Object.entries(configMap);
76
+ return (entries.some(([_, config]) => isCollateralTokenConfig(config) ||
77
+ isCollateralRebaseTokenConfig(config) ||
78
+ isNativeTokenConfig(config)) || entries.every(([_, config]) => isTokenMetadata(config)));
79
+ }, WarpRouteDeployConfigSchemaErrors.NO_SYNTHETIC_ONLY)
80
+ .transform((warpRouteDeployConfig, ctx) => {
81
+ const collateralRebaseEntry = Object.entries(warpRouteDeployConfig).find(([_, config]) => isCollateralRebaseTokenConfig(config));
82
+ if (!collateralRebaseEntry)
83
+ return warpRouteDeployConfig; // Pass through for other token types
84
+ if (isCollateralRebasePairedCorrectly(warpRouteDeployConfig)) {
85
+ const collateralChainName = collateralRebaseEntry[0];
86
+ return objMap(warpRouteDeployConfig, (_, config) => {
87
+ if (config.type === TokenType.syntheticRebase)
88
+ config.collateralChainName = collateralChainName;
89
+ return config;
90
+ });
91
+ }
92
+ ctx.addIssue({
93
+ code: z.ZodIssueCode.custom,
94
+ message: WarpRouteDeployConfigSchemaErrors.ONLY_SYNTHETIC_REBASE,
95
+ });
96
+ return z.NEVER; // Causes schema validation to throw with above issue
97
+ });
98
+ function isCollateralRebasePairedCorrectly(warpRouteDeployConfig) {
99
+ // Filter out all the non-collateral rebase configs to check if they are only synthetic rebase tokens
100
+ const otherConfigs = Object.entries(warpRouteDeployConfig).filter(([_, config]) => !isCollateralRebaseTokenConfig(config));
101
+ if (otherConfigs.length === 0)
102
+ return false;
103
+ // The other configs MUST be synthetic rebase
104
+ const allOthersSynthetic = otherConfigs.every(([_, config], _index) => isSyntheticRebaseTokenConfig(config));
105
+ return allOthersSynthetic;
106
+ }
2
107
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/token/types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/token/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.test.d.ts","sourceRoot":"","sources":["../../src/token/types.test.ts"],"names":[],"mappings":""}
@@ -2,7 +2,7 @@ import { expect } from 'chai';
2
2
  import { ethers } from 'ethers';
3
3
  import { assert } from '@hyperlane-xyz/utils';
4
4
  import { TokenType } from './config.js';
5
- import { WarpRouteDeployConfigSchema, WarpRouteDeployConfigSchemaErrors, isCollateralConfig, } from './schemas.js';
5
+ import { WarpRouteDeployConfigSchema, WarpRouteDeployConfigSchemaErrors, isCollateralTokenConfig, } from './types.js';
6
6
  const SOME_ADDRESS = ethers.Wallet.createRandom().address;
7
7
  const COLLATERAL_TYPES = [
8
8
  TokenType.collateral,
@@ -48,7 +48,7 @@ describe('WarpRouteDeployConfigSchema refine', () => {
48
48
  it('should throw if collateral type and token is empty', async () => {
49
49
  for (const type of COLLATERAL_TYPES) {
50
50
  config.arbitrum.type = type;
51
- assert(isCollateralConfig(config.arbitrum), 'must be collateral');
51
+ assert(isCollateralTokenConfig(config.arbitrum), 'must be collateral');
52
52
  //@ts-ignore
53
53
  config.arbitrum.token = undefined;
54
54
  expect(WarpRouteDeployConfigSchema.safeParse(config).success).to.be.false;
@@ -149,4 +149,4 @@ describe('WarpRouteDeployConfigSchema refine', () => {
149
149
  expect(warpConfig.optimism.collateralChainName).to.equal('arbitrum');
150
150
  });
151
151
  });
152
- //# sourceMappingURL=schemas.test.js.map
152
+ //# sourceMappingURL=types.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.test.js","sourceRoot":"","sources":["../../src/token/types.test.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -1,7 +1,58 @@
1
1
  import type { ethers } from 'ethers';
2
+ import { z } from 'zod';
2
3
  import type { Domain } from '@hyperlane-xyz/utils';
3
4
  export type ChainName = string;
4
5
  export type ChainMap<Value> = Record<ChainName, Value>;
5
6
  export type ChainNameOrId = ChainName | Domain;
6
7
  export type Connection = ethers.providers.Provider | ethers.Signer;
8
+ export declare const OwnableSchema: z.ZodObject<{
9
+ owner: z.ZodString;
10
+ ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
11
+ }, "strip", z.ZodTypeAny, {
12
+ owner: string;
13
+ ownerOverrides?: Record<string, string> | undefined;
14
+ }, {
15
+ owner: string;
16
+ ownerOverrides?: Record<string, string> | undefined;
17
+ }>;
18
+ export type OwnableConfig = z.infer<typeof OwnableSchema>;
19
+ export declare const DeployedOwnableSchema: z.ZodObject<{
20
+ owner: z.ZodString;
21
+ ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
22
+ address: z.ZodOptional<z.ZodString>;
23
+ }, "strip", z.ZodTypeAny, {
24
+ owner: string;
25
+ ownerOverrides?: Record<string, string> | undefined;
26
+ address?: string | undefined;
27
+ }, {
28
+ owner: string;
29
+ ownerOverrides?: Record<string, string> | undefined;
30
+ address?: string | undefined;
31
+ }>;
32
+ export type DeployedOwnableConfig = z.infer<typeof DeployedOwnableSchema>;
33
+ export declare const DerivedOwnableSchema: z.ZodObject<{
34
+ owner: z.ZodString;
35
+ address: z.ZodString;
36
+ }, "strip", z.ZodTypeAny, {
37
+ owner: string;
38
+ address: string;
39
+ }, {
40
+ owner: string;
41
+ address: string;
42
+ }>;
43
+ export type DerivedOwnableConfig = z.infer<typeof DerivedOwnableSchema>;
44
+ export declare const PausableSchema: z.ZodObject<{
45
+ owner: z.ZodString;
46
+ ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
47
+ paused: z.ZodBoolean;
48
+ }, "strip", z.ZodTypeAny, {
49
+ owner: string;
50
+ paused: boolean;
51
+ ownerOverrides?: Record<string, string> | undefined;
52
+ }, {
53
+ owner: string;
54
+ paused: boolean;
55
+ ownerOverrides?: Record<string, string> | undefined;
56
+ }>;
57
+ export type PausableConfig = z.infer<typeof PausableSchema>;
7
58
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAGnD,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAE/B,MAAM,MAAM,QAAQ,CAAC,KAAK,IAAI,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;AAEvD,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,MAAM,CAAC;AAE/C,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAKnD,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAE/B,MAAM,MAAM,QAAQ,CAAC,KAAK,IAAI,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;AAEvD,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,MAAM,CAAC;AAE/C,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC;AAEnE,eAAO,MAAM,aAAa;;;;;;;;;EAGxB,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAE1D,eAAO,MAAM,qBAAqB;;;;;;;;;;;;EAEhC,CAAC;AACH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAE1E,eAAO,MAAM,oBAAoB;;;;;;;;;EAEpB,CAAC;AACd,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAExE,eAAO,MAAM,cAAc;;;;;;;;;;;;EAEzB,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC"}
package/dist/types.js CHANGED
@@ -1,2 +1,16 @@
1
- export {};
1
+ import { z } from 'zod';
2
+ import { ZHash } from './metadata/customZodTypes.js';
3
+ export const OwnableSchema = z.object({
4
+ owner: ZHash,
5
+ ownerOverrides: z.record(ZHash).optional(),
6
+ });
7
+ export const DeployedOwnableSchema = OwnableSchema.extend({
8
+ address: ZHash.optional(),
9
+ });
10
+ export const DerivedOwnableSchema = DeployedOwnableSchema.omit({
11
+ ownerOverrides: true,
12
+ }).required();
13
+ export const PausableSchema = OwnableSchema.extend({
14
+ paused: z.boolean(),
15
+ });
2
16
  //# sourceMappingURL=types.js.map
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AAWrD,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,KAAK,EAAE,KAAK;IACZ,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE;CAC3C,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,qBAAqB,GAAG,aAAa,CAAC,MAAM,CAAC;IACxD,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE;CAC1B,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,oBAAoB,GAAG,qBAAqB,CAAC,IAAI,CAAC;IAC7D,cAAc,EAAE,IAAI;CACrB,CAAC,CAAC,QAAQ,EAAE,CAAC;AAGd,MAAM,CAAC,MAAM,cAAc,GAAG,aAAa,CAAC,MAAM,CAAC;IACjD,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;CACpB,CAAC,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { S3Validator } from '../aws/validator.js';
2
2
  import { GcpValidator } from '../gcp/validator.js';
3
3
  export declare function getValidatorFromStorageLocation(location: string): Promise<S3Validator | GcpValidator>;
4
+ export declare function isValidValidatorStorageLocation(location: string): boolean;
4
5
  //# sourceMappingURL=validator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../src/utils/validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAsB,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAuB,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExE,wBAAsB,+BAA+B,CAAC,QAAQ,EAAE,MAAM,uCAQrE"}
1
+ {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../src/utils/validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAsB,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAuB,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExE,wBAAsB,+BAA+B,CAAC,QAAQ,EAAE,MAAM,uCAQrE;AAED,wBAAgB,+BAA+B,CAAC,QAAQ,EAAE,MAAM,WAK/D"}
@@ -11,4 +11,8 @@ export async function getValidatorFromStorageLocation(location) {
11
11
  throw new Error('Invalid storage location');
12
12
  }
13
13
  }
14
+ export function isValidValidatorStorageLocation(location) {
15
+ return (location?.startsWith(GCP_LOCATION_PREFIX) ||
16
+ location?.startsWith(S3_LOCATION_PREFIX));
17
+ }
14
18
  //# sourceMappingURL=validator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"validator.js","sourceRoot":"","sources":["../../src/utils/validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExE,MAAM,CAAC,KAAK,UAAU,+BAA+B,CAAC,QAAgB;IACpE,IAAI,QAAQ,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,CAAC;QAC7C,OAAO,YAAY,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IACpD,CAAC;SAAM,IAAI,QAAQ,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACnD,OAAO,WAAW,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"validator.js","sourceRoot":"","sources":["../../src/utils/validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExE,MAAM,CAAC,KAAK,UAAU,+BAA+B,CAAC,QAAgB;IACpE,IAAI,QAAQ,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,CAAC;QAC7C,OAAO,YAAY,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IACpD,CAAC;SAAM,IAAI,QAAQ,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACnD,OAAO,WAAW,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC;AAED,MAAM,UAAU,+BAA+B,CAAC,QAAgB;IAC9D,OAAO,CACL,QAAQ,EAAE,UAAU,CAAC,mBAAmB,CAAC;QACzC,QAAQ,EAAE,UAAU,CAAC,kBAAkB,CAAC,CACzC,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,16 +1,15 @@
1
1
  {
2
2
  "name": "@hyperlane-xyz/sdk",
3
3
  "description": "The official SDK for the Hyperlane Network",
4
- "version": "7.3.0",
4
+ "version": "8.0.0",
5
5
  "dependencies": {
6
6
  "@arbitrum/sdk": "^4.0.0",
7
7
  "@aws-sdk/client-s3": "^3.577.0",
8
8
  "@chain-registry/types": "^0.50.14",
9
9
  "@cosmjs/cosmwasm-stargate": "^0.32.4",
10
10
  "@cosmjs/stargate": "^0.32.4",
11
- "@google-cloud/storage": "7.14.0",
12
- "@hyperlane-xyz/core": "5.8.3",
13
- "@hyperlane-xyz/utils": "7.3.0",
11
+ "@hyperlane-xyz/core": "5.9.0",
12
+ "@hyperlane-xyz/utils": "8.0.0",
14
13
  "@safe-global/api-kit": "1.3.0",
15
14
  "@safe-global/protocol-kit": "1.3.0",
16
15
  "@safe-global/safe-deployments": "1.37.8",