@wagmi/core 0.3.1 → 0.3.4

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 (41) hide show
  1. package/chains/dist/wagmi-core-chains.cjs.d.ts +1 -0
  2. package/chains/dist/wagmi-core-chains.cjs.dev.js +22 -0
  3. package/chains/dist/wagmi-core-chains.cjs.js +7 -0
  4. package/chains/dist/wagmi-core-chains.cjs.prod.js +22 -0
  5. package/chains/dist/wagmi-core-chains.esm.js +2 -0
  6. package/chains/package.json +4 -0
  7. package/connectors/coinbaseWallet/dist/wagmi-core-connectors-coinbaseWallet.cjs.dev.js +4 -3
  8. package/connectors/coinbaseWallet/dist/wagmi-core-connectors-coinbaseWallet.cjs.prod.js +4 -3
  9. package/connectors/coinbaseWallet/dist/wagmi-core-connectors-coinbaseWallet.esm.js +2 -1
  10. package/connectors/metaMask/dist/wagmi-core-connectors-metaMask.cjs.dev.js +3 -2
  11. package/connectors/metaMask/dist/wagmi-core-connectors-metaMask.cjs.prod.js +3 -2
  12. package/connectors/metaMask/dist/wagmi-core-connectors-metaMask.esm.js +3 -2
  13. package/connectors/mock/dist/wagmi-core-connectors-mock.cjs.dev.js +4 -3
  14. package/connectors/mock/dist/wagmi-core-connectors-mock.cjs.prod.js +4 -3
  15. package/connectors/mock/dist/wagmi-core-connectors-mock.esm.js +2 -1
  16. package/connectors/walletConnect/dist/wagmi-core-connectors-walletConnect.cjs.dev.js +9 -6
  17. package/connectors/walletConnect/dist/wagmi-core-connectors-walletConnect.cjs.prod.js +9 -6
  18. package/connectors/walletConnect/dist/wagmi-core-connectors-walletConnect.esm.js +7 -4
  19. package/dist/base-321ac87a.cjs.dev.js +288 -0
  20. package/dist/base-41fb6637.esm.js +265 -0
  21. package/dist/base-6841ebe0.cjs.prod.js +288 -0
  22. package/dist/chains-0dd661ab.cjs.prod.js +349 -0
  23. package/dist/chains-98e2e613.cjs.dev.js +349 -0
  24. package/dist/chains-a0a80d94.esm.js +329 -0
  25. package/dist/{client-edc73358.cjs.prod.js → client-4172f963.cjs.dev.js} +4 -3
  26. package/dist/{client-1ab99bf8.esm.js → client-87c1ff8b.esm.js} +2 -1
  27. package/dist/{client-db513093.cjs.dev.js → client-a06c45f3.cjs.prod.js} +4 -3
  28. package/dist/declarations/src/chains.d.ts +1 -0
  29. package/dist/declarations/src/constants/chains.d.ts +33 -2
  30. package/dist/declarations/src/index.d.ts +2 -3
  31. package/dist/declarations/src/types/index.d.ts +11 -4
  32. package/dist/declarations/src/{chains → utils}/configureChains.d.ts +2 -2
  33. package/dist/declarations/src/utils/index.d.ts +2 -0
  34. package/dist/wagmi-core.cjs.dev.js +118 -117
  35. package/dist/wagmi-core.cjs.prod.js +118 -117
  36. package/dist/wagmi-core.esm.js +108 -106
  37. package/package.json +12 -7
  38. package/dist/base-3a506159.cjs.dev.js +0 -602
  39. package/dist/base-997b4fec.esm.js +0 -573
  40. package/dist/base-cb4198f3.cjs.prod.js +0 -602
  41. package/dist/declarations/src/chains/index.d.ts +0 -2
