@hyperlane-xyz/sdk 1.0.0-beta1 → 1.0.0-beta2

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 (54) hide show
  1. package/README.md +30 -3
  2. package/dist/consts/chainConnectionConfigs.d.ts +13 -22
  3. package/dist/consts/chainConnectionConfigs.d.ts.map +1 -1
  4. package/dist/consts/chainConnectionConfigs.js +26 -127
  5. package/dist/consts/chainConnectionConfigs.js.map +1 -1
  6. package/dist/consts/chainMetadata.d.ts +80 -25
  7. package/dist/consts/chainMetadata.d.ts.map +1 -1
  8. package/dist/consts/chainMetadata.js +479 -89
  9. package/dist/consts/chainMetadata.js.map +1 -1
  10. package/dist/consts/chains.d.ts +18 -14
  11. package/dist/consts/chains.d.ts.map +1 -1
  12. package/dist/consts/chains.js +29 -13
  13. package/dist/consts/chains.js.map +1 -1
  14. package/dist/deploy/middleware/deploy.js +1 -1
  15. package/dist/deploy/middleware/deploy.js.map +1 -1
  16. package/dist/domains.d.ts +1 -1
  17. package/dist/events.js +16 -16
  18. package/dist/events.js.map +1 -1
  19. package/dist/gas/calculator.js +1 -1
  20. package/dist/gas/calculator.js.map +1 -1
  21. package/dist/index.d.ts +3 -3
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +10 -3
  24. package/dist/index.js.map +1 -1
  25. package/dist/providers/ChainConnection.d.ts +1 -1
  26. package/dist/providers/ChainConnection.d.ts.map +1 -1
  27. package/dist/providers/ChainConnection.js +2 -3
  28. package/dist/providers/ChainConnection.js.map +1 -1
  29. package/dist/types.d.ts +3 -3
  30. package/dist/types.d.ts.map +1 -1
  31. package/logos/black/arbitrum.svg +1 -0
  32. package/logos/black/avalanche.svg +1 -0
  33. package/logos/black/bsc.svg +1 -0
  34. package/logos/black/celo.svg +1 -0
  35. package/logos/black/ethereum.svg +8 -0
  36. package/logos/black/hyperlane.svg +1 -0
  37. package/logos/black/moonbeam.svg +3 -0
  38. package/logos/black/near.svg +1 -0
  39. package/logos/black/optimism.svg +1 -0
  40. package/logos/black/polygon.svg +1 -0
  41. package/logos/color/arbitrum.svg +1 -0
  42. package/logos/color/avalanche.svg +1 -0
  43. package/logos/color/bsc.svg +1 -0
  44. package/logos/color/celo.svg +1 -0
  45. package/logos/color/ethereum.svg +1 -0
  46. package/logos/color/hyperlane.svg +1 -0
  47. package/logos/color/moonbeam.svg +1 -0
  48. package/logos/color/optimism.svg +1 -0
  49. package/logos/color/polygon.svg +1 -0
  50. package/package.json +6 -4
  51. package/dist/consts/metamask.d.ts +0 -17
  52. package/dist/consts/metamask.d.ts.map +0 -1
  53. package/dist/consts/metamask.js +0 -50
  54. package/dist/consts/metamask.js.map +0 -1
package/README.md CHANGED
@@ -1,5 +1,32 @@
1
- # Hyperlane Application SDK
1
+ # Hyperlane SDK
2
2
 
3
- The Hyperlane Application SDK help developers manage multichain Hyperlane applications. This requires a higher level API than dApp developers are familiar with which is namespaced by target chain.
3
+ The Hyperlane SDK helps developers create and manage interchain applications.
4
4
 
