@chainflip/utils 0.11.3 → 2.1.0-beta.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 (71) hide show
  1. package/dist/_virtual/rolldown_runtime.cjs +29 -0
  2. package/dist/addresses.cjs +15 -40
  3. package/dist/addresses.d.ts +4 -3
  4. package/dist/addresses.js +14 -15
  5. package/dist/assertion.cjs +23 -82
  6. package/dist/assertion.d.ts +3 -2
  7. package/dist/assertion.js +32 -22
  8. package/dist/async.cjs +96 -115
  9. package/dist/async.d.ts +24 -21
  10. package/dist/async.js +92 -87
  11. package/dist/base58.cjs +9 -93
  12. package/dist/base58.d.ts +4 -4
  13. package/dist/base58.js +9 -13
  14. package/dist/bytes.cjs +49 -97
  15. package/dist/bytes.d.ts +4 -4
  16. package/dist/bytes.js +51 -15
  17. package/dist/chainflip.cjs +428 -327
  18. package/dist/chainflip.d.ts +188 -185
  19. package/dist/chainflip.js +425 -41
  20. package/dist/consts.cjs +306 -277
  21. package/dist/consts.d.ts +18 -17
  22. package/dist/consts.js +296 -243
  23. package/dist/date.cjs +74 -131
  24. package/dist/date.d.ts +9 -8
  25. package/dist/date.js +60 -95
  26. package/dist/guard.cjs +28 -63
  27. package/dist/guard.d.ts +10 -9
  28. package/dist/guard.js +17 -28
  29. package/dist/math.cjs +7 -32
  30. package/dist/math.d.ts +3 -2
  31. package/dist/math.js +6 -7
  32. package/dist/number.cjs +5 -29
  33. package/dist/number.d.ts +4 -4
  34. package/dist/number.js +5 -5
  35. package/dist/ss58.cjs +62 -794
  36. package/dist/ss58.d.ts +12 -9
  37. package/dist/ss58.js +59 -712
  38. package/dist/string.cjs +29 -66
  39. package/dist/string.d.ts +4 -4
  40. package/dist/string.js +20 -33
  41. package/dist/tickMath.cjs +32 -232
  42. package/dist/tickMath.d.ts +7 -6
  43. package/dist/tickMath.js +24 -29
  44. package/dist/types.cjs +0 -18
  45. package/dist/types.d.ts +35 -34
  46. package/dist/types.js +1 -0
  47. package/dist/url.cjs +16 -37
  48. package/dist/url.d.ts +5 -4
  49. package/dist/url.js +16 -13
  50. package/package.json +5 -5
  51. package/dist/addresses.d.cts +0 -6
  52. package/dist/assertion.d.cts +0 -11
  53. package/dist/async.d.cts +0 -33
  54. package/dist/base58.d.cts +0 -8
  55. package/dist/bytes.d.cts +0 -11
  56. package/dist/chainflip.d.cts +0 -236
  57. package/dist/chunk-3P6TXYEI.js +0 -15
  58. package/dist/chunk-HBIFE4XN.js +0 -29
  59. package/dist/chunk-LJJH7U4M.js +0 -302
  60. package/dist/chunk-XGNPN5CY.js +0 -61
  61. package/dist/chunk-ZHIKNZLU.js +0 -66
  62. package/dist/consts.d.cts +0 -33
  63. package/dist/date.d.cts +0 -26
  64. package/dist/guard.d.cts +0 -23
  65. package/dist/math.d.cts +0 -4
  66. package/dist/number.d.cts +0 -6
  67. package/dist/ss58.d.cts +0 -14
  68. package/dist/string.d.cts +0 -16
  69. package/dist/tickMath.d.cts +0 -15
  70. package/dist/types.d.cts +0 -41
  71. package/dist/url.d.cts +0 -6
@@ -1,10 +1,11 @@
1
- declare const chainflipAssets: readonly ["Usdc", "Usdt", "Flip", "Eth", "Dot", "Btc", "ArbUsdc", "ArbEth", "Sol", "SolUsdc", "HubDot", "HubUsdt", "HubUsdc"];
1
+ //#region src/chainflip.d.ts
2
+ declare const chainflipAssets: readonly ["Usdc", "Usdt", "Wbtc", "Flip", "Eth", "Dot", "Btc", "ArbUsdc", "ArbUsdt", "ArbEth", "Sol", "SolUsdc", "SolUsdt", "HubDot", "HubUsdt", "HubUsdc"];
2
3
  type ChainflipAsset = (typeof chainflipAssets)[number];