@@ -0,0 +1,329 @@
1
+ import { a as alchemyRpcUrls, i as infuraRpcUrls, d as defaultAlchemyId } from './rpcs-7cfbd91c.esm.js';
2
+
3
+ const etherscanBlockExplorers = {
4
+ mainnet: {
5
+ name: 'Etherscan',
6
+ url: 'https://etherscan.io'
7
+ },
8
+ ropsten: {
9
+ name: 'Etherscan',
10
+ url: 'https://ropsten.etherscan.io'
11
+ },
12
+ rinkeby: {
13
+ name: 'Etherscan',
14
+ url: 'https://rinkeby.etherscan.io'
15
+ },
16
+ goerli: {
17
+ name: 'Etherscan',
18
+ url: 'https://goerli.etherscan.io'
19
+ },
20
+ kovan: {
21
+ name: 'Etherscan',
22
+ url: 'https://kovan.etherscan.io'
23
+ },
24
+ optimism: {
25
+ name: 'Etherscan',
26
+ url: 'https://optimistic.etherscan.io'
27
+ },
28
+ optimismKovan: {
29
+ name: 'Etherscan',
30
+ url: 'https://kovan-optimistic.etherscan.io'
31
+ },
32
+ polygon: {
33
+ name: 'PolygonScan',
34
+ url: 'https://polygonscan.com'
35
+ },
36
+ polygonMumbai: {
37
+ name: 'PolygonScan',
38
+ url: 'https://mumbai.polygonscan.com'
39
+ },
40
+ arbitrum: {
41
+ name: 'Arbiscan',
42
+ url: 'https://arbiscan.io'
43
+ },
44
+ arbitrumRinkeby: {
45
+ name: 'Arbiscan',
46
+ url: 'https://testnet.arbiscan.io'
47
+ }
48
+ };
49
+
50
+ const chainId = {
51
+ mainnet: 1,
52
+ ropsten: 3,
53
+ rinkeby: 4,
54
+ goerli: 5,
55
+ kovan: 42,
56
+ optimism: 10,
57
+ optimismKovan: 69,
58
+ polygon: 137,
59
+ polygonMumbai: 80001,
60
+ arbitrum: 42161,
61
+ arbitrumRinkeby: 421611,
62
+ localhost: 1337,
63
+ hardhat: 31337
64
+ };
65
+ const mainnet = {
66
+ id: chainId.mainnet,
67
+ name: 'Ethereum',
68
+ network: 'homestead',
69
+ nativeCurrency: {
70
+ name: 'Ether',
71
+ symbol: 'ETH',
72
+ decimals: 18
73
+ },
74
+ rpcUrls: {
75
+ alchemy: alchemyRpcUrls.mainnet,
76
+ infura: infuraRpcUrls.mainnet,
77
+ default: "".concat(alchemyRpcUrls.mainnet, "/").concat(defaultAlchemyId)
78
+ },
79
+ blockExplorers: {
80
+ etherscan: etherscanBlockExplorers.mainnet,
81
+ default: etherscanBlockExplorers.mainnet
82
+ }
83
+ };
84
+ const ropsten = {
85
+ id: chainId.ropsten,
86
+ name: 'Ropsten',
87
+ network: 'ropsten',
88
+ nativeCurrency: {
89
+ name: 'Ropsten Ether',
90
+ symbol: 'ropETH',
91
+ decimals: 18
92
+ },
93
+ rpcUrls: {
94
+ alchemy: alchemyRpcUrls.ropsten,
95
+ infura: infuraRpcUrls.ropsten,
96
+ default: "".concat(alchemyRpcUrls.ropsten, "/").concat(defaultAlchemyId)
97
+ },
98
+ blockExplorers: {
99
+ etherscan: etherscanBlockExplorers.ropsten,
100
+ default: etherscanBlockExplorers.ropsten
101
+ },
102
+ testnet: true
103
+ };
104
+ const rinkeby = {
105
+ id: chainId.rinkeby,
106
+ name: 'Rinkeby',
107
+ network: 'rinkeby',
108
+ nativeCurrency: {
109
+ name: 'Rinkeby Ether',
110
+ symbol: 'rETH',
111
+ decimals: 18
112
+ },
113
+ rpcUrls: {
114
+ alchemy: alchemyRpcUrls.rinkeby,
115
+ infura: infuraRpcUrls.rinkeby,
116
+ default: "".concat(alchemyRpcUrls.rinkeby, "/").concat(defaultAlchemyId)
117
+ },
118
+ blockExplorers: {
119
+ etherscan: etherscanBlockExplorers.rinkeby,
120
+ default: etherscanBlockExplorers.rinkeby
121
+ },
122
+ testnet: true
123
+ };
124
+ const goerli = {
125
+ id: chainId.goerli,
126
+ name: 'Goerli',
127
+ network: 'goerli',
128
+ nativeCurrency: {
129
+ name: 'Goerli Ether',
130
+ symbol: 'gETH',
131
+ decimals: 18
132
+ },
133
+ rpcUrls: {
134
+ alchemy: alchemyRpcUrls.goerli,
135
+ infura: infuraRpcUrls.goerli,
136
+ default: "".concat(alchemyRpcUrls.goerli, "/").concat(defaultAlchemyId)
137
+ },
138
+ blockExplorers: {
139
+ etherscan: etherscanBlockExplorers.goerli,
140
+ default: etherscanBlockExplorers.goerli
141
+ },
142
+ testnet: true
143
+ };
144
+ const kovan = {
145
+ id: chainId.kovan,
146
+ name: 'Kovan',
147
+ network: 'kovan',
148
+ nativeCurrency: {
149
+ name: 'Kovan Ether',
150
+ symbol: 'kETH',
151
+ decimals: 18
152
+ },
153
+ rpcUrls: {
154
+ alchemy: alchemyRpcUrls.kovan,
155
+ infura: infuraRpcUrls.kovan,
156
+ default: "".concat(alchemyRpcUrls.kovan, "/").concat(defaultAlchemyId)
157
+ },
158
+ blockExplorers: {
159
+ etherscan: etherscanBlockExplorers.kovan,
160
+ default: etherscanBlockExplorers.kovan
161
+ },
162
+ testnet: true
163
+ };
164
+ const optimism = {
165
+ id: chainId.optimism,
166
+ name: 'Optimism',
167
+ network: 'optimism',
168
+ nativeCurrency: {
169
+ name: 'Ether',
170
+ symbol: 'ETH',
171
+ decimals: 18
172
+ },
173
+ rpcUrls: {
174
+ alchemy: alchemyRpcUrls.optimism,
175
+ infura: infuraRpcUrls.optimism,
176
+ default: 'https://mainnet.optimism.io'
177
+ },
178
+ blockExplorers: {
179
+ etherscan: etherscanBlockExplorers.optimism,
180
+ default: etherscanBlockExplorers.optimism
181
+ }
182
+ };
183
+ const optimismKovan = {
184
+ id: chainId.optimismKovan,
185
+ name: 'Optimism Kovan',
186
+ network: 'optimism-kovan',
187
+ nativeCurrency: {
188
+ name: 'Kovan Ether',
189
+ symbol: 'KOR',
190
+ decimals: 18
191
+ },
192
+ rpcUrls: {
193
+ alchemy: alchemyRpcUrls.optimismKovan,
194
+ infura: infuraRpcUrls.optimismKovan,
195
+ default: 'https://kovan.optimism.io'
196
+ },
197
+ blockExplorers: {
198
+ etherscan: etherscanBlockExplorers.optimismKovan,
199
+ default: etherscanBlockExplorers.optimismKovan
200
+ },
201
+ testnet: true
202
+ };
203
+ const polygon = {
204
+ id: chainId.polygon,
205
+ name: 'Polygon',
206
+ network: 'matic',
207
+ nativeCurrency: {
208
+ name: 'MATIC',
209
+ symbol: 'MATIC',
210
+ decimals: 18
211
+ },
212
+ rpcUrls: {
213
+ alchemy: alchemyRpcUrls.polygon,
214
+ infura: infuraRpcUrls.polygon,
215
+ default: 'https://polygon-rpc.com'
216
+ },
217
+ blockExplorers: {
218
+ etherscan: etherscanBlockExplorers.polygon,
219
+ default: etherscanBlockExplorers.polygon
220
+ }
221
+ };
222
+ const polygonMumbai = {
223
+ id: chainId.polygonMumbai,
224
+ name: 'Polygon Mumbai',
225
+ network: 'maticmum',
226
+ nativeCurrency: {
227
+ name: 'MATIC',
228
+ symbol: 'MATIC',
229
+ decimals: 18
230
+ },
231
+ rpcUrls: {
232
+ alchemy: alchemyRpcUrls.polygonMumbai,
233
+ infura: infuraRpcUrls.polygonMumbai,
234
+ default: 'https://matic-mumbai.chainstacklabs.com'
235
+ },
236
+ blockExplorers: {
237
+ etherscan: etherscanBlockExplorers.polygonMumbai,
238
+ default: etherscanBlockExplorers.polygonMumbai
239
+ },
240
+ testnet: true
241
+ };
242
+ const arbitrum = {
243
+ id: chainId.arbitrum,
244
+ name: 'Arbitrum',
245
+ network: 'arbitrum',
246
+ nativeCurrency: {
247
+ name: 'Ether',
248
+ symbol: 'AETH',
249
+ decimals: 18
250
+ },
251
+ rpcUrls: {
252
+ alchemy: alchemyRpcUrls.arbitrum,
253
+ infura: infuraRpcUrls.arbitrum,
254
+ default: 'https://arb1.arbitrum.io/rpc'
255
+ },
256
+ blockExplorers: {
257
+ arbitrum: {
258
+ name: 'Arbitrum Explorer',
259
+ url: 'https://explorer.arbitrum.io'
260
+ },
261
+ etherscan: etherscanBlockExplorers.arbitrum,
262
+ default: etherscanBlockExplorers.arbitrum
263
+ }
264
+ };
265
+ const arbitrumRinkeby = {
266
+ id: chainId.arbitrumRinkeby,
267
+ name: 'Arbitrum Rinkeby',
268
+ network: 'arbitrum-rinkeby',
269
+ nativeCurrency: {
270
+ name: 'Arbitrum Rinkeby Ether',
271
+ symbol: 'ARETH',
272
+ decimals: 18
273
+ },
274
+ rpcUrls: {
275
+ alchemy: alchemyRpcUrls.arbitrumRinkeby,
276
+ infura: infuraRpcUrls.arbitrumRinkeby,
277
+ default: 'https://rinkeby.arbitrum.io/rpc'
278
+ },
279
+ blockExplorers: {
280
+ arbitrum: {
281
+ name: 'Arbitrum Explorer',
282
+ url: 'https://rinkeby-explorer.arbitrum.io'
283
+ },
284
+ etherscan: etherscanBlockExplorers.arbitrumRinkeby,
285
+ default: etherscanBlockExplorers.arbitrumRinkeby
286
+ },
287
+ testnet: true
288
+ };
289
+ const localhost = {
290
+ id: chainId.localhost,
291
+ name: 'Localhost',
292
+ network: 'localhost',
293
+ rpcUrls: {
294
+ default: 'http://127.0.0.1:8545'
295
+ }
296
+ };
297
+ const hardhat = {
298
+ id: chainId.hardhat,
299
+ name: 'Hardhat',
300
+ network: 'hardhat',
301
+ rpcUrls: {
302
+ default: 'http://127.0.0.1:8545'
303
+ }
304
+ };
305
+ /**
306
+ * Common chains for convenience
307
+ * Should not contain all possible chains
308
+ */
309
+
310
+ const chain = {
311
+ mainnet,
312
+ ropsten,
313
+ rinkeby,
314
+ goerli,
315
+ kovan,
316
+ optimism,
317
+ optimismKovan,
318
+ polygon,
319
+ polygonMumbai,
320
+ arbitrum,
321
+ arbitrumRinkeby,
322
+ localhost,
323
+ hardhat
324
+ };
325
+ const allChains = Object.values(chain);
326
+ const defaultChains = [chain.mainnet, chain.ropsten, chain.rinkeby, chain.goerli, chain.kovan];
327
+ const defaultL2Chains = [chain.arbitrum, chain.arbitrumRinkeby, chain.optimism, chain.optimismKovan];
328
+
329
+ export { allChains as a, chainId as b, chain as c, defaultChains as d, defaultL2Chains as e, etherscanBlockExplorers as f, arbitrum as g, arbitrumRinkeby as h, goerli as i, hardhat as j, kovan as k, localhost as l, mainnet as m, optimismKovan as n, optimism as o, polygon as p, polygonMumbai as q, rinkeby as r, ropsten as s };
@@ -1,10 +1,11 @@
1
1
  'use strict';
