@talismn/chaindata-provider 0.11.1 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (98) hide show
  1. package/dist/declarations/src/chaindata/index.d.ts +5 -0
  2. package/dist/declarations/src/chaindata/miniMetadata.d.ts +17 -0
  3. package/dist/declarations/src/chaindata/networks/DotNetwork.d.ts +85 -0
  4. package/dist/declarations/src/chaindata/networks/EthNetwork.d.ts +52 -0
  5. package/dist/declarations/src/chaindata/networks/Network.d.ts +105 -0
  6. package/dist/declarations/src/chaindata/networks/NetworkBase.d.ts +21 -0
  7. package/dist/declarations/src/chaindata/networks/index.d.ts +4 -0
  8. package/dist/declarations/src/chaindata/shared/EthereumAddress.d.ts +3 -0
  9. package/dist/declarations/src/chaindata/shared/HexString.d.ts +3 -0
  10. package/dist/declarations/src/chaindata/shared/index.d.ts +2 -0
  11. package/dist/declarations/src/chaindata/tokens/EvmErc20Token.d.ts +30 -0
  12. package/dist/declarations/src/chaindata/tokens/EvmNativeToken.d.ts +28 -0
  13. package/dist/declarations/src/chaindata/tokens/EvmUniswapV2Token.d.ts +39 -0
  14. package/dist/declarations/src/chaindata/tokens/SubstrateAssetsToken.d.ts +33 -0
  15. package/dist/declarations/src/chaindata/tokens/SubstrateForeignAssetsToken.d.ts +32 -0
  16. package/dist/declarations/src/chaindata/tokens/SubstrateHydrationToken.d.ts +36 -0
  17. package/dist/declarations/src/chaindata/tokens/SubstrateNativeToken.d.ts +31 -0
  18. package/dist/declarations/src/chaindata/tokens/SubstratePsp22Token.d.ts +30 -0
  19. package/dist/declarations/src/chaindata/tokens/SubstrateTokensToken.d.ts +32 -0
  20. package/dist/declarations/src/chaindata/tokens/Token.d.ts +615 -0
  21. package/dist/declarations/src/chaindata/tokens/TokenBase.d.ts +14 -0
  22. package/dist/declarations/src/chaindata/tokens/index.d.ts +11 -0
  23. package/dist/declarations/src/chaindata/tokens/utils.d.ts +1 -0
  24. package/dist/declarations/src/chaindata/utils.d.ts +362 -0
  25. package/dist/declarations/src/constants.d.ts +3 -19
  26. package/dist/declarations/src/index.d.ts +5 -5
  27. package/dist/declarations/src/{types → legacy}/Chain.d.ts +18 -15
  28. package/dist/declarations/src/{types → legacy}/EvmNetwork.d.ts +22 -13
  29. package/dist/declarations/src/legacy/TalismanChaindataDatabase.d.ts +13 -0
  30. package/dist/declarations/src/legacy/index.d.ts +3 -0
  31. package/dist/declarations/src/provider/ChaindataProvider.d.ts +502 -0
  32. package/dist/declarations/src/provider/ChaindataProviderInterface.d.ts +30 -0
  33. package/dist/declarations/src/provider/index.d.ts +2 -0
  34. package/dist/declarations/src/state/db.d.ts +11 -0
  35. package/dist/declarations/src/state/defaultChaindata.d.ts +248 -0
  36. package/dist/declarations/src/state/index.d.ts +2 -0
  37. package/dist/declarations/src/state/net.d.ts +248 -0
  38. package/dist/declarations/src/state/schema.d.ts +1090 -0
  39. package/dist/declarations/src/util.d.ts +6 -24
  40. package/dist/talismn-chaindata-provider.cjs.dev.js +4631 -728
  41. package/dist/talismn-chaindata-provider.cjs.prod.js +4631 -728
  42. package/dist/talismn-chaindata-provider.esm.js +4543 -680
  43. package/package.json +9 -10
  44. package/dist/declarations/src/ChaindataProvider.d.ts +0 -91
  45. package/dist/declarations/src/TalismanChaindataDatabase.d.ts +0 -9
  46. package/dist/declarations/src/init/chains.d.ts +0 -247
  47. package/dist/declarations/src/init/evm-networks.d.ts +0 -62
  48. package/dist/declarations/src/init/index.d.ts +0 -5
  49. package/dist/declarations/src/init/mini-metadatas.d.ts +0 -21
  50. package/dist/declarations/src/init/tokens.d.ts +0 -103
  51. package/dist/declarations/src/net.d.ts +0 -8
  52. package/dist/declarations/src/types/ChaindataProviderInterface.d.ts +0 -42
  53. package/dist/declarations/src/types/MultiChain.d.ts +0 -9
  54. package/dist/declarations/src/types/Token/EvmErc20Token.d.ts +0 -15
  55. package/dist/declarations/src/types/Token/EvmNativeToken.d.ts +0 -10
  56. package/dist/declarations/src/types/Token/EvmUniswapV2Token.d.ts +0 -22
  57. package/dist/declarations/src/types/Token/SubstrateAssetsToken.d.ts +0 -12
  58. package/dist/declarations/src/types/Token/SubstrateEquilibriumToken.d.ts +0 -11
  59. package/dist/declarations/src/types/Token/SubstrateForeignAssetsToken.d.ts +0 -12
  60. package/dist/declarations/src/types/Token/SubstrateNativeToken.d.ts +0 -13
  61. package/dist/declarations/src/types/Token/SubstratePsp22Token.d.ts +0 -11
  62. package/dist/declarations/src/types/Token/SubstrateTokensToken.d.ts +0 -11
  63. package/dist/declarations/src/types/Token/index.d.ts +0 -26
  64. package/dist/declarations/src/types/Token/types.d.ts +0 -27
  65. package/dist/declarations/src/types/index.d.ts +0 -5
  66. package/dist/net-BhB7Jeg9.cjs.dev.js +0 -89
  67. package/dist/net-BhB7Jeg9.cjs.prod.js +0 -89
  68. package/dist/net-Bp9Le9Gn.esm.js +0 -55
  69. package/init/chains/dist/talismn-chaindata-provider-init-chains.cjs.d.ts +0 -1
  70. package/init/chains/dist/talismn-chaindata-provider-init-chains.cjs.dev.js +0 -904
  71. package/init/chains/dist/talismn-chaindata-provider-init-chains.cjs.js +0 -7
  72. package/init/chains/dist/talismn-chaindata-provider-init-chains.cjs.prod.js +0 -904
  73. package/init/chains/dist/talismn-chaindata-provider-init-chains.esm.js +0 -902
  74. package/init/chains/package.json +0 -4
  75. package/init/evm-networks/dist/talismn-chaindata-provider-init-evm-networks.cjs.d.ts +0 -1
  76. package/init/evm-networks/dist/talismn-chaindata-provider-init-evm-networks.cjs.dev.js +0 -70
  77. package/init/evm-networks/dist/talismn-chaindata-provider-init-evm-networks.cjs.js +0 -7
  78. package/init/evm-networks/dist/talismn-chaindata-provider-init-evm-networks.cjs.prod.js +0 -70
  79. package/init/evm-networks/dist/talismn-chaindata-provider-init-evm-networks.esm.js +0 -68
  80. package/init/evm-networks/package.json +0 -4
  81. package/init/mini-metadatas/dist/talismn-chaindata-provider-init-mini-metadatas.cjs.d.ts +0 -1
  82. package/init/mini-metadatas/dist/talismn-chaindata-provider-init-mini-metadatas.cjs.dev.js +0 -311
  83. package/init/mini-metadatas/dist/talismn-chaindata-provider-init-mini-metadatas.cjs.js +0 -7
  84. package/init/mini-metadatas/dist/talismn-chaindata-provider-init-mini-metadatas.cjs.prod.js +0 -311
  85. package/init/mini-metadatas/dist/talismn-chaindata-provider-init-mini-metadatas.esm.js +0 -309
  86. package/init/mini-metadatas/package.json +0 -4
  87. package/init/tokens/dist/talismn-chaindata-provider-init-tokens.cjs.d.ts +0 -1
  88. package/init/tokens/dist/talismn-chaindata-provider-init-tokens.cjs.dev.js +0 -436
  89. package/init/tokens/dist/talismn-chaindata-provider-init-tokens.cjs.js +0 -7
  90. package/init/tokens/dist/talismn-chaindata-provider-init-tokens.cjs.prod.js +0 -436
  91. package/init/tokens/dist/talismn-chaindata-provider-init-tokens.esm.js +0 -434
  92. package/init/tokens/package.json +0 -4
  93. package/net/dist/talismn-chaindata-provider-net.cjs.d.ts +0 -1
  94. package/net/dist/talismn-chaindata-provider-net.cjs.dev.js +0 -14
  95. package/net/dist/talismn-chaindata-provider-net.cjs.js +0 -7
  96. package/net/dist/talismn-chaindata-provider-net.cjs.prod.js +0 -14
  97. package/net/dist/talismn-chaindata-provider-net.esm.js +0 -1
  98. package/net/package.json +0 -4
