@hyperlane-xyz/sdk 3.0.0-beta0 → 3.1.0-beta1

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 (177) hide show
  1. package/dist/app/MultiProtocolApp.d.ts +9 -1
  2. package/dist/app/MultiProtocolApp.d.ts.map +1 -1
  3. package/dist/app/MultiProtocolApp.js +21 -1
  4. package/dist/app/MultiProtocolApp.js.map +1 -1
  5. package/dist/app/MultiProtocolApp.test.js +2 -0
  6. package/dist/app/MultiProtocolApp.test.js.map +1 -1
  7. package/dist/consts/chainMetadata.d.ts +2 -0
  8. package/dist/consts/chainMetadata.d.ts.map +1 -1
  9. package/dist/consts/chainMetadata.js +63 -1
  10. package/dist/consts/chainMetadata.js.map +1 -1
  11. package/dist/consts/chains.d.ts +2 -0
  12. package/dist/consts/chains.d.ts.map +1 -1
  13. package/dist/consts/chains.js +4 -0
  14. package/dist/consts/chains.js.map +1 -1
  15. package/dist/consts/environments/index.d.ts +5 -1080
  16. package/dist/consts/environments/index.d.ts.map +1 -1
  17. package/dist/consts/environments/mainnet.json +0 -671
  18. package/dist/consts/environments/testnet.json +16 -359
  19. package/dist/core/HyperlaneCore.d.ts.map +1 -1
  20. package/dist/core/HyperlaneCore.js +0 -1
  21. package/dist/core/HyperlaneCore.js.map +1 -1
  22. package/dist/core/MultiProtocolCore.d.ts.map +1 -1
  23. package/dist/core/MultiProtocolCore.js +3 -0
  24. package/dist/core/MultiProtocolCore.js.map +1 -1
  25. package/dist/core/MultiProtocolCore.test.js +2 -1
  26. package/dist/core/MultiProtocolCore.test.js.map +1 -1
  27. package/dist/core/adapters/CosmWasmCoreAdapter.d.ts +39 -0
  28. package/dist/core/adapters/CosmWasmCoreAdapter.d.ts.map +1 -0
  29. package/dist/core/adapters/CosmWasmCoreAdapter.js +125 -0
  30. package/dist/core/adapters/CosmWasmCoreAdapter.js.map +1 -0
  31. package/dist/core/adapters/CosmWasmIgpAdapter.d.ts +27 -0
  32. package/dist/core/adapters/CosmWasmIgpAdapter.d.ts.map +1 -0
  33. package/dist/core/adapters/CosmWasmIgpAdapter.js +93 -0
  34. package/dist/core/adapters/CosmWasmIgpAdapter.js.map +1 -0
  35. package/dist/core/adapters/CosmWasmIgpAdapter.test.d.ts +10 -0
  36. package/dist/core/adapters/CosmWasmIgpAdapter.test.d.ts.map +1 -0
  37. package/dist/core/adapters/CosmWasmIgpAdapter.test.js +71 -0
  38. package/dist/core/adapters/CosmWasmIgpAdapter.test.js.map +1 -0
  39. package/dist/cw-types/Cw20Base.types.d.ts +198 -0
  40. package/dist/cw-types/Cw20Base.types.d.ts.map +1 -0
  41. package/dist/cw-types/Cw20Base.types.js +8 -0
  42. package/dist/cw-types/Cw20Base.types.js.map +1 -0
  43. package/dist/cw-types/HookAggregate.types.d.ts +79 -0
  44. package/dist/cw-types/HookAggregate.types.d.ts.map +1 -0
  45. package/dist/cw-types/HookAggregate.types.js +8 -0
  46. package/dist/cw-types/HookAggregate.types.js.map +1 -0
  47. package/dist/cw-types/HookMerkle.types.d.ts +163 -0
  48. package/dist/cw-types/HookMerkle.types.d.ts.map +1 -0
  49. package/dist/cw-types/HookMerkle.types.js +8 -0
  50. package/dist/cw-types/HookMerkle.types.js.map +1 -0
  51. package/dist/cw-types/HookPausable.types.d.ts +82 -0
  52. package/dist/cw-types/HookPausable.types.d.ts.map +1 -0
  53. package/dist/cw-types/HookPausable.types.js +8 -0
  54. package/dist/cw-types/HookPausable.types.js.map +1 -0
  55. package/dist/cw-types/HookRouting.types.d.ts +109 -0
  56. package/dist/cw-types/HookRouting.types.d.ts.map +1 -0
  57. package/dist/cw-types/HookRouting.types.js +8 -0
  58. package/dist/cw-types/HookRouting.types.js.map +1 -0
  59. package/dist/cw-types/HookRoutingCustom.types.d.ts +149 -0
  60. package/dist/cw-types/HookRoutingCustom.types.d.ts.map +1 -0
  61. package/dist/cw-types/HookRoutingCustom.types.js +8 -0
  62. package/dist/cw-types/HookRoutingCustom.types.js.map +1 -0
  63. package/dist/cw-types/HookRoutingFallback.types.d.ts +113 -0
  64. package/dist/cw-types/HookRoutingFallback.types.d.ts.map +1 -0
  65. package/dist/cw-types/HookRoutingFallback.types.js +8 -0
  66. package/dist/cw-types/HookRoutingFallback.types.js.map +1 -0
  67. package/dist/cw-types/Igp.types.d.ts +184 -0
  68. package/dist/cw-types/Igp.types.d.ts.map +1 -0
  69. package/dist/cw-types/Igp.types.js +8 -0
  70. package/dist/cw-types/Igp.types.js.map +1 -0
  71. package/dist/cw-types/IgpOracle.types.d.ts +61 -0
  72. package/dist/cw-types/IgpOracle.types.d.ts.map +1 -0
  73. package/dist/cw-types/IgpOracle.types.js +8 -0
  74. package/dist/cw-types/IgpOracle.types.js.map +1 -0
  75. package/dist/cw-types/IsmAggregate.types.d.ts +76 -0
  76. package/dist/cw-types/IsmAggregate.types.d.ts.map +1 -0
  77. package/dist/cw-types/IsmAggregate.types.js +8 -0
  78. package/dist/cw-types/IsmAggregate.types.js.map +1 -0
  79. package/dist/cw-types/IsmMultisig.types.d.ts +102 -0
  80. package/dist/cw-types/IsmMultisig.types.d.ts.map +1 -0
  81. package/dist/cw-types/IsmMultisig.types.js +8 -0
  82. package/dist/cw-types/IsmMultisig.types.js.map +1 -0
  83. package/dist/cw-types/IsmRouting.types.d.ts +81 -0
  84. package/dist/cw-types/IsmRouting.types.d.ts.map +1 -0
  85. package/dist/cw-types/IsmRouting.types.js +8 -0
  86. package/dist/cw-types/IsmRouting.types.js.map +1 -0
  87. package/dist/cw-types/Mailbox.types.d.ts +131 -0
  88. package/dist/cw-types/Mailbox.types.d.ts.map +1 -0
  89. package/dist/cw-types/Mailbox.types.js +8 -0
  90. package/dist/cw-types/Mailbox.types.js.map +1 -0
  91. package/dist/cw-types/ValidatorAnnounce.types.d.ts +31 -0
  92. package/dist/cw-types/ValidatorAnnounce.types.d.ts.map +1 -0
  93. package/dist/cw-types/ValidatorAnnounce.types.js +8 -0
  94. package/dist/cw-types/ValidatorAnnounce.types.js.map +1 -0
  95. package/dist/cw-types/WarpCw20.types.d.ts +217 -0
  96. package/dist/cw-types/WarpCw20.types.d.ts.map +1 -0
  97. package/dist/cw-types/WarpCw20.types.js +8 -0
  98. package/dist/cw-types/WarpCw20.types.js.map +1 -0
  99. package/dist/cw-types/WarpNative.types.d.ts +197 -0
  100. package/dist/cw-types/WarpNative.types.d.ts.map +1 -0
  101. package/dist/cw-types/WarpNative.types.js +8 -0
  102. package/dist/cw-types/WarpNative.types.js.map +1 -0
  103. package/dist/hook/HyperlaneHookDeployer.d.ts +2 -2
  104. package/dist/hook/HyperlaneHookDeployer.d.ts.map +1 -1
  105. package/dist/hook/HyperlaneHookDeployer.js +19 -4
  106. package/dist/hook/HyperlaneHookDeployer.js.map +1 -1
  107. package/dist/hook/types.d.ts +7 -8
  108. package/dist/hook/types.d.ts.map +1 -1
  109. package/dist/index.d.ts +7 -5
  110. package/dist/index.d.ts.map +1 -1
  111. package/dist/index.js +15 -3
  112. package/dist/index.js.map +1 -1
  113. package/dist/ism/HyperlaneIsmFactory.d.ts +2 -1
  114. package/dist/ism/HyperlaneIsmFactory.d.ts.map +1 -1
  115. package/dist/ism/HyperlaneIsmFactory.js +59 -37
  116. package/dist/ism/HyperlaneIsmFactory.js.map +1 -1
  117. package/dist/ism/adapters/CosmWasmMultisigAdapter.d.ts +24 -0
  118. package/dist/ism/adapters/CosmWasmMultisigAdapter.d.ts.map +1 -0
  119. package/dist/ism/adapters/CosmWasmMultisigAdapter.js +75 -0
  120. package/dist/ism/adapters/CosmWasmMultisigAdapter.js.map +1 -0
  121. package/dist/ism/types.d.ts +12 -3
  122. package/dist/ism/types.d.ts.map +1 -1
  123. package/dist/ism/types.js.map +1 -1
  124. package/dist/metadata/ChainMetadataManager.d.ts +3 -3
  125. package/dist/metadata/ChainMetadataManager.d.ts.map +1 -1
  126. package/dist/metadata/ChainMetadataManager.js +14 -13
  127. package/dist/metadata/ChainMetadataManager.js.map +1 -1
  128. package/dist/metadata/agentConfig.d.ts +195 -133
  129. package/dist/metadata/agentConfig.d.ts.map +1 -1
  130. package/dist/metadata/agentConfig.js +1 -1
  131. package/dist/metadata/agentConfig.js.map +1 -1
  132. package/dist/metadata/chainMetadata.test.js +16 -0
  133. package/dist/metadata/chainMetadata.test.js.map +1 -1
  134. package/dist/metadata/chainMetadataTypes.d.ts +570 -4
  135. package/dist/metadata/chainMetadataTypes.d.ts.map +1 -1
  136. package/dist/metadata/chainMetadataTypes.js +50 -4
  137. package/dist/metadata/chainMetadataTypes.js.map +1 -1
  138. package/dist/providers/MultiProtocolProvider.d.ts +4 -1
  139. package/dist/providers/MultiProtocolProvider.d.ts.map +1 -1
  140. package/dist/providers/MultiProtocolProvider.js +16 -20
  141. package/dist/providers/MultiProtocolProvider.js.map +1 -1
  142. package/dist/providers/ProviderType.d.ts +45 -8
  143. package/dist/providers/ProviderType.d.ts.map +1 -1
  144. package/dist/providers/ProviderType.js +2 -0
  145. package/dist/providers/ProviderType.js.map +1 -1
  146. package/dist/providers/providerBuilders.d.ts +3 -1
  147. package/dist/providers/providerBuilders.d.ts.map +1 -1
  148. package/dist/providers/providerBuilders.js +24 -1
  149. package/dist/providers/providerBuilders.js.map +1 -1
  150. package/dist/router/MultiProtocolRouterApps.d.ts.map +1 -1
  151. package/dist/router/MultiProtocolRouterApps.js +1 -0
  152. package/dist/router/MultiProtocolRouterApps.js.map +1 -1
  153. package/dist/token/adapters/CosmWasmTokenAdapter.d.ts +107 -0
  154. package/dist/token/adapters/CosmWasmTokenAdapter.d.ts.map +1 -0
  155. package/dist/token/adapters/CosmWasmTokenAdapter.js +285 -0
  156. package/dist/token/adapters/CosmWasmTokenAdapter.js.map +1 -0
  157. package/dist/token/adapters/CosmWasmTokenAdapter.test.d.ts +14 -0
  158. package/dist/token/adapters/CosmWasmTokenAdapter.test.d.ts.map +1 -0
  159. package/dist/token/adapters/CosmWasmTokenAdapter.test.js +283 -0
  160. package/dist/token/adapters/CosmWasmTokenAdapter.test.js.map +1 -0
  161. package/dist/token/adapters/CosmosTokenAdapter.d.ts +67 -0
  162. package/dist/token/adapters/CosmosTokenAdapter.d.ts.map +1 -0
  163. package/dist/token/adapters/CosmosTokenAdapter.js +113 -0
  164. package/dist/token/adapters/CosmosTokenAdapter.js.map +1 -0
  165. package/dist/token/adapters/SealevelTokenAdapter.d.ts +1 -1
  166. package/dist/token/adapters/SealevelTokenAdapter.d.ts.map +1 -1
  167. package/dist/token/adapters/SealevelTokenAdapter.js +1 -2
  168. package/dist/token/adapters/SealevelTokenAdapter.js.map +1 -1
  169. package/dist/token/deploy.hardhat-test.d.ts +2 -0
  170. package/dist/token/deploy.hardhat-test.d.ts.map +1 -0
  171. package/dist/token/deploy.hardhat-test.js +41 -0
  172. package/dist/token/deploy.hardhat-test.js.map +1 -0
  173. package/dist/utils/wagmi.d.ts +1 -1
  174. package/dist/utils/wagmi.d.ts.map +1 -1
  175. package/dist/utils/wagmi.js +3 -2
  176. package/dist/utils/wagmi.js.map +1 -1
  177. package/package.json +7 -3
