@talismn/balances 0.0.0-pr2080-20250710073919 → 0.0.0-pr2091-20250715125148

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 (171) hide show
  1. package/dist/declarations/src/BalancesProvider.d.ts +34 -0
  2. package/dist/declarations/src/{getMiniMetadata/getMiniMetadatas.d.ts → getMiniMetadatas/index.d.ts} +2 -1
  3. package/dist/declarations/src/index.d.ts +1 -2
  4. package/dist/declarations/src/modules/abis/index.d.ts +2 -0
  5. package/dist/declarations/src/modules/evm-erc20/config.d.ts +3 -0
  6. package/dist/declarations/src/modules/evm-erc20/fetchBalances.d.ts +3 -0
  7. package/dist/declarations/src/modules/evm-erc20/fetchTokens.d.ts +3 -0
  8. package/dist/declarations/src/modules/evm-erc20/getMiniMetadata.d.ts +3 -0
  9. package/dist/declarations/src/modules/evm-erc20/getTransferCallData.d.ts +3 -0
  10. package/dist/declarations/src/modules/evm-erc20/index.d.ts +2 -0
  11. package/dist/declarations/src/modules/evm-erc20/module.d.ts +3 -0
  12. package/dist/declarations/src/modules/evm-erc20/subscribeBalances.d.ts +3 -0
  13. package/dist/declarations/src/modules/evm-erc20/types.d.ts +14 -0
  14. package/dist/declarations/src/modules/evm-erc20/utils.d.ts +6 -0
  15. package/dist/declarations/src/modules/evm-native/config.d.ts +3 -0
  16. package/dist/declarations/src/modules/evm-native/fetchBalances.d.ts +3 -0
  17. package/dist/declarations/src/modules/evm-native/fetchTokens.d.ts +3 -0
  18. package/dist/declarations/src/modules/evm-native/getMiniMetadata.d.ts +3 -0
  19. package/dist/declarations/src/modules/evm-native/getTransferCallData.d.ts +3 -0
  20. package/dist/declarations/src/modules/evm-native/index.d.ts +2 -0
  21. package/dist/declarations/src/modules/evm-native/module.d.ts +3 -0
  22. package/dist/declarations/src/modules/evm-native/subscribeBalances.d.ts +3 -0
  23. package/dist/declarations/src/modules/evm-native/types.d.ts +13 -0
  24. package/dist/declarations/src/modules/evm-uniswapv2/config.d.ts +3 -0
  25. package/dist/declarations/src/modules/evm-uniswapv2/fetchBalances.d.ts +3 -0
  26. package/dist/declarations/src/modules/evm-uniswapv2/fetchTokens.d.ts +3 -0
  27. package/dist/declarations/src/modules/evm-uniswapv2/getMiniMetadata.d.ts +3 -0
  28. package/dist/declarations/src/modules/evm-uniswapv2/getTransferCallData.d.ts +3 -0
  29. package/dist/declarations/src/modules/evm-uniswapv2/index.d.ts +2 -0
  30. package/dist/declarations/src/modules/evm-uniswapv2/module.d.ts +3 -0
  31. package/dist/declarations/src/modules/evm-uniswapv2/subscribeBalances.d.ts +3 -0
  32. package/dist/declarations/src/modules/evm-uniswapv2/types.d.ts +14 -0
  33. package/dist/declarations/src/modules/evm-uniswapv2/utils.d.ts +12 -0
  34. package/dist/declarations/src/modules/index.d.ts +46 -148
  35. package/dist/declarations/src/modules/shared/buildNetworkStorageCoders.d.ts +13 -0
  36. package/dist/declarations/src/modules/shared/errors.d.ts +11 -0
  37. package/dist/declarations/src/modules/shared/fetchRuntimeCallResult.d.ts +2 -0
  38. package/dist/declarations/src/modules/shared/index.d.ts +6 -0
  39. package/dist/declarations/src/modules/shared/rpcQueryPack.d.ts +10 -0
  40. package/dist/declarations/src/modules/shared/types.d.ts +12 -0
  41. package/dist/declarations/src/modules/shared/utils.d.ts +6 -0
  42. package/dist/declarations/src/modules/sol-native/config.d.ts +3 -0
  43. package/dist/declarations/src/modules/sol-native/fetchBalances.d.ts +3 -0
  44. package/dist/declarations/src/modules/sol-native/fetchTokens.d.ts +3 -0
  45. package/dist/declarations/src/modules/sol-native/getMiniMetadata.d.ts +3 -0
  46. package/dist/declarations/src/modules/sol-native/getTransferCallData.d.ts +3 -0
  47. package/dist/declarations/src/modules/sol-native/index.d.ts +2 -0
  48. package/dist/declarations/src/modules/sol-native/module.d.ts +3 -0
  49. package/dist/declarations/src/modules/sol-native/subscribeBalances.d.ts +3 -0
  50. package/dist/declarations/src/modules/sol-native/types.d.ts +13 -0
  51. package/dist/declarations/src/modules/substrate-assets/buildQueries.d.ts +5 -0
  52. package/dist/declarations/src/modules/substrate-assets/config.d.ts +5 -0
  53. package/dist/declarations/src/modules/substrate-assets/fetchBalances.d.ts +3 -0
  54. package/dist/declarations/src/modules/substrate-assets/fetchTokens.d.ts +3 -0
  55. package/dist/declarations/src/modules/substrate-assets/getMiniMetadata.d.ts +3 -0
  56. package/dist/declarations/src/modules/substrate-assets/getTransferCallData.d.ts +3 -0
  57. package/dist/declarations/src/modules/substrate-assets/index.d.ts +2 -0
  58. package/dist/declarations/src/modules/substrate-assets/module.d.ts +3 -0
  59. package/dist/declarations/src/modules/substrate-assets/subscribeBalances.d.ts +3 -0
  60. package/dist/declarations/src/modules/substrate-assets/types.d.ts +14 -0
  61. package/dist/declarations/src/modules/substrate-foreignassets/buildQueries.d.ts +6 -0
  62. package/dist/declarations/src/modules/substrate-foreignassets/config.d.ts +3 -0
  63. package/dist/declarations/src/modules/substrate-foreignassets/fetchBalances.d.ts +3 -0
  64. package/dist/declarations/src/modules/substrate-foreignassets/fetchTokens.d.ts +3 -0
  65. package/dist/declarations/src/modules/substrate-foreignassets/getMiniMetadata.d.ts +3 -0
  66. package/dist/declarations/src/modules/substrate-foreignassets/getTransferCallData.d.ts +3 -0
  67. package/dist/declarations/src/modules/substrate-foreignassets/index.d.ts +2 -0
  68. package/dist/declarations/src/modules/substrate-foreignassets/module.d.ts +3 -0
  69. package/dist/declarations/src/modules/substrate-foreignassets/subscribeBalances.d.ts +3 -0
  70. package/dist/declarations/src/modules/substrate-foreignassets/types.d.ts +14 -0
  71. package/dist/declarations/src/modules/substrate-hydration/config.d.ts +3 -0
  72. package/dist/declarations/src/modules/substrate-hydration/fetchBalances.d.ts +3 -0
  73. package/dist/declarations/src/modules/substrate-hydration/fetchTokens.d.ts +3 -0
  74. package/dist/declarations/src/modules/substrate-hydration/getMiniMetadata.d.ts +3 -0
  75. package/dist/declarations/src/modules/substrate-hydration/getTransferCallData.d.ts +3 -0
  76. package/dist/declarations/src/modules/substrate-hydration/index.d.ts +2 -0
  77. package/dist/declarations/src/modules/substrate-hydration/module.d.ts +3 -0
  78. package/dist/declarations/src/modules/substrate-hydration/subscribeBalances.d.ts +3 -0
  79. package/dist/declarations/src/modules/substrate-hydration/types.d.ts +14 -0
  80. package/dist/declarations/src/modules/substrate-native/bittensor/getSubtensorStakingBalances.d.ts +9 -0
  81. package/dist/declarations/src/modules/substrate-native/config.d.ts +3 -0
  82. package/dist/declarations/src/modules/substrate-native/fetchBalances.d.ts +3 -0
  83. package/dist/declarations/src/modules/substrate-native/fetchTokens.d.ts +8 -0
  84. package/dist/declarations/src/modules/substrate-native/getMiniMetadata.d.ts +3 -0
  85. package/dist/declarations/src/modules/substrate-native/getTransferCallData.d.ts +3 -0
  86. package/dist/declarations/src/modules/substrate-native/index.d.ts +4 -0
  87. package/dist/declarations/src/modules/substrate-native/module.d.ts +3 -0
  88. package/dist/declarations/src/modules/substrate-native/queries/buildBaseQueries.d.ts +17 -0
  89. package/dist/declarations/src/modules/substrate-native/queries/buildNomPoolQueries.d.ts +5 -0
  90. package/dist/declarations/src/modules/substrate-native/subscribeBalances.d.ts +3 -0
  91. package/dist/declarations/src/modules/substrate-native/types.d.ts +25 -0
  92. package/dist/declarations/src/modules/substrate-psp22/config.d.ts +3 -0
  93. package/dist/declarations/src/modules/substrate-psp22/fetchBalances.d.ts +3 -0
  94. package/dist/declarations/src/modules/substrate-psp22/fetchTokens.d.ts +3 -0
  95. package/dist/declarations/src/modules/substrate-psp22/getMiniMetadata.d.ts +3 -0
  96. package/dist/declarations/src/modules/substrate-psp22/getTransferCallData.d.ts +3 -0
  97. package/dist/declarations/src/modules/substrate-psp22/index.d.ts +2 -0
  98. package/dist/declarations/src/modules/substrate-psp22/module.d.ts +3 -0
  99. package/dist/declarations/src/modules/substrate-psp22/subscribeBalances.d.ts +3 -0
  100. package/dist/declarations/src/modules/substrate-psp22/types.d.ts +14 -0
  101. package/dist/declarations/src/modules/{util/makeContractCaller.d.ts → substrate-psp22/util.d.ts} +2 -1
  102. package/dist/declarations/src/modules/substrate-tokens/buildQueries.d.ts +5 -0
  103. package/dist/declarations/src/modules/substrate-tokens/config.d.ts +5 -0
  104. package/dist/declarations/src/modules/substrate-tokens/fetchBalances.d.ts +3 -0
  105. package/dist/declarations/src/modules/substrate-tokens/fetchTokens.d.ts +3 -0
  106. package/dist/declarations/src/modules/substrate-tokens/getMiniMetadata.d.ts +3 -0
  107. package/dist/declarations/src/modules/substrate-tokens/getTransferCallData.d.ts +3 -0
  108. package/dist/declarations/src/modules/substrate-tokens/index.d.ts +2 -0
  109. package/dist/declarations/src/modules/substrate-tokens/module.d.ts +3 -0
  110. package/dist/declarations/src/modules/substrate-tokens/subscribeBalances.d.ts +3 -0
  111. package/dist/declarations/src/modules/substrate-tokens/types.d.ts +23 -0
  112. package/dist/declarations/src/types/IBalanceModule.d.ts +94 -0
  113. package/dist/declarations/src/types/addresses.d.ts +0 -3
  114. package/dist/declarations/src/types/balances.d.ts +61 -5
  115. package/dist/declarations/src/types/balancetypes.d.ts +3 -25
  116. package/dist/declarations/src/types/chainConnectors.d.ts +8 -0
  117. package/dist/declarations/src/types/index.d.ts +2 -0
  118. package/dist/declarations/src/types/minimetadatas.d.ts +4 -13
  119. package/dist/talismn-balances.cjs.dev.js +4854 -4895
  120. package/dist/talismn-balances.cjs.prod.js +4854 -4895
  121. package/dist/talismn-balances.esm.js +4839 -4871
  122. package/package.json +18 -17
  123. package/dist/declarations/src/BalanceModule.d.ts +0 -84
  124. package/dist/declarations/src/TalismanBalancesDatabase.d.ts +0 -11
  125. package/dist/declarations/src/getMiniMetadata/getUpdatedMiniMetadatas.d.ts +0 -4
  126. package/dist/declarations/src/getMiniMetadata/index.d.ts +0 -5
  127. package/dist/declarations/src/modules/EvmErc20Module.d.ts +0 -30
  128. package/dist/declarations/src/modules/EvmNativeModule.d.ts +0 -27
  129. package/dist/declarations/src/modules/EvmUniswapV2Module.d.ts +0 -37
  130. package/dist/declarations/src/modules/SubstrateAssetsModule.d.ts +0 -40
  131. package/dist/declarations/src/modules/SubstrateForeignAssetsModule.d.ts +0 -40
  132. package/dist/declarations/src/modules/SubstrateNativeModule/index.d.ts +0 -21
  133. package/dist/declarations/src/modules/SubstrateNativeModule/subscribeBase.d.ts +0 -5
  134. package/dist/declarations/src/modules/SubstrateNativeModule/subscribeNompoolStaking.d.ts +0 -5
  135. package/dist/declarations/src/modules/SubstrateNativeModule/subscribeSubtensorStaking.d.ts +0 -5
  136. package/dist/declarations/src/modules/SubstrateNativeModule/types.d.ts +0 -32
  137. package/dist/declarations/src/modules/SubstrateNativeModule/util/QueryCache.d.ts +0 -13
  138. package/dist/declarations/src/modules/SubstrateNativeModule/util/SubNativeBalanceError.d.ts +0 -5
  139. package/dist/declarations/src/modules/SubstrateNativeModule/util/asObservable.d.ts +0 -10
  140. package/dist/declarations/src/modules/SubstrateNativeModule/util/buildQueries.d.ts +0 -14
  141. package/dist/declarations/src/modules/SubstrateNativeModule/util/mergeBalances.d.ts +0 -13
  142. package/dist/declarations/src/modules/SubstrateNativeModule/util/sortChains.d.ts +0 -1
  143. package/dist/declarations/src/modules/SubstrateNativeModule/util/systemProperties.d.ts +0 -5
  144. package/dist/declarations/src/modules/SubstratePsp22Module.d.ts +0 -40
  145. package/dist/declarations/src/modules/SubstrateTokensModule.d.ts +0 -43
  146. package/dist/declarations/src/modules/abis/erc20.d.ts +0 -227
  147. package/dist/declarations/src/modules/util/InferBalanceModuleTypes.d.ts +0 -30
  148. package/dist/declarations/src/modules/util/RpcStateQueryHelper.d.ts +0 -19
  149. package/dist/declarations/src/modules/util/balances.d.ts +0 -8
  150. package/dist/declarations/src/modules/util/buildStorageCoders.d.ts +0 -43
  151. package/dist/declarations/src/modules/util/decodeOutput.d.ts +0 -13
  152. package/dist/declarations/src/modules/util/detectTransferMethod.d.ts +0 -11
  153. package/dist/declarations/src/modules/util/getAddresssesByTokenByNetwork.d.ts +0 -3
  154. package/dist/declarations/src/modules/util/getUniqueChainIds.d.ts +0 -5
  155. package/dist/declarations/src/modules/util/index.d.ts +0 -9
  156. package/dist/declarations/src/modules/util/storageCompression.d.ts +0 -9
  157. package/dist/declarations/src/plugins.d.ts +0 -17
  158. package/dist/declarations/src/upgrades/2024-01-25-upgradeRemoveSymbolFromNativeTokenId.d.ts +0 -2
  159. package/dist/declarations/src/upgrades/2024-03-19-upgradeBalancesDataBlob.d.ts +0 -2
  160. package/dist/declarations/src/upgrades/index.d.ts +0 -2
  161. package/plugins/dist/talismn-balances-plugins.cjs.d.ts +0 -1
  162. package/plugins/dist/talismn-balances-plugins.cjs.dev.js +0 -2
  163. package/plugins/dist/talismn-balances-plugins.cjs.js +0 -7
  164. package/plugins/dist/talismn-balances-plugins.cjs.prod.js +0 -2
  165. package/plugins/dist/talismn-balances-plugins.esm.js +0 -1
  166. package/plugins/package.json +0 -4
  167. /package/dist/declarations/src/{getMiniMetadata → getMiniMetadatas}/getMetadataRpc.d.ts +0 -0
  168. /package/dist/declarations/src/{getMiniMetadata → getMiniMetadatas}/getSpecVersion.d.ts +0 -0
  169. /package/dist/declarations/src/modules/{SubstrateNativeModule/util → substrate-native/bittensor}/subtensor.d.ts +0 -0
  170. /package/dist/declarations/src/modules/{SubstrateNativeModule/util/balanceLockTypes.d.ts → substrate-native/util/lockTypes.d.ts} +0 -0
  171. /package/dist/declarations/src/modules/{SubstrateNativeModule → substrate-native}/util/nompoolAccountId.d.ts +0 -0