3
- declare const assetSymbols: readonly ["USDC", "USDT", "FLIP", "DOT", "ETH", "BTC", "SOL"];
4
+ declare const assetSymbols: readonly ["USDC", "USDT", "WBTC", "FLIP", "DOT", "ETH", "BTC", "SOL"];
4
5
  declare const priceAssets: readonly ["Btc", "Eth", "Sol", "Usdc", "Usdt", "Usd", "Fine"];
5
6
  type PriceAsset = (typeof priceAssets)[number];
6
7
  /** @deprecated use `assetSymbols` instead */
7
- declare const rpcAssets: readonly ["USDC", "USDT", "FLIP", "DOT", "ETH", "BTC", "SOL"];
8
+ declare const rpcAssets: readonly ["USDC", "USDT", "WBTC", "FLIP", "DOT", "ETH", "BTC", "SOL"];
8
9
  type AssetSymbol = (typeof assetSymbols)[number];
9
10
  /** @deprecated use `AssetSymbol` instead */
10
11
  type RpcAsset = AssetSymbol;
@@ -19,184 +20,186 @@ type ChainflipNetwork = (typeof chainflipNetworks)[number];
19
20
  declare const addressTypes: readonly ["Eth", "Btc", "Dot", "Arb", "Sol", "Hub"];
20
21
  type AddressType = (typeof addressTypes)[number];
21
22
  type AssetOfChain<C extends Exclude<ChainflipChain, 'Polkadot'>> = (typeof chainConstants)[C]['assets'][number];
22
- type ChainAssetMap<T> = {
23
- [C in Exclude<ChainflipChain, 'Polkadot'>]: {
24
- [A in AssetOfChain<C>]: T;
25
- };
26
- };
27
- type BaseChainAssetMap<T> = {
28
- [C in Exclude<ChainflipChain, 'Polkadot'>]: {
29
- [A in Exclude<BaseChainflipAsset, 'Dot'> as Extract<(typeof assetConstants)[A], {
30
- chain: C;
31
- }>['symbol']]: T;
32
- };
33
- };
34
- type AssetAndChain = {
35
- [C in Exclude<ChainflipChain, 'Polkadot'>]: {
36
- [A in keyof ChainAssetMap<unknown>[C]]: {
37
- chain: C;
38
- asset: A;
39
- };
40
- }[keyof ChainAssetMap<unknown>[C]];
41
- }[Exclude<ChainflipChain, 'Polkadot'>];
23
+ type ChainAssetMap<T> = { [C in Exclude<ChainflipChain, 'Polkadot'>]: { [A in AssetOfChain<C>]: T } };
24
+ type BaseChainAssetMap<T> = { [C in Exclude<ChainflipChain, 'Polkadot'>]: { [A in Exclude<BaseChainflipAsset, 'Dot'> as Extract<(typeof assetConstants)[A], {
25
+ chain: C;
26
+ }>['symbol']]: T } };
27
+ type AssetAndChain = { [C in Exclude<ChainflipChain, 'Polkadot'>]: { [A in keyof ChainAssetMap<unknown>[C]]: {
28
+ chain: C;
29
+ asset: A;
30
+ } }[keyof ChainAssetMap<unknown>[C]] }[Exclude<ChainflipChain, 'Polkadot'>];
42
31
  type BaseAssetAndChain = Exclude<AssetAndChain, {
43
- chain: 'Ethereum';
44
- asset: 'USDC';
32
+ chain: 'Ethereum';
33
+ asset: 'USDC';
45
34
  }>;
46
- type ChainMap<T> = {
47
- [C in Exclude<ChainflipChain, 'Polkadot'>]: T;
48
- };
49
- type InternalAssetMap<T> = {
50
- [A in Exclude<ChainflipAsset, 'Dot'>]: T;
51
- };
35
+ type ChainMap<T> = { [C in Exclude<ChainflipChain, 'Polkadot'>]: T };
36
+ type InternalAssetMap<T> = { [A in Exclude<ChainflipAsset, 'Dot'>]: T };
52
37
  type UncheckedAssetAndChain = {
53
- chain: ChainflipChain;
54
- asset: AssetSymbol;
38
+ chain: ChainflipChain;
39
+ asset: AssetSymbol;
55
40
  };