@@ -0,0 +1,39 @@
1
+ import { ExecuteInstruction } from '@cosmjs/cosmwasm-stargate';
2
+ import { Address, HexString } from '@hyperlane-xyz/utils';
3
+ import { BaseCosmWasmAdapter } from '../../app/MultiProtocolApp';
4
+ import { Coin, DefaultHookResponse, DefaultIsmResponse, ExecuteMsg, LatestDispatchedIdResponse, MessageDeliveredResponse, NonceResponse, OwnerResponse, QueryMsg, RequiredHookResponse } from '../../cw-types/Mailbox.types';
5
+ import { MultiProtocolProvider } from '../../providers/MultiProtocolProvider';
6
+ import { TypedTransactionReceipt } from '../../providers/ProviderType';
7
+ import { ChainName } from '../../types';
8
+ import { ICoreAdapter } from './types';
9
+ type MailboxResponse = DefaultHookResponse | RequiredHookResponse | DefaultIsmResponse | NonceResponse | LatestDispatchedIdResponse | OwnerResponse | MessageDeliveredResponse;
10
+ export declare class CosmWasmCoreAdapter extends BaseCosmWasmAdapter implements ICoreAdapter {
11
+ readonly chainName: ChainName;
12
+ readonly multiProvider: MultiProtocolProvider<any>;
13
+ readonly addresses: {
14
+ mailbox: Address;
15
+ };
16
+ constructor(chainName: ChainName, multiProvider: MultiProtocolProvider<any>, addresses: {
17
+ mailbox: Address;
18
+ });
19
+ prepareMailbox(msg: ExecuteMsg, funds?: Coin[]): ExecuteInstruction;
20
+ initTransferOwner(newOwner: Address): ExecuteInstruction;
21
+ claimTransferOwner(): ExecuteInstruction;
22
+ setDefaultHook(address: Address): ExecuteInstruction;
23
+ setRequiredHook(address: Address): ExecuteInstruction;
24
+ queryMailbox<R extends MailboxResponse>(msg: QueryMsg): Promise<R>;
25
+ defaultHook(): Promise<string>;
26
+ defaultIsm(): Promise<string>;
27
+ requiredHook(): Promise<string>;
28
+ nonce(): Promise<number>;
29
+ latestDispatchedId(): Promise<string>;
30
+ owner(): Promise<string>;
31
+ delivered(id: string): Promise<boolean>;
32
+ extractMessageIds(sourceTx: TypedTransactionReceipt): Array<{
33
+ messageId: string;
34
+ destination: ChainName;
35
+ }>;
36
+ waitForMessageProcessed(_messageId: HexString, _destination: ChainName, _delayMs?: number, _maxAttempts?: number): Promise<void>;
37
+ }
38
+ export {};
39
+ //# sourceMappingURL=CosmWasmCoreAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CosmWasmCoreAdapter.d.ts","sourceRoot":"","sources":["../../../src/core/adapters/CosmWasmCoreAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAE/D,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EACL,IAAI,EACJ,mBAAmB,EACnB,kBAAkB,EAClB,UAAU,EACV,0BAA0B,EAC1B,wBAAwB,EACxB,aAAa,EACb,aAAa,EACb,QAAQ,EACR,oBAAoB,EACrB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAEL,uBAAuB,EACxB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,KAAK,eAAe,GAChB,mBAAmB,GACnB,oBAAoB,GACpB,kBAAkB,GAClB,aAAa,GACb,0BAA0B,GAC1B,aAAa,GACb,wBAAwB,CAAC;AAE7B,qBAAa,mBACX,SAAQ,mBACR,YAAW,YAAY;aAGL,SAAS,EAAE,SAAS;aACpB,aAAa,EAAE,qBAAqB,CAAC,GAAG,CAAC;aACzC,SAAS,EAAE;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE;gBAF/B,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,qBAAqB,CAAC,GAAG,CAAC,EACzC,SAAS,EAAE;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE;IAKjD,cAAc,CAAC,GAAG,EAAE,UAAU,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,kBAAkB;IAQnE,iBAAiB,CAAC,QAAQ,EAAE,OAAO,GAAG,kBAAkB;IAUxD,kBAAkB,IAAI,kBAAkB;IAQxC,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,kBAAkB;IAQpD,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,kBAAkB;IAQ/C,YAAY,CAAC,CAAC,SAAS,eAAe,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC;IASlE,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAS9B,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAS7B,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;IAS/B,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IASxB,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;IASrC,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IASxB,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAW7C,iBAAiB,CACf,QAAQ,EAAE,uBAAuB,GAChC,KAAK,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,SAAS,CAAA;KAAE,CAAC;IAUjD,uBAAuB,CAC3B,UAAU,EAAE,SAAS,EACrB,YAAY,EAAE,SAAS,EACvB,QAAQ,CAAC,EAAE,MAAM,EACjB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,IAAI,CAAC;CAGjB"}
@@ -0,0 +1,125 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CosmWasmCoreAdapter = void 0;
4
+ const MultiProtocolApp_1 = require("../../app/MultiProtocolApp");
5
+ const ProviderType_1 = require("../../providers/ProviderType");
6
+ class CosmWasmCoreAdapter extends MultiProtocolApp_1.BaseCosmWasmAdapter {
7
+ constructor(chainName, multiProvider, addresses) {
8
+ super(chainName, multiProvider, addresses);
9
+ this.chainName = chainName;
10
+ this.multiProvider = multiProvider;
11
+ this.addresses = addresses;
12
+ }
13
+ prepareMailbox(msg, funds) {
14
+ return {
15
+ contractAddress: this.addresses.mailbox,
16
+ msg,
17
+ funds,
18
+ };
19
+ }
20
+ initTransferOwner(newOwner) {
21
+ return this.prepareMailbox({
22
+ ownable: {
23
+ init_ownership_transfer: {
24
+ next_owner: newOwner,
25
+ },
26
+ },
27
+ });
28
+ }
29
+ claimTransferOwner() {
30
+ return this.prepareMailbox({
31
+ ownable: {
32
+ claim_ownership: {},
33
+ },
34
+ });
35
+ }
36
+ setDefaultHook(address) {
37
+ return this.prepareMailbox({
38
+ set_default_hook: {
39
+ hook: address,
40
+ },
41
+ });
42
+ }
43
+ setRequiredHook(address) {
44
+ return this.prepareMailbox({
45
+ set_required_hook: {
46
+ hook: address,
47
+ },
48
+ });
49
+ }
50
+ async queryMailbox(msg) {
51
+ const provider = await this.getProvider();
52
+ const response = await provider.queryContractSmart(this.addresses.mailbox, msg);
53
+ return response;
54
+ }
55
+ async defaultHook() {
56
+ const response = await this.queryMailbox({
57
+ mailbox: {
58
+ default_hook: {},
59
+ },
60
+ });
61
+ return response.default_hook;
62
+ }
63
+ async defaultIsm() {
64
+ const response = await this.queryMailbox({
65
+ mailbox: {
66
+ default_ism: {},
67
+ },
68
+ });
69
+ return response.default_ism;
70
+ }
71
+ async requiredHook() {
72
+ const response = await this.queryMailbox({
73
+ mailbox: {
74
+ required_hook: {},
75
+ },
76
+ });
77
+ return response.required_hook;
78
+ }
79
+ async nonce() {
80
+ const response = await this.queryMailbox({
81
+ mailbox: {
82
+ nonce: {},
83
+ },
84
+ });
85
+ return response.nonce;
86
+ }
87
+ async latestDispatchedId() {
88
+ const response = await this.queryMailbox({
89
+ mailbox: {
90
+ latest_dispatch_id: {},
91
+ },
92
+ });
93
+ return response.message_id;
94
+ }
95
+ async owner() {
96
+ const response = await this.queryMailbox({
97
+ ownable: {
98
+ get_owner: {},
99
+ },
100
+ });
101
+ return response.owner;
102
+ }
103
+ async delivered(id) {
104
+ const response = await this.queryMailbox({
105
+ mailbox: {
106
+ message_delivered: {
107
+ id,
108
+ },
109
+ },
110
+ });
111
+ return response.delivered;
112
+ }
113
+ extractMessageIds(sourceTx) {
114
+ if (sourceTx.type !== ProviderType_1.ProviderType.CosmJsWasm) {
115
+ throw new Error(`Unsupported provider type for CosmosCoreAdapter ${sourceTx.type}`);
116
+ }
117
+ // TODO: parse mailbox logs and extract message ids
118
+ throw new Error('Method not implemented.');
119
+ }
120
+ async waitForMessageProcessed(_messageId, _destination, _delayMs, _maxAttempts) {
121
+ throw new Error('Method not implemented.');
122
+ }
123
+ }
124
+ exports.CosmWasmCoreAdapter = CosmWasmCoreAdapter;
125
+ //# sourceMappingURL=CosmWasmCoreAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CosmWasmCoreAdapter.js","sourceRoot":"","sources":["../../../src/core/adapters/CosmWasmCoreAdapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import { ExecuteInstruction } from '@cosmjs/cosmwasm-stargate';
2
+ import { Address } from '@hyperlane-xyz/utils';
3
+ import { BaseCosmWasmAdapter } from '../../app/MultiProtocolApp';
4
+ import { BeneficiaryResponse, DefaultGasResponse, DomainsResponse, GetExchangeRateAndGasPriceResponse, OwnerResponse, QueryMsg, QuoteGasPaymentResponse, RouteResponseForAddr, RoutesResponseForAddr } from '../../cw-types/Igp.types';
5
+ import { MultiProtocolProvider } from '../../providers/MultiProtocolProvider';
6
+ import { ChainMap, ChainName } from '../../types';
7
+ type IgpResponse = OwnerResponse | BeneficiaryResponse | DomainsResponse | GetExchangeRateAndGasPriceResponse | RoutesResponseForAddr | RouteResponseForAddr | DefaultGasResponse | QuoteGasPaymentResponse;
8
+ export declare class CosmWasmIgpAdapter extends BaseCosmWasmAdapter {
9
+ readonly chainName: ChainName;
10
+ readonly multiProvider: MultiProtocolProvider<any>;
11
+ readonly addresses: {
12
+ igp: Address;
13
+ };
14
+ constructor(chainName: ChainName, multiProvider: MultiProtocolProvider<any>, addresses: {
15
+ igp: Address;
16
+ });
17
+ queryIgp<R extends IgpResponse>(msg: QueryMsg): Promise<R>;
18
+ owner(): Promise<string>;
19
+ beneficiary(): Promise<string>;
20
+ getOracles(): Promise<ChainMap<Address>>;
21
+ defaultGas(): Promise<number>;
22
+ getOracleData(chain: ChainName): Promise<GetExchangeRateAndGasPriceResponse>;
23
+ quoteGasPayment(domain: number, destinationGasAmount: number): Promise<number>;
24
+ setOracleForDomain(domain: number, oracle: string, oracleData: GetExchangeRateAndGasPriceResponse): ExecuteInstruction;
25
+ }
26
+ export {};
27
+ //# sourceMappingURL=CosmWasmIgpAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CosmWasmIgpAdapter.d.ts","sourceRoot":"","sources":["../../../src/core/adapters/CosmWasmIgpAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAE/D,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,EACf,kCAAkC,EAClC,aAAa,EACb,QAAQ,EACR,uBAAuB,EACvB,oBAAoB,EACpB,qBAAqB,EACtB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGlD,KAAK,WAAW,GACZ,aAAa,GACb,mBAAmB,GACnB,eAAe,GACf,kCAAkC,GAClC,qBAAqB,GACrB,oBAAoB,GACpB,kBAAkB,GAClB,uBAAuB,CAAC;AAE5B,qBAAa,kBAAmB,SAAQ,mBAAmB;aAEvC,SAAS,EAAE,SAAS;aACpB,aAAa,EAAE,qBAAqB,CAAC,GAAG,CAAC;aACzC,SAAS,EAAE;QAAE,GAAG,EAAE,OAAO,CAAA;KAAE;gBAF3B,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,qBAAqB,CAAC,GAAG,CAAC,EACzC,SAAS,EAAE;QAAE,GAAG,EAAE,OAAO,CAAA;KAAE;IAKvC,QAAQ,CAAC,CAAC,SAAS,WAAW,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC;IAS1D,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IASxB,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAS9B,UAAU,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAexC,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAS7B,aAAa,CACjB,KAAK,EAAE,SAAS,GACf,OAAO,CAAC,kCAAkC,CAAC;IAgBxC,eAAe,CACnB,MAAM,EAAE,MAAM,EACd,oBAAoB,EAAE,MAAM,GAC3B,OAAO,CAAC,MAAM,CAAC;IAYlB,kBAAkB,CAChB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,kCAAkC,GAC7C,kBAAkB;CActB"}
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CosmWasmIgpAdapter = void 0;
4
+ const MultiProtocolApp_1 = require("../../app/MultiProtocolApp");
5
+ class CosmWasmIgpAdapter extends MultiProtocolApp_1.BaseCosmWasmAdapter {
6
+ constructor(chainName, multiProvider, addresses) {
7
+ super(chainName, multiProvider, addresses);
8
+ this.chainName = chainName;
9
+ this.multiProvider = multiProvider;
10
+ this.addresses = addresses;
11
+ }
12
+ async queryIgp(msg) {
13
+ const provider = await this.getProvider();
14
+ const response = await provider.queryContractSmart(this.addresses.igp, msg);
15
+ return response;
16
+ }
17
+ async owner() {
18
+ const response = await this.queryIgp({
19
+ ownable: {
20
+ get_owner: {},
21
+ },
22
+ });
23
+ return response.owner;
24
+ }
25
+ async beneficiary() {
26
+ const beneficiaryResponse = await this.queryIgp({
27
+ igp: {
28
+ beneficiary: {},
29
+ },
30
+ });
31
+ return beneficiaryResponse.beneficiary;
32
+ }
33
+ async getOracles() {
34
+ const domainResponse = await this.queryIgp({
35
+ router: {
36
+ list_routes: {},
37
+ },
38
+ });
39
+ return Object.fromEntries(domainResponse.routes.map((_) => [
40
+ this.multiProvider.getChainName(_.domain),
41
+ _.route ?? '',
42
+ ]));
43
+ }
44
+ async defaultGas() {
45
+ const defaultGas = await this.queryIgp({
46
+ igp: {
47
+ default_gas: {},
48
+ },
49
+ });
50
+ return defaultGas.gas;
51
+ }
52
+ async getOracleData(chain) {
53
+ const provider = await this.getProvider();
54
+ const domain = this.multiProvider.getDomainId(chain);
55
+ const oracles = await this.getOracles();
56
+ const oracle = oracles[chain];
57
+ const oracleResponse = await provider.queryContractSmart(oracle, {
58
+ oracle: {
59
+ get_exchange_rate_and_gas_price: {
60
+ dest_domain: domain,
61
+ },
62
+ },
63
+ });
64
+ return oracleResponse;
65
+ }
66
+ async quoteGasPayment(domain, destinationGasAmount) {
67
+ const quote = await this.queryIgp({
68
+ igp: {
69
+ quote_gas_payment: {
70
+ dest_domain: domain,
71
+ gas_amount: destinationGasAmount.toString(),
72
+ },
73
+ },
74
+ });
75
+ return Number(quote.gas_needed);
76
+ }
77
+ setOracleForDomain(domain, oracle, oracleData) {
78
+ return {
79
+ contractAddress: oracle,
80
+ msg: {
81
+ set_remote_gas_data: {
82
+ config: {
83
+ gas_price: oracleData.gas_price,
84
+ token_exchange_rate: oracleData.exchange_rate,
85
+ remote_domain: domain,
86
+ },
87
+ },
88
+ },
89
+ };
90
+ }
91
+ }
92
+ exports.CosmWasmIgpAdapter = CosmWasmIgpAdapter;
93
+ //# sourceMappingURL=CosmWasmIgpAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CosmWasmIgpAdapter.js","sourceRoot":"","sources":["../../../src/core/adapters/CosmWasmIgpAdapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { SigningCosmWasmClient } from '@cosmjs/cosmwasm-stargate';
2
+ import { SigningStargateClient } from '@cosmjs/stargate';
3
+ export declare function getSigningClient(): Promise<{
4
+ wasm: SigningCosmWasmClient;
5
+ stargate: SigningStargateClient;
6
+ signer: string;
7
+ signer_addr: string;
8
+ signer_pubkey: string;
9
+ }>;
10
+ //# sourceMappingURL=CosmWasmIgpAdapter.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CosmWasmIgpAdapter.test.d.ts","sourceRoot":"","sources":["../../../src/core/adapters/CosmWasmIgpAdapter.test.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,qBAAqB,EACtB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EAAY,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAoCnE,wBAAsB,gBAAgB;;;;;;GAqCrC"}
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ /* eslint-disable @typescript-eslint/explicit-module-boundary-types */
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.getSigningClient = void 0;
5
+ /* eslint-disable no-console */
6
+ const cosmwasm_stargate_1 = require("@cosmjs/cosmwasm-stargate");
7
+ const crypto_1 = require("@cosmjs/crypto");
8
+ const proto_signing_1 = require("@cosmjs/proto-signing");
9
+ const stargate_1 = require("@cosmjs/stargate");
10
+ const tendermint_rpc_1 = require("@cosmjs/tendermint-rpc");
11
+ const utils_1 = require("@hyperlane-xyz/utils");
12
+ const MultiProtocolProvider_1 = require("../../providers/MultiProtocolProvider");
13
+ const CosmWasmIgpAdapter_1 = require("./CosmWasmIgpAdapter");
14
+ const neutron = {
15
+ protocol: utils_1.ProtocolType.Cosmos,
16
+ name: 'neutron',
17
+ chainId: 'neutron-1',
18
+ displayName: 'Neutron',
19
+ domainId: 1853125230,
20
+ bech32Prefix: 'neutron',
21
+ slip44: 118,
22
+ rpcUrls: [
23
+ { http: 'https://rpc-kralum.neutron-1.neutron.org' },
24
+ { http: 'grpc-kralum.neutron-1.neutron.org:80' },
25
+ ],
26
+ nativeToken: {
27
+ name: 'Neutron',
28
+ symbol: 'NTRN',
29
+ decimals: 6,
30
+ },
31
+ };
32
+ const neutronAddresses = {
33
+ mailbox: 'neutron1sjzzd4gwkggy6hrrs8kxxatexzcuz3jecsxm3wqgregkulzj8r7qlnuef4',
34
+ igp: 'neutron12p8wntzra3vpfcqv05scdx5sa3ftaj6gjcmtm7ynkl0e6crtt4ns8cnrmx',
35
+ };
36
+ const signer = '<PRIVATE_KEY>';
37
+ async function getSigningClient() {
38
+ const wallet = await proto_signing_1.DirectSecp256k1Wallet.fromKey(Buffer.from(signer, 'hex'), neutron.bech32Prefix);
39
+ const [account] = await wallet.getAccounts();
40
+ const clientBase = await tendermint_rpc_1.Tendermint37Client.connect(neutron.rpcUrls[0].http);
41
+ const gasPrice = stargate_1.GasPrice.fromString('0.025token');
42
+ const wasm = await cosmwasm_stargate_1.SigningCosmWasmClient.createWithSigner(clientBase, wallet, {
43
+ gasPrice,
44
+ });
45
+ const stargate = await stargate_1.SigningStargateClient.createWithSigner(clientBase, wallet, {
46
+ gasPrice,
47
+ });
48
+ const pubkey = crypto_1.Secp256k1.uncompressPubkey(account.pubkey);
49
+ const ethaddr = (0, crypto_1.keccak256)(pubkey.slice(1)).slice(-20);
50
+ return {
51
+ wasm,
52
+ stargate,
53
+ signer: account.address,
54
+ signer_addr: Buffer.from(ethaddr).toString('hex'),
55
+ signer_pubkey: Buffer.from(account.pubkey).toString('hex'),
56
+ };
57
+ }
58
+ exports.getSigningClient = getSigningClient;
59
+ async function main() {
60
+ const multiProtocolProvider = new MultiProtocolProvider_1.MultiProtocolProvider({
61
+ neutron,
62
+ });
63
+ const adapter = new CosmWasmIgpAdapter_1.CosmWasmIgpAdapter(neutron.name, multiProtocolProvider, neutronAddresses);
64
+ // @ts-ignore
65
+ const msg = adapter.prepareSetOracleMsg();
66
+ const client = await getSigningClient();
67
+ const tx = await client.wasm.executeMultiple(client.signer, [msg], 'auto');
68
+ console.log({ tx });
69
+ }
70
+ main().catch(console.error);
71
+ //# sourceMappingURL=CosmWasmIgpAdapter.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CosmWasmIgpAdapter.test.js","sourceRoot":"","sources":["../../../src/core/adapters/CosmWasmIgpAdapter.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,198 @@
1
+ /**
2
+ * This file was automatically generated by @cosmwasm/ts-codegen@0.35.3.
3
+ * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
4
+ * and run the @cosmwasm/ts-codegen generate command to regenerate this file.
5
+ */
6
+ export type Uint128 = string;
7
+ export type Logo = {
8
+ url: string;
9
+ } | {
10
+ embedded: EmbeddedLogo;
11
+ };
12
+ export type EmbeddedLogo = {
13
+ svg: Binary;
14
+ } | {
15
+ png: Binary;
16
+ };
17
+ export type Binary = string;
18
+ export interface InstantiateMsg {
19
+ decimals: number;
20
+ initial_balances: Cw20Coin[];
21
+ marketing?: InstantiateMarketingInfo | null;
22
+ mint?: MinterResponse | null;
23
+ name: string;
24
+ symbol: string;
25
+ }
26
+ export interface Cw20Coin {
27
+ address: string;
28
+ amount: Uint128;
29
+ }
30
+ export interface InstantiateMarketingInfo {
31
+ description?: string | null;
32
+ logo?: Logo | null;
33
+ marketing?: string | null;
34
+ project?: string | null;
35
+ }
36
+ export interface MinterResponse {
37
+ cap?: Uint128 | null;
38
+ minter: string;
39
+ }
40
+ export type ExecuteMsg = {
41
+ transfer: {
42
+ amount: Uint128;
43
+ recipient: string;
44
+ };
45
+ } | {
46
+ burn: {
47
+ amount: Uint128;
48
+ };
49
+ } | {
50
+ send: {
51
+ amount: Uint128;
52
+ contract: string;
53
+ msg: Binary;
54
+ };
55
+ } | {
56
+ increase_allowance: {
57
+ amount: Uint128;
58
+ expires?: Expiration | null;
59
+ spender: string;
60
+ };
61
+ } | {
62
+ decrease_allowance: {
63
+ amount: Uint128;
64
+ expires?: Expiration | null;
65
+ spender: string;
66
+ };
67
+ } | {
68
+ transfer_from: {
69
+ amount: Uint128;
70
+ owner: string;
71
+ recipient: string;
72
+ };
73
+ } | {
74
+ send_from: {
75
+ amount: Uint128;
76
+ contract: string;
77
+ msg: Binary;
78
+ owner: string;
79
+ };
80
+ } | {
81
+ burn_from: {
82
+ amount: Uint128;
83
+ owner: string;
84
+ };
85
+ } | {
86
+ mint: {
87
+ amount: Uint128;
88
+ recipient: string;
89
+ };
90
+ } | {
91
+ update_minter: {
92
+ new_minter?: string | null;
93
+ };
94
+ } | {
95
+ update_marketing: {
96
+ description?: string | null;
97
+ marketing?: string | null;
98
+ project?: string | null;
99
+ };
100
+ } | {
101
+ upload_logo: Logo;
102
+ };
103
+ export type Expiration = {
104
+ at_height: number;
105
+ } | {
106
+ at_time: Timestamp;
107
+ } | {
108
+ never: {};
109
+ };
110
+ export type Timestamp = Uint64;
111
+ export type Uint64 = string;
112
+ export type QueryMsg = {
113
+ balance: {
114
+ address: string;
115
+ };
116
+ } | {
117
+ token_info: {};
118
+ } | {
119
+ minter: {};
120
+ } | {
121
+ allowance: {
122
+ owner: string;
123
+ spender: string;
124
+ };
125
+ } | {
126
+ all_allowances: {
127
+ limit?: number | null;
128
+ owner: string;
129
+ start_after?: string | null;
130
+ };
131
+ } | {
132
+ all_spender_allowances: {
133
+ limit?: number | null;
134
+ spender: string;
135
+ start_after?: string | null;
136
+ };
137
+ } | {
138
+ all_accounts: {
139
+ limit?: number | null;
140
+ start_after?: string | null;
141
+ };
142
+ } | {
143
+ marketing_info: {};
144
+ } | {
145
+ download_logo: {};
146
+ };
147
+ export interface AllAccountsResponse {
148
+ accounts: string[];
149
+ [k: string]: unknown;
150
+ }
151
+ export interface AllAllowancesResponse {
152
+ allowances: AllowanceInfo[];
153
+ [k: string]: unknown;
154
+ }
155
+ export interface AllowanceInfo {
156
+ allowance: Uint128;
157
+ expires: Expiration;
158
+ spender: string;
159
+ }
160
+ export interface AllSpenderAllowancesResponse {
161
+ allowances: SpenderAllowanceInfo[];
162
+ [k: string]: unknown;
163
+ }
164
+ export interface SpenderAllowanceInfo {
165
+ allowance: Uint128;
166
+ expires: Expiration;
167
+ owner: string;
168
+ }
169
+ export interface AllowanceResponse {
170
+ allowance: Uint128;
171
+ expires: Expiration;
172
+ [k: string]: unknown;
173
+ }
174
+ export interface BalanceResponse {
175
+ balance: Uint128;
176
+ }
177
+ export interface DownloadLogoResponse {
178
+ data: Binary;
179
+ mime_type: string;
180
+ }
181
+ export type LogoInfo = {
182
+ url: string;
183
+ } | 'embedded';
184
+ export type Addr = string;
185
+ export interface MarketingInfoResponse {
186
+ description?: string | null;
187
+ logo?: LogoInfo | null;
188
+ marketing?: Addr | null;
189
+ project?: string | null;
190
+ [k: string]: unknown;
191
+ }
192
+ export interface TokenInfoResponse {
193
+ decimals: number;
194
+ name: string;
195
+ symbol: string;
196
+ total_supply: Uint128;
197
+ }
198
+ //# sourceMappingURL=Cw20Base.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Cw20Base.types.d.ts","sourceRoot":"","sources":["../../src/cw-types/Cw20Base.types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ /**
3
+ * This file was automatically generated by @cosmwasm/ts-codegen@0.35.3.
4
+ * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
5
+ * and run the @cosmwasm/ts-codegen generate command to regenerate this file.
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ //# sourceMappingURL=Cw20Base.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Cw20Base.types.js","sourceRoot":"","sources":["../../src/cw-types/Cw20Base.types.ts"],"names":[],"mappings":";AAAA;;;;GAIG"}