@@ -0,0 +1,34 @@
1
+ import { ChaindataProvider, TokenId } from "@talismn/chaindata-provider";
2
+ import { Observable } from "rxjs";
3
+ import { ChainConnectors } from ".";
4
+ import { Address, IBalance, MiniMetadata } from "./types";
5
+ type BalancesStatus = "initialising" | "live";
6
+ export type BalancesResult = {
7
+ status: BalancesStatus;
8
+ balances: IBalance[];
9
+ };
10
+ export type BalancesStorage = {
11
+ balances: IBalance[];
12
+ miniMetadatas: MiniMetadata[];
13
+ };
14
+ export declare class BalancesProvider {
15
+ #private;
16
+ constructor(chaindataProvider: ChaindataProvider, chainConnectors: ChainConnectors, storage?: BalancesStorage);
17
+ get storage$(): Observable<BalancesStorage>;
18
+ private get storedMiniMetadataMapById$();
19
+ getBalances$(addressesByTokenId: Record<TokenId, Address[]>): Observable<BalancesResult>;
20
+ fetchBalances(addressesByTokenId: Record<TokenId, Address[]>): Promise<IBalance[]>;
21
+ private getNetworkBalances$;
22
+ private getPolkadotNetworkModuleBalances$;
23
+ private getEthereumNetworkModuleBalances$;
24
+ private getSolanaNetworkModuleBalances$;
25
+ private updateStorage$;
26
+ private getNetworkMiniMetadatas$;
27
+ private getNetworkSpecVersion$;
28
+ private getMiniMetadatas$;
29
+ private getStoredMiniMetadatas$;
30
+ private getDefaultMiniMetadatas$;
31
+ private getStoredBalances;
32
+ private cleanupAddressesByTokenId$;
33
+ }
34
+ export {};
@@ -1,4 +1,5 @@
1
1
  import { ChainConnector } from "@talismn/chain-connector";