56
41
  declare function readAssetValue<T>(map: ChainAssetMap<T>, asset: ChainflipAsset | BaseChainflipAsset): T;
57
42
  declare function readAssetValue<T>(map: BaseChainAssetMap<T>, asset: BaseChainflipAsset): T;
58
43
  declare function readAssetValue<T>(map: ChainAssetMap<T> | BaseChainAssetMap<T>, asset: BaseChainflipAsset): T;
59
44
  declare const assetConstants: {
60
- readonly Eth: {
61
- readonly chain: "Ethereum";
62
- readonly symbol: "ETH";
63
- readonly rpcAsset: "ETH";
64
- readonly decimals: 18;
65
- };
66
- readonly Flip: {
67
- readonly chain: "Ethereum";
68
- readonly symbol: "FLIP";
69
- readonly rpcAsset: "FLIP";
70
- readonly decimals: 18;
71
- };
72
- readonly Usdc: {
73
- readonly chain: "Ethereum";
74
- readonly symbol: "USDC";
75
- readonly rpcAsset: "USDC";
76
- readonly decimals: 6;
77
- };
78
- readonly Usdt: {
79
- readonly chain: "Ethereum";
80
- readonly symbol: "USDT";
81
- readonly rpcAsset: "USDT";
82
- readonly decimals: 6;
83
- };
84
- readonly Dot: {
85
- readonly chain: "Polkadot";
86
- readonly symbol: "DOT";
87
- readonly rpcAsset: "DOT";
88
- readonly decimals: 10;
89
- };
90
- readonly Btc: {
91
- readonly chain: "Bitcoin";
92
- readonly symbol: "BTC";
93
- readonly rpcAsset: "BTC";
94
- readonly decimals: 8;
95
- };
96
- readonly ArbUsdc: {
97
- readonly chain: "Arbitrum";
98
- readonly symbol: "USDC";
99
- readonly rpcAsset: "USDC";
100
- readonly decimals: 6;
101
- };
102
- readonly ArbEth: {
103
- readonly chain: "Arbitrum";
104
- readonly symbol: "ETH";
105
- readonly rpcAsset: "ETH";
106
- readonly decimals: 18;
107
- };
108
- readonly Sol: {
109
- readonly chain: "Solana";
110
- readonly symbol: "SOL";
111
- readonly rpcAsset: "SOL";
112
- readonly decimals: 9;
113
- };
114
- readonly SolUsdc: {
115
- readonly chain: "Solana";
116
- readonly symbol: "USDC";
117
- readonly rpcAsset: "USDC";
118
- readonly decimals: 6;
119
- };
120
- readonly HubDot: {
121
- readonly chain: "Assethub";
122
- readonly symbol: "DOT";
123
- readonly rpcAsset: "DOT";
124
- readonly decimals: 10;
125
- };
126
- readonly HubUsdc: {
127
- readonly chain: "Assethub";
128
- readonly symbol: "USDC";
129
- readonly rpcAsset: "USDC";
130
- readonly decimals: 6;
131
- };
132
- readonly HubUsdt: {
133
- readonly chain: "Assethub";
134
- readonly symbol: "USDT";
135
- readonly rpcAsset: "USDT";
136
- readonly decimals: 6;
137
- };
45
+ readonly Eth: {
46
+ readonly chain: "Ethereum";
47
+ readonly symbol: "ETH";
48
+ readonly rpcAsset: "ETH";
49
+ readonly decimals: 18;
50
+ };
51
+ readonly Flip: {
52
+ readonly chain: "Ethereum";
53
+ readonly symbol: "FLIP";
54
+ readonly rpcAsset: "FLIP";
55
+ readonly decimals: 18;
56
+ };
57
+ readonly Usdc: {
58
+ readonly chain: "Ethereum";
59
+ readonly symbol: "USDC";
60
+ readonly rpcAsset: "USDC";
61
+ readonly decimals: 6;
62
+ };
63
+ readonly Usdt: {
64
+ readonly chain: "Ethereum";
65
+ readonly symbol: "USDT";
66
+ readonly rpcAsset: "USDT";
67
+ readonly decimals: 6;
68
+ };
69
+ readonly Wbtc: {
70
+ readonly chain: "Ethereum";
71
+ readonly symbol: "WBTC";
72
+ readonly rpcAsset: "WBTC";
73
+ readonly decimals: 8;
74
+ };
75
+ readonly Dot: {
76
+ readonly chain: "Polkadot";
77
+ readonly symbol: "DOT";
78
+ readonly rpcAsset: "DOT";
79
+ readonly decimals: 10;
80
+ };
81
+ readonly Btc: {
82
+ readonly chain: "Bitcoin";
83
+ readonly symbol: "BTC";
84
+ readonly rpcAsset: "BTC";
85
+ readonly decimals: 8;
86
+ };
87
+ readonly ArbUsdc: {
88
+ readonly chain: "Arbitrum";
89
+ readonly symbol: "USDC";
90
+ readonly rpcAsset: "USDC";
91
+ readonly decimals: 6;
92
+ };
93
+ readonly ArbUsdt: {
94
+ readonly chain: "Arbitrum";
95
+ readonly symbol: "USDT";
96
+ readonly rpcAsset: "USDT";
97
+ readonly decimals: 6;
98
+ };
99
+ readonly ArbEth: {
100
+ readonly chain: "Arbitrum";
101
+ readonly symbol: "ETH";
102
+ readonly rpcAsset: "ETH";
103
+ readonly decimals: 18;
104
+ };
105
+ readonly Sol: {
106
+ readonly chain: "Solana";
107
+ readonly symbol: "SOL";
108
+ readonly rpcAsset: "SOL";
109
+ readonly decimals: 9;
110
+ };
111
+ readonly SolUsdc: {
112
+ readonly chain: "Solana";
113
+ readonly symbol: "USDC";
114
+ readonly rpcAsset: "USDC";
115
+ readonly decimals: 6;
116
+ };
117
+ readonly SolUsdt: {
118
+ readonly chain: "Solana";
119
+ readonly symbol: "USDT";
120
+ readonly rpcAsset: "USDT";
121
+ readonly decimals: 6;
122
+ };
123
+ readonly HubDot: {
124
+ readonly chain: "Assethub";
125
+ readonly symbol: "DOT";
126
+ readonly rpcAsset: "DOT";
127
+ readonly decimals: 10;
128
+ };
129
+ readonly HubUsdc: {
130
+ readonly chain: "Assethub";
131
+ readonly symbol: "USDC";
132
+ readonly rpcAsset: "USDC";
133
+ readonly decimals: 6;
134
+ };
135
+ readonly HubUsdt: {
136
+ readonly chain: "Assethub";
137
+ readonly symbol: "USDT";
138
+ readonly rpcAsset: "USDT";
139
+ readonly decimals: 6;
140
+ };
138
141
  };