2
2
 
3
- var base = require('./base-cb4198f3.cjs.prod.js');
3
+ var base = require('./base-321ac87a.cjs.dev.js');
4
4
  var ethers = require('ethers');
5
5
  var create = require('zustand/vanilla');
6
6
  var middleware = require('zustand/middleware');
7
7
  var utils = require('ethers/lib/utils');
8
+ var chains = require('./chains-98e2e613.cjs.dev.js');
8
9
 
9
10
  function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
10
11
 
@@ -232,8 +233,8 @@ class InjectedConnector extends base.Connector {
232
233
  chainId: id
233
234
  }]
234
235
  });
235
- const chains = [...this.chains, ...base.allChains];
236
- return (_chains$find = chains.find(x => x.id === chainId)) !== null && _chains$find !== void 0 ? _chains$find : {
236
+ const chains$1 = [...this.chains, ...chains.allChains];
237
+ return (_chains$find = chains$1.find(x => x.id === chainId)) !== null && _chains$find !== void 0 ? _chains$find : {
237
238
  id: chainId,
238
239
  name: "Chain ".concat(id),
239
240
  network: "".concat(id),
@@ -1,8 +1,9 @@
1
- import { c as Connector, _ as _classPrivateMethodInitSpec, l as _defineProperty, m as _classPrivateFieldInitSpec, n as normalizeChainId, b as ConnectorNotFoundError, o as _classPrivateMethodGet, U as UserRejectedRequestError, R as ResourceUnavailableError, p as _classPrivateFieldSet, q as _classPrivateFieldGet, a as allChains, i as ChainNotConfiguredError, A as AddChainError, k as SwitchChainError } from './base-997b4fec.esm.js';
1
+ import { b as Connector, _ as _classPrivateMethodInitSpec, f as _defineProperty, g as _classPrivateFieldInitSpec, n as normalizeChainId, a as ConnectorNotFoundError, h as _classPrivateMethodGet, U as UserRejectedRequestError, R as ResourceUnavailableError, i as _classPrivateFieldSet, j as _classPrivateFieldGet, c as ChainNotConfiguredError, A as AddChainError, e as SwitchChainError } from './base-41fb6637.esm.js';
2
2
  import { providers, getDefaultProvider } from 'ethers';
3
3
  import create from 'zustand/vanilla';
4
4
  import { subscribeWithSelector, persist } from 'zustand/middleware';
5
5
  import { getAddress, hexValue } from 'ethers/lib/utils';
6
+ import { a as allChains } from './chains-a0a80d94.esm.js';
6
7
 
7
8
  function getInjectedName(ethereum) {
8
9
  var _ethereum$providers, _getName;
@@ -1,10 +1,11 @@
1
1
  'use strict';
2
2
 
3
- var base = require('./base-3a506159.cjs.dev.js');
3
+ var base = require('./base-6841ebe0.cjs.prod.js');
4
4
  var ethers = require('ethers');
5
5
  var create = require('zustand/vanilla');
6
6
  var middleware = require('zustand/middleware');
7
7
  var utils = require('ethers/lib/utils');
8
+ var chains = require('./chains-0dd661ab.cjs.prod.js');
8
9
 
9
10
  function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
10
11
 
@@ -232,8 +233,8 @@ class InjectedConnector extends base.Connector {
232
233
  chainId: id
233
234
  }]
234
235
  });
