@hyperlane-xyz/deploy-sdk 1.4.1 → 2.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 (44) hide show
  1. package/dist/AltVMCoreModule.d.ts.map +1 -1
  2. package/dist/AltVMCoreModule.js +1 -2
  3. package/dist/AltVMCoreModule.js.map +1 -1
  4. package/dist/index.d.ts +2 -5
  5. package/dist/index.d.ts.map +1 -1
  6. package/dist/index.js +2 -5
  7. package/dist/index.js.map +1 -1
  8. package/dist/warp/warp-reader.d.ts +51 -0
  9. package/dist/warp/warp-reader.d.ts.map +1 -0
  10. package/dist/warp/warp-reader.js +106 -0
  11. package/dist/warp/warp-reader.js.map +1 -0
  12. package/dist/warp/warp-writer.d.ts +66 -0
  13. package/dist/warp/warp-writer.d.ts.map +1 -0
  14. package/dist/warp/warp-writer.js +231 -0
  15. package/dist/warp/warp-writer.js.map +1 -0
  16. package/dist/warp/warp-writer.test.d.ts +2 -0
  17. package/dist/warp/warp-writer.test.d.ts.map +1 -0
  18. package/dist/warp/warp-writer.test.js +903 -0
  19. package/dist/warp/warp-writer.test.js.map +1 -0
  20. package/package.json +9 -9
  21. package/dist/AltVMWarpDeployer.d.ts +0 -14
  22. package/dist/AltVMWarpDeployer.d.ts.map +0 -1
  23. package/dist/AltVMWarpDeployer.js +0 -69
  24. package/dist/AltVMWarpDeployer.js.map +0 -1
  25. package/dist/AltVMWarpModule.d.ts +0 -96
  26. package/dist/AltVMWarpModule.d.ts.map +0 -1
  27. package/dist/AltVMWarpModule.js +0 -416
  28. package/dist/AltVMWarpModule.js.map +0 -1
  29. package/dist/AltVMWarpModule.test.d.ts +0 -2
  30. package/dist/AltVMWarpModule.test.d.ts.map +0 -1
  31. package/dist/AltVMWarpModule.test.js +0 -508
  32. package/dist/AltVMWarpModule.test.js.map +0 -1
  33. package/dist/AltVMWarpRouteReader.d.ts +0 -53
  34. package/dist/AltVMWarpRouteReader.d.ts.map +0 -1
  35. package/dist/AltVMWarpRouteReader.js +0 -168
  36. package/dist/AltVMWarpRouteReader.js.map +0 -1
  37. package/dist/ism/ism-config-utils.d.ts +0 -37
  38. package/dist/ism/ism-config-utils.d.ts.map +0 -1
  39. package/dist/ism/ism-config-utils.js +0 -72
  40. package/dist/ism/ism-config-utils.js.map +0 -1
  41. package/dist/warp-module.d.ts +0 -5
  42. package/dist/warp-module.d.ts.map +0 -1
  43. package/dist/warp-module.js +0 -28
  44. package/dist/warp-module.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"AltVMCoreModule.d.ts","sourceRoot":"","sources":["../src/AltVMCoreModule.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AltVMCoreModule.d.ts","sourceRoot":"","sources":["../src/AltVMCoreModule.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,10 @@
1
1
  import { isArtifactNew } from '@hyperlane-xyz/provider-sdk/artifact';
2
2
  import { hookConfigToArtifact, } from '@hyperlane-xyz/provider-sdk/hook';
3
- import { mergeIsmArtifacts, } from '@hyperlane-xyz/provider-sdk/ism';
3
+ import { ismConfigToArtifact, mergeIsmArtifacts, } from '@hyperlane-xyz/provider-sdk/ism';
4
4
  import { rootLogger } from '@hyperlane-xyz/utils';
5
5
  import { AltVMCoreReader } from './AltVMCoreReader.js';
6
6
  import { createHookWriter } from './hook/hook-writer.js';
7
7
  import { createIsmWriter } from './ism/generic-ism-writer.js';
8
- import { ismConfigToArtifact } from './ism/ism-config-utils.js';
9
8
  import { validateIsmConfig } from './utils/validation.js';
10
9
  export class AltVMCoreModule {
11
10
  chainLookup;
@@ -1 +1 @@
1
- {"version":3,"file":"AltVMCoreModule.js","sourceRoot":"","sources":["../src/AltVMCoreModule.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AltVMCoreModule.js","sourceRoot":"","sources":["../src/AltVMCoreModule.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,16 +1,13 @@
1
1
  export { AltVMJsonRpcSubmitter } from './AltVMJsonRpcSubmitter.js';
2
2
  export { AltVMCoreModule } from './AltVMCoreModule.js';
3
3
  export { AltVMCoreReader } from './AltVMCoreReader.js';
4
- export { AltVMWarpModule } from './AltVMWarpModule.js';
5
- export { AltVMWarpRouteReader } from './AltVMWarpRouteReader.js';
6
- export { AltVMDeployer } from './AltVMWarpDeployer.js';
7
4
  export { coreModuleProvider } from './core-module.js';
8
5
  export { createHookReader } from './hook/hook-reader.js';
9
6
  export { HookWriter, createHookWriter } from './hook/hook-writer.js';
10
7
  export { createIsmReader } from './ism/generic-ism.js';
11
8
  export { IsmWriter, createIsmWriter } from './ism/generic-ism-writer.js';
12
- export { ismConfigToArtifact, shouldDeployNewIsm, } from './ism/ism-config-utils.js';
13
- export { warpModuleProvider } from './warp-module.js';
9
+ export { WarpTokenReader, createWarpTokenReader } from './warp/warp-reader.js';
10
+ export { WarpTokenWriter, createWarpTokenWriter } from './warp/warp-writer.js';
14
11
  export { validateIsmConfig, validateIsmType, UnsupportedIsmTypeError, } from './utils/validation.js';
15
12
  export { loadProtocolProviders } from './protocol.js';
16
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EACL,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,uBAAuB,GACxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,uBAAuB,GACxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC"}
package/dist/index.js CHANGED
@@ -4,16 +4,13 @@
4
4
  export { AltVMJsonRpcSubmitter } from './AltVMJsonRpcSubmitter.js';
5
5
  export { AltVMCoreModule } from './AltVMCoreModule.js';
6
6
  export { AltVMCoreReader } from './AltVMCoreReader.js';
7
- export { AltVMWarpModule } from './AltVMWarpModule.js';
8
- export { AltVMWarpRouteReader } from './AltVMWarpRouteReader.js';
9
- export { AltVMDeployer } from './AltVMWarpDeployer.js';
10
7
  export { coreModuleProvider } from './core-module.js';
11
8
  export { createHookReader } from './hook/hook-reader.js';
12
9
  export { HookWriter, createHookWriter } from './hook/hook-writer.js';
13
10
  export { createIsmReader } from './ism/generic-ism.js';
14
11
  export { IsmWriter, createIsmWriter } from './ism/generic-ism-writer.js';
15
- export { ismConfigToArtifact, shouldDeployNewIsm, } from './ism/ism-config-utils.js';
16
- export { warpModuleProvider } from './warp-module.js';
12
+ export { WarpTokenReader, createWarpTokenReader } from './warp/warp-reader.js';
13
+ export { WarpTokenWriter, createWarpTokenWriter } from './warp/warp-writer.js';
17
14
  export { validateIsmConfig, validateIsmType, UnsupportedIsmTypeError, } from './utils/validation.js';
18
15
  export { loadProtocolProviders } from './protocol.js';
19
16
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,sEAAsE;AACtE,qFAAqF;AAErF,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EACL,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,uBAAuB,GACxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,sEAAsE;AACtE,qFAAqF;AAErF,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,uBAAuB,GACxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,51 @@
1
+ import { ChainMetadataForAltVM } from '@hyperlane-xyz/provider-sdk';
2
+ import { ArtifactReader } from '@hyperlane-xyz/provider-sdk/artifact';
3
+ import { ChainLookup } from '@hyperlane-xyz/provider-sdk/chain';
4
+ import { DeployedWarpAddress, DeployedWarpArtifact, DerivedWarpConfig, IRawWarpArtifactManager, WarpArtifactConfig } from '@hyperlane-xyz/provider-sdk/warp';
5
+ import { HookReader } from '../hook/hook-reader.js';
6
+ import { IsmReader } from '../ism/generic-ism.js';
7
+ /**
8
+ * Generic Warp Token Reader that can read any warp token type by detecting its type
9
+ * and expanding nested ISM artifacts if present.
10
+ */
11
+ export declare class WarpTokenReader implements ArtifactReader<WarpArtifactConfig, DeployedWarpAddress> {
12
+ protected readonly artifactManager: IRawWarpArtifactManager;
13
+ protected readonly chainMetadata: ChainMetadataForAltVM;
14
+ protected readonly chainLookup: ChainLookup;
15
+ protected readonly ismReader: IsmReader;
16
+ protected readonly hookReader: HookReader;
17
+ constructor(artifactManager: IRawWarpArtifactManager, chainMetadata: ChainMetadataForAltVM, chainLookup: ChainLookup);
18
+ read(address: string): Promise<DeployedWarpArtifact>;
19
+ /**
20
+ * Expands an ISM artifact by recursively reading it if underived.
21
+ * Returns undefined if no ISM is configured.
22
+ */
23
+ private expandIsmArtifact;
24
+ /**
25
+ * Expands a Hook artifact by recursively reading it if underived.
26
+ * Returns undefined if no Hook is configured.
27
+ */
28
+ private expandHookArtifact;
29
+ /**
30
+ * Backward compatibility method that converts DeployedWarpArtifact to DerivedWarpConfig.
31
+ * This allows WarpTokenReader to be used as a drop-in replacement for the old AltVMWarpRouteReader.
32
+ */
33
+ deriveWarpConfig(address: string): Promise<DerivedWarpConfig>;
34
+ }
35
+ /**
36
+ * Factory function to create a WarpTokenReader instance.
37
+ * This helper centralizes the creation of artifact managers and warp token readers,
38
+ * making it easier to instantiate readers across the codebase.
39
+ *
40
+ * @param chainMetadata Chain metadata for the target chain (protocol type is extracted from metadata.protocol)
41
+ * @param chainLookup Chain lookup interface for resolving chain names and domain IDs
42
+ * @returns A WarpTokenReader instance
43
+ *
44
+ * @example
45
+ * ```typescript
46
+ * const reader = createWarpTokenReader(chainMetadata, chainLookup);
47
+ * const warpConfig = await reader.read(warpTokenAddress);
48
+ * ```
49
+ */
50
+ export declare function createWarpTokenReader(chainMetadata: ChainMetadataForAltVM, chainLookup: ChainLookup): WarpTokenReader;
51
+ //# sourceMappingURL=warp-reader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"warp-reader.d.ts","sourceRoot":"","sources":["../../src/warp/warp-reader.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EAEtB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAEL,cAAc,EAGf,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAWhE,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,EACjB,uBAAuB,EACvB,kBAAkB,EAEnB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAE,UAAU,EAAoB,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,SAAS,EAAmB,MAAM,uBAAuB,CAAC;AAEnE;;;GAGG;AACH,qBAAa,eAAgB,YAAW,cAAc,CACpD,kBAAkB,EAClB,mBAAmB,CACpB;IAKG,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,uBAAuB;IAC3D,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,qBAAqB;IACvD,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,WAAW;IAN7C,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IACxC,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;gBAGrB,eAAe,EAAE,uBAAuB,EACxC,aAAa,EAAE,qBAAqB,EACpC,WAAW,EAAE,WAAW;IAMvC,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAwB1D;;;OAGG;YACW,iBAAiB;IAuB/B;;;OAGG;YACW,kBAAkB;IAuBhC;;;OAGG;IACG,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAIpE;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,qBAAqB,CACnC,aAAa,EAAE,qBAAqB,EACpC,WAAW,EAAE,WAAW,GACvB,eAAe,CAMjB"}
@@ -0,0 +1,106 @@
1
+ import { getProtocolProvider, } from '@hyperlane-xyz/provider-sdk';
2
+ import { isArtifactDeployed, isArtifactUnderived, } from '@hyperlane-xyz/provider-sdk/artifact';
3
+ import { warpArtifactToDerivedConfig, } from '@hyperlane-xyz/provider-sdk/warp';
4
+ import { createHookReader } from '../hook/hook-reader.js';
5
+ import { createIsmReader } from '../ism/generic-ism.js';
6
+ /**
7
+ * Generic Warp Token Reader that can read any warp token type by detecting its type
8
+ * and expanding nested ISM artifacts if present.
9
+ */
10
+ export class WarpTokenReader {
11
+ artifactManager;
12
+ chainMetadata;
13
+ chainLookup;
14
+ ismReader;
15
+ hookReader;
16
+ constructor(artifactManager, chainMetadata, chainLookup) {
17
+ this.artifactManager = artifactManager;
18
+ this.chainMetadata = chainMetadata;
19
+ this.chainLookup = chainLookup;
20
+ this.ismReader = createIsmReader(chainMetadata, chainLookup);
21
+ this.hookReader = createHookReader(chainMetadata, chainLookup);
22
+ }
23
+ async read(address) {
24
+ // Read warp token via artifactManager - detects type and returns raw config
25
+ const rawArtifact = await this.artifactManager.readWarpToken(address);
26
+ // Expand nested ISM artifact if present
27
+ const expandedIsmArtifact = await this.expandIsmArtifact(rawArtifact.config.interchainSecurityModule);
28
+ // Expand nested Hook artifact if present
29
+ const expandedHookArtifact = await this.expandHookArtifact(rawArtifact.config.hook);
30
+ return {
31
+ ...rawArtifact,
32
+ config: {
33
+ ...rawArtifact.config,
34
+ interchainSecurityModule: expandedIsmArtifact,
35
+ hook: expandedHookArtifact,
36
+ },
37
+ };
38
+ }
39
+ /**
40
+ * Expands an ISM artifact by recursively reading it if underived.
41
+ * Returns undefined if no ISM is configured.
42
+ */
43
+ async expandIsmArtifact(ismArtifact) {
44
+ if (!ismArtifact) {
45
+ return undefined;
46
+ }
47
+ // If ISM is underived (just an address), read it recursively to get full config
48
+ if (isArtifactUnderived(ismArtifact)) {
49
+ return this.ismReader.read(ismArtifact.deployed.address);
50
+ }
51
+ // If already a full deployed artifact, use as-is
52
+ if (isArtifactDeployed(ismArtifact)) {
53
+ return ismArtifact;
54
+ }
55
+ // NEW state should not occur in read artifacts
56
+ throw new Error(`Unexpected ISM artifact state 'new' when reading warp token ISM configuration`);
57
+ }
58
+ /**
59
+ * Expands a Hook artifact by recursively reading it if underived.
60
+ * Returns undefined if no Hook is configured.
61
+ */
62
+ async expandHookArtifact(hookArtifact) {
63
+ if (!hookArtifact) {
64
+ return undefined;
65
+ }
66
+ // If Hook is underived (just an address), read it recursively to get full config
67
+ if (isArtifactUnderived(hookArtifact)) {
68
+ return this.hookReader.read(hookArtifact.deployed.address);
69
+ }
70
+ // If already a full deployed artifact, use as-is
71
+ if (isArtifactDeployed(hookArtifact)) {
72
+ return hookArtifact;
73
+ }
74
+ // NEW state should not occur in read artifacts
75
+ throw new Error(`Unexpected Hook artifact state 'new' when reading warp token Hook configuration`);
76
+ }
77
+ /**
78
+ * Backward compatibility method that converts DeployedWarpArtifact to DerivedWarpConfig.
79
+ * This allows WarpTokenReader to be used as a drop-in replacement for the old AltVMWarpRouteReader.
80
+ */
81
+ async deriveWarpConfig(address) {
82
+ const artifact = await this.read(address);
83
+ return warpArtifactToDerivedConfig(artifact, this.chainLookup);
84
+ }
85
+ }
86
+ /**
87
+ * Factory function to create a WarpTokenReader instance.
88
+ * This helper centralizes the creation of artifact managers and warp token readers,
89
+ * making it easier to instantiate readers across the codebase.
90
+ *
91
+ * @param chainMetadata Chain metadata for the target chain (protocol type is extracted from metadata.protocol)
92
+ * @param chainLookup Chain lookup interface for resolving chain names and domain IDs
93
+ * @returns A WarpTokenReader instance
94
+ *
95
+ * @example
96
+ * ```typescript
97
+ * const reader = createWarpTokenReader(chainMetadata, chainLookup);
98
+ * const warpConfig = await reader.read(warpTokenAddress);
99
+ * ```
100
+ */
101
+ export function createWarpTokenReader(chainMetadata, chainLookup) {
102
+ const protocolProvider = getProtocolProvider(chainMetadata.protocol);
103
+ const artifactManager = protocolProvider.createWarpArtifactManager(chainMetadata);
104
+ return new WarpTokenReader(artifactManager, chainMetadata, chainLookup);
105
+ }
106
+ //# sourceMappingURL=warp-reader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"warp-reader.js","sourceRoot":"","sources":["../../src/warp/warp-reader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,66 @@
1
+ import { ChainMetadataForAltVM } from '@hyperlane-xyz/provider-sdk';
2
+ import { ISigner } from '@hyperlane-xyz/provider-sdk/altvm';
3
+ import { ArtifactNew, ArtifactWriter } from '@hyperlane-xyz/provider-sdk/artifact';
4
+ import { ChainLookup } from '@hyperlane-xyz/provider-sdk/chain';
5
+ import { AnnotatedTx, TxReceipt } from '@hyperlane-xyz/provider-sdk/module';
6
+ import { DeployedWarpAddress, DeployedWarpArtifact, IRawWarpArtifactManager, WarpArtifactConfig } from '@hyperlane-xyz/provider-sdk/warp';
7
+ import { HookWriter } from '../hook/hook-writer.js';
8
+ import { IsmWriter } from '../ism/generic-ism-writer.js';
9
+ import { WarpTokenReader } from './warp-reader.js';
10
+ /**
11
+ * Factory function to create a WarpTokenWriter instance.
12
+ *
13
+ * @param chainMetadata Chain metadata for the target chain
14
+ * @param chainLookup Chain lookup interface for resolving chain names and domain IDs
15
+ * @param signer Signer interface for signing transactions
16
+ * @returns A WarpTokenWriter instance
17
+ *
18
+ * @example
19
+ * ```typescript
20
+ * const writer = createWarpTokenWriter(chainMetadata, chainLookup, signer);
21
+ * const [deployed, receipts] = await writer.create(warpArtifact);
22
+ * ```
23
+ */
24
+ export declare function createWarpTokenWriter(chainMetadata: ChainMetadataForAltVM, chainLookup: ChainLookup, signer: ISigner<AnnotatedTx, TxReceipt>): WarpTokenWriter;
25
+ /**
26
+ * WarpTokenWriter handles creation and updates of warp tokens using the Artifact API.
27
+ * It delegates to protocol-specific artifact writers for individual warp token types.
28
+ *
29
+ * Key features:
30
+ * - Extends WarpTokenReader to inherit read() functionality
31
+ * - Works with pure Artifact API (WarpArtifactConfig)
32
+ * - Handles nested ISM deployment before warp token deployment
33
+ * - Delegates to typed writers from artifact manager for specific warp token types
34
+ * - Protocol-agnostic through artifact manager abstraction
35
+ */
36
+ export declare class WarpTokenWriter extends WarpTokenReader implements ArtifactWriter<WarpArtifactConfig, DeployedWarpAddress> {
37
+ protected readonly artifactManager: IRawWarpArtifactManager;
38
+ protected readonly chainMetadata: ChainMetadataForAltVM;
39
+ protected readonly chainLookup: ChainLookup;
40
+ protected readonly signer: ISigner<AnnotatedTx, TxReceipt>;
41
+ protected readonly ismWriter: IsmWriter;
42
+ protected readonly hookWriterFactory: (mailbox: string) => HookWriter;
43
+ constructor(artifactManager: IRawWarpArtifactManager, chainMetadata: ChainMetadataForAltVM, chainLookup: ChainLookup, signer: ISigner<AnnotatedTx, TxReceipt>);
44
+ /**
45
+ * Creates a new warp token by deploying it on-chain.
46
+ * If the warp token has a nested ISM artifact, deploys the ISM first.
47
+ *
48
+ * @param artifact The warp token configuration to deploy
49
+ * @returns A tuple of [deployed artifact, transaction receipts]
50
+ */
51
+ create(artifact: ArtifactNew<WarpArtifactConfig>): Promise<[DeployedWarpArtifact, TxReceipt[]]>;
52
+ /**
53
+ * Updates an existing warp token to match the desired configuration.
54
+ * Warp tokens are mutable - supports remote router enrollment/unenrollment,
55
+ * ISM updates, and owner changes.
56
+ *
57
+ * The protocol-specific writer will read the current on-chain state and compare
58
+ * with the expected config to generate the necessary update transactions.
59
+ *
60
+ * @param artifact The desired warp token state (must include deployed address)
61
+ * @returns Array of transactions needed to perform the update
62
+ * @throws Error if the token type cannot be changed (e.g., collateral -> synthetic)
63
+ */
64
+ update(artifact: DeployedWarpArtifact): Promise<AnnotatedTx[]>;
65
+ }
66
+ //# sourceMappingURL=warp-writer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"warp-writer.d.ts","sourceRoot":"","sources":["../../src/warp/warp-writer.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EAEtB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAC;AAC5D,OAAO,EACL,WAAW,EAGX,cAAc,EAIf,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAWhE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,uBAAuB,EAEvB,kBAAkB,EACnB,MAAM,kCAAkC,CAAC;AAG1C,OAAO,EAAE,UAAU,EAAoB,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,SAAS,EAAmB,MAAM,8BAA8B,CAAC;AAE1E,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,qBAAqB,CACnC,aAAa,EAAE,qBAAqB,EACpC,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC,GACtC,eAAe,CAWjB;AAED;;;;;;;;;;GAUG;AACH,qBAAa,eACX,SAAQ,eACR,YAAW,cAAc,CAAC,kBAAkB,EAAE,mBAAmB,CAAC;IAMhE,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,uBAAuB;IAC3D,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,qBAAqB;IACvD,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,WAAW;IAC3C,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC;IAP5D,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IACxC,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,UAAU,CAAC;gBAGjD,eAAe,EAAE,uBAAuB,EACxC,aAAa,EAAE,qBAAqB,EACpC,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC;IAQ5D;;;;;;OAMG;IACG,MAAM,CACV,QAAQ,EAAE,WAAW,CAAC,kBAAkB,CAAC,GACxC,OAAO,CAAC,CAAC,oBAAoB,EAAE,SAAS,EAAE,CAAC,CAAC;IAiF/C;;;;;;;;;;;OAWG;IACG,MAAM,CAAC,QAAQ,EAAE,oBAAoB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;CA+HrE"}
@@ -0,0 +1,231 @@
1
+ import { getProtocolProvider, } from '@hyperlane-xyz/provider-sdk';
2
+ import { ArtifactState, isArtifactDeployed, isArtifactNew, isArtifactUnderived, } from '@hyperlane-xyz/provider-sdk/artifact';
3
+ import { mergeHookArtifacts, } from '@hyperlane-xyz/provider-sdk/hook';
4
+ import { mergeIsmArtifacts, } from '@hyperlane-xyz/provider-sdk/ism';
5
+ import { assert, isNullish, rootLogger } from '@hyperlane-xyz/utils';
6
+ import { createHookWriter } from '../hook/hook-writer.js';
7
+ import { createIsmWriter } from '../ism/generic-ism-writer.js';
8
+ import { WarpTokenReader } from './warp-reader.js';
9
+ /**
10
+ * Factory function to create a WarpTokenWriter instance.
11
+ *
12
+ * @param chainMetadata Chain metadata for the target chain
13
+ * @param chainLookup Chain lookup interface for resolving chain names and domain IDs
14
+ * @param signer Signer interface for signing transactions
15
+ * @returns A WarpTokenWriter instance
16
+ *
17
+ * @example
18
+ * ```typescript
19
+ * const writer = createWarpTokenWriter(chainMetadata, chainLookup, signer);
20
+ * const [deployed, receipts] = await writer.create(warpArtifact);
21
+ * ```
22
+ */
23
+ export function createWarpTokenWriter(chainMetadata, chainLookup, signer) {
24
+ const protocolProvider = getProtocolProvider(chainMetadata.protocol);
25
+ const artifactManager = protocolProvider.createWarpArtifactManager(chainMetadata);
26
+ return new WarpTokenWriter(artifactManager, chainMetadata, chainLookup, signer);
27
+ }
28
+ /**
29
+ * WarpTokenWriter handles creation and updates of warp tokens using the Artifact API.
30
+ * It delegates to protocol-specific artifact writers for individual warp token types.
31
+ *
32
+ * Key features:
33
+ * - Extends WarpTokenReader to inherit read() functionality
34
+ * - Works with pure Artifact API (WarpArtifactConfig)
35
+ * - Handles nested ISM deployment before warp token deployment
36
+ * - Delegates to typed writers from artifact manager for specific warp token types
37
+ * - Protocol-agnostic through artifact manager abstraction
38
+ */
39
+ export class WarpTokenWriter extends WarpTokenReader {
40
+ artifactManager;
41
+ chainMetadata;
42
+ chainLookup;
43
+ signer;
44
+ ismWriter;
45
+ hookWriterFactory;
46
+ constructor(artifactManager, chainMetadata, chainLookup, signer) {
47
+ super(artifactManager, chainMetadata, chainLookup);
48
+ this.artifactManager = artifactManager;
49
+ this.chainMetadata = chainMetadata;
50
+ this.chainLookup = chainLookup;
51
+ this.signer = signer;
52
+ this.ismWriter = createIsmWriter(chainMetadata, chainLookup, signer);
53
+ this.hookWriterFactory = (mailbox) => createHookWriter(chainMetadata, chainLookup, signer, { mailbox });
54
+ }
55
+ /**
56
+ * Creates a new warp token by deploying it on-chain.
57
+ * If the warp token has a nested ISM artifact, deploys the ISM first.
58
+ *
59
+ * @param artifact The warp token configuration to deploy
60
+ * @returns A tuple of [deployed artifact, transaction receipts]
61
+ */
62
+ async create(artifact) {
63
+ const { config } = artifact;
64
+ const allReceipts = [];
65
+ if (config.hook) {
66
+ assert(config.mailbox, 'Mailbox is required when hook configuration is provided');
67
+ }
68
+ // Deploy ISM if configured as a NEW artifact
69
+ let onChainIsmArtifact;
70
+ if (config.interchainSecurityModule) {
71
+ if (isArtifactNew(config.interchainSecurityModule)) {
72
+ const [deployedIsm, ismReceipts] = await this.ismWriter.create(config.interchainSecurityModule);
73
+ allReceipts.push(...ismReceipts);
74
+ onChainIsmArtifact = deployedIsm;
75
+ }
76
+ else {
77
+ onChainIsmArtifact = config.interchainSecurityModule;
78
+ }
79
+ }
80
+ // Deploy Hook if configured as a NEW artifact
81
+ let onChainHookArtifact;
82
+ if (config.hook) {
83
+ if (!this.artifactManager.supportsHookUpdates()) {
84
+ rootLogger.warn('Hook configuration is not supported for this protocol. Hook configuration will be ignored.');
85
+ }
86
+ else {
87
+ const hookWriter = this.hookWriterFactory(config.mailbox);
88
+ if (isArtifactNew(config.hook)) {
89
+ const [deployedHook, hookReceipts] = await hookWriter.create(config.hook);
90
+ allReceipts.push(...hookReceipts);
91
+ onChainHookArtifact = deployedHook;
92
+ }
93
+ else {
94
+ onChainHookArtifact = config.hook;
95
+ }
96
+ }
97
+ }
98
+ // Convert to raw artifact config (flatten nested artifacts)
99
+ const rawArtifact = {
100
+ artifactState: ArtifactState.NEW,
101
+ config: {
102
+ ...config,
103
+ interchainSecurityModule: onChainIsmArtifact,
104
+ hook: onChainHookArtifact,
105
+ },
106
+ };
107
+ // Delegate to protocol-specific writer
108
+ const writer = this.artifactManager.createWriter(config.type, this.signer);
109
+ const [deployed, tokenReceipts] = await writer.create(rawArtifact);
110
+ allReceipts.push(...tokenReceipts);
111
+ // Return deployed config
112
+ return [
113
+ {
114
+ artifactState: ArtifactState.DEPLOYED,
115
+ config: {
116
+ ...artifact.config,
117
+ interchainSecurityModule: onChainIsmArtifact,
118
+ hook: onChainHookArtifact,
119
+ },
120
+ deployed: deployed.deployed,
121
+ },
122
+ allReceipts,
123
+ ];
124
+ }
125
+ /**
126
+ * Updates an existing warp token to match the desired configuration.
127
+ * Warp tokens are mutable - supports remote router enrollment/unenrollment,
128
+ * ISM updates, and owner changes.
129
+ *
130
+ * The protocol-specific writer will read the current on-chain state and compare
131
+ * with the expected config to generate the necessary update transactions.
132
+ *
133
+ * @param artifact The desired warp token state (must include deployed address)
134
+ * @returns Array of transactions needed to perform the update
135
+ * @throws Error if the token type cannot be changed (e.g., collateral -> synthetic)
136
+ */
137
+ async update(artifact) {
138
+ const { config, deployed } = artifact;
139
+ const expectedHook = config.hook;
140
+ if (expectedHook && !isArtifactUnderived(expectedHook)) {
141
+ assert(config.mailbox, 'Mailbox is required when hook configuration is provided');
142
+ }
143
+ // Read current on-chain state to verify token type hasn't changed
144
+ const currentArtifact = await this.read(deployed.address);
145
+ assert(currentArtifact.config.type === config.type, `Cannot change warp token type from '${currentArtifact.config.type}' to '${config.type}'. ` +
146
+ `Token type is immutable after deployment.`);
147
+ assert(isNullish(currentArtifact.config.interchainSecurityModule) ||
148
+ isArtifactDeployed(currentArtifact.config.interchainSecurityModule), `Expected Warp Reader to expand the ISM config`);
149
+ assert(isNullish(currentArtifact.config.hook) ||
150
+ isArtifactDeployed(currentArtifact.config.hook), `Expected Warp Reader to expand the Hook config`);
151
+ const updateTxs = [];
152
+ // Resolve ISM updates
153
+ const expectedIsm = config.interchainSecurityModule;
154
+ const currentIsm = currentArtifact.config.interchainSecurityModule;
155
+ let onChainIsmArtifact;
156
+ if (expectedIsm && !isArtifactUnderived(expectedIsm)) {
157
+ // NEW or DEPLOYED: Merge with current and decide deploy vs update
158
+ const mergedIsmConfig = mergeIsmArtifacts(currentIsm, expectedIsm);
159
+ if (isArtifactNew(mergedIsmConfig)) {
160
+ // Deploy new ISM
161
+ const [deployed] = await this.ismWriter.create(mergedIsmConfig);
162
+ onChainIsmArtifact = {
163
+ artifactState: ArtifactState.UNDERIVED,
164
+ deployed: { address: deployed.deployed.address },
165
+ };
166
+ }
167
+ else if (isArtifactDeployed(mergedIsmConfig)) {
168
+ // DEPLOYED: update existing ISM (or reuse if unchanged)
169
+ const txs = await this.ismWriter.update(mergedIsmConfig);
170
+ updateTxs.push(...txs);
171
+ onChainIsmArtifact = {
172
+ artifactState: ArtifactState.UNDERIVED,
173
+ deployed: { address: mergedIsmConfig.deployed.address },
174
+ };
175
+ }
176
+ }
177
+ else {
178
+ onChainIsmArtifact = expectedIsm;
179
+ }
180
+ // Resolve Hook updates
181
+ const currentHook = currentArtifact.config.hook;
182
+ let onChainHookArtifact;
183
+ if (expectedHook && !isArtifactUnderived(expectedHook)) {
184
+ if (!this.artifactManager.supportsHookUpdates()) {
185
+ rootLogger.warn('Hook updates are not supported for this protocol. Hook configuration will be ignored.');
186
+ onChainHookArtifact = currentHook;
187
+ }
188
+ else {
189
+ const hookWriter = this.hookWriterFactory(config.mailbox);
190
+ // NEW or DEPLOYED: Merge with current and decide deploy vs update
191
+ const mergedHookConfig = mergeHookArtifacts(currentHook, expectedHook);
192
+ if (isArtifactNew(mergedHookConfig)) {
193
+ // Deploy new Hook
194
+ const [deployed] = await hookWriter.create(mergedHookConfig);
195
+ onChainHookArtifact = {
196
+ artifactState: ArtifactState.UNDERIVED,
197
+ deployed: { address: deployed.deployed.address },
198
+ };
199
+ }
200
+ else if (isArtifactDeployed(mergedHookConfig)) {
201
+ // DEPLOYED: update existing Hook (or reuse if unchanged)
202
+ const txs = await hookWriter.update(mergedHookConfig);
203
+ updateTxs.push(...txs);
204
+ onChainHookArtifact = {
205
+ artifactState: ArtifactState.UNDERIVED,
206
+ deployed: { address: mergedHookConfig.deployed.address },
207
+ };
208
+ }
209
+ }
210
+ }
211
+ else {
212
+ onChainHookArtifact = expectedHook;
213
+ }
214
+ // Build raw artifact with flattened ISM and Hook references
215
+ const rawArtifact = {
216
+ artifactState: ArtifactState.DEPLOYED,
217
+ config: {
218
+ ...config,
219
+ interchainSecurityModule: onChainIsmArtifact,
220
+ hook: onChainHookArtifact,
221
+ },
222
+ deployed,
223
+ };
224
+ // Delegate to protocol-specific writer which will read current state and compare
225
+ const writer = this.artifactManager.createWriter(config.type, this.signer);
226
+ const warpUpdateTxs = await writer.update(rawArtifact);
227
+ updateTxs.push(...warpUpdateTxs);
228
+ return updateTxs;
229
+ }
230
+ }
231
+ //# sourceMappingURL=warp-writer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"warp-writer.js","sourceRoot":"","sources":["../../src/warp/warp-writer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=warp-writer.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"warp-writer.test.d.ts","sourceRoot":"","sources":["../../src/warp/warp-writer.test.ts"],"names":[],"mappings":""}