139
142
  declare const chainConstants: {
140
- readonly Ethereum: {
141
- readonly chainflipAssets: ["Eth", "Flip", "Usdc", "Usdt"];
142
- readonly assets: ["ETH", "FLIP", "USDC", "USDT"];
143
- readonly rpcAssets: ["ETH", "FLIP", "USDC", "USDT"];
144
- readonly gasAsset: "Eth";
145
- readonly addressType: "Eth";
146
- readonly blockTimeSeconds: 12;
147
- };
148
- readonly Polkadot: {
149
- readonly chainflipAssets: ["Dot"];
150
- readonly assets: ["DOT"];
151
- readonly rpcAssets: ["DOT"];
152
- readonly gasAsset: "Dot";
153
- readonly addressType: "Dot";
154
- readonly blockTimeSeconds: 6;
155
- };
156
- readonly Bitcoin: {
157
- readonly chainflipAssets: ["Btc"];
158
- readonly assets: ["BTC"];
159
- readonly rpcAssets: ["BTC"];
160
- readonly gasAsset: "Btc";
161
- readonly addressType: "Btc";
162
- readonly blockTimeSeconds: number;
163
- };
164
- readonly Arbitrum: {
165
- readonly chainflipAssets: ["ArbUsdc", "ArbEth"];
166
- readonly assets: ["USDC", "ETH"];
167
- readonly rpcAssets: ["USDC", "ETH"];
168
- readonly gasAsset: "ArbEth";
169
- readonly addressType: "Arb";
170
- readonly blockTimeSeconds: 0.26;
171
- };
172
- readonly Solana: {
173
- readonly chainflipAssets: ["Sol", "SolUsdc"];
174
- readonly assets: ["SOL", "USDC"];
175
- readonly rpcAssets: ["SOL", "USDC"];
176
- readonly gasAsset: "Sol";
177
- readonly addressType: "Sol";
178
- readonly blockTimeSeconds: 0.8;
179
- };
180
- readonly Assethub: {
181
- readonly chainflipAssets: ["HubDot", "HubUsdt", "HubUsdc"];
182
- readonly assets: ["DOT", "USDT", "USDC"];
183
- readonly rpcAssets: ["DOT", "USDT", "USDC"];
184
- readonly gasAsset: "HubDot";
185
- readonly addressType: "Hub";
186
- readonly blockTimeSeconds: 12;
187
- };
143
+ readonly Ethereum: {
144
+ readonly chainflipAssets: ["Eth", "Flip", "Usdc", "Usdt", "Wbtc"];
145
+ readonly assets: ["ETH", "FLIP", "USDC", "USDT", "WBTC"];
146
+ readonly rpcAssets: ["ETH", "FLIP", "USDC", "USDT", "WBTC"];
147
+ readonly gasAsset: "Eth";
148
+ readonly addressType: "Eth";
149
+ readonly blockTimeSeconds: 12;
150
+ };
151
+ readonly Polkadot: {
152
+ readonly chainflipAssets: ["Dot"];
153
+ readonly assets: ["DOT"];
154
+ readonly rpcAssets: ["DOT"];
155
+ readonly gasAsset: "Dot";
156
+ readonly addressType: "Dot";
157
+ readonly blockTimeSeconds: 6;
158
+ };
159
+ readonly Bitcoin: {
160
+ readonly chainflipAssets: ["Btc"];
161
+ readonly assets: ["BTC"];
162
+ readonly rpcAssets: ["BTC"];
163
+ readonly gasAsset: "Btc";
164
+ readonly addressType: "Btc";
165
+ readonly blockTimeSeconds: number;
166
+ };
167
+ readonly Arbitrum: {
168
+ readonly chainflipAssets: ["ArbUsdc", "ArbUsdt", "ArbEth"];
169
+ readonly assets: ["USDC", "USDT", "ETH"];
170
+ readonly rpcAssets: ["USDC", "USDT", "ETH"];
171
+ readonly gasAsset: "ArbEth";
172
+ readonly addressType: "Arb";
173
+ readonly blockTimeSeconds: 0.26;
174
+ };
175
+ readonly Solana: {
176
+ readonly chainflipAssets: ["Sol", "SolUsdc", "SolUsdt"];
177
+ readonly assets: ["SOL", "USDC", "USDT"];
178
+ readonly rpcAssets: ["SOL", "USDC", "USDT"];
179
+ readonly gasAsset: "Sol";
180
+ readonly addressType: "Sol";
181
+ readonly blockTimeSeconds: 0.8;
182
+ };
183
+ readonly Assethub: {
184
+ readonly chainflipAssets: ["HubDot", "HubUsdt", "HubUsdc"];
185
+ readonly assets: ["DOT", "USDT", "USDC"];
186
+ readonly rpcAssets: ["DOT", "USDT", "USDC"];
187
+ readonly gasAsset: "HubDot";
188
+ readonly addressType: "Hub";
189
+ readonly blockTimeSeconds: 12;
190
+ };
188
191
  };