@@ -0,0 +1,502 @@
1
+ import { Observable } from "rxjs";
2
+ import { IChaindataProvider } from ".";
3
+ import { DotNetwork, Network, NetworkId, NetworkOfPlatform, NetworkPlatform, Token, TokenId, TokenOfType, TokenType } from "../chaindata";
4
+ import { CustomChaindata } from "../state";
5
+ export type ChaindataProviderOptions = {
6
+ customChaindata$?: Observable<CustomChaindata> | CustomChaindata;
7
+ };
8
+ export declare class ChaindataProvider implements IChaindataProvider {
9
+ #private;
10
+ constructor(options?: ChaindataProviderOptions);
11
+ /**
12
+ * Mini metadatas
13
+ */
14
+ get miniMetadatas$(): Observable<{
15
+ id: string;
16
+ source: string;
17
+ chainId: string;
18
+ specVersion: number;
19
+ version: string;
20
+ data: `0x${string}` | null;
21
+ extra: any;
22
+ }[]>;
23
+ getMiniMetadatas(): Promise<{
24
+ id: string;
25
+ source: string;
26
+ chainId: string;
27
+ specVersion: number;
28
+ version: string;
29
+ data: `0x${string}` | null;
30
+ extra: any;
31
+ }[]>;
32
+ get miniMetadatasMapById$(): Observable<Record<string, {
33
+ id: string;
34
+ source: string;
35
+ chainId: string;
36
+ specVersion: number;
37
+ version: string;
38
+ data: `0x${string}` | null;
39
+ extra: any;
40
+ }>>;
41
+ getMiniMetadatasMapById(): Promise<Record<string, {
42
+ id: string;
43
+ source: string;
44
+ chainId: string;
45
+ specVersion: number;
46
+ version: string;
47
+ data: `0x${string}` | null;
48
+ extra: any;
49
+ }>>;
50
+ getMiniMetadataById$(id: string): Observable<{
51
+ id: string;
52
+ source: string;
53
+ chainId: string;
54
+ specVersion: number;
55
+ version: string;
56
+ data: `0x${string}` | null;
57
+ extra: any;
58
+ }>;
59
+ miniMetadataById(id: string): Promise<{
60
+ id: string;
61
+ source: string;
62
+ chainId: string;
63
+ specVersion: number;
64
+ version: string;
65
+ data: `0x${string}` | null;
66
+ extra: any;
67
+ }>;
68
+ /**
69
+ * Tokens
70
+ */
71
+ get tokens$(): Observable<({
72
+ id: string;
73
+ networkId: string;
74
+ decimals: number;
75
+ symbol: string;
76
+ type: "evm-erc20";
77
+ platform: "ethereum";
78
+ contractAddress: `0x${string}`;
79
+ isDefault?: boolean | undefined;
80
+ name?: string | undefined;
81
+ logo?: string | undefined;
82
+ coingeckoId?: string | undefined;
83
+ noDiscovery?: boolean | undefined;
84
+ mirrorOf?: string | undefined;
85
+ } | {
86
+ id: string;
87
+ networkId: string;
88
+ decimals: number;
89
+ symbol: string;
90
+ type: "evm-native";
91
+ platform: "ethereum";
92
+ isDefault?: boolean | undefined;
93
+ name?: string | undefined;
94
+ logo?: string | undefined;
95
+ coingeckoId?: string | undefined;
96
+ noDiscovery?: boolean | undefined;
97
+ mirrorOf?: string | undefined;
98
+ } | {
99
+ id: string;
100
+ networkId: string;
101
+ decimals: number;
102
+ symbol: string;
103
+ type: "evm-uniswapv2";
104
+ platform: "ethereum";
105
+ contractAddress: `0x${string}`;
106
+ symbol0: string;
107
+ symbol1: string;
108
+ decimals0: number;
109
+ decimals1: number;
110
+ tokenAddress0: `0x${string}`;
111
+ tokenAddress1: `0x${string}`;
112
+ isDefault?: boolean | undefined;
113
+ name?: string | undefined;
114
+ logo?: string | undefined;
115
+ coingeckoId?: string | undefined;
116
+ noDiscovery?: boolean | undefined;
117
+ mirrorOf?: string | undefined;
118
+ isCustom?: boolean | undefined;
119
+ coingeckoId0?: string | undefined;
120
+ coingeckoId1?: string | undefined;
121
+ } | {
122
+ id: string;
123
+ networkId: string;
124
+ decimals: number;
125
+ symbol: string;
126
+ type: "substrate-assets";
127
+ platform: "polkadot";
128
+ assetId: string;
129
+ isSufficient: boolean;
130
+ existentialDeposit: string;
131
+ isDefault?: boolean | undefined;
132
+ name?: string | undefined;
133
+ logo?: string | undefined;
134
+ coingeckoId?: string | undefined;
135
+ noDiscovery?: boolean | undefined;
136
+ mirrorOf?: string | undefined;
137
+ isFrozen?: boolean | undefined;
138
+ } | {
139
+ id: string;
140
+ networkId: string;
141
+ decimals: number;
142
+ symbol: string;
143
+ type: "substrate-foreignassets";
144
+ platform: "polkadot";
145
+ onChainId: string;
146
+ isSufficient: boolean;
147
+ existentialDeposit: string;
148
+ isDefault?: boolean | undefined;
149
+ name?: string | undefined;
150
+ logo?: string | undefined;
151
+ coingeckoId?: string | undefined;
152
+ noDiscovery?: boolean | undefined;
153
+ mirrorOf?: string | undefined;
154
+ isFrozen?: boolean | undefined;
155
+ } | {
156
+ id: string;
157
+ networkId: string;
158
+ decimals: number;
159
+ symbol: string;
160
+ type: "substrate-native";
161
+ platform: "polkadot";
162
+ existentialDeposit: string;
163
+ isDefault?: boolean | undefined;
164
+ name?: string | undefined;
165
+ logo?: string | undefined;
166
+ coingeckoId?: string | undefined;
167
+ noDiscovery?: boolean | undefined;
168
+ mirrorOf?: string | undefined;
169
+ } | {
170
+ id: string;
171
+ networkId: string;
172
+ decimals: number;
173
+ symbol: string;
174
+ type: "substrate-psp22";
175
+ platform: "polkadot";
176
+ contractAddress: string;
177
+ isDefault?: boolean | undefined;
178
+ name?: string | undefined;
179
+ logo?: string | undefined;
180
+ coingeckoId?: string | undefined;
181
+ noDiscovery?: boolean | undefined;
182
+ mirrorOf?: string | undefined;
183
+ } | {
184
+ id: string;
185
+ networkId: string;
186
+ decimals: number;
187
+ symbol: string;
188
+ type: "substrate-tokens";
189
+ platform: "polkadot";
190
+ onChainId: string | number;
191
+ existentialDeposit: string;
192
+ isDefault?: boolean | undefined;
193
+ name?: string | undefined;
194
+ logo?: string | undefined;
195
+ coingeckoId?: string | undefined;
196
+ noDiscovery?: boolean | undefined;
197
+ mirrorOf?: string | undefined;
198
+ } | {
199
+ id: string;
200
+ networkId: string;
201
+ decimals: number;
202
+ symbol: string;
203
+ type: "substrate-hydration";
204
+ platform: "polkadot";
205
+ onChainId: number;
206
+ assetType: "Token" | "Erc20" | "External";
207
+ isSufficient: boolean;
208
+ existentialDeposit: string;
209
+ isDefault?: boolean | undefined;
210
+ name?: string | undefined;
211
+ logo?: string | undefined;
212
+ coingeckoId?: string | undefined;
213
+ noDiscovery?: boolean | undefined;
214
+ mirrorOf?: string | undefined;
215
+ })[]>;
216
+ getTokens$<T extends TokenType | undefined, R extends T extends TokenType ? TokenOfType<T> : Token>(type?: T): Observable<R[]>;
217
+ getTokens<T extends TokenType | undefined, R extends T extends TokenType ? TokenOfType<T> : Token>(type?: T): Promise<R[]>;
218
+ getTokenIds$(type?: TokenType): Observable<string[]>;
219
+ getTokenIds(type?: TokenType): Promise<string[]>;
220
+ getTokensMapById$<T extends TokenType | undefined, R extends T extends TokenType ? TokenOfType<T> : Token>(type?: T): Observable<Record<TokenId, R>>;
221
+ getTokensMapById<T extends TokenType | undefined, R extends T extends TokenType ? TokenOfType<T> : Token>(type?: T): Promise<Record<TokenId, R>>;
222
+ getTokenById$<T extends TokenType | undefined, R extends T extends TokenType ? TokenOfType<T> : Token>(id: TokenId, type?: T): Observable<R | null>;
223
+ getTokenById<T extends TokenType | undefined, R extends T extends TokenType ? TokenOfType<T> : Token>(id: TokenId, type?: T): Promise<R | null>;
224
+ /**
225
+ * Networks
226
+ */
227
+ get networks$(): Observable<({
228
+ id: string;
229
+ name: string;
230
+ nativeTokenId: string;
231
+ nativeCurrency: {
232
+ decimals: number;
233
+ symbol: string;
234
+ name: string;
235
+ coingeckoId?: string | undefined;
236
+ mirrorOf?: string | undefined;
237
+ logo?: string | undefined;
238
+ };
239
+ blockExplorerUrls: string[];
240
+ genesisHash: `0x${string}`;
241
+ platform: "polkadot";
242
+ chainName: string;
243
+ specName: string;
244
+ specVersion: number;
245
+ account: "secp256k1" | "*25519";
246
+ prefix: number;
247
+ rpcs: string[];
248
+ topology: {
249
+ type: "standalone";
250
+ } | {
251
+ type: "relay";
252
+ } | {
253
+ type: "parachain";
254
+ relayId: string;
255
+ paraId: number;
256
+ };
257
+ isTestnet?: boolean | undefined;
258
+ isDefault?: boolean | undefined;
259
+ forceScan?: boolean | undefined;
260
+ logo?: string | undefined;
261
+ themeColor?: string | undefined;
262
+ chainspecQrUrl?: string | undefined;
263
+ latestMetadataQrUrl?: string | undefined;
264
+ oldPrefix?: number | undefined;
265
+ registryTypes?: any;
266
+ signedExtensions?: any;
267
+ hasCheckMetadataHash?: boolean | undefined;
268
+ hasExtrinsicSignatureTypePrefix?: boolean | undefined;
269
+ isUnknownFeeToken?: boolean | undefined;
270
+ balancesConfig?: {
271
+ "substrate-native"?: {
272
+ disable?: boolean | undefined;
273
+ } | undefined;
274
+ "substrate-assets"?: undefined;
275
+ "substrate-psp22"?: undefined;
276
+ "substrate-tokens"?: {
277
+ palletId?: string | undefined;
278
+ } | undefined;
279
+ "substrate-foreignassets"?: undefined;
280
+ "substrate-hydration"?: undefined;
281
+ } | undefined;
282
+ } | {
283
+ id: string;
284
+ name: string;
285
+ nativeTokenId: string;
286
+ nativeCurrency: {
287
+ decimals: number;
288
+ symbol: string;
289
+ name: string;
290
+ coingeckoId?: string | undefined;
291
+ mirrorOf?: string | undefined;
292
+ logo?: string | undefined;
293
+ };
294
+ blockExplorerUrls: string[];
295
+ platform: "ethereum";
296
+ rpcs: string[];
297
+ isTestnet?: boolean | undefined;
298
+ isDefault?: boolean | undefined;
299
+ forceScan?: boolean | undefined;
300
+ logo?: string | undefined;
301
+ themeColor?: string | undefined;
302
+ substrateChainId?: string | undefined;
303
+ preserveGasEstimate?: boolean | undefined;
304
+ feeType?: "legacy" | "eip-1559" | undefined;
305
+ l2FeeType?: {
306
+ type: "op-stack";
307
+ } | {
308
+ type: "scroll";
309
+ l1GasPriceOracle: `0x${string}`;
310
+ } | undefined;
311
+ contracts?: Partial<Record<"Erc20Aggregator" | "Multicall3", `0x${string}`>> | undefined;
312
+ balancesConfig?: {
313
+ "evm-native"?: undefined;
314
+ "evm-erc20"?: undefined;
315
+ "evm-uniswapv2"?: undefined;
316
+ } | undefined;
317
+ })[]>;
318
+ getNetworks$<P extends NetworkPlatform | undefined, R = P extends NetworkPlatform ? NetworkOfPlatform<P> : Network>(platform?: P): Observable<R[]>;
319
+ getNetworks<P extends NetworkPlatform | undefined, R = P extends NetworkPlatform ? NetworkOfPlatform<P> : Network>(platform?: P): Promise<R[]>;
320
+ getNetworkIds$(platform?: NetworkPlatform): Observable<string[]>;
321
+ getNetworkIds(platform?: NetworkPlatform): Promise<string[]>;
322
+ getNetworksMapById$<P extends NetworkPlatform | undefined, R = P extends NetworkPlatform ? NetworkOfPlatform<P> : Network>(platform?: P): Observable<Record<NetworkId, R>>;
323
+ getNetworksMapById<P extends NetworkPlatform | undefined, R = P extends NetworkPlatform ? NetworkOfPlatform<P> : Network>(platform?: P): Promise<Record<NetworkId, R>>;
324
+ getNetworksMapByGenesisHash$(): Observable<Record<`0x${string}`, DotNetwork>>;
325
+ getNetworksMapByGenesisHash(): Promise<Record<`0x${string}`, {
326
+ id: string;
327
+ name: string;
328
+ nativeTokenId: string;
329
+ nativeCurrency: {
330
+ decimals: number;
331
+ symbol: string;
332
+ name: string;
333
+ coingeckoId?: string | undefined;
334
+ mirrorOf?: string | undefined;
335
+ logo?: string | undefined;
336
+ };
337
+ blockExplorerUrls: string[];
338
+ genesisHash: `0x${string}`;
339
+ platform: "polkadot";
340
+ chainName: string;
341
+ specName: string;
342
+ specVersion: number;
343
+ account: "secp256k1" | "*25519";
344
+ prefix: number;
345
+ rpcs: string[];
346
+ topology: {
347
+ type: "standalone";
348
+ } | {
349
+ type: "relay";
350
+ } | {
351
+ type: "parachain";
352
+ relayId: string;
353
+ paraId: number;
354
+ };
355
+ isTestnet?: boolean | undefined;
356
+ isDefault?: boolean | undefined;
357
+ forceScan?: boolean | undefined;
358
+ logo?: string | undefined;
359
+ themeColor?: string | undefined;
360
+ chainspecQrUrl?: string | undefined;
361
+ latestMetadataQrUrl?: string | undefined;
362
+ oldPrefix?: number | undefined;
363
+ registryTypes?: any;
364
+ signedExtensions?: any;
365
+ hasCheckMetadataHash?: boolean | undefined;
366
+ hasExtrinsicSignatureTypePrefix?: boolean | undefined;
367
+ isUnknownFeeToken?: boolean | undefined;
368
+ balancesConfig?: {
369
+ "substrate-native"?: {
370
+ disable?: boolean | undefined;
371
+ } | undefined;
372
+ "substrate-assets"?: undefined;
373
+ "substrate-psp22"?: undefined;
374
+ "substrate-tokens"?: {
375
+ palletId?: string | undefined;
376
+ } | undefined;
377
+ "substrate-foreignassets"?: undefined;
378
+ "substrate-hydration"?: undefined;
379
+ } | undefined;
380
+ }>>;
381
+ getNetworkById$<P extends NetworkPlatform | undefined, R = P extends NetworkPlatform ? NetworkOfPlatform<P> : Network>(networkId: NetworkId, platform?: P): Observable<R | null>;
382
+ getNetworkById<P extends NetworkPlatform | undefined, R = P extends NetworkPlatform ? NetworkOfPlatform<P> : Network>(networkId: NetworkId, platform?: P): Promise<R | null>;
383
+ getNetworkByGenesisHash$(genesisHash: `0x${string}`): Observable<{
384
+ id: string;
385
+ name: string;
386
+ nativeTokenId: string;
387
+ nativeCurrency: {
388
+ decimals: number;
389
+ symbol: string;
390
+ name: string;
391
+ coingeckoId?: string | undefined;
392
+ mirrorOf?: string | undefined;
393
+ logo?: string | undefined;
394
+ };
395
+ blockExplorerUrls: string[];
396
+ genesisHash: `0x${string}`;
397
+ platform: "polkadot";
398
+ chainName: string;
399
+ specName: string;
400
+ specVersion: number;
401
+ account: "secp256k1" | "*25519";
402
+ prefix: number;
403
+ rpcs: string[];
404
+ topology: {
405
+ type: "standalone";
406
+ } | {
407
+ type: "relay";
408
+ } | {
409
+ type: "parachain";
410
+ relayId: string;
411
+ paraId: number;
412
+ };
413
+ isTestnet?: boolean | undefined;
414
+ isDefault?: boolean | undefined;
415
+ forceScan?: boolean | undefined;
416
+ logo?: string | undefined;
417
+ themeColor?: string | undefined;
418
+ chainspecQrUrl?: string | undefined;
419
+ latestMetadataQrUrl?: string | undefined;
420
+ oldPrefix?: number | undefined;
421
+ registryTypes?: any;
422
+ signedExtensions?: any;
423
+ hasCheckMetadataHash?: boolean | undefined;
424
+ hasExtrinsicSignatureTypePrefix?: boolean | undefined;
425
+ isUnknownFeeToken?: boolean | undefined;
426
+ balancesConfig?: {
427
+ "substrate-native"?: {
428
+ disable?: boolean | undefined;
429
+ } | undefined;
430
+ "substrate-assets"?: undefined;
431
+ "substrate-psp22"?: undefined;
432
+ "substrate-tokens"?: {
433
+ palletId?: string | undefined;
434
+ } | undefined;
435
+ "substrate-foreignassets"?: undefined;
436
+ "substrate-hydration"?: undefined;
437
+ } | undefined;
438
+ }>;
439
+ getNetworkByGenesisHash(genesisHash: `0x${string}`): Promise<{
440
+ id: string;
441
+ name: string;
442
+ nativeTokenId: string;
443
+ nativeCurrency: {
444
+ decimals: number;
445
+ symbol: string;
446
+ name: string;
447
+ coingeckoId?: string | undefined;
448
+ mirrorOf?: string | undefined;
449
+ logo?: string | undefined;
450
+ };
451
+ blockExplorerUrls: string[];
452
+ genesisHash: `0x${string}`;
453
+ platform: "polkadot";
454
+ chainName: string;
455
+ specName: string;
456
+ specVersion: number;
457
+ account: "secp256k1" | "*25519";
458
+ prefix: number;
459
+ rpcs: string[];
460
+ topology: {
461
+ type: "standalone";
462
+ } | {
463
+ type: "relay";
464
+ } | {
465
+ type: "parachain";
466
+ relayId: string;
467
+ paraId: number;
468
+ };
469
+ isTestnet?: boolean | undefined;
470
+ isDefault?: boolean | undefined;
471
+ forceScan?: boolean | undefined;
472
+ logo?: string | undefined;
473
+ themeColor?: string | undefined;
474
+ chainspecQrUrl?: string | undefined;
475
+ latestMetadataQrUrl?: string | undefined;
476
+ oldPrefix?: number | undefined;
477
+ registryTypes?: any;
478
+ signedExtensions?: any;
479
+ hasCheckMetadataHash?: boolean | undefined;
480
+ hasExtrinsicSignatureTypePrefix?: boolean | undefined;
481
+ isUnknownFeeToken?: boolean | undefined;
482
+ balancesConfig?: {
483
+ "substrate-native"?: {
484
+ disable?: boolean | undefined;
485
+ } | undefined;
486
+ "substrate-assets"?: undefined;
487
+ "substrate-psp22"?: undefined;
488
+ "substrate-tokens"?: {
489
+ palletId?: string | undefined;
490
+ } | undefined;
491
+ "substrate-foreignassets"?: undefined;
492
+ "substrate-hydration"?: undefined;
493
+ } | undefined;
494
+ }>;
495
+ }
496
+ export declare const isNetworkCustom: (network: Network) => boolean;
497
+ export declare const isNetworkKnown: (network: Network) => boolean;
498
+ export declare const isTokenCustom: (token: Token) => boolean;
499
+ export declare const isTokenKnown: (token: Token) => boolean;
500
+ export declare const isTokenTestnet: (token: Token) => boolean;
501
+ export declare const getCleanNetwork: (network: Network) => Network;
502
+ export declare const getCleanToken: (token: Token) => Token;
@@ -0,0 +1,30 @@
1
+ import { Observable } from "rxjs";
2
+ import { DotNetwork, Network, NetworkId, NetworkOfPlatform, NetworkPlatform, Token, TokenId, TokenOfType, TokenType } from "../chaindata";
3
+ export interface IChaindataNetworkProvider {
4
+ networks$: Observable<Network[]>;
5
+ getNetworks$<P extends NetworkPlatform | undefined, R = P extends NetworkPlatform ? NetworkOfPlatform<P> : Network>(platform?: P): Observable<R[]>;
6
+ getNetworks<P extends NetworkPlatform | undefined, R = P extends NetworkPlatform ? NetworkOfPlatform<P> : Network>(platform?: P): Promise<R[]>;
7
+ getNetworkIds$(platform?: NetworkPlatform): Observable<NetworkId[]>;
8
+ getNetworkIds(platform?: NetworkPlatform): Promise<NetworkId[]>;
9
+ getNetworksMapById$<P extends NetworkPlatform | undefined, R = P extends NetworkPlatform ? NetworkOfPlatform<P> : Network>(platform?: P): Observable<Record<NetworkId, R>>;
10
+ getNetworksMapById<P extends NetworkPlatform | undefined, R = P extends NetworkPlatform ? NetworkOfPlatform<P> : Network>(platform?: P): Promise<Record<NetworkId, R>>;
11
+ getNetworksMapByGenesisHash$(): Observable<Record<`0x${string}`, DotNetwork>>;
12
+ getNetworksMapByGenesisHash(): Promise<Record<`0x${string}`, DotNetwork>>;
13
+ getNetworkById$<P extends NetworkPlatform | undefined, R = P extends NetworkPlatform ? NetworkOfPlatform<P> : Network>(networkId: NetworkId, platform?: P): Observable<R | null>;
14
+ getNetworkById<P extends NetworkPlatform | undefined, R = P extends NetworkPlatform ? NetworkOfPlatform<P> : Network>(networkId: NetworkId, platform?: P): Promise<R | null>;
15
+ getNetworkByGenesisHash$(genesisHash: `0x${string}`): Observable<DotNetwork | null>;
16
+ getNetworkByGenesisHash(genesisHash: `0x${string}`): Promise<DotNetwork | null>;
17
+ }
18
+ export interface IChaindataTokenProvider {
19
+ tokens$: Observable<Token[]>;
20
+ getTokens$<T extends TokenType | undefined, R extends T extends TokenType ? TokenOfType<T> : Token>(type?: T): Observable<R[]>;
21
+ getTokens<T extends TokenType | undefined, R extends T extends TokenType ? TokenOfType<T> : Token>(type?: T): Promise<R[]>;
22
+ getTokenIds$(type?: TokenType): Observable<TokenId[]>;
23
+ getTokenIds(type?: TokenType): Promise<TokenId[]>;
24
+ getTokensMapById$<T extends TokenType | undefined, R extends T extends TokenType ? TokenOfType<T> : Token>(type?: T): Observable<Record<TokenId, R>>;
25
+ getTokensMapById<T extends TokenType | undefined, R extends T extends TokenType ? TokenOfType<T> : Token>(type?: T): Promise<Record<TokenId, R>>;
26
+ getTokenById$<T extends TokenType | undefined, R extends T extends TokenType ? TokenOfType<T> : Token>(tokenId: TokenId, type?: T): Observable<R | null>;
27
+ getTokenById<T extends TokenType | undefined, R extends T extends TokenType ? TokenOfType<T> : Token>(tokenId: TokenId, type?: T): Promise<R | null>;
28
+ }
29
+ export interface IChaindataProvider extends IChaindataNetworkProvider, IChaindataTokenProvider {
30
+ }
@@ -0,0 +1,2 @@
1
+ export * from "./ChaindataProviderInterface";
2
+ export * from "./ChaindataProvider";
@@ -0,0 +1,11 @@
1
+ import { Dexie } from "dexie";
2
+ import { AnyMiniMetadata } from "../chaindata";
3
+ import { Network, NetworkId } from "../chaindata/networks";
4
+ import { Token, TokenId } from "../chaindata/tokens";
5
+ export declare class ChaindataDb extends Dexie {
6
+ tokens: Dexie.Table<Token, TokenId>;
7
+ networks: Dexie.Table<Network, NetworkId>;
8
+ miniMetadatas: Dexie.Table<AnyMiniMetadata, string>;
9
+ constructor();
10
+ }
11
+ export declare const chaindataDb: ChaindataDb;