@metamask-previews/assets-controller 0.0.0-preview-903db2da → 0.0.0-preview-3ec2a74

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 (250) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/AssetsController.cjs +1028 -61
  3. package/dist/AssetsController.cjs.map +1 -1
  4. package/dist/AssetsController.d.cts +229 -83
  5. package/dist/AssetsController.d.cts.map +1 -1
  6. package/dist/AssetsController.d.mts +229 -83
  7. package/dist/AssetsController.d.mts.map +1 -1
  8. package/dist/AssetsController.mjs +1024 -59
  9. package/dist/AssetsController.mjs.map +1 -1
  10. package/dist/data-sources/AbstractDataSource.cjs +103 -0
  11. package/dist/data-sources/AbstractDataSource.cjs.map +1 -0
  12. package/dist/data-sources/AbstractDataSource.d.cts +92 -0
  13. package/dist/data-sources/AbstractDataSource.d.cts.map +1 -0
  14. package/dist/data-sources/AbstractDataSource.d.mts +92 -0
  15. package/dist/data-sources/AbstractDataSource.d.mts.map +1 -0
  16. package/dist/data-sources/AbstractDataSource.mjs +99 -0
  17. package/dist/data-sources/AbstractDataSource.mjs.map +1 -0
  18. package/dist/data-sources/AccountsApiDataSource.cjs +421 -0
  19. package/dist/data-sources/AccountsApiDataSource.cjs.map +1 -0
  20. package/dist/data-sources/AccountsApiDataSource.d.cts +103 -0
  21. package/dist/data-sources/AccountsApiDataSource.d.cts.map +1 -0
  22. package/dist/data-sources/AccountsApiDataSource.d.mts +103 -0
  23. package/dist/data-sources/AccountsApiDataSource.d.mts.map +1 -0
  24. package/dist/data-sources/AccountsApiDataSource.mjs +416 -0
  25. package/dist/data-sources/AccountsApiDataSource.mjs.map +1 -0
  26. package/dist/data-sources/BackendWebsocketDataSource.cjs +388 -0
  27. package/dist/data-sources/BackendWebsocketDataSource.cjs.map +1 -0
  28. package/dist/data-sources/BackendWebsocketDataSource.d.cts +95 -0
  29. package/dist/data-sources/BackendWebsocketDataSource.d.cts.map +1 -0
  30. package/dist/data-sources/BackendWebsocketDataSource.d.mts +95 -0
  31. package/dist/data-sources/BackendWebsocketDataSource.d.mts.map +1 -0
  32. package/dist/data-sources/BackendWebsocketDataSource.mjs +383 -0
  33. package/dist/data-sources/BackendWebsocketDataSource.mjs.map +1 -0
  34. package/dist/data-sources/PriceDataSource.cjs +350 -0
  35. package/dist/data-sources/PriceDataSource.cjs.map +1 -0
  36. package/dist/data-sources/PriceDataSource.d.cts +153 -0
  37. package/dist/data-sources/PriceDataSource.d.cts.map +1 -0
  38. package/dist/data-sources/PriceDataSource.d.mts +153 -0
  39. package/dist/data-sources/PriceDataSource.d.mts.map +1 -0
  40. package/dist/data-sources/PriceDataSource.mjs +346 -0
  41. package/dist/data-sources/PriceDataSource.mjs.map +1 -0
  42. package/dist/data-sources/RpcDataSource.cjs +410 -0
  43. package/dist/data-sources/RpcDataSource.cjs.map +1 -0
  44. package/dist/data-sources/RpcDataSource.d.cts +154 -0
  45. package/dist/data-sources/RpcDataSource.d.cts.map +1 -0
  46. package/dist/data-sources/RpcDataSource.d.mts +154 -0
  47. package/dist/data-sources/RpcDataSource.d.mts.map +1 -0
  48. package/dist/data-sources/RpcDataSource.mjs +405 -0
  49. package/dist/data-sources/RpcDataSource.mjs.map +1 -0
  50. package/dist/data-sources/SnapDataSource.cjs +734 -0
  51. package/dist/data-sources/SnapDataSource.cjs.map +1 -0
  52. package/dist/data-sources/SnapDataSource.d.cts +217 -0
  53. package/dist/data-sources/SnapDataSource.d.cts.map +1 -0
  54. package/dist/data-sources/SnapDataSource.d.mts +217 -0
  55. package/dist/data-sources/SnapDataSource.d.mts.map +1 -0
  56. package/dist/data-sources/SnapDataSource.mjs +723 -0
  57. package/dist/data-sources/SnapDataSource.mjs.map +1 -0
  58. package/dist/data-sources/TokenDataSource.cjs +179 -0
  59. package/dist/data-sources/TokenDataSource.cjs.map +1 -0
  60. package/dist/data-sources/TokenDataSource.d.cts +62 -0
  61. package/dist/data-sources/TokenDataSource.d.cts.map +1 -0
  62. package/dist/data-sources/TokenDataSource.d.mts +62 -0
  63. package/dist/data-sources/TokenDataSource.d.mts.map +1 -0
  64. package/dist/data-sources/TokenDataSource.mjs +175 -0
  65. package/dist/data-sources/TokenDataSource.mjs.map +1 -0
  66. package/dist/data-sources/index.cjs +62 -0
  67. package/dist/data-sources/index.cjs.map +1 -0
  68. package/dist/data-sources/index.d.cts +9 -0
  69. package/dist/data-sources/index.d.cts.map +1 -0
  70. package/dist/data-sources/index.d.mts +9 -0
  71. package/dist/data-sources/index.d.mts.map +1 -0
  72. package/dist/data-sources/index.mjs +23 -0
  73. package/dist/data-sources/index.mjs.map +1 -0
  74. package/dist/data-sources/initDataSources.cjs +199 -0
  75. package/dist/data-sources/initDataSources.cjs.map +1 -0
  76. package/dist/data-sources/initDataSources.d.cts +123 -0
  77. package/dist/data-sources/initDataSources.d.cts.map +1 -0
  78. package/dist/data-sources/initDataSources.d.mts +123 -0
  79. package/dist/data-sources/initDataSources.d.mts.map +1 -0
  80. package/dist/data-sources/initDataSources.mjs +194 -0
  81. package/dist/data-sources/initDataSources.mjs.map +1 -0
  82. package/dist/data-sources/rpc-datasource/clients/MulticallClient.cjs +638 -0
  83. package/dist/data-sources/rpc-datasource/clients/MulticallClient.cjs.map +1 -0
  84. package/dist/data-sources/rpc-datasource/clients/MulticallClient.d.cts +47 -0
  85. package/dist/data-sources/rpc-datasource/clients/MulticallClient.d.cts.map +1 -0
  86. package/dist/data-sources/rpc-datasource/clients/MulticallClient.d.mts +47 -0
  87. package/dist/data-sources/rpc-datasource/clients/MulticallClient.d.mts.map +1 -0
  88. package/dist/data-sources/rpc-datasource/clients/MulticallClient.mjs +632 -0
  89. package/dist/data-sources/rpc-datasource/clients/MulticallClient.mjs.map +1 -0
  90. package/dist/data-sources/rpc-datasource/clients/index.cjs +8 -0
  91. package/dist/data-sources/rpc-datasource/clients/index.cjs.map +1 -0
  92. package/dist/data-sources/rpc-datasource/clients/index.d.cts +3 -0
  93. package/dist/data-sources/rpc-datasource/clients/index.d.cts.map +1 -0
  94. package/dist/data-sources/rpc-datasource/clients/index.d.mts +3 -0
  95. package/dist/data-sources/rpc-datasource/clients/index.d.mts.map +1 -0
  96. package/dist/data-sources/rpc-datasource/clients/index.mjs +2 -0
  97. package/dist/data-sources/rpc-datasource/clients/index.mjs.map +1 -0
  98. package/dist/data-sources/rpc-datasource/index.cjs +9 -0
  99. package/dist/data-sources/rpc-datasource/index.cjs.map +1 -0
  100. package/dist/data-sources/rpc-datasource/index.d.cts +4 -0
  101. package/dist/data-sources/rpc-datasource/index.d.cts.map +1 -0
  102. package/dist/data-sources/rpc-datasource/index.d.mts +4 -0
  103. package/dist/data-sources/rpc-datasource/index.d.mts.map +1 -0
  104. package/dist/data-sources/rpc-datasource/index.mjs +3 -0
  105. package/dist/data-sources/rpc-datasource/index.mjs.map +1 -0
  106. package/dist/data-sources/rpc-datasource/services/BalanceFetcher.cjs +167 -0
  107. package/dist/data-sources/rpc-datasource/services/BalanceFetcher.cjs.map +1 -0
  108. package/dist/data-sources/rpc-datasource/services/BalanceFetcher.d.cts +16 -0
  109. package/dist/data-sources/rpc-datasource/services/BalanceFetcher.d.cts.map +1 -0
  110. package/dist/data-sources/rpc-datasource/services/BalanceFetcher.d.mts +16 -0
  111. package/dist/data-sources/rpc-datasource/services/BalanceFetcher.d.mts.map +1 -0
  112. package/dist/data-sources/rpc-datasource/services/BalanceFetcher.mjs +163 -0
  113. package/dist/data-sources/rpc-datasource/services/BalanceFetcher.mjs.map +1 -0
  114. package/dist/data-sources/rpc-datasource/services/TokenDetector.cjs +173 -0
  115. package/dist/data-sources/rpc-datasource/services/TokenDetector.cjs.map +1 -0
  116. package/dist/data-sources/rpc-datasource/services/TokenDetector.d.cts +14 -0
  117. package/dist/data-sources/rpc-datasource/services/TokenDetector.d.cts.map +1 -0
  118. package/dist/data-sources/rpc-datasource/services/TokenDetector.d.mts +14 -0
  119. package/dist/data-sources/rpc-datasource/services/TokenDetector.d.mts.map +1 -0
  120. package/dist/data-sources/rpc-datasource/services/TokenDetector.mjs +169 -0
  121. package/dist/data-sources/rpc-datasource/services/TokenDetector.mjs.map +1 -0
  122. package/dist/data-sources/rpc-datasource/services/index.cjs +8 -0
  123. package/dist/data-sources/rpc-datasource/services/index.cjs.map +1 -0
  124. package/dist/data-sources/rpc-datasource/services/index.d.cts +3 -0
  125. package/dist/data-sources/rpc-datasource/services/index.d.cts.map +1 -0
  126. package/dist/data-sources/rpc-datasource/services/index.d.mts +3 -0
  127. package/dist/data-sources/rpc-datasource/services/index.d.mts.map +1 -0
  128. package/dist/data-sources/rpc-datasource/services/index.mjs +3 -0
  129. package/dist/data-sources/rpc-datasource/services/index.mjs.map +1 -0
  130. package/dist/data-sources/rpc-datasource/types/assets.cjs +3 -0
  131. package/dist/data-sources/rpc-datasource/types/assets.cjs.map +1 -0
  132. package/dist/data-sources/rpc-datasource/types/assets.d.cts +53 -0
  133. package/dist/data-sources/rpc-datasource/types/assets.d.cts.map +1 -0
  134. package/dist/data-sources/rpc-datasource/types/assets.d.mts +53 -0
  135. package/dist/data-sources/rpc-datasource/types/assets.d.mts.map +1 -0
  136. package/dist/data-sources/rpc-datasource/types/assets.mjs +2 -0
  137. package/dist/data-sources/rpc-datasource/types/assets.mjs.map +1 -0
  138. package/dist/data-sources/rpc-datasource/types/config.cjs +3 -0
  139. package/dist/data-sources/rpc-datasource/types/config.cjs.map +1 -0
  140. package/dist/data-sources/rpc-datasource/types/config.d.cts +18 -0
  141. package/dist/data-sources/rpc-datasource/types/config.d.cts.map +1 -0
  142. package/dist/data-sources/rpc-datasource/types/config.d.mts +18 -0
  143. package/dist/data-sources/rpc-datasource/types/config.d.mts.map +1 -0
  144. package/dist/data-sources/rpc-datasource/types/config.mjs +2 -0
  145. package/dist/data-sources/rpc-datasource/types/config.mjs.map +1 -0
  146. package/dist/data-sources/rpc-datasource/types/core.cjs +3 -0
  147. package/dist/data-sources/rpc-datasource/types/core.cjs.map +1 -0
  148. package/dist/data-sources/rpc-datasource/types/core.d.cts +19 -0
  149. package/dist/data-sources/rpc-datasource/types/core.d.cts.map +1 -0
  150. package/dist/data-sources/rpc-datasource/types/core.d.mts +19 -0
  151. package/dist/data-sources/rpc-datasource/types/core.d.mts.map +1 -0
  152. package/dist/data-sources/rpc-datasource/types/core.mjs +2 -0
  153. package/dist/data-sources/rpc-datasource/types/core.mjs.map +1 -0
  154. package/dist/data-sources/rpc-datasource/types/index.cjs +3 -0
  155. package/dist/data-sources/rpc-datasource/types/index.cjs.map +1 -0
  156. package/dist/data-sources/rpc-datasource/types/index.d.cts +7 -0
  157. package/dist/data-sources/rpc-datasource/types/index.d.cts.map +1 -0
  158. package/dist/data-sources/rpc-datasource/types/index.d.mts +7 -0
  159. package/dist/data-sources/rpc-datasource/types/index.d.mts.map +1 -0
  160. package/dist/data-sources/rpc-datasource/types/index.mjs +2 -0
  161. package/dist/data-sources/rpc-datasource/types/index.mjs.map +1 -0
  162. package/dist/data-sources/rpc-datasource/types/multicall.cjs +3 -0
  163. package/dist/data-sources/rpc-datasource/types/multicall.cjs.map +1 -0
  164. package/dist/data-sources/rpc-datasource/types/multicall.d.cts +24 -0
  165. package/dist/data-sources/rpc-datasource/types/multicall.d.cts.map +1 -0
  166. package/dist/data-sources/rpc-datasource/types/multicall.d.mts +24 -0
  167. package/dist/data-sources/rpc-datasource/types/multicall.d.mts.map +1 -0
  168. package/dist/data-sources/rpc-datasource/types/multicall.mjs +2 -0
  169. package/dist/data-sources/rpc-datasource/types/multicall.mjs.map +1 -0
  170. package/dist/data-sources/rpc-datasource/types/services.cjs +3 -0
  171. package/dist/data-sources/rpc-datasource/types/services.cjs.map +1 -0
  172. package/dist/data-sources/rpc-datasource/types/services.d.cts +74 -0
  173. package/dist/data-sources/rpc-datasource/types/services.d.cts.map +1 -0
  174. package/dist/data-sources/rpc-datasource/types/services.d.mts +74 -0
  175. package/dist/data-sources/rpc-datasource/types/services.d.mts.map +1 -0
  176. package/dist/data-sources/rpc-datasource/types/services.mjs +2 -0
  177. package/dist/data-sources/rpc-datasource/types/services.mjs.map +1 -0
  178. package/dist/data-sources/rpc-datasource/types/state.cjs +3 -0
  179. package/dist/data-sources/rpc-datasource/types/state.cjs.map +1 -0
  180. package/dist/data-sources/rpc-datasource/types/state.d.cts +67 -0
  181. package/dist/data-sources/rpc-datasource/types/state.d.cts.map +1 -0
  182. package/dist/data-sources/rpc-datasource/types/state.d.mts +67 -0
  183. package/dist/data-sources/rpc-datasource/types/state.d.mts.map +1 -0
  184. package/dist/data-sources/rpc-datasource/types/state.mjs +2 -0
  185. package/dist/data-sources/rpc-datasource/types/state.mjs.map +1 -0
  186. package/dist/data-sources/rpc-datasource/utils/batch.cjs +45 -0
  187. package/dist/data-sources/rpc-datasource/utils/batch.cjs.map +1 -0
  188. package/dist/data-sources/rpc-datasource/utils/batch.d.cts +28 -0
  189. package/dist/data-sources/rpc-datasource/utils/batch.d.cts.map +1 -0
  190. package/dist/data-sources/rpc-datasource/utils/batch.d.mts +28 -0
  191. package/dist/data-sources/rpc-datasource/utils/batch.d.mts.map +1 -0
  192. package/dist/data-sources/rpc-datasource/utils/batch.mjs +40 -0
  193. package/dist/data-sources/rpc-datasource/utils/batch.mjs.map +1 -0
  194. package/dist/data-sources/rpc-datasource/utils/index.cjs +7 -0
  195. package/dist/data-sources/rpc-datasource/utils/index.cjs.map +1 -0
  196. package/dist/data-sources/rpc-datasource/utils/index.d.cts +2 -0
  197. package/dist/data-sources/rpc-datasource/utils/index.d.cts.map +1 -0
  198. package/dist/data-sources/rpc-datasource/utils/index.d.mts +2 -0
  199. package/dist/data-sources/rpc-datasource/utils/index.d.mts.map +1 -0
  200. package/dist/data-sources/rpc-datasource/utils/index.mjs +2 -0
  201. package/dist/data-sources/rpc-datasource/utils/index.mjs.map +1 -0
  202. package/dist/index.cjs +70 -1
  203. package/dist/index.cjs.map +1 -1
  204. package/dist/index.d.cts +19 -1
  205. package/dist/index.d.cts.map +1 -1
  206. package/dist/index.d.mts +19 -1
  207. package/dist/index.d.mts.map +1 -1
  208. package/dist/index.mjs +31 -0
  209. package/dist/index.mjs.map +1 -1
  210. package/dist/logger.cjs +7 -0
  211. package/dist/logger.cjs.map +1 -0
  212. package/dist/logger.d.cts +5 -0
  213. package/dist/logger.d.cts.map +1 -0
  214. package/dist/logger.d.mts +5 -0
  215. package/dist/logger.d.mts.map +1 -0
  216. package/dist/logger.mjs +4 -0
  217. package/dist/logger.mjs.map +1 -0
  218. package/dist/middlewares/DetectionMiddleware.cjs +101 -0
  219. package/dist/middlewares/DetectionMiddleware.cjs.map +1 -0
  220. package/dist/middlewares/DetectionMiddleware.d.cts +54 -0
  221. package/dist/middlewares/DetectionMiddleware.d.cts.map +1 -0
  222. package/dist/middlewares/DetectionMiddleware.d.mts +54 -0
  223. package/dist/middlewares/DetectionMiddleware.d.mts.map +1 -0
  224. package/dist/middlewares/DetectionMiddleware.mjs +97 -0
  225. package/dist/middlewares/DetectionMiddleware.mjs.map +1 -0
  226. package/dist/middlewares/index.cjs +6 -0
  227. package/dist/middlewares/index.cjs.map +1 -0
  228. package/dist/middlewares/index.d.cts +2 -0
  229. package/dist/middlewares/index.d.cts.map +1 -0
  230. package/dist/middlewares/index.d.mts +2 -0
  231. package/dist/middlewares/index.d.mts.map +1 -0
  232. package/dist/middlewares/index.mjs +2 -0
  233. package/dist/middlewares/index.mjs.map +1 -0
  234. package/dist/types.cjs +39 -0
  235. package/dist/types.cjs.map +1 -0
  236. package/dist/types.d.cts +360 -0
  237. package/dist/types.d.cts.map +1 -0
  238. package/dist/types.d.mts +360 -0
  239. package/dist/types.d.mts.map +1 -0
  240. package/dist/types.mjs +35 -0
  241. package/dist/types.mjs.map +1 -0
  242. package/dist/utils.cjs +28 -0
  243. package/dist/utils.cjs.map +1 -0
  244. package/dist/utils.d.cts +13 -0
  245. package/dist/utils.d.cts.map +1 -0
  246. package/dist/utils.d.mts +13 -0
  247. package/dist/utils.d.mts.map +1 -0
  248. package/dist/utils.mjs +24 -0
  249. package/dist/utils.mjs.map +1 -0
  250. package/package.json +15 -2
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=assets.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assets.mjs","sourceRoot":"","sources":["../../../../src/data-sources/rpc-datasource/types/assets.ts"],"names":[],"mappings":"","sourcesContent":["import type { CaipAssetType } from '@metamask/utils';\n\nimport type { AccountId, Address, AssetType, ChainId } from './core';\n\n/**\n * Core asset definition.\n */\nexport type Asset = {\n /** CAIP-19 asset identifier */\n assetId: CaipAssetType;\n /** Chain ID in hex format */\n chainId: ChainId;\n /** Contract address (zero address for native) */\n address: Address;\n /** Asset type */\n type: AssetType;\n /** Token symbol (e.g., \"ETH\", \"USDC\") */\n symbol?: string;\n /** Token name (e.g., \"Ethereum\", \"USD Coin\") */\n name?: string;\n /** Token decimals */\n decimals?: number;\n /** Logo image URL */\n image?: string;\n /** Whether this is the chain's native token */\n isNative: boolean;\n /** Spam detection flag */\n isSpam?: boolean;\n /** Verification status */\n verified?: boolean;\n /** Token list sources */\n aggregators?: string[];\n};\n\n/**\n * Asset balance for a specific account.\n */\nexport type AssetBalance = {\n /** CAIP-19 asset identifier */\n assetId: CaipAssetType;\n /** Account ID (UUID) */\n accountId: AccountId;\n /** Chain ID in hex format */\n chainId: ChainId;\n /** Raw balance as string (wei/smallest unit) */\n balance: string;\n /** Human-readable balance (balance / 10^decimals) */\n formattedBalance: string;\n /** Token decimals used for formatting */\n decimals: number;\n /** Block number when balance was fetched */\n blockNumber?: number;\n /** Timestamp when balance was fetched */\n timestamp: number;\n};\n"]}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=config.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.cjs","sourceRoot":"","sources":["../../../../src/data-sources/rpc-datasource/types/config.ts"],"names":[],"mappings":"","sourcesContent":["import type { ChainId } from './core';\n\n/**\n * Minimal provider interface for RPC calls.\n */\nexport type Provider = {\n call(transaction: { to: string; data: string }): Promise<string>;\n getBalance(address: string): Promise<{ toString(): string }>;\n};\n\n/**\n * Function to get provider for a specific chain.\n */\nexport type GetProviderFunction = (chainId: ChainId) => Provider;\n"]}
@@ -0,0 +1,18 @@
1
+ import type { ChainId } from "./core.cjs";
2
+ /**
3
+ * Minimal provider interface for RPC calls.
4
+ */
5
+ export type Provider = {
6
+ call(transaction: {
7
+ to: string;
8
+ data: string;
9
+ }): Promise<string>;
10
+ getBalance(address: string): Promise<{
11
+ toString(): string;
12
+ }>;
13
+ };
14
+ /**
15
+ * Function to get provider for a specific chain.
16
+ */
17
+ export type GetProviderFunction = (chainId: ChainId) => Provider;
18
+ //# sourceMappingURL=config.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.cts","sourceRoot":"","sources":["../../../../src/data-sources/rpc-datasource/types/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAe;AAEtC;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG;IACrB,IAAI,CAAC,WAAW,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACjE,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,QAAQ,IAAI,MAAM,CAAA;KAAE,CAAC,CAAC;CAC9D,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,QAAQ,CAAC"}
@@ -0,0 +1,18 @@
1
+ import type { ChainId } from "./core.mjs";
2
+ /**
3
+ * Minimal provider interface for RPC calls.
4
+ */
5
+ export type Provider = {
6
+ call(transaction: {
7
+ to: string;
8
+ data: string;
9
+ }): Promise<string>;
10
+ getBalance(address: string): Promise<{
11
+ toString(): string;
12
+ }>;
13
+ };
14
+ /**
15
+ * Function to get provider for a specific chain.
16
+ */
17
+ export type GetProviderFunction = (chainId: ChainId) => Provider;
18
+ //# sourceMappingURL=config.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.mts","sourceRoot":"","sources":["../../../../src/data-sources/rpc-datasource/types/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAe;AAEtC;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG;IACrB,IAAI,CAAC,WAAW,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACjE,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,QAAQ,IAAI,MAAM,CAAA;KAAE,CAAC,CAAC;CAC9D,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,QAAQ,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=config.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.mjs","sourceRoot":"","sources":["../../../../src/data-sources/rpc-datasource/types/config.ts"],"names":[],"mappings":"","sourcesContent":["import type { ChainId } from './core';\n\n/**\n * Minimal provider interface for RPC calls.\n */\nexport type Provider = {\n call(transaction: { to: string; data: string }): Promise<string>;\n getBalance(address: string): Promise<{ toString(): string }>;\n};\n\n/**\n * Function to get provider for a specific chain.\n */\nexport type GetProviderFunction = (chainId: ChainId) => Provider;\n"]}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=core.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.cjs","sourceRoot":"","sources":["../../../../src/data-sources/rpc-datasource/types/core.ts"],"names":[],"mappings":"","sourcesContent":["import type { CaipAssetType, Hex } from '@metamask/utils';\n\n// Re-export for convenience\nexport type { CaipAssetType };\n\n/**\n * Account ID - UUID from InternalAccount.id\n */\nexport type AccountId = string;\n\n/**\n * Chain ID in hex format (e.g., \"0x1\" for Ethereum mainnet)\n */\nexport type ChainId = Hex;\n\n/**\n * Token/Contract address in hex format\n */\nexport type Address = Hex;\n\n/**\n * Asset type identifier for categorization.\n */\nexport type AssetType = 'native' | 'erc20' | 'erc721' | 'erc1155';\n"]}
@@ -0,0 +1,19 @@
1
+ import type { CaipAssetType, Hex } from "@metamask/utils";
2
+ export type { CaipAssetType };
3
+ /**
4
+ * Account ID - UUID from InternalAccount.id
5
+ */
6
+ export type AccountId = string;
7
+ /**
8
+ * Chain ID in hex format (e.g., "0x1" for Ethereum mainnet)
9
+ */
10
+ export type ChainId = Hex;
11
+ /**
12
+ * Token/Contract address in hex format
13
+ */
14
+ export type Address = Hex;
15
+ /**
16
+ * Asset type identifier for categorization.
17
+ */
18
+ export type AssetType = 'native' | 'erc20' | 'erc721' | 'erc1155';
19
+ //# sourceMappingURL=core.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.d.cts","sourceRoot":"","sources":["../../../../src/data-sources/rpc-datasource/types/core.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,GAAG,EAAE,wBAAwB;AAG1D,YAAY,EAAE,aAAa,EAAE,CAAC;AAE9B;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAE/B;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,GAAG,CAAC;AAE1B;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,GAAG,CAAC;AAE1B;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC"}
@@ -0,0 +1,19 @@
1
+ import type { CaipAssetType, Hex } from "@metamask/utils";
2
+ export type { CaipAssetType };
3
+ /**
4
+ * Account ID - UUID from InternalAccount.id
5
+ */
6
+ export type AccountId = string;
7
+ /**
8
+ * Chain ID in hex format (e.g., "0x1" for Ethereum mainnet)
9
+ */
10
+ export type ChainId = Hex;
11
+ /**
12
+ * Token/Contract address in hex format
13
+ */
14
+ export type Address = Hex;
15
+ /**
16
+ * Asset type identifier for categorization.
17
+ */
18
+ export type AssetType = 'native' | 'erc20' | 'erc721' | 'erc1155';
19
+ //# sourceMappingURL=core.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.d.mts","sourceRoot":"","sources":["../../../../src/data-sources/rpc-datasource/types/core.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,GAAG,EAAE,wBAAwB;AAG1D,YAAY,EAAE,aAAa,EAAE,CAAC;AAE9B;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAE/B;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,GAAG,CAAC;AAE1B;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,GAAG,CAAC;AAE1B;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=core.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.mjs","sourceRoot":"","sources":["../../../../src/data-sources/rpc-datasource/types/core.ts"],"names":[],"mappings":"","sourcesContent":["import type { CaipAssetType, Hex } from '@metamask/utils';\n\n// Re-export for convenience\nexport type { CaipAssetType };\n\n/**\n * Account ID - UUID from InternalAccount.id\n */\nexport type AccountId = string;\n\n/**\n * Chain ID in hex format (e.g., \"0x1\" for Ethereum mainnet)\n */\nexport type ChainId = Hex;\n\n/**\n * Token/Contract address in hex format\n */\nexport type Address = Hex;\n\n/**\n * Asset type identifier for categorization.\n */\nexport type AssetType = 'native' | 'erc20' | 'erc721' | 'erc1155';\n"]}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","sourceRoot":"","sources":["../../../../src/data-sources/rpc-datasource/types/index.ts"],"names":[],"mappings":"","sourcesContent":["// Core types\nexport type {\n AccountId,\n Address,\n AssetType,\n CaipAssetType,\n ChainId,\n} from './core';\n\n// Asset types\nexport type { Asset, AssetBalance } from './assets';\n\n// State types\nexport type {\n TokenChainsCacheEntry,\n TokenListEntry,\n TokenListState,\n UserToken,\n UserTokensState,\n} from './state';\n\n// Config types\nexport type { GetProviderFunction, Provider } from './config';\n\n// Multicall types\nexport type { BalanceOfRequest, BalanceOfResponse } from './multicall';\n\n// Service types\nexport type {\n BalanceFetchOptions,\n BalanceFetchResult,\n TokenDetectionOptions,\n TokenDetectionResult,\n TokenFetchInfo,\n} from './services';\n"]}
@@ -0,0 +1,7 @@
1
+ export type { AccountId, Address, AssetType, CaipAssetType, ChainId, } from "./core.cjs";
2
+ export type { Asset, AssetBalance } from "./assets.cjs";
3
+ export type { TokenChainsCacheEntry, TokenListEntry, TokenListState, UserToken, UserTokensState, } from "./state.cjs";
4
+ export type { GetProviderFunction, Provider } from "./config.cjs";
5
+ export type { BalanceOfRequest, BalanceOfResponse } from "./multicall.cjs";
6
+ export type { BalanceFetchOptions, BalanceFetchResult, TokenDetectionOptions, TokenDetectionResult, TokenFetchInfo, } from "./services.cjs";
7
+ //# sourceMappingURL=index.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../../../../src/data-sources/rpc-datasource/types/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,SAAS,EACT,OAAO,EACP,SAAS,EACT,aAAa,EACb,OAAO,GACR,mBAAe;AAGhB,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,qBAAiB;AAGpD,YAAY,EACV,qBAAqB,EACrB,cAAc,EACd,cAAc,EACd,SAAS,EACT,eAAe,GAChB,oBAAgB;AAGjB,YAAY,EAAE,mBAAmB,EAAE,QAAQ,EAAE,qBAAiB;AAG9D,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,wBAAoB;AAGvE,YAAY,EACV,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,cAAc,GACf,uBAAmB"}
@@ -0,0 +1,7 @@
1
+ export type { AccountId, Address, AssetType, CaipAssetType, ChainId, } from "./core.mjs";
2
+ export type { Asset, AssetBalance } from "./assets.mjs";
3
+ export type { TokenChainsCacheEntry, TokenListEntry, TokenListState, UserToken, UserTokensState, } from "./state.mjs";
4
+ export type { GetProviderFunction, Provider } from "./config.mjs";
5
+ export type { BalanceOfRequest, BalanceOfResponse } from "./multicall.mjs";
6
+ export type { BalanceFetchOptions, BalanceFetchResult, TokenDetectionOptions, TokenDetectionResult, TokenFetchInfo, } from "./services.mjs";
7
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../../../src/data-sources/rpc-datasource/types/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,SAAS,EACT,OAAO,EACP,SAAS,EACT,aAAa,EACb,OAAO,GACR,mBAAe;AAGhB,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,qBAAiB;AAGpD,YAAY,EACV,qBAAqB,EACrB,cAAc,EACd,cAAc,EACd,SAAS,EACT,eAAe,GAChB,oBAAgB;AAGjB,YAAY,EAAE,mBAAmB,EAAE,QAAQ,EAAE,qBAAiB;AAG9D,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,wBAAoB;AAGvE,YAAY,EACV,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,cAAc,GACf,uBAAmB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../../../src/data-sources/rpc-datasource/types/index.ts"],"names":[],"mappings":"","sourcesContent":["// Core types\nexport type {\n AccountId,\n Address,\n AssetType,\n CaipAssetType,\n ChainId,\n} from './core';\n\n// Asset types\nexport type { Asset, AssetBalance } from './assets';\n\n// State types\nexport type {\n TokenChainsCacheEntry,\n TokenListEntry,\n TokenListState,\n UserToken,\n UserTokensState,\n} from './state';\n\n// Config types\nexport type { GetProviderFunction, Provider } from './config';\n\n// Multicall types\nexport type { BalanceOfRequest, BalanceOfResponse } from './multicall';\n\n// Service types\nexport type {\n BalanceFetchOptions,\n BalanceFetchResult,\n TokenDetectionOptions,\n TokenDetectionResult,\n TokenFetchInfo,\n} from './services';\n"]}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=multicall.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multicall.cjs","sourceRoot":"","sources":["../../../../src/data-sources/rpc-datasource/types/multicall.ts"],"names":[],"mappings":"","sourcesContent":["import type { Address } from './core';\n\n/**\n * Balance request for batch balance fetching.\n */\nexport type BalanceOfRequest = {\n /** Token contract address (zero address for native) */\n tokenAddress: Address;\n /** Account address to check balance for */\n accountAddress: Address;\n};\n\n/**\n * Balance response from batch balance fetching.\n */\nexport type BalanceOfResponse = {\n /** Token contract address */\n tokenAddress: Address;\n /** Account address */\n accountAddress: Address;\n /** Whether the call succeeded */\n success: boolean;\n /** Balance as string (raw value) */\n balance?: string;\n};\n"]}
@@ -0,0 +1,24 @@
1
+ import type { Address } from "./core.cjs";
2
+ /**
3
+ * Balance request for batch balance fetching.
4
+ */
5
+ export type BalanceOfRequest = {
6
+ /** Token contract address (zero address for native) */
7
+ tokenAddress: Address;
8
+ /** Account address to check balance for */
9
+ accountAddress: Address;
10
+ };
11
+ /**
12
+ * Balance response from batch balance fetching.
13
+ */
14
+ export type BalanceOfResponse = {
15
+ /** Token contract address */
16
+ tokenAddress: Address;
17
+ /** Account address */
18
+ accountAddress: Address;
19
+ /** Whether the call succeeded */
20
+ success: boolean;
21
+ /** Balance as string (raw value) */
22
+ balance?: string;
23
+ };
24
+ //# sourceMappingURL=multicall.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multicall.d.cts","sourceRoot":"","sources":["../../../../src/data-sources/rpc-datasource/types/multicall.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAe;AAEtC;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,uDAAuD;IACvD,YAAY,EAAE,OAAO,CAAC;IACtB,2CAA2C;IAC3C,cAAc,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,6BAA6B;IAC7B,YAAY,EAAE,OAAO,CAAC;IACtB,sBAAsB;IACtB,cAAc,EAAE,OAAO,CAAC;IACxB,iCAAiC;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,oCAAoC;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC"}
@@ -0,0 +1,24 @@
1
+ import type { Address } from "./core.mjs";
2
+ /**
3
+ * Balance request for batch balance fetching.
4
+ */
5
+ export type BalanceOfRequest = {
6
+ /** Token contract address (zero address for native) */
7
+ tokenAddress: Address;
8
+ /** Account address to check balance for */
9
+ accountAddress: Address;
10
+ };
11
+ /**
12
+ * Balance response from batch balance fetching.
13
+ */
14
+ export type BalanceOfResponse = {
15
+ /** Token contract address */
16
+ tokenAddress: Address;
17
+ /** Account address */
18
+ accountAddress: Address;
19
+ /** Whether the call succeeded */
20
+ success: boolean;
21
+ /** Balance as string (raw value) */
22
+ balance?: string;
23
+ };
24
+ //# sourceMappingURL=multicall.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multicall.d.mts","sourceRoot":"","sources":["../../../../src/data-sources/rpc-datasource/types/multicall.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAe;AAEtC;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,uDAAuD;IACvD,YAAY,EAAE,OAAO,CAAC;IACtB,2CAA2C;IAC3C,cAAc,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,6BAA6B;IAC7B,YAAY,EAAE,OAAO,CAAC;IACtB,sBAAsB;IACtB,cAAc,EAAE,OAAO,CAAC;IACxB,iCAAiC;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,oCAAoC;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=multicall.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multicall.mjs","sourceRoot":"","sources":["../../../../src/data-sources/rpc-datasource/types/multicall.ts"],"names":[],"mappings":"","sourcesContent":["import type { Address } from './core';\n\n/**\n * Balance request for batch balance fetching.\n */\nexport type BalanceOfRequest = {\n /** Token contract address (zero address for native) */\n tokenAddress: Address;\n /** Account address to check balance for */\n accountAddress: Address;\n};\n\n/**\n * Balance response from batch balance fetching.\n */\nexport type BalanceOfResponse = {\n /** Token contract address */\n tokenAddress: Address;\n /** Account address */\n accountAddress: Address;\n /** Whether the call succeeded */\n success: boolean;\n /** Balance as string (raw value) */\n balance?: string;\n};\n"]}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=services.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"services.cjs","sourceRoot":"","sources":["../../../../src/data-sources/rpc-datasource/types/services.ts"],"names":[],"mappings":"","sourcesContent":["import type { Asset, AssetBalance } from './assets';\nimport type { AccountId, Address, ChainId } from './core';\n\n/**\n * Token detection result.\n */\nexport type TokenDetectionResult = {\n /** Chain ID */\n chainId: ChainId;\n /** Account ID */\n accountId: AccountId;\n /** Account address used for detection */\n accountAddress: Address;\n /** Newly detected tokens with non-zero balances */\n detectedAssets: Asset[];\n /** Balances for newly detected tokens */\n detectedBalances: AssetBalance[];\n /** Tokens that were checked but had zero balance */\n zeroBalanceAddresses: Address[];\n /** Tokens that failed to be checked */\n failedAddresses: Address[];\n /** Timestamp of detection */\n timestamp: number;\n};\n\n/**\n * Token detection options.\n */\nexport type TokenDetectionOptions = {\n /** Maximum number of tokens to check per batch */\n batchSize?: number;\n /** Timeout for detection in milliseconds */\n timeout?: number;\n};\n\n/**\n * Balance fetch result.\n */\nexport type BalanceFetchResult = {\n /** Chain ID */\n chainId: ChainId;\n /** Account ID */\n accountId: AccountId;\n /** Account address */\n accountAddress: Address;\n /** Fetched balances */\n balances: AssetBalance[];\n /** Token addresses that failed to fetch */\n failedAddresses: Address[];\n /** Block number when balances were fetched */\n blockNumber?: number;\n /** Timestamp of fetch */\n timestamp: number;\n};\n\n/**\n * Balance fetch options.\n */\nexport type BalanceFetchOptions = {\n /** Maximum number of tokens to fetch per batch */\n batchSize?: number;\n /** Timeout for fetch in milliseconds */\n timeout?: number;\n /** Include native token balance */\n includeNative?: boolean;\n};\n\n/**\n * Token info for balance fetching.\n */\nexport type TokenFetchInfo = {\n /** Token contract address */\n address: Address;\n /** Token decimals */\n decimals: number;\n /** Token symbol (optional) */\n symbol?: string;\n};\n"]}
@@ -0,0 +1,74 @@
1
+ import type { Asset, AssetBalance } from "./assets.cjs";
2
+ import type { AccountId, Address, ChainId } from "./core.cjs";
3
+ /**
4
+ * Token detection result.
5
+ */
6
+ export type TokenDetectionResult = {
7
+ /** Chain ID */
8
+ chainId: ChainId;
9
+ /** Account ID */
10
+ accountId: AccountId;
11
+ /** Account address used for detection */
12
+ accountAddress: Address;
13
+ /** Newly detected tokens with non-zero balances */
14
+ detectedAssets: Asset[];
15
+ /** Balances for newly detected tokens */
16
+ detectedBalances: AssetBalance[];
17
+ /** Tokens that were checked but had zero balance */
18
+ zeroBalanceAddresses: Address[];
19
+ /** Tokens that failed to be checked */
20
+ failedAddresses: Address[];
21
+ /** Timestamp of detection */
22
+ timestamp: number;
23
+ };
24
+ /**
25
+ * Token detection options.
26
+ */
27
+ export type TokenDetectionOptions = {
28
+ /** Maximum number of tokens to check per batch */
29
+ batchSize?: number;
30
+ /** Timeout for detection in milliseconds */
31
+ timeout?: number;
32
+ };
33
+ /**
34
+ * Balance fetch result.
35
+ */
36
+ export type BalanceFetchResult = {
37
+ /** Chain ID */
38
+ chainId: ChainId;
39
+ /** Account ID */
40
+ accountId: AccountId;
41
+ /** Account address */
42
+ accountAddress: Address;
43
+ /** Fetched balances */
44
+ balances: AssetBalance[];
45
+ /** Token addresses that failed to fetch */
46
+ failedAddresses: Address[];
47
+ /** Block number when balances were fetched */
48
+ blockNumber?: number;
49
+ /** Timestamp of fetch */
50
+ timestamp: number;
51
+ };
52
+ /**
53
+ * Balance fetch options.
54
+ */
55
+ export type BalanceFetchOptions = {
56
+ /** Maximum number of tokens to fetch per batch */
57
+ batchSize?: number;
58
+ /** Timeout for fetch in milliseconds */
59
+ timeout?: number;
60
+ /** Include native token balance */
61
+ includeNative?: boolean;
62
+ };
63
+ /**
64
+ * Token info for balance fetching.
65
+ */
66
+ export type TokenFetchInfo = {
67
+ /** Token contract address */
68
+ address: Address;
69
+ /** Token decimals */
70
+ decimals: number;
71
+ /** Token symbol (optional) */
72
+ symbol?: string;
73
+ };
74
+ //# sourceMappingURL=services.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"services.d.cts","sourceRoot":"","sources":["../../../../src/data-sources/rpc-datasource/types/services.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,qBAAiB;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,mBAAe;AAE1D;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,eAAe;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,iBAAiB;IACjB,SAAS,EAAE,SAAS,CAAC;IACrB,yCAAyC;IACzC,cAAc,EAAE,OAAO,CAAC;IACxB,mDAAmD;IACnD,cAAc,EAAE,KAAK,EAAE,CAAC;IACxB,yCAAyC;IACzC,gBAAgB,EAAE,YAAY,EAAE,CAAC;IACjC,oDAAoD;IACpD,oBAAoB,EAAE,OAAO,EAAE,CAAC;IAChC,uCAAuC;IACvC,eAAe,EAAE,OAAO,EAAE,CAAC;IAC3B,6BAA6B;IAC7B,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,kDAAkD;IAClD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,eAAe;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,iBAAiB;IACjB,SAAS,EAAE,SAAS,CAAC;IACrB,sBAAsB;IACtB,cAAc,EAAE,OAAO,CAAC;IACxB,uBAAuB;IACvB,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,2CAA2C;IAC3C,eAAe,EAAE,OAAO,EAAE,CAAC;IAC3B,8CAA8C;IAC9C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yBAAyB;IACzB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,kDAAkD;IAClD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wCAAwC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mCAAmC;IACnC,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,6BAA6B;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,qBAAqB;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,8BAA8B;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC"}
@@ -0,0 +1,74 @@
1
+ import type { Asset, AssetBalance } from "./assets.mjs";
2
+ import type { AccountId, Address, ChainId } from "./core.mjs";
3
+ /**
4
+ * Token detection result.
5
+ */
6
+ export type TokenDetectionResult = {
7
+ /** Chain ID */
8
+ chainId: ChainId;
9
+ /** Account ID */
10
+ accountId: AccountId;
11
+ /** Account address used for detection */
12
+ accountAddress: Address;
13
+ /** Newly detected tokens with non-zero balances */
14
+ detectedAssets: Asset[];
15
+ /** Balances for newly detected tokens */
16
+ detectedBalances: AssetBalance[];
17
+ /** Tokens that were checked but had zero balance */
18
+ zeroBalanceAddresses: Address[];
19
+ /** Tokens that failed to be checked */
20
+ failedAddresses: Address[];
21
+ /** Timestamp of detection */
22
+ timestamp: number;
23
+ };
24
+ /**
25
+ * Token detection options.
26
+ */
27
+ export type TokenDetectionOptions = {
28
+ /** Maximum number of tokens to check per batch */
29
+ batchSize?: number;
30
+ /** Timeout for detection in milliseconds */
31
+ timeout?: number;
32
+ };
33
+ /**
34
+ * Balance fetch result.
35
+ */
36
+ export type BalanceFetchResult = {
37
+ /** Chain ID */
38
+ chainId: ChainId;
39
+ /** Account ID */
40
+ accountId: AccountId;
41
+ /** Account address */
42
+ accountAddress: Address;
43
+ /** Fetched balances */
44
+ balances: AssetBalance[];
45
+ /** Token addresses that failed to fetch */
46
+ failedAddresses: Address[];
47
+ /** Block number when balances were fetched */
48
+ blockNumber?: number;
49
+ /** Timestamp of fetch */
50
+ timestamp: number;
51
+ };
52
+ /**
53
+ * Balance fetch options.
54
+ */
55
+ export type BalanceFetchOptions = {
56
+ /** Maximum number of tokens to fetch per batch */
57
+ batchSize?: number;
58
+ /** Timeout for fetch in milliseconds */
59
+ timeout?: number;
60
+ /** Include native token balance */
61
+ includeNative?: boolean;
62
+ };
63
+ /**
64
+ * Token info for balance fetching.
65
+ */
66
+ export type TokenFetchInfo = {
67
+ /** Token contract address */
68
+ address: Address;
69
+ /** Token decimals */
70
+ decimals: number;
71
+ /** Token symbol (optional) */
72
+ symbol?: string;
73
+ };
74
+ //# sourceMappingURL=services.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"services.d.mts","sourceRoot":"","sources":["../../../../src/data-sources/rpc-datasource/types/services.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,qBAAiB;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,mBAAe;AAE1D;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,eAAe;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,iBAAiB;IACjB,SAAS,EAAE,SAAS,CAAC;IACrB,yCAAyC;IACzC,cAAc,EAAE,OAAO,CAAC;IACxB,mDAAmD;IACnD,cAAc,EAAE,KAAK,EAAE,CAAC;IACxB,yCAAyC;IACzC,gBAAgB,EAAE,YAAY,EAAE,CAAC;IACjC,oDAAoD;IACpD,oBAAoB,EAAE,OAAO,EAAE,CAAC;IAChC,uCAAuC;IACvC,eAAe,EAAE,OAAO,EAAE,CAAC;IAC3B,6BAA6B;IAC7B,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,kDAAkD;IAClD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,eAAe;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,iBAAiB;IACjB,SAAS,EAAE,SAAS,CAAC;IACrB,sBAAsB;IACtB,cAAc,EAAE,OAAO,CAAC;IACxB,uBAAuB;IACvB,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,2CAA2C;IAC3C,eAAe,EAAE,OAAO,EAAE,CAAC;IAC3B,8CAA8C;IAC9C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yBAAyB;IACzB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,kDAAkD;IAClD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wCAAwC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mCAAmC;IACnC,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,6BAA6B;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,qBAAqB;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,8BAA8B;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=services.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"services.mjs","sourceRoot":"","sources":["../../../../src/data-sources/rpc-datasource/types/services.ts"],"names":[],"mappings":"","sourcesContent":["import type { Asset, AssetBalance } from './assets';\nimport type { AccountId, Address, ChainId } from './core';\n\n/**\n * Token detection result.\n */\nexport type TokenDetectionResult = {\n /** Chain ID */\n chainId: ChainId;\n /** Account ID */\n accountId: AccountId;\n /** Account address used for detection */\n accountAddress: Address;\n /** Newly detected tokens with non-zero balances */\n detectedAssets: Asset[];\n /** Balances for newly detected tokens */\n detectedBalances: AssetBalance[];\n /** Tokens that were checked but had zero balance */\n zeroBalanceAddresses: Address[];\n /** Tokens that failed to be checked */\n failedAddresses: Address[];\n /** Timestamp of detection */\n timestamp: number;\n};\n\n/**\n * Token detection options.\n */\nexport type TokenDetectionOptions = {\n /** Maximum number of tokens to check per batch */\n batchSize?: number;\n /** Timeout for detection in milliseconds */\n timeout?: number;\n};\n\n/**\n * Balance fetch result.\n */\nexport type BalanceFetchResult = {\n /** Chain ID */\n chainId: ChainId;\n /** Account ID */\n accountId: AccountId;\n /** Account address */\n accountAddress: Address;\n /** Fetched balances */\n balances: AssetBalance[];\n /** Token addresses that failed to fetch */\n failedAddresses: Address[];\n /** Block number when balances were fetched */\n blockNumber?: number;\n /** Timestamp of fetch */\n timestamp: number;\n};\n\n/**\n * Balance fetch options.\n */\nexport type BalanceFetchOptions = {\n /** Maximum number of tokens to fetch per batch */\n batchSize?: number;\n /** Timeout for fetch in milliseconds */\n timeout?: number;\n /** Include native token balance */\n includeNative?: boolean;\n};\n\n/**\n * Token info for balance fetching.\n */\nexport type TokenFetchInfo = {\n /** Token contract address */\n address: Address;\n /** Token decimals */\n decimals: number;\n /** Token symbol (optional) */\n symbol?: string;\n};\n"]}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=state.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.cjs","sourceRoot":"","sources":["../../../../src/data-sources/rpc-datasource/types/state.ts"],"names":[],"mappings":"","sourcesContent":["import type { Address, ChainId } from './core';\n\n/**\n * Single token entry from token list.\n */\nexport type TokenListEntry = {\n /** Contract address */\n address: Address;\n /** Token symbol */\n symbol: string;\n /** Token name */\n name: string;\n /** Token decimals */\n decimals: number;\n /** Logo URL */\n iconUrl?: string;\n /** Aggregator sources */\n aggregators?: string[];\n /** Occurrence count in lists */\n occurrences?: number;\n};\n\n/**\n * Cache entry for a chain's token list.\n */\nexport type TokenChainsCacheEntry = {\n /** Timestamp when the cache was last updated */\n timestamp: number;\n /** Token list data: address -> TokenListEntry */\n data: Record<Address, TokenListEntry>;\n};\n\n/**\n * Token list state shape (from TokenListController).\n */\nexport type TokenListState = {\n /** Map of chain ID to token list cache entry */\n tokensChainsCache: Record<ChainId, TokenChainsCacheEntry>;\n};\n\n/**\n * Token entry from user's imported/detected tokens.\n */\nexport type UserToken = {\n /** Contract address */\n address: Address;\n /** Token symbol */\n symbol: string;\n /** Token name */\n name?: string;\n /** Token decimals */\n decimals: number;\n /** Logo URL */\n image?: string;\n /** Whether token was auto-detected */\n isERC721?: boolean;\n /** Aggregator sources */\n aggregators?: string[];\n};\n\n/**\n * User tokens state shape (from TokensController).\n */\nexport type UserTokensState = {\n /** All imported tokens: chainId -> accountAddress -> Token[] */\n allTokens: Record<ChainId, Record<Address, UserToken[]>>;\n /** All detected tokens: chainId -> accountAddress -> Token[] */\n allDetectedTokens: Record<ChainId, Record<Address, UserToken[]>>;\n /** Ignored tokens: chainId -> address[] */\n allIgnoredTokens: Record<ChainId, Record<Address, Address[]>>;\n};\n"]}
@@ -0,0 +1,67 @@
1
+ import type { Address, ChainId } from "./core.cjs";
2
+ /**
3
+ * Single token entry from token list.
4
+ */
5
+ export type TokenListEntry = {
6
+ /** Contract address */
7
+ address: Address;
8
+ /** Token symbol */
9
+ symbol: string;
10
+ /** Token name */
11
+ name: string;
12
+ /** Token decimals */
13
+ decimals: number;
14
+ /** Logo URL */
15
+ iconUrl?: string;
16
+ /** Aggregator sources */
17
+ aggregators?: string[];
18
+ /** Occurrence count in lists */
19
+ occurrences?: number;
20
+ };
21
+ /**
22
+ * Cache entry for a chain's token list.
23
+ */
24
+ export type TokenChainsCacheEntry = {
25
+ /** Timestamp when the cache was last updated */
26
+ timestamp: number;
27
+ /** Token list data: address -> TokenListEntry */
28
+ data: Record<Address, TokenListEntry>;
29
+ };
30
+ /**
31
+ * Token list state shape (from TokenListController).
32
+ */
33
+ export type TokenListState = {
34
+ /** Map of chain ID to token list cache entry */
35
+ tokensChainsCache: Record<ChainId, TokenChainsCacheEntry>;
36
+ };
37
+ /**
38
+ * Token entry from user's imported/detected tokens.
39
+ */
40
+ export type UserToken = {
41
+ /** Contract address */
42
+ address: Address;
43
+ /** Token symbol */
44
+ symbol: string;
45
+ /** Token name */
46
+ name?: string;
47
+ /** Token decimals */
48
+ decimals: number;
49
+ /** Logo URL */
50
+ image?: string;
51
+ /** Whether token was auto-detected */
52
+ isERC721?: boolean;
53
+ /** Aggregator sources */
54
+ aggregators?: string[];
55
+ };
56
+ /**
57
+ * User tokens state shape (from TokensController).
58
+ */
59
+ export type UserTokensState = {
60
+ /** All imported tokens: chainId -> accountAddress -> Token[] */
61
+ allTokens: Record<ChainId, Record<Address, UserToken[]>>;
62
+ /** All detected tokens: chainId -> accountAddress -> Token[] */
63
+ allDetectedTokens: Record<ChainId, Record<Address, UserToken[]>>;
64
+ /** Ignored tokens: chainId -> address[] */
65
+ allIgnoredTokens: Record<ChainId, Record<Address, Address[]>>;
66
+ };
67
+ //# sourceMappingURL=state.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.d.cts","sourceRoot":"","sources":["../../../../src/data-sources/rpc-datasource/types/state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,mBAAe;AAE/C;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,uBAAuB;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,mBAAmB;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,qBAAqB;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yBAAyB;IACzB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,gCAAgC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,gDAAgD;IAChD,SAAS,EAAE,MAAM,CAAC;IAClB,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;CACvC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,gDAAgD;IAChD,iBAAiB,EAAE,MAAM,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC;CAC3D,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG;IACtB,uBAAuB;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,mBAAmB;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qBAAqB;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sCAAsC;IACtC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,yBAAyB;IACzB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,gEAAgE;IAChE,SAAS,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IACzD,gEAAgE;IAChE,iBAAiB,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IACjE,2CAA2C;IAC3C,gBAAgB,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;CAC/D,CAAC"}
@@ -0,0 +1,67 @@
1
+ import type { Address, ChainId } from "./core.mjs";
2
+ /**
3
+ * Single token entry from token list.
4
+ */
5
+ export type TokenListEntry = {
6
+ /** Contract address */
7
+ address: Address;
8
+ /** Token symbol */
9
+ symbol: string;
10
+ /** Token name */
11
+ name: string;
12
+ /** Token decimals */
13
+ decimals: number;
14
+ /** Logo URL */
15
+ iconUrl?: string;
16
+ /** Aggregator sources */
17
+ aggregators?: string[];
18
+ /** Occurrence count in lists */
19
+ occurrences?: number;
20
+ };
21
+ /**
22
+ * Cache entry for a chain's token list.
23
+ */
24
+ export type TokenChainsCacheEntry = {
25
+ /** Timestamp when the cache was last updated */
26
+ timestamp: number;
27
+ /** Token list data: address -> TokenListEntry */
28
+ data: Record<Address, TokenListEntry>;
29
+ };
30
+ /**
31
+ * Token list state shape (from TokenListController).
32
+ */
33
+ export type TokenListState = {
34
+ /** Map of chain ID to token list cache entry */
35
+ tokensChainsCache: Record<ChainId, TokenChainsCacheEntry>;
36
+ };
37
+ /**
38
+ * Token entry from user's imported/detected tokens.
39
+ */
40
+ export type UserToken = {
41
+ /** Contract address */
42
+ address: Address;
43
+ /** Token symbol */
44
+ symbol: string;
45
+ /** Token name */
46
+ name?: string;
47
+ /** Token decimals */
48
+ decimals: number;
49
+ /** Logo URL */
50
+ image?: string;
51
+ /** Whether token was auto-detected */
52
+ isERC721?: boolean;
53
+ /** Aggregator sources */
54
+ aggregators?: string[];
55
+ };
56
+ /**
57
+ * User tokens state shape (from TokensController).
58
+ */
59
+ export type UserTokensState = {
60
+ /** All imported tokens: chainId -> accountAddress -> Token[] */
61
+ allTokens: Record<ChainId, Record<Address, UserToken[]>>;
62
+ /** All detected tokens: chainId -> accountAddress -> Token[] */
63
+ allDetectedTokens: Record<ChainId, Record<Address, UserToken[]>>;
64
+ /** Ignored tokens: chainId -> address[] */
65
+ allIgnoredTokens: Record<ChainId, Record<Address, Address[]>>;
66
+ };
67
+ //# sourceMappingURL=state.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.d.mts","sourceRoot":"","sources":["../../../../src/data-sources/rpc-datasource/types/state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,mBAAe;AAE/C;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,uBAAuB;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,mBAAmB;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,qBAAqB;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yBAAyB;IACzB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,gCAAgC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,gDAAgD;IAChD,SAAS,EAAE,MAAM,CAAC;IAClB,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;CACvC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,gDAAgD;IAChD,iBAAiB,EAAE,MAAM,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC;CAC3D,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG;IACtB,uBAAuB;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,mBAAmB;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qBAAqB;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sCAAsC;IACtC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,yBAAyB;IACzB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,gEAAgE;IAChE,SAAS,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IACzD,gEAAgE;IAChE,iBAAiB,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IACjE,2CAA2C;IAC3C,gBAAgB,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;CAC/D,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=state.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.mjs","sourceRoot":"","sources":["../../../../src/data-sources/rpc-datasource/types/state.ts"],"names":[],"mappings":"","sourcesContent":["import type { Address, ChainId } from './core';\n\n/**\n * Single token entry from token list.\n */\nexport type TokenListEntry = {\n /** Contract address */\n address: Address;\n /** Token symbol */\n symbol: string;\n /** Token name */\n name: string;\n /** Token decimals */\n decimals: number;\n /** Logo URL */\n iconUrl?: string;\n /** Aggregator sources */\n aggregators?: string[];\n /** Occurrence count in lists */\n occurrences?: number;\n};\n\n/**\n * Cache entry for a chain's token list.\n */\nexport type TokenChainsCacheEntry = {\n /** Timestamp when the cache was last updated */\n timestamp: number;\n /** Token list data: address -> TokenListEntry */\n data: Record<Address, TokenListEntry>;\n};\n\n/**\n * Token list state shape (from TokenListController).\n */\nexport type TokenListState = {\n /** Map of chain ID to token list cache entry */\n tokensChainsCache: Record<ChainId, TokenChainsCacheEntry>;\n};\n\n/**\n * Token entry from user's imported/detected tokens.\n */\nexport type UserToken = {\n /** Contract address */\n address: Address;\n /** Token symbol */\n symbol: string;\n /** Token name */\n name?: string;\n /** Token decimals */\n decimals: number;\n /** Logo URL */\n image?: string;\n /** Whether token was auto-detected */\n isERC721?: boolean;\n /** Aggregator sources */\n aggregators?: string[];\n};\n\n/**\n * User tokens state shape (from TokensController).\n */\nexport type UserTokensState = {\n /** All imported tokens: chainId -> accountAddress -> Token[] */\n allTokens: Record<ChainId, Record<Address, UserToken[]>>;\n /** All detected tokens: chainId -> accountAddress -> Token[] */\n allDetectedTokens: Record<ChainId, Record<Address, UserToken[]>>;\n /** Ignored tokens: chainId -> address[] */\n allIgnoredTokens: Record<ChainId, Record<Address, Address[]>>;\n};\n"]}