189
192
  declare const internalAssetToRpcAsset: InternalAssetMap<AssetAndChain> & {
190
- Dot: {
191
- chain: 'Polkadot';
192
- asset: 'DOT';
193
- };
193
+ Dot: {
194
+ chain: 'Polkadot';
195
+ asset: 'DOT';
196
+ };
194
197
  };
195
198
  declare const chainContractId: ChainMap<number> & {
196
- Polkadot: 2;
199
+ Polkadot: 2;
197
200
  };
198
201
  declare const assetContractId: InternalAssetMap<number> & {
199
- Dot: 4;
202
+ Dot: 4;
200
203
  };
201
204
  declare function getInternalAsset(asset: BaseAssetAndChain): BaseChainflipAsset;
202
205
  declare function getInternalAsset(asset: AssetAndChain): ChainflipAsset;
@@ -205,32 +208,32 @@ declare function getInternalAsset(asset: UncheckedAssetAndChain, assert: true):
205
208
  declare function getInternalAsset(asset: UncheckedAssetAndChain, assert: boolean): ChainflipAsset | null;
206
209
  declare function isValidAssetAndChain(assetAndChain: UncheckedAssetAndChain): assetAndChain is AssetAndChain;
207
210
  declare function getInternalAssets(data: {
208
- srcAsset: AssetSymbol;
209
- srcChain: ChainflipChain;
210
- destAsset: AssetSymbol;
211
- destChain: ChainflipChain;
211
+ srcAsset: AssetSymbol;
212
+ srcChain: ChainflipChain;
213
+ destAsset: AssetSymbol;
214
+ destChain: ChainflipChain;
212
215
  }): {
213
- srcAsset: ChainflipAsset;
214
- destAsset: ChainflipAsset;
216
+ srcAsset: ChainflipAsset;
217
+ destAsset: ChainflipAsset;
215
218
  };