2
2
  import { ChaindataProvider, DotNetworkId } from "@talismn/chaindata-provider";
3
3
  import { MiniMetadata } from "../types";
4
- export declare const getMiniMetadatas: (chainConnector: ChainConnector, chaindataProvider: ChaindataProvider, networkId: DotNetworkId, specVersion: number, signal?: AbortSignal) => Promise<MiniMetadata[]>;
4
+ export { getSpecVersion } from "./getSpecVersion";
5
+ export declare const getMiniMetadatas: (chainConnector: ChainConnector, chaindataProvider: ChaindataProvider, networkId: DotNetworkId, specVersion?: number) => Promise<MiniMetadata[]>;
@@ -1,5 +1,4 @@
1
- export * from "./BalanceModule";
2
- export * from "./TalismanBalancesDatabase";
3
1
  export * from "./modules";
4
2
  export * from "./types";
5
3
  export * from "./version";
4
+ export * from "./BalancesProvider";
@@ -1 +1,3 @@
1
1
  export * from "./multicall";
2
+ export * from "./erc20BalancesAggregator";
3
+ export * from "./uniswapV2Pair";
@@ -0,0 +1,3 @@
1
+ export declare const MODULE_TYPE: "evm-erc20";
2
+ export declare const PLATFORM: "ethereum";
3
+ export { type EvmErc20TokenConfig as TokenConfig } from "./types";
@@ -0,0 +1,3 @@
1
+ import { IBalanceModule } from "../../types/IBalanceModule";
2
+ import { MODULE_TYPE } from "./config";
3
+ export declare const fetchBalances: IBalanceModule<typeof MODULE_TYPE>["fetchBalances"];
@@ -0,0 +1,3 @@
1
+ import { IBalanceModule } from "../../types/IBalanceModule";
2
+ import { MODULE_TYPE, TokenConfig } from "./config";
3
+ export declare const fetchTokens: IBalanceModule<typeof MODULE_TYPE, TokenConfig>["fetchTokens"];
@@ -0,0 +1,3 @@
1
+ import { IBalanceModule } from "../../types/IBalanceModule";
2
+ import { MODULE_TYPE } from "./config";
3
+ export declare const getMiniMetadata: IBalanceModule<typeof MODULE_TYPE>["getMiniMetadata"];
@@ -0,0 +1,3 @@
1
+ import { IBalanceModule } from "../../types/IBalanceModule";
2
+ import { MODULE_TYPE } from "./config";
3
+ export declare const getTransferCallData: IBalanceModule<typeof MODULE_TYPE>["getTransferCallData"];
@@ -0,0 +1,2 @@
1
+ export * from "./module";
2
+ export * from "./types";
@@ -0,0 +1,3 @@
1
+ import { IBalanceModule } from "../../types/IBalanceModule";
2
+ import { MODULE_TYPE, TokenConfig } from "./config";
3
+ export declare const EvmErc20BalanceModule: IBalanceModule<typeof MODULE_TYPE, TokenConfig>;
@@ -0,0 +1,3 @@
1
+ import { IBalanceModule } from "../../types/IBalanceModule";
2
+ import { MODULE_TYPE } from "./config";
3
+ export declare const subscribeBalances: IBalanceModule<typeof MODULE_TYPE>["subscribeBalances"];
@@ -0,0 +1,14 @@
1
+ import z from "zod/v4";
2
+ export declare const EvmErc20TokenConfigSchema: z.ZodObject<{
3
+ symbol: z.ZodOptional<z.ZodString>;
4
+ networkId: z.ZodOptional<z.ZodString>;
5
+ isDefault: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
6
+ decimals: z.ZodOptional<z.ZodInt>;
7
+ name: z.ZodOptional<z.ZodOptional<z.ZodString>>;
8
+ logo: z.ZodOptional<z.ZodOptional<z.ZodString>>;
9
+ coingeckoId: z.ZodOptional<z.ZodOptional<z.ZodString>>;
10
+ noDiscovery: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
11
+ mirrorOf: z.ZodOptional<z.ZodOptional<z.ZodString>>;
12
+ contractAddress: z.ZodPipe<z.ZodString, z.ZodTransform<`0x${string}`, string>>;
13
+ }, z.core.$strict>;
14
+ export type EvmErc20TokenConfig = z.infer<typeof EvmErc20TokenConfigSchema>;
@@ -0,0 +1,6 @@
1
+ import { Client } from "viem";
2
+ export declare const getErc20ContractData: (client: Client, contractAddress: `0x${string}`) => Promise<{
3
+ symbol: string;
4
+ decimals: number;
5
+ name: string;
6
+ }>;
@@ -0,0 +1,3 @@
1
+ export { type EvmNativeTokenConfig as TokenConfig } from "./types";
2
+ export declare const MODULE_TYPE: "evm-native";
3
+ export declare const PLATFORM: "ethereum";
@@ -0,0 +1,3 @@
1
+ import { IBalanceModule } from "../../types/IBalanceModule";
2
+ import { MODULE_TYPE } from "./config";
3
+ export declare const fetchBalances: IBalanceModule<typeof MODULE_TYPE>["fetchBalances"];
@@ -0,0 +1,3 @@
1
+ import { IBalanceModule } from "../../types/IBalanceModule";
2
+ import { MODULE_TYPE, TokenConfig } from "./config";
3
+ export declare const fetchTokens: IBalanceModule<typeof MODULE_TYPE, TokenConfig>["fetchTokens"];
@@ -0,0 +1,3 @@
1
+ import { IBalanceModule } from "../../types/IBalanceModule";
2
+ import { MODULE_TYPE } from "./config";
3
+ export declare const getMiniMetadata: IBalanceModule<typeof MODULE_TYPE>["getMiniMetadata"];
@@ -0,0 +1,3 @@
1
+ import { IBalanceModule } from "../../types/IBalanceModule";
2
+ import { MODULE_TYPE } from "./config";
3
+ export declare const getTransferCallData: IBalanceModule<typeof MODULE_TYPE>["getTransferCallData"];
@@ -0,0 +1,2 @@
1
+ export * from "./module";
2
+ export * from "./types";
@@ -0,0 +1,3 @@
1
+ import { IBalanceModule } from "../../types/IBalanceModule";
2
+ import { MODULE_TYPE, TokenConfig } from "./config";
3
+ export declare const EvmNativeBalanceModule: IBalanceModule<typeof MODULE_TYPE, TokenConfig>;
@@ -0,0 +1,3 @@
1
+ import { IBalanceModule } from "../../types/IBalanceModule";
2
+ import { MODULE_TYPE } from "./config";
3
+ export declare const subscribeBalances: IBalanceModule<typeof MODULE_TYPE>["subscribeBalances"];
@@ -0,0 +1,13 @@
1
+ import z from "zod/v4";
2
+ export declare const EvmNativeTokenConfigSchema: z.ZodObject<{
3
+ symbol: z.ZodOptional<z.ZodString>;
4
+ networkId: z.ZodOptional<z.ZodString>;
5
+ isDefault: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
6
+ decimals: z.ZodOptional<z.ZodInt>;
7
+ name: z.ZodOptional<z.ZodOptional<z.ZodString>>;
8
+ logo: z.ZodOptional<z.ZodOptional<z.ZodString>>;
9
+ coingeckoId: z.ZodOptional<z.ZodOptional<z.ZodString>>;
10
+ noDiscovery: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
11
+ mirrorOf: z.ZodOptional<z.ZodOptional<z.ZodString>>;
12
+ }, z.core.$strict>;
13
+ export type EvmNativeTokenConfig = z.infer<typeof EvmNativeTokenConfigSchema>;
@@ -0,0 +1,3 @@
1
+ export { type EvmUniswapV2TokenConfig as TokenConfig } from "./types";
2
+ export declare const MODULE_TYPE: "evm-uniswapv2";
3
+ export declare const PLATFORM: "ethereum";
@@ -0,0 +1,3 @@
1
+ import { IBalanceModule } from "../../types/IBalanceModule";
2
+ import { MODULE_TYPE } from "./config";
3
+ export declare const fetchBalances: IBalanceModule<typeof MODULE_TYPE>["fetchBalances"];
@@ -0,0 +1,3 @@
1
+ import { IBalanceModule } from "../../types/IBalanceModule";
2
+ import { MODULE_TYPE, TokenConfig } from "./config";
3
+ export declare const fetchTokens: IBalanceModule<typeof MODULE_TYPE, TokenConfig>["fetchTokens"];
@@ -0,0 +1,3 @@
1
+ import { IBalanceModule } from "../../types/IBalanceModule";
2
+ import { MODULE_TYPE } from "./config";
3
+ export declare const getMiniMetadata: IBalanceModule<typeof MODULE_TYPE>["getMiniMetadata"];
@@ -0,0 +1,3 @@
1
+ import { IBalanceModule } from "../../types/IBalanceModule";
2
+ import { MODULE_TYPE } from "./config";
3
+ export declare const getTransferCallData: IBalanceModule<typeof MODULE_TYPE>["getTransferCallData"];
@@ -0,0 +1,2 @@
1
+ export * from "./module";
2
+ export * from "./types";
@@ -0,0 +1,3 @@
1
+ import { IBalanceModule } from "../../types/IBalanceModule";
2
+ import { MODULE_TYPE, TokenConfig } from "./config";
3
+ export declare const EvmUniswapV2BalanceModule: IBalanceModule<typeof MODULE_TYPE, TokenConfig>;
@@ -0,0 +1,3 @@
1
+ import { IBalanceModule } from "../../types/IBalanceModule";
2
+ import { MODULE_TYPE } from "./config";
3
+ export declare const subscribeBalances: IBalanceModule<typeof MODULE_TYPE>["subscribeBalances"];
@@ -0,0 +1,14 @@
1
+ import z from "zod/v4";
2
+ export declare const EvmUniswapV2TokenConfigSchema: z.ZodObject<{
3
+ symbol: z.ZodOptional<z.ZodString>;
4
+ networkId: z.ZodOptional<z.ZodString>;
5
+ isDefault: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
6
+ decimals: z.ZodOptional<z.ZodInt>;
7
+ name: z.ZodOptional<z.ZodOptional<z.ZodString>>;
8
+ logo: z.ZodOptional<z.ZodOptional<z.ZodString>>;
9
+ coingeckoId: z.ZodOptional<z.ZodOptional<z.ZodString>>;
10
+ noDiscovery: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
11
+ mirrorOf: z.ZodOptional<z.ZodOptional<z.ZodString>>;
12
+ contractAddress: z.ZodPipe<z.ZodString, z.ZodTransform<`0x${string}`, string>>;
13
+ }, z.core.$strict>;
14
+ export type EvmUniswapV2TokenConfig = z.infer<typeof EvmUniswapV2TokenConfigSchema>;
@@ -0,0 +1,12 @@
1
+ import { Client } from "viem";
2
+ export declare const getErc20ContractData: (client: Client, contractAddress: `0x${string}`) => Promise<{
3
+ symbol: string;
4
+ decimals: number;
5
+ name: string;
6
+ }>;
7
+ export declare const getUniswapV2PairContractData: (client: Client, contractAddress: `0x${string}`) => Promise<{
8
+ token0: `0x${string}`;
9
+ token1: `0x${string}`;
10
+ decimals: number;
11
+ name: string;
12
+ }>;
@@ -1,20 +1,4 @@
1
- export declare const defaultBalanceModules: (import("..").NewBalanceModule<"evm-erc20", {
2
- id: string;
3
- networkId: string;
4
- decimals: number;
5
- symbol: string;
6
- type: "evm-erc20";
7
- platform: "ethereum";
8
- contractAddress: `0x${string}`;
9
- isDefault?: boolean | undefined;
10
- name?: string | undefined;
11
- logo?: string | undefined;
12
- coingeckoId?: string | undefined;
13
- noDiscovery?: boolean | undefined;
14
- mirrorOf?: string | undefined;
15
- isCustom?: boolean | undefined;
16
- }, import("..").DefaultChainMeta, undefined, {
17
- contractAddress: `0x${string}`;
1
+ export declare const BALANCE_MODULES: (import("../types/IBalanceModule").IBalanceModule<"substrate-native", {
18
2
  symbol?: string | undefined;
19
3
  networkId?: string | undefined;
20
4
  isDefault?: boolean | undefined;
@@ -24,20 +8,16 @@ export declare const defaultBalanceModules: (import("..").NewBalanceModule<"evm-
24
8
  coingeckoId?: string | undefined;
25
9
  noDiscovery?: boolean | undefined;
26
10
  mirrorOf?: string | undefined;
27
- }> | import("..").NewBalanceModule<"evm-native", {
28
- id: string;
29
- networkId: string;
30
- decimals: number;
31
- symbol: string;
32
- type: "evm-native";
33
- platform: "ethereum";
34
- isDefault?: boolean | undefined;
35
- name?: string | undefined;
36
- logo?: string | undefined;
37
- coingeckoId?: string | undefined;
38
- noDiscovery?: boolean | undefined;
39
- mirrorOf?: string | undefined;
40
- }, import("..").DefaultChainMeta, undefined, {
11
+ }, {
12
+ disable?: boolean | undefined;
13
+ }, {
14
+ disable?: boolean | undefined;
15
+ useLegacyTransferableCalculation?: boolean | undefined;
16
+ existentialDeposit?: string | undefined;
17
+ nominationPoolsPalletId?: string | undefined;
18
+ hasSubtensorPallet?: boolean | undefined;
19
+ }> | import("../types/IBalanceModule").IBalanceModule<"substrate-assets", {
20
+ assetId: string;
41
21
  symbol?: string | undefined;
42
22
  networkId?: string | undefined;
43
23
  isDefault?: boolean | undefined;
@@ -47,39 +27,8 @@ export declare const defaultBalanceModules: (import("..").NewBalanceModule<"evm-
47
27
  coingeckoId?: string | undefined;
48
28
  noDiscovery?: boolean | undefined;
49
29
  mirrorOf?: string | undefined;
50
- }> | import("..").NewBalanceModule<"evm-uniswapv2", {
51
- id: string;
52
- networkId: string;
53
- decimals: number;
54
- symbol: string;
55
- type: "evm-uniswapv2";
56
- platform: "ethereum";
57
- contractAddress: `0x${string}`;
58
- symbol0: string;
59
- symbol1: string;
60
- decimals0: number;
61
- decimals1: number;
62
- tokenAddress0: `0x${string}`;
63
- tokenAddress1: `0x${string}`;
64
- isDefault?: boolean | undefined;
65
- name?: string | undefined;
66
- logo?: string | undefined;
67
- coingeckoId?: string | undefined;
68
- noDiscovery?: boolean | undefined;
69
- mirrorOf?: string | undefined;
70
- isCustom?: boolean | undefined;
71
- coingeckoId0?: string | undefined;
72
- coingeckoId1?: string | undefined;
73
- }, import("..").DefaultChainMeta, undefined, {
74
- contractAddress: `0x${string}`;
75
- symbol0?: string | undefined;
76
- symbol1?: string | undefined;
77
- decimals0?: number | undefined;
78
- decimals1?: number | undefined;
79
- tokenAddress0?: `0x${string}` | undefined;
80
- tokenAddress1?: `0x${string}` | undefined;
81
- coingeckoId0?: string | undefined;
82
- coingeckoId1?: string | undefined;
30
+ }, unknown, unknown> | import("../types/IBalanceModule").IBalanceModule<"substrate-hydration", {
31
+ onChainId: number;
83
32
  symbol?: string | undefined;
84
33
  networkId?: string | undefined;
85
34
  isDefault?: boolean | undefined;
@@ -89,24 +38,8 @@ export declare const defaultBalanceModules: (import("..").NewBalanceModule<"evm-
89
38
  coingeckoId?: string | undefined;
90
39
  noDiscovery?: boolean | undefined;
91
40
  mirrorOf?: string | undefined;
92
- }> | import("..").NewBalanceModule<"substrate-assets", {
93
- id: string;
94
- networkId: string;
95
- decimals: number;
96
- symbol: string;
97
- type: "substrate-assets";
98
- platform: "polkadot";
99
- assetId: string;
100
- existentialDeposit: string;
101
- isDefault?: boolean | undefined;
102
- name?: string | undefined;
103
- logo?: string | undefined;
104
- coingeckoId?: string | undefined;
105
- noDiscovery?: boolean | undefined;
106
- mirrorOf?: string | undefined;
107
- isFrozen?: boolean | undefined;
108
- }, import("./SubstrateAssetsModule").SubAssetsChainMeta, undefined, {
109
- assetId: string;
41
+ }, unknown, unknown> | import("../types/IBalanceModule").IBalanceModule<"substrate-foreignassets", {
42
+ onChainId: string;
110
43
  symbol?: string | undefined;
111
44
  networkId?: string | undefined;
112
45
  isDefault?: boolean | undefined;
@@ -116,24 +49,8 @@ export declare const defaultBalanceModules: (import("..").NewBalanceModule<"evm-
116
49
  coingeckoId?: string | undefined;
117
50
  noDiscovery?: boolean | undefined;
118
51
  mirrorOf?: string | undefined;
119
- }, import("./SubstrateAssetsModule").SubAssetsTransferParams> | import("..").NewBalanceModule<"substrate-foreignassets", {
120
- id: string;
121
- networkId: string;
122
- decimals: number;
123
- symbol: string;
124
- type: "substrate-foreignassets";
125
- platform: "polkadot";
126
- onChainId: string;
127
- existentialDeposit: string;
128
- isDefault?: boolean | undefined;
129
- name?: string | undefined;
130
- logo?: string | undefined;
131
- coingeckoId?: string | undefined;
132
- noDiscovery?: boolean | undefined;
133
- mirrorOf?: string | undefined;
134
- isFrozen?: boolean | undefined;
135
- }, import("..").DefaultChainMeta, undefined, {
136
- onChainId: string;
52
+ }, unknown, unknown> | import("../types/IBalanceModule").IBalanceModule<"substrate-psp22", {
53
+ contractAddress: string;
137
54
  symbol?: string | undefined;
138
55
  networkId?: string | undefined;
139
56
  isDefault?: boolean | undefined;
@@ -143,23 +60,24 @@ export declare const defaultBalanceModules: (import("..").NewBalanceModule<"evm-
143
60
  coingeckoId?: string | undefined;
144
61
  noDiscovery?: boolean | undefined;
145
62
  mirrorOf?: string | undefined;
146
- }, import("./SubstrateForeignAssetsModule").SubForeignAssetsTransferParams> | import("..").NewBalanceModule<"substrate-native", {
147
- id: string;
148
- networkId: string;
149
- decimals: number;
63
+ }, unknown, unknown> | import("../types/IBalanceModule").IBalanceModule<"substrate-tokens", {
150
64
  symbol: string;
151
- type: "substrate-native";
152
- platform: "polkadot";
65
+ decimals: number;
153
66
  existentialDeposit: string;
67
+ onChainId: string | number;
68
+ networkId?: string | undefined;
154
69
  isDefault?: boolean | undefined;
155
70
  name?: string | undefined;
156
71
  logo?: string | undefined;
157
72
  coingeckoId?: string | undefined;
158
73
  noDiscovery?: boolean | undefined;
159
74
  mirrorOf?: string | undefined;
160
- }, import("./SubstrateNativeModule").SubNativeChainMeta, {
161
- disable?: boolean | undefined;
162
75
  }, {
76
+ palletId?: string | undefined;
77
+ }, {
78
+ palletId: string;
79
+ }> | import("../types/IBalanceModule").IBalanceModule<"evm-erc20", {
80
+ contractAddress: `0x${string}`;
163
81
  symbol?: string | undefined;
164
82
  networkId?: string | undefined;
165
83
  isDefault?: boolean | undefined;
@@ -169,22 +87,8 @@ export declare const defaultBalanceModules: (import("..").NewBalanceModule<"evm-
169
87
  coingeckoId?: string | undefined;
170
88
  noDiscovery?: boolean | undefined;
171
89
  mirrorOf?: string | undefined;
172
- }, import("./SubstrateNativeModule").SubNativeTransferParams> | import("..").NewBalanceModule<"substrate-psp22", {
173
- id: string;
174
- networkId: string;
175
- decimals: number;
176
- symbol: string;
177
- type: "substrate-psp22";
178
- platform: "polkadot";
179
- contractAddress: string;
180
- isDefault?: boolean | undefined;
181
- name?: string | undefined;
182
- logo?: string | undefined;
183
- coingeckoId?: string | undefined;
184
- noDiscovery?: boolean | undefined;
185
- mirrorOf?: string | undefined;
186
- }, import("..").DefaultChainMeta, undefined, {
187
- contractAddress: string;
90
+ }, unknown, unknown> | import("../types/IBalanceModule").IBalanceModule<"evm-uniswapv2", {
91
+ contractAddress: `0x${string}`;
188
92
  symbol?: string | undefined;
189
93
  networkId?: string | undefined;
190
94
  isDefault?: boolean | undefined;
@@ -194,26 +98,17 @@ export declare const defaultBalanceModules: (import("..").NewBalanceModule<"evm-
194
98
  coingeckoId?: string | undefined;
195
99
  noDiscovery?: boolean | undefined;
196
100
  mirrorOf?: string | undefined;
197
- }, import("./SubstratePsp22Module").SubPsp22TransferParams> | import("..").NewBalanceModule<"substrate-tokens", {
198
- id: string;
199
- networkId: string;
200
- decimals: number;
201
- symbol: string;
202
- type: "substrate-tokens";
203
- platform: "polkadot";
204
- onChainId: string | number;
205
- existentialDeposit: string;
101
+ }, unknown, unknown> | import("../types/IBalanceModule").IBalanceModule<"evm-native", {
102
+ symbol?: string | undefined;
103
+ networkId?: string | undefined;
206
104
  isDefault?: boolean | undefined;
105
+ decimals?: number | undefined;
207
106
  name?: string | undefined;
208
107
  logo?: string | undefined;
209
108
  coingeckoId?: string | undefined;
210
109
  noDiscovery?: boolean | undefined;
211
110
  mirrorOf?: string | undefined;
212
- }, import("./SubstrateTokensModule").SubTokensChainMeta, {
213
- palletId?: string | undefined;
214
- }, {
215
- onChainId: string | number;
216
- existentialDeposit?: string | undefined;
111
+ }, unknown, unknown> | import("../types/IBalanceModule").IBalanceModule<"sol-native", {
217
112
  symbol?: string | undefined;
218
113
  networkId?: string | undefined;
219
114
  isDefault?: boolean | undefined;
@@ -223,14 +118,17 @@ export declare const defaultBalanceModules: (import("..").NewBalanceModule<"evm-
223
118
  coingeckoId?: string | undefined;
224
119
  noDiscovery?: boolean | undefined;
225
120
  mirrorOf?: string | undefined;
226
- }, import("./SubstrateTokensModule").SubTokensTransferParams>)[];
227
- export * from "./EvmErc20Module";
228
- export * from "./EvmNativeModule";
229
- export * from "./EvmUniswapV2Module";
230
- export * from "./SubstrateAssetsModule";
231
- export * from "./SubstrateForeignAssetsModule";
232
- export * from "./SubstrateNativeModule";
233
- export * from "./SubstratePsp22Module";
234
- export * from "./SubstrateTokensModule";
235
- export * from "./util";
121
+ }, unknown, unknown>)[];
122
+ export type AnyBalanceModule = (typeof BALANCE_MODULES)[number];
123
+ export * from "./evm-native";
124
+ export * from "./evm-erc20";
125
+ export * from "./evm-uniswapv2";
126
+ export * from "./substrate-native";
127
+ export * from "./substrate-assets";
128
+ export * from "./substrate-foreignassets";
129
+ export * from "./substrate-hydration";
130
+ export * from "./substrate-psp22";
131
+ export * from "./substrate-tokens";
132
+ export * from "./sol-native";
236
133
  export * from "./abis";
134
+ export * from "../types/IBalanceModule";
@@ -0,0 +1,13 @@
1
+ import { DotNetworkId } from "@talismn/chaindata-provider";
2
+ import { ScaleStorageCoder } from "@talismn/scale";
3
+ import { MiniMetadata } from "../../types";
4
+ type NetworkCoders = {
5
+ [key: string]: [string, string];
6
+ };
7
+ type NetworkStorageCoders<TCoders extends NetworkCoders> = {
8
+ [Property in keyof TCoders]: ScaleStorageCoder | undefined;
9
+ };
10
+ export declare const buildNetworkStorageCoders: <TCoders extends {
11
+ [key: string]: [string, string];
12
+ }>(chainId: DotNetworkId, miniMetadata: MiniMetadata, coders: TCoders) => NetworkStorageCoders<TCoders> | null;
13
+ export {};
@@ -0,0 +1,11 @@
1
+ import { TokenId } from "@talismn/chaindata-provider";
2
+ import { Address } from "../../types";
3
+ export declare class BalanceFetchError extends Error {
4
+ tokenId: TokenId;
5
+ address: Address;
6
+ constructor(message: string, tokenId: TokenId, address: Address, cause?: Error);
7
+ }
8
+ export declare class BalanceFetchNetworkError extends Error {
9
+ evmNetworkId: string | undefined;
10
+ constructor(message: string, evmNetworkId?: string, cause?: Error);
11
+ }
@@ -0,0 +1,2 @@
1
+ import { ChainConnector } from "@talismn/chain-connector";
2
+ export declare const fetchRuntimeCallResult: <T>(connector: ChainConnector, networkId: string, metadataRpc: `0x${string}`, apiName: string, method: string, args: unknown[]) => Promise<T>;
@@ -0,0 +1,6 @@
1
+ export * from "./fetchRuntimeCallResult";
2
+ export * from "./errors";
3
+ export * from "./types";
4
+ export * from "./utils";
5
+ export * from "./rpcQueryPack";
6
+ export * from "./buildNetworkStorageCoders";
@@ -0,0 +1,10 @@
1
+ import { ChainConnector } from "@talismn/chain-connector";
2
+ import { DotNetworkId } from "@talismn/chaindata-provider";
3
+ import { Observable } from "rxjs";
4
+ export type MaybeStateKey = `0x${string}` | null;
5
+ export type RpcQueryPack<T> = {
6
+ stateKeys: MaybeStateKey[];
7
+ decodeResult: (changes: MaybeStateKey[]) => T;
8
+ };
9
+ export declare const fetchRpcQueryPack: <T>(connector: ChainConnector, networkId: DotNetworkId, queries: RpcQueryPack<T>[]) => Promise<T[]>;
10
+ export declare const getRpcQueryPack$: <T>(connector: ChainConnector, networkId: DotNetworkId, queries: RpcQueryPack<T>[], timeout?: number | false) => Observable<T[]>;
@@ -0,0 +1,12 @@
1
+ import { TokenOfType, TokenType } from "@talismn/chaindata-provider";
2
+ import { TokenPlatform, TokensWithAddresses } from "../../types/IBalanceModule";
3
+ export type BalanceDef<T extends TokenType = TokenType> = {
4
+ token: TokenOfType<T>;
5
+ address: TokenPlatform<T> extends "ethereum" ? `0x${string}` : string;
6
+ };
7
+ export declare const getBalanceDefs: <T extends TokenType = TokenType>(addressesByToken: TokensWithAddresses) => BalanceDef<T>[];
8
+ export type QueryStorageChange = [stateKey: `0x${string}`, value: `0x${string}`];
9
+ export type QueryStorageResult = [{
10
+ block: `0x${string}`;
11
+ changes: QueryStorageChange[];
12
+ }] | [];
@@ -0,0 +1,6 @@
1
+ import { UnifiedMetadata } from "@talismn/scale";
2
+ export declare const hasStorageItem: (metadata: UnifiedMetadata, palletName: string, itemName: string) => boolean;
3
+ export declare const hasStorageItems: (metadata: UnifiedMetadata, palletName: string, itemNames: string[]) => boolean;
4
+ export declare const hasRuntimeApi: (metadata: UnifiedMetadata, apiName: string, method: string) => boolean;
5
+ export declare const getConstantValue: <T>(metadataRpc: `0x${string}`, pallet: string, constant: string) => T;
6
+ export declare const tryGetConstantValue: <T>(metadataRpc: `0x${string}`, pallet: string, constant: string) => T | null;
@@ -0,0 +1,3 @@
1
+ export { type SolNativeTokenConfig as TokenConfig } from "./types";
2
+ export declare const MODULE_TYPE: "sol-native";
3
+ export declare const PLATFORM: "solana";
@@ -0,0 +1,3 @@
1
+ import { IBalanceModule } from "../../types/IBalanceModule";
2
+ import { MODULE_TYPE } from "./config";
3
+ export declare const fetchBalances: IBalanceModule<typeof MODULE_TYPE>["fetchBalances"];
@@ -0,0 +1,3 @@
1
+ import { IBalanceModule } from "../../types/IBalanceModule";
2
+ import { MODULE_TYPE, TokenConfig } from "./config";
3
+ export declare const fetchTokens: IBalanceModule<typeof MODULE_TYPE, TokenConfig>["fetchTokens"];
@@ -0,0 +1,3 @@
1
+ import { IBalanceModule } from "../../types/IBalanceModule";
2
+ import { MODULE_TYPE } from "./config";
3
+ export declare const getMiniMetadata: IBalanceModule<typeof MODULE_TYPE>["getMiniMetadata"];
@@ -0,0 +1,3 @@
1
+ import { IBalanceModule } from "../../types/IBalanceModule";
2
+ import { MODULE_TYPE } from "./config";
3
+ export declare const getTransferCallData: IBalanceModule<typeof MODULE_TYPE>["getTransferCallData"];
@@ -0,0 +1,2 @@
1
+ export * from "./module";
2
+ export * from "./types";
@@ -0,0 +1,3 @@
1
+ import { IBalanceModule } from "../../types/IBalanceModule";
2
+ import { MODULE_TYPE, TokenConfig } from "./config";
3
+ export declare const SolNativeBalanceModule: IBalanceModule<typeof MODULE_TYPE, TokenConfig>;
@@ -0,0 +1,3 @@
1
+ import { IBalanceModule } from "../../types/IBalanceModule";
2
+ import { MODULE_TYPE } from "./config";
3
+ export declare const subscribeBalances: IBalanceModule<typeof MODULE_TYPE>["subscribeBalances"];