235
- const chains = [...this.chains, ...base.allChains];
236
- return (_chains$find = chains.find(x => x.id === chainId)) !== null && _chains$find !== void 0 ? _chains$find : {
236
+ const chains$1 = [...this.chains, ...chains.allChains];
237
+ return (_chains$find = chains$1.find(x => x.id === chainId)) !== null && _chains$find !== void 0 ? _chains$find : {
237
238
  id: chainId,
238
239
  name: "Chain ".concat(id),
239
240
  network: "".concat(id),
@@ -0,0 +1 @@
1
+ export { arbitrum, arbitrumRinkeby, goerli, hardhat, kovan, localhost, mainnet, optimism, optimismKovan, polygon, polygonMumbai, rinkeby, ropsten, } from './constants/chains';
@@ -1,5 +1,4 @@
1
1
  import { Chain } from '../types';
2
- export declare type ChainName = 'arbitrum' | 'arbitrumRinkeby' | 'goerli' | 'hardhat' | 'kovan' | 'localhost' | 'mainnet' | 'optimism' | 'optimismKovan' | 'polygon' | 'polygonMumbai' | 'rinkeby' | 'ropsten';
3
2
  export declare const chainId: {
4
3
  readonly mainnet: 1;
5
4
  readonly ropsten: 3;
@@ -15,7 +14,39 @@ export declare const chainId: {
15
14
  readonly localhost: 1337;
16
15
  readonly hardhat: 31337;
17
16
  };
18
- export declare const chain: Record<ChainName, Chain>;
17
+ export declare type ChainName = keyof typeof chainId;
18
+ export declare const mainnet: Chain;
19
+ export declare const ropsten: Chain;
20
+ export declare const rinkeby: Chain;
21
+ export declare const goerli: Chain;
22
+ export declare const kovan: Chain;
23
+ export declare const optimism: Chain;
24
+ export declare const optimismKovan: Chain;
25
+ export declare const polygon: Chain;
26
+ export declare const polygonMumbai: Chain;
27
+ export declare const arbitrum: Chain;
28
+ export declare const arbitrumRinkeby: Chain;
29
+ export declare const localhost: Chain;
30
+ export declare const hardhat: Chain;
31
+ /**
32
+ * Common chains for convenience
33
+ * Should not contain all possible chains
34
+ */
35
+ export declare const chain: {
36
+ readonly mainnet: Chain;
37
+ readonly ropsten: Chain;
38
+ readonly rinkeby: Chain;
39
+ readonly goerli: Chain;
40
+ readonly kovan: Chain;
41
+ readonly optimism: Chain;
42
+ readonly optimismKovan: Chain;
43
+ readonly polygon: Chain;
44
+ readonly polygonMumbai: Chain;
45
+ readonly arbitrum: Chain;
46
+ readonly arbitrumRinkeby: Chain;
47
+ readonly localhost: Chain;
48
+ readonly hardhat: Chain;
49
+ };
19
50
  export declare const allChains: Chain[];
20
51
  export declare const defaultChains: Chain[];
21
52
  export declare const defaultL2Chains: Chain[];
@@ -1,7 +1,5 @@
1
1
  export { connect, disconnect, fetchBalance, fetchBlockNumber, fetchEnsAddress, fetchEnsAvatar, fetchEnsName, fetchEnsResolver, fetchFeeData, fetchSigner, fetchToken, getAccount, getContract, getNetwork, getProvider, getWebSocketProvider, readContract, sendTransaction, signMessage, signTypedData, switchNetwork, waitForTransaction, watchAccount, watchBlockNumber, watchContractEvent, watchNetwork, watchProvider, watchReadContract, watchSigner, watchWebSocketProvider, writeContract, } from './actions';
2
2
  export type { ConnectArgs, ConnectResult, FetchBalanceArgs, FetchBalanceResult, FetchBlockNumberArgs, FetchBlockNumberResult, FetchEnsAddressArgs, FetchEnsAddressResult, FetchEnsAvatarArgs, FetchEnsAvatarResult, FetchEnsNameArgs, FetchEnsNameResult, FetchEnsResolverArgs, FetchEnsResolverResult, FetchFeeDataArgs, FetchFeeDataResult, FetchSignerResult, FetchTokenArgs, FetchTokenResult, GetAccountResult, GetContractArgs, GetNetworkResult, GetProviderArgs, GetProviderResult, GetWebSocketProviderArgs, GetWebSocketProviderResult, ReadContractArgs, ReadContractConfig, ReadContractResult, SendTransactionArgs, SendTransactionResult, SignMessageArgs, SignMessageResult, SignTypedDataArgs, SignTypedDataResult, SwitchNetworkArgs, SwitchNetworkResult, WaitForTransactionArgs, WaitForTransactionResult, WatchAccountCallback, WatchBlockNumberArgs, WatchBlockNumberCallback, WatchNetworkCallback, WatchReadContractArgs, WatchReadContractConfig, WatchReadContractResult, WatchSignerCallback, WriteContractArgs, WriteContractConfig, WriteContractResult, } from './actions';
3
- export { configureChains } from './chains';
4
- export type { ConfigureChainsConfig } from './chains';
5
3
  export { createClient, Client } from './client';
6
4
  export type { ClientConfig } from './client';
7
5
  export { Connector, InjectedConnector } from './connectors';
@@ -11,4 +9,5 @@ export { AddChainError, ChainNotConfiguredError, ConnectorAlreadyConnectedError,
11
9
  export { createStorage, noopStorage } from './storage';
12
10
  export type { ClientStorage as Storage } from './storage';
13
11
  export type { Chain, ChainProvider, FallbackProviderConfig, ProviderWithFallbackConfig, Provider, Unit, WebSocketProvider, } from './types';
14
- export { normalizeChainId } from './utils';
12
+ export { configureChains, normalizeChainId } from './utils';
13
+ export type { ConfigureChainsConfig } from './utils';
@@ -1,26 +1,33 @@
1
1
  import { providers } from 'ethers';
2
2
  import { BlockExplorer, BlockExplorerName, RpcProviderName, units } from '../constants';
3
3
  export declare type Chain = {
4
+ /** ID in number form */
4
5
  id: number;
5
- name: AddEthereumChainParameter['chainName'];
6
+ /** Human-readable name */
7
+ name: string;
8
+ /** Internal network name */
6
9
  network: string;
10
+ /** Currency used by chain */
7
11
  nativeCurrency?: AddEthereumChainParameter['nativeCurrency'];
12
+ /** Collection of RPC endpoints */
8
13
  rpcUrls: {
9
14
  [key in RpcProviderName]?: string;
10
15
  } & {
11
16
  [key: string]: string;
12
17
  default: string;
13
18
  };
19
+ /** Collection of block explorers */
14
20
  blockExplorers?: {
15
- [key in BlockExplorerName]: BlockExplorer;
21
+ [key in BlockExplorerName]?: BlockExplorer;
16
22
  } & {
17
23
  [key: string]: BlockExplorer;
18
24
  default: BlockExplorer;
19
25
  };
26
+ /** Flag for test networks */
20
27
  testnet?: boolean;
21
28
  };
22
- export declare type ChainProvider<TProvider extends Provider = Provider, TWebSocketProvider extends WebSocketProvider = WebSocketProvider> = (chain: Chain) => {
23
- chain: Chain;
29
+ export declare type ChainProvider<TProvider extends Provider = Provider, TWebSocketProvider extends WebSocketProvider = WebSocketProvider, TChain extends Chain = Chain> = (chain: TChain) => {
30
+ chain: TChain;
24
31
  provider: () => ProviderWithFallbackConfig<TProvider>;
25
32
  webSocketProvider?: () => TWebSocketProvider;
26
33
  } | null;
@@ -9,8 +9,8 @@ export declare type ConfigureChainsConfig = {
9
9
  targetQuorum: number;
10
10
  minQuorum?: number;
11
11
  });
12
- export declare function configureChains<TProvider extends Provider = Provider, TWebSocketProvider extends WebSocketProvider = WebSocketProvider>(defaultChains: Chain[], providers: ChainProvider<TProvider, TWebSocketProvider>[], { minQuorum, targetQuorum, stallTimeout }?: ConfigureChainsConfig): {
13
- readonly chains: Chain[];
12
+ export declare function configureChains<TProvider extends Provider = Provider, TWebSocketProvider extends WebSocketProvider = WebSocketProvider, TChain extends Chain = Chain>(defaultChains: TChain[], providers: ChainProvider<TProvider, TWebSocketProvider, TChain>[], { minQuorum, targetQuorum, stallTimeout }?: ConfigureChainsConfig): {
13
+ readonly chains: TChain[];
14
14
  readonly provider: ({ chainId }: {
15
15
  chainId?: number | undefined;
16
16
  }) => TProvider | providers.FallbackProvider;
@@ -1,3 +1,5 @@
1
+ export { configureChains } from './configureChains';
2
+ export type { ConfigureChainsConfig } from './configureChains';
1
3
  export { getInjectedName } from './getInjectedName';
2
4
  export { normalizeChainId } from './normalizeChainId';
3
5
  export { warn } from './warn';