216
219
  declare function getInternalAssets(data: {
217
- srcAsset: AssetSymbol;
218
- srcChain: ChainflipChain;
219
- destAsset: AssetSymbol;
220
- destChain: ChainflipChain;
220
+ srcAsset: AssetSymbol;
221
+ srcChain: ChainflipChain;
222
+ destAsset: AssetSymbol;
223
+ destChain: ChainflipChain;
221
224
  }, assert: true): {
222
- srcAsset: ChainflipAsset;
223
- destAsset: ChainflipAsset;
225
+ srcAsset: ChainflipAsset;
226
+ destAsset: ChainflipAsset;
224
227
  };
225
228
  declare function getInternalAssets(data: {
226
- srcAsset: AssetSymbol;
227
- srcChain: ChainflipChain;
228
- destAsset: AssetSymbol;
229
- destChain: ChainflipChain;
229
+ srcAsset: AssetSymbol;
230
+ srcChain: ChainflipChain;
231
+ destAsset: AssetSymbol;
232
+ destChain: ChainflipChain;
230
233
  }, assert: boolean): {
231
- srcAsset: ChainflipAsset | null;
232
- destAsset: ChainflipAsset | null;
234
+ srcAsset: ChainflipAsset | null;
235
+ destAsset: ChainflipAsset | null;
233
236
  };
234
237
  declare const chainflipAssetToPriceAssetMap: Record<ChainflipAsset, Exclude<PriceAsset, 'Usd'> | null>;
235
-
236
- export { type AddressType, type AssetAndChain, type AssetOfChain, type AssetSymbol, type BaseAssetAndChain, type BaseChainAssetMap, type BaseChainflipAsset, type ChainAssetMap, type ChainMap, type ChainflipAsset, type ChainflipChain, type ChainflipEvmChain, type ChainflipNetwork, type InternalAssetMap, type PriceAsset, type RpcAsset, type UncheckedAssetAndChain, addressTypes, assetConstants, assetContractId, assetSymbols, baseChainflipAssets, chainConstants, chainContractId, chainflipAssetToPriceAssetMap, chainflipAssets, chainflipChains, chainflipEvmChains, chainflipNetworks, getInternalAsset, getInternalAssets, internalAssetToRpcAsset, isValidAssetAndChain, priceAssets, readAssetValue, rpcAssets };
238
+ //#endregion
239
+ export { AddressType, AssetAndChain, AssetOfChain, AssetSymbol, BaseAssetAndChain, BaseChainAssetMap, BaseChainflipAsset, ChainAssetMap, ChainMap, ChainflipAsset, ChainflipChain, ChainflipEvmChain, ChainflipNetwork, InternalAssetMap, PriceAsset, RpcAsset, UncheckedAssetAndChain, addressTypes, assetConstants, assetContractId, assetSymbols, baseChainflipAssets, chainConstants, chainContractId, chainflipAssetToPriceAssetMap, chainflipAssets, chainflipChains, chainflipEvmChains, chainflipNetworks, getInternalAsset, getInternalAssets, internalAssetToRpcAsset, isValidAssetAndChain, priceAssets, readAssetValue, rpcAssets };