5
- You can find the docs at https://docs.hyperlane.xyz/hyperlane-docs/developers/application-sdk
5
+ For details on how to use the various abstractions and utilities, [see the documentation](https://docs.hyperlane.xyz/hyperlane-docs-1/developers/building-applications)
6
+
7
+ ## Install
8
+
9
+ `yarn install @hyperlane-xyz/sdk`
10
+
11
+ ## Contents
12
+
13
+ ### Constants
14
+
15
+ The names and relevant metadata for all Hyperlane-supported chains are included in this SDK, including public RPC and Explorer urls. It also includes the addresses for all Hyperlane core contracts and middleware.
16
+
17
+ ### Deployment, testing, and development classes
18
+
19
+ Classes for deploying, testing, and building applications using Hyperlane are included in the SDK. See [the docs](https://docs.hyperlane.xyz/hyperlane-docs-1/developers/building-applications/nodejs-sdk) for details.
20
+
21
+ ### Chain Logos
22
+
23
+ The SDK contains SVG files for all Hyperlane-supported chains. They can be imported from the `/logos` folder.
24
+
25
+ ```js
26
+ import ArbitrumBlack from '@hyperlane-xyz/sdk/logos/black/arbitrum.svg';
27
+ import ArbitrumColor from '@hyperlane-xyz/sdk/logos/color/arbitrum.svg';
28
+ ```
29
+
30
+ ## License
31
+
32
+ Apache 2.0
@@ -1,27 +1,18 @@
1
+ import { ethers } from 'ethers';
1
2
  import { ChainMap, ChainName, IChainConnection } from '../types';
2
- export declare const ethereum: IChainConnection;
3
- export declare const celo: IChainConnection;
4
- export declare const polygon: IChainConnection;
5
- export declare const avalanche: IChainConnection;
6
- export declare const arbitrum: IChainConnection;
7
- export declare const optimism: IChainConnection;
8
- export declare const bsc: IChainConnection;
9
- export declare const alfajores: IChainConnection;
10
- export declare const fuji: IChainConnection;
11
- export declare const goerli: IChainConnection;
12
- export declare const optimismgoerli: IChainConnection;
13
- export declare const arbitrumgoerli: IChainConnection;
14
- export declare const mumbai: IChainConnection;
15
- export declare const bsctestnet: IChainConnection;
16
- export declare const moonbasealpha: IChainConnection;
17
- export declare const moonbeam: IChainConnection;
18
- export declare const test1: IChainConnection;
19
- export declare const test2: IChainConnection;
20
- export declare const test3: IChainConnection;
21
3
  export declare const chainConnectionConfigs: ChainMap<ChainName, IChainConnection>;
22
4
  export declare const testChainConnectionConfigs: {
23
- test1: IChainConnection;
24
- test2: IChainConnection;
25
- test3: IChainConnection;
5
+ test1: {
6
+ provider: ethers.providers.JsonRpcProvider;
7
+ confirmations: number;
8
+ };
9
+ test2: {
10
+ provider: ethers.providers.JsonRpcProvider;
11
+ confirmations: number;
12
+ };
13
+ test3: {
14
+ provider: ethers.providers.JsonRpcProvider;
15
+ confirmations: number;
16
+ };
26
17
  };
27
18
  //# sourceMappingURL=chainConnectionConfigs.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"chainConnectionConfigs.d.ts","sourceRoot":"","sources":["../../src/consts/chainConnectionConfigs.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAEjE,eAAO,MAAM,QAAQ,EAAE,gBAOtB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,gBAIlB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,gBAOrB,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,gBAOvB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,gBAOtB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,gBAQtB,CAAC;AAEF,eAAO,MAAM,GAAG,EAAE,gBAOjB,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,gBAQvB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,gBAQlB,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,gBAQpB,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,gBAQ5B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,gBAQ5B,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,gBAQpB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,gBAQxB,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,gBAQ3B,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,gBAQtB,CAAC;AAEF,eAAO,MAAM,KAAK,EAAE,gBAMnB,CAAC;AAEF,eAAO,MAAM,KAAK,EAAE,gBAMnB,CAAC;AAEF,eAAO,MAAM,KAAK,EAAE,gBAMnB,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAoBxE,CAAC;AAEF,eAAO,MAAM,0BAA0B;;;;CAItC,CAAC"}
1
+ {"version":3,"file":"chainConnectionConfigs.d.ts","sourceRoot":"","sources":["../../src/consts/chainConnectionConfigs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAIhC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAgBjE,eAAO,MAAM,sBAAsB,EAAE,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAerE,CAAC;AAEL,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;CAItC,CAAC"}
@@ -1,134 +1,33 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.testChainConnectionConfigs = exports.chainConnectionConfigs = exports.test3 = exports.test2 = exports.test1 = exports.moonbeam = exports.moonbasealpha = exports.bsctestnet = exports.mumbai = exports.arbitrumgoerli = exports.optimismgoerli = exports.goerli = exports.fuji = exports.alfajores = exports.bsc = exports.optimism = exports.arbitrum = exports.avalanche = exports.polygon = exports.celo = exports.ethereum = void 0;
3
+ exports.testChainConnectionConfigs = exports.chainConnectionConfigs = void 0;
4
4
  const ethers_1 = require("ethers");
5
5
  const celo_ethers_provider_1 = require("@hyperlane-xyz/celo-ethers-provider");
6
- exports.ethereum = {
7
- provider: new ethers_1.ethers.providers.JsonRpcProvider('https://cloudflare-eth.com', 1),
8
- confirmations: 7,
9
- blockExplorerUrl: 'https://etherscan.io',
10
- };
11
- exports.celo = {
12
- provider: new celo_ethers_provider_1.StaticCeloJsonRpcProvider('https://forno.celo.org', 42220),
13
- confirmations: 1,
14
- blockExplorerUrl: 'https://celoscan.io',
15
- };
16
- exports.polygon = {
17
- provider: new ethers_1.ethers.providers.JsonRpcProvider('https://rpc-mainnet.matic.quiknode.pro', 137),
18
- confirmations: 200,
19
- blockExplorerUrl: 'https://polygonscan.com',
20
- };
21
- exports.avalanche = {
22
- provider: new ethers_1.ethers.providers.JsonRpcProvider('https://api.avax.network/ext/bc/C/rpc', 43114),
23
- confirmations: 3,
24
- blockExplorerUrl: 'https://snowtrace.io',
25
- };
26
- exports.arbitrum = {
27
- provider: new ethers_1.ethers.providers.JsonRpcProvider('https://arb1.arbitrum.io/rpc', 42161),
28
- confirmations: 1,
29
- blockExplorerUrl: 'https://arbiscan.io',
30
- };
31
- exports.optimism = {
32
- provider: new ethers_1.ethers.providers.JsonRpcProvider('https://mainnet.optimism.io', 10),
33
- confirmations: 1,
34
- blockExplorerUrl: 'https://optimistic.etherscan.io',
35
- apiPrefix: 'api-',
36
- };
37
- exports.bsc = {
38
- provider: new ethers_1.ethers.providers.JsonRpcProvider('https://rpc.ankr.com/bsc', 56),
39
- confirmations: 1,
40
- blockExplorerUrl: 'https://bscscan.com',
41
- };
42
- exports.alfajores = {
43
- provider: new celo_ethers_provider_1.StaticCeloJsonRpcProvider('https://alfajores-forno.celo-testnet.org', 44787),
44
- confirmations: 1,
45
- blockExplorerUrl: 'https://alfajores.celoscan.io',
46
- apiPrefix: 'api-',
47
- };
48
- exports.fuji = {
49
- provider: new ethers_1.ethers.providers.JsonRpcProvider('https://api.avax-test.network/ext/bc/C/rpc', 43113),
50
- confirmations: 3,
51
- blockExplorerUrl: 'https://testnet.snowtrace.io',
52
- apiPrefix: 'api-',
53
- };
54
- exports.goerli = {
55
- provider: new ethers_1.ethers.providers.JsonRpcProvider('https://rpc.ankr.com/eth_goerli', 5),
56
- confirmations: 1,
57
- blockExplorerUrl: 'https://goerli.etherscan.io/',
58
- apiPrefix: 'api-',
59
- };
60
- exports.optimismgoerli = {
61
- provider: new ethers_1.ethers.providers.JsonRpcProvider('https://goerli.optimism.io', 420),
62
- confirmations: 1,
63
- blockExplorerUrl: 'https://goerli-optimism.etherscan.io/',
64
- apiPrefix: 'api-',
65
- };
66
- exports.arbitrumgoerli = {
67
- provider: new ethers_1.ethers.providers.JsonRpcProvider('https://goerli-rollup.arbitrum.io/rpc ', 421613),
68
- confirmations: 1,
69
- blockExplorerUrl: 'https://goerli.arbiscan.io',
70
- apiPrefix: 'api-',
71
- };
72
- exports.mumbai = {
73
- provider: new ethers_1.ethers.providers.JsonRpcProvider('https://rpc-mumbai.maticvigil.com', 80001),
74
- confirmations: 30,
75
- blockExplorerUrl: 'https://mumbai.polygonscan.com',
76
- apiPrefix: 'api-',
77
- };
78
- exports.bsctestnet = {
79
- provider: new ethers_1.ethers.providers.JsonRpcProvider('https://data-seed-prebsc-1-s3.binance.org:8545', 97),
80
- confirmations: 1,
81
- blockExplorerUrl: 'https://testnet.bscscan.com',
82
- apiPrefix: 'api-',
83
- };
84
- exports.moonbasealpha = {
85
- provider: new ethers_1.ethers.providers.JsonRpcProvider('https://rpc.api.moonbase.moonbeam.network', 1287),
86
- confirmations: 1,
87
- blockExplorerUrl: 'https://moonbase.moonscan.io',
88
- apiPrefix: 'api-',
89
- };
90
- exports.moonbeam = {
91
- provider: new ethers_1.ethers.providers.JsonRpcProvider('https://rpc.api.moonbeam.network', 1284),
92
- confirmations: 1,
93
- blockExplorerUrl: 'https://moonscan.io',
94
- apiPrefix: 'api-moonbeam.',
95
- };
96
- exports.test1 = {
97
- provider: new ethers_1.ethers.providers.JsonRpcProvider('http://localhost:8545', 31337),
98
- confirmations: 1,
99
- };
100
- exports.test2 = {
101
- provider: new ethers_1.ethers.providers.JsonRpcProvider('http://localhost:8545', 31337),
102
- confirmations: 1,
103
- };
104
- exports.test3 = {
105
- provider: new ethers_1.ethers.providers.JsonRpcProvider('http://localhost:8545', 31337),
106
- confirmations: 1,
107
- };
108
- exports.chainConnectionConfigs = {
109
- arbitrum: exports.arbitrum,
110
- bsc: exports.bsc,
111
- ethereum: exports.ethereum,
112
- celo: exports.celo,
113
- polygon: exports.polygon,
114
- avalanche: exports.avalanche,
115
- alfajores: exports.alfajores,
116
- fuji: exports.fuji,
117
- goerli: exports.goerli,
118
- mumbai: exports.mumbai,
119
- bsctestnet: exports.bsctestnet,
120
- optimism: exports.optimism,
121
- moonbasealpha: exports.moonbasealpha,
122
- moonbeam: exports.moonbeam,
123
- optimismgoerli: exports.optimismgoerli,
124
- arbitrumgoerli: exports.arbitrumgoerli,
125
- test1: exports.test1,
126
- test2: exports.test2,
127
- test3: exports.test3,
128
- };
6
+ const objects_1 = require("../utils/objects");
7
+ const chainMetadata_1 = require("./chainMetadata");
8
+ const chains_1 = require("./chains");
9
+ function testChainConnection() {
10
+ return {
11
+ provider: new ethers_1.ethers.providers.JsonRpcProvider('http://localhost:8545', 31337),
12
+ confirmations: 1,
13
+ };
14
+ }
15
+ exports.chainConnectionConfigs = (0, objects_1.objMap)(chainMetadata_1.chainMetadata, (chainName, metadata) => {
16
+ if (chains_1.TestChains.includes(chainName))
17
+ return testChainConnection();
18
+ const providerClass = chainName === chains_1.Chains.alfajores || chainName === chains_1.Chains.celo
19
+ ? celo_ethers_provider_1.StaticCeloJsonRpcProvider
20
+ : ethers_1.ethers.providers.JsonRpcProvider;
21
+ return {
22
+ provider: new providerClass(metadata.publicRpcUrls[0].http, metadata.id),
23
+ confirmations: metadata.blocks.confirmations,
24
+ blockExplorerUrl: metadata.blockExplorers[0].url,
25
+ blockExplorerApiUrl: metadata.blockExplorers[0].apiUrl,
26
+ };
27
+ });
129
28
  exports.testChainConnectionConfigs = {
130
- test1: exports.test1,
131
- test2: exports.test2,
132
- test3: exports.test3,
29
+ test1: testChainConnection(),
30
+ test2: testChainConnection(),
31
+ test3: testChainConnection(),
133
32
  };
134
33
  //# sourceMappingURL=chainConnectionConfigs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chainConnectionConfigs.js","sourceRoot":"","sources":["../../src/consts/chainConnectionConfigs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chainConnectionConfigs.js","sourceRoot":"","sources":["../../src/consts/chainConnectionConfigs.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAEhC,8EAAgF;AAGhF,8CAA0C;AAE1C,mDAAgD;AAChD,qCAA8C;AAE9C,SAAS,mBAAmB;IAC1B,OAAO;QACL,QAAQ,EAAE,IAAI,eAAM,CAAC,SAAS,CAAC,eAAe,CAC5C,uBAAuB,EACvB,KAAK,CACN;QACD,aAAa,EAAE,CAAC;KACjB,CAAC;AACJ,CAAC;AAEY,QAAA,sBAAsB,GACjC,IAAA,gBAAM,EAAC,6BAAa,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,EAAE;IAC5C,IAAI,mBAAU,CAAC,QAAQ,CAAC,SAAS,CAAC;QAAE,OAAO,mBAAmB,EAAE,CAAC;IAEjE,MAAM,aAAa,GACjB,SAAS,KAAK,eAAM,CAAC,SAAS,IAAI,SAAS,KAAK,eAAM,CAAC,IAAI;QACzD,CAAC,CAAC,gDAAyB;QAC3B,CAAC,CAAC,eAAM,CAAC,SAAS,CAAC,eAAe,CAAC;IAEvC,OAAO;QACL,QAAQ,EAAE,IAAI,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC;QACxE,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,aAAa;QAC5C,gBAAgB,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,GAAG;QAChD,mBAAmB,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM;KACvD,CAAC;AACJ,CAAC,CAAC,CAAC;AAEQ,QAAA,0BAA0B,GAAG;IACxC,KAAK,EAAE,mBAAmB,EAAE;IAC5B,KAAK,EAAE,mBAAmB,EAAE;IAC5B,KAAK,EAAE,mBAAmB,EAAE;CAC7B,CAAC"}
@@ -1,43 +1,98 @@
1
+ import type { Chain as WagmiChain } from '@wagmi/chains';
2
+ import { ChainName } from './chains';
3
+ export declare enum ExplorerFamily {
4
+ Etherscan = "etherscan",
5
+ Blockscout = "blockscout",
6
+ Other = "other"
7
+ }
1
8
  /**
2
- * A Chain and its characteristics
9
+ * Collection of useful properties and settings
10
+ * for Hyperlane-supported chains
3
11
  */
4
- export declare type ChainMetadata = {
12
+ export interface ChainMetadata {
5
13
  id: number;
6
- finalityBlocks: number;
7
- nativeTokenDecimals?: number;
8
- paginate?: RpcPagination;
14
+ name: ChainName;
15
+ /** Human-readable name */
16
+ displayName: string;
17
+ /** Shorter human-readable name */
18
+ displayNameShort?: string;
19
+ /** Default currency/token used by chain */
20
+ nativeToken: {
21
+ name: string;
22
+ symbol: string;
23
+ decimals: number;
24
+ };
25
+ /** Collection of RPC endpoints */
26
+ publicRpcUrls: Array<{
27
+ http: string;
28
+ webSocket?: string;
29
+ pagination?: RpcPagination;
30
+ }>;
31
+ /** Collection of block explorers */
32
+ blockExplorers: Array<{
33
+ name: string;
34
+ url: string;
35
+ family: ExplorerFamily;
36
+ apiUrl?: string;
37
+ }>;
38
+ blocks: {
39
+ confirmations: number;
40
+ reorgPeriod: number;
41
+ estimateBlockTime: number;
42
+ };
9
43
  gasCurrencyCoinGeckoId?: string;
10
44
  gnosisSafeTransactionServiceUrl?: string;
11
- };
12
- /**
13
- * RPC Pagination information
14
- */
45
+ }
15
46
  export interface RpcPagination {
16
47
  blocks: number;
17
48
  from: number;
18
49
  }
19
50
  /**
20
- * Mainnets
51
+ * Chain metadata
21
52
  */
22
- export declare const celo: ChainMetadata;
23
- export declare const ethereum: ChainMetadata;
53
+ export declare const alfajores: ChainMetadata;
24
54
  export declare const arbitrum: ChainMetadata;
25
- export declare const optimism: ChainMetadata;
26
- export declare const bsc: ChainMetadata;
55
+ export declare const arbitrumgoerli: ChainMetadata;
27
56
  export declare const avalanche: ChainMetadata;
28
- export declare const polygon: ChainMetadata;
29
- /**
30
- * Testnets
31
- */
32
- export declare const alfajores: ChainMetadata;
57
+ export declare const bsc: ChainMetadata;
58
+ export declare const bsctestnet: ChainMetadata;
59
+ export declare const celo: ChainMetadata;
60
+ export declare const ethereum: ChainMetadata;
33
61
  export declare const fuji: ChainMetadata;
34
62
  export declare const goerli: ChainMetadata;
35
- export declare const optimismgoerli: ChainMetadata;
36
- export declare const arbitrumgoerli: ChainMetadata;
37
- export declare const zksync2testnet: ChainMetadata;
38
- export declare const mumbai: ChainMetadata;
39
- export declare const bsctestnet: ChainMetadata;
40
63
  export declare const moonbasealpha: ChainMetadata;
41
64
  export declare const moonbeam: ChainMetadata;
42
- export declare const chainMetadata: Record<"polygon" | "arbitrum" | "alfajores" | "bsc" | "mumbai" | "goerli" | "fuji" | "celo" | "ethereum" | "avalanche" | "optimism" | "bsctestnet" | "moonbasealpha" | "moonbeam" | "optimismgoerli" | "arbitrumgoerli" | "test1" | "test2" | "test3", ChainMetadata>;
65
+ export declare const mumbai: ChainMetadata;
66
+ export declare const optimism: ChainMetadata;
67
+ export declare const optimismgoerli: ChainMetadata;
68
+ export declare const polygon: ChainMetadata;
69
+ export declare const test1: ChainMetadata;
70
+ export declare const test2: ChainMetadata;
71
+ export declare const test3: ChainMetadata;
72
+ /**
73
+ * Collection maps
74
+ *
75
+ * NOTE: When adding chains here, consider also adding the
76
+ * corresponding chain logo images in the /sdk/logos/* folders
77
+ */
78
+ export declare const chainMetadata: Record<"polygon" | "alfajores" | "arbitrum" | "arbitrumgoerli" | "avalanche" | "bsc" | "bsctestnet" | "celo" | "ethereum" | "fuji" | "goerli" | "moonbasealpha" | "moonbeam" | "mumbai" | "optimism" | "optimismgoerli" | "test1" | "test2" | "test3", ChainMetadata>;
79
+ export declare const wagmiChainMetadata: Record<ChainName, WagmiChain>;
80
+ export declare const chainIdToMetadata: Record<number, ChainMetadata>;
81
+ export declare const mainnetChainsMetadata: Array<ChainMetadata>;
82
+ export declare const testnetChainsMetadata: Array<ChainMetadata>;
83
+ /**
84
+ * @deprecated use ChainMetadata
85
+ */
86
+ export declare type PartialChainMetadata = {
87
+ id: number;
88
+ finalityBlocks: number;
89
+ nativeTokenDecimals?: number;
90
+ paginate?: RpcPagination;
91
+ gasCurrencyCoinGeckoId?: string;
92
+ gnosisSafeTransactionServiceUrl?: string;
93
+ };
94
+ /**
95
+ * @deprecated use chainMetadata
96
+ */
97
+ export declare const partialChainMetadata: Record<ChainName, PartialChainMetadata>;
43
98
  //# sourceMappingURL=chainMetadata.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"chainMetadata.d.ts","sourceRoot":"","sources":["../../src/consts/chainMetadata.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,oBAAY,aAAa,GAAG;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,cAAc,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,EAAE,aAAa,CAAC;IAGzB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAEhC,+BAA+B,CAAC,EAAE,MAAM,CAAC;CAC1C,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAMD;;GAEG;AACH,eAAO,MAAM,IAAI,EAAE,aAKlB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,aAItB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,aAMtB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,aAMtB,CAAC;AAEF,eAAO,MAAM,GAAG,EAAE,aAKjB,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,aAWvB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,aAWrB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,SAAS,EAAE,aAGvB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,aAGlB,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,aAGpB,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,aAG5B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,aAG5B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,aAG5B,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,aAQpB,CAAC;AAiBF,eAAO,MAAM,UAAU,EAAE,aAGxB,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,aAG3B,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,aAGtB,CAAC;AAEF,eAAO,MAAM,aAAa,uQAmBW,CAAC"}
1
+ {"version":3,"file":"chainMetadata.d.ts","sourceRoot":"","sources":["../../src/consts/chainMetadata.ts"],"names":[],"mappings":"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"}