@gala-chain/launchpad-sdk 5.0.2-beta.1 → 5.0.4-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (405) hide show
  1. package/EXAMPLES.md +141 -7
  2. package/README.md +68 -36
  3. package/dist/ai-docs.json +7357 -0
  4. package/dist/index.cjs.js +1 -1
  5. package/dist/index.d.ts +70 -11
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.esm.js +1 -1
  8. package/dist/index.js +1 -1
  9. package/dist/src/LaunchpadSDK.d.ts +3288 -214
  10. package/dist/src/LaunchpadSDK.d.ts.map +1 -1
  11. package/dist/src/api/LaunchpadAPI.d.ts +21 -41
  12. package/dist/src/api/LaunchpadAPI.d.ts.map +1 -1
  13. package/dist/src/api/dto/BurnTokensDto.d.ts.map +1 -1
  14. package/dist/src/api/dto/LockTokenDto.d.ts.map +1 -1
  15. package/dist/src/api/dto/TransferTokenDto.d.ts.map +1 -1
  16. package/dist/src/api/dto/UnlockTokenDto.d.ts.map +1 -1
  17. package/dist/src/auth/JwtAuth.d.ts +145 -0
  18. package/dist/src/auth/JwtAuth.d.ts.map +1 -0
  19. package/dist/src/auth/SessionAuthService.d.ts +146 -0
  20. package/dist/src/auth/SessionAuthService.d.ts.map +1 -0
  21. package/dist/src/auth/SignatureAuth.d.ts.map +1 -1
  22. package/dist/src/bridge/BridgeService.d.ts.map +1 -1
  23. package/dist/src/bridge/GalaConnectClient.d.ts.map +1 -1
  24. package/dist/src/bridge/constants/tokens.d.ts +4 -3
  25. package/dist/src/bridge/constants/tokens.d.ts.map +1 -1
  26. package/dist/src/bridge/index.d.ts +1 -0
  27. package/dist/src/bridge/index.d.ts.map +1 -1
  28. package/dist/src/bridge/strategies/BridgeStrategy.d.ts.map +1 -1
  29. package/dist/src/bridge/strategies/EthereumBridgeStrategy.d.ts +1 -38
  30. package/dist/src/bridge/strategies/EthereumBridgeStrategy.d.ts.map +1 -1
  31. package/dist/src/bridge/strategies/SolanaBridgeStrategy.d.ts +1 -21
  32. package/dist/src/bridge/strategies/SolanaBridgeStrategy.d.ts.map +1 -1
  33. package/dist/src/bridge/types/bridge.dto.d.ts +15 -2
  34. package/dist/src/bridge/types/bridge.dto.d.ts.map +1 -1
  35. package/dist/src/bridge/utils/RateLimiter.d.ts +1 -1
  36. package/dist/src/bridge/utils/RateLimiter.d.ts.map +1 -1
  37. package/dist/src/bridge/utils/address-formatter.d.ts +25 -0
  38. package/dist/src/bridge/utils/address-formatter.d.ts.map +1 -0
  39. package/dist/src/bridge/utils/addressValidation.d.ts +200 -0
  40. package/dist/src/bridge/utils/addressValidation.d.ts.map +1 -0
  41. package/dist/src/bridge/utils/balanceHelpers.d.ts +215 -0
  42. package/dist/src/bridge/utils/balanceHelpers.d.ts.map +1 -0
  43. package/dist/src/bridge/utils/bridgeErrors.d.ts +98 -0
  44. package/dist/src/bridge/utils/bridgeErrors.d.ts.map +1 -0
  45. package/dist/src/bridge/utils/bridgeOutHelpers.d.ts +68 -0
  46. package/dist/src/bridge/utils/bridgeOutHelpers.d.ts.map +1 -0
  47. package/dist/src/bridge/utils/bridgePayload.d.ts +107 -0
  48. package/dist/src/bridge/utils/bridgePayload.d.ts.map +1 -0
  49. package/dist/src/bridge/utils/bridgeStatusParser.d.ts +75 -0
  50. package/dist/src/bridge/utils/bridgeStatusParser.d.ts.map +1 -0
  51. package/dist/src/bridge/utils/eip712Helpers.d.ts +66 -0
  52. package/dist/src/bridge/utils/eip712Helpers.d.ts.map +1 -0
  53. package/dist/src/bridge/utils/index.d.ts +9 -0
  54. package/dist/src/bridge/utils/index.d.ts.map +1 -1
  55. package/dist/src/bridge/utils/retry.d.ts +16 -0
  56. package/dist/src/bridge/utils/retry.d.ts.map +1 -1
  57. package/dist/src/bridge/utils/strategyDelegation.d.ts +69 -0
  58. package/dist/src/bridge/utils/strategyDelegation.d.ts.map +1 -0
  59. package/dist/src/bridge/utils/tokenIdUtils.d.ts +7 -0
  60. package/dist/src/bridge/utils/tokenIdUtils.d.ts.map +1 -1
  61. package/dist/src/bridge/utils/tokenMath.d.ts.map +1 -1
  62. package/dist/src/bridge/utils/tokenMetadataResolver.d.ts +97 -0
  63. package/dist/src/bridge/utils/tokenMetadataResolver.d.ts.map +1 -0
  64. package/dist/src/constants/endpoints.d.ts +453 -0
  65. package/dist/src/constants/endpoints.d.ts.map +1 -1
  66. package/dist/src/constants/error-messages.d.ts +1 -1
  67. package/dist/src/constants/error-messages.d.ts.map +1 -1
  68. package/dist/src/constants/jwt.d.ts +41 -0
  69. package/dist/src/constants/jwt.d.ts.map +1 -0
  70. package/dist/src/constants/sdk-defaults.d.ts +37 -0
  71. package/dist/src/constants/sdk-defaults.d.ts.map +1 -0
  72. package/dist/src/constants/version.generated.d.ts +1 -1
  73. package/dist/src/helpers/sdk.d.ts.map +1 -1
  74. package/dist/src/helpers/wallet.d.ts +4 -3
  75. package/dist/src/helpers/wallet.d.ts.map +1 -1
  76. package/dist/src/index.d.ts +70 -11
  77. package/dist/src/index.d.ts.map +1 -1
  78. package/dist/src/schemas/files.d.ts +2 -2
  79. package/dist/src/schemas/launchpad.d.ts +40 -8
  80. package/dist/src/schemas/launchpad.d.ts.map +1 -1
  81. package/dist/src/schemas/pagination.d.ts +7 -7
  82. package/dist/src/schemas/primitives.d.ts.map +1 -1
  83. package/dist/src/schemas/trade.d.ts +6 -6
  84. package/dist/src/schemas/user.d.ts +4 -4
  85. package/dist/src/schemas/validators.d.ts +15 -7
  86. package/dist/src/schemas/validators.d.ts.map +1 -1
  87. package/dist/src/services/AbstractCacheService.d.ts +227 -0
  88. package/dist/src/services/AbstractCacheService.d.ts.map +1 -0
  89. package/dist/src/services/AbstractTokenFetchService.d.ts +150 -0
  90. package/dist/src/services/AbstractTokenFetchService.d.ts.map +1 -0
  91. package/dist/src/services/ApiKeyService.d.ts +205 -0
  92. package/dist/src/services/ApiKeyService.d.ts.map +1 -0
  93. package/dist/src/services/BanService.d.ts +195 -0
  94. package/dist/src/services/BanService.d.ts.map +1 -0
  95. package/dist/src/services/BaseService.d.ts +50 -3
  96. package/dist/src/services/BaseService.d.ts.map +1 -1
  97. package/dist/src/services/BatchedCacheService.d.ts +132 -0
  98. package/dist/src/services/BatchedCacheService.d.ts.map +1 -0
  99. package/dist/src/services/BridgeableTokenCache.d.ts +32 -98
  100. package/dist/src/services/BridgeableTokenCache.d.ts.map +1 -1
  101. package/dist/src/services/BridgeableTokenService.d.ts +18 -13
  102. package/dist/src/services/BridgeableTokenService.d.ts.map +1 -1
  103. package/dist/src/services/BundleService.d.ts.map +1 -1
  104. package/dist/src/services/BundlerClientFactory.d.ts +32 -0
  105. package/dist/src/services/BundlerClientFactory.d.ts.map +1 -0
  106. package/dist/src/services/ChatMessagesService.d.ts +152 -0
  107. package/dist/src/services/ChatMessagesService.d.ts.map +1 -0
  108. package/dist/src/services/CommentService.d.ts +119 -0
  109. package/dist/src/services/CommentService.d.ts.map +1 -0
  110. package/dist/src/services/CommentsService.d.ts +155 -0
  111. package/dist/src/services/CommentsService.d.ts.map +1 -0
  112. package/dist/src/services/ContentFlagService.d.ts +212 -0
  113. package/dist/src/services/ContentFlagService.d.ts.map +1 -0
  114. package/dist/src/services/ContentReactionService.d.ts +175 -0
  115. package/dist/src/services/ContentReactionService.d.ts.map +1 -0
  116. package/dist/src/services/DexBackendClient.d.ts.map +1 -1
  117. package/dist/src/services/DexPoolService.d.ts +3 -3
  118. package/dist/src/services/DexPoolService.d.ts.map +1 -1
  119. package/dist/src/services/DexQuoteService.d.ts.map +1 -1
  120. package/dist/src/services/DexService.d.ts +2 -5
  121. package/dist/src/services/DexService.d.ts.map +1 -1
  122. package/dist/src/services/GSwapAssetService.d.ts +80 -0
  123. package/dist/src/services/GSwapAssetService.d.ts.map +1 -0
  124. package/dist/src/services/GSwapLiquidityMutationService.d.ts +140 -0
  125. package/dist/src/services/GSwapLiquidityMutationService.d.ts.map +1 -0
  126. package/dist/src/services/GSwapLiquidityQueryService.d.ts +87 -0
  127. package/dist/src/services/GSwapLiquidityQueryService.d.ts.map +1 -0
  128. package/dist/src/services/GSwapPoolCalculationService.d.ts +200 -0
  129. package/dist/src/services/GSwapPoolCalculationService.d.ts.map +1 -0
  130. package/dist/src/services/GSwapPoolQueryService.d.ts +116 -0
  131. package/dist/src/services/GSwapPoolQueryService.d.ts.map +1 -0
  132. package/dist/src/services/GSwapService.d.ts +14 -0
  133. package/dist/src/services/GSwapService.d.ts.map +1 -1
  134. package/dist/src/services/GSwapSwapService.d.ts +68 -0
  135. package/dist/src/services/GSwapSwapService.d.ts.map +1 -0
  136. package/dist/src/services/GalaChainBalanceService.d.ts +155 -0
  137. package/dist/src/services/GalaChainBalanceService.d.ts.map +1 -0
  138. package/dist/src/services/GalaChainGatewayClient.d.ts +32 -1
  139. package/dist/src/services/GalaChainGatewayClient.d.ts.map +1 -1
  140. package/dist/src/services/GalaChainLockService.d.ts +144 -0
  141. package/dist/src/services/GalaChainLockService.d.ts.map +1 -0
  142. package/dist/src/services/GalaChainService.d.ts +23 -106
  143. package/dist/src/services/GalaChainService.d.ts.map +1 -1
  144. package/dist/src/services/GalaChainTokenService.d.ts +108 -0
  145. package/dist/src/services/GalaChainTokenService.d.ts.map +1 -0
  146. package/dist/src/services/GalaChainTransferService.d.ts +205 -0
  147. package/dist/src/services/GalaChainTransferService.d.ts.map +1 -0
  148. package/dist/src/services/ImageService.d.ts +24 -8
  149. package/dist/src/services/ImageService.d.ts.map +1 -1
  150. package/dist/src/services/LaunchpadService.d.ts +77 -5
  151. package/dist/src/services/LaunchpadService.d.ts.map +1 -1
  152. package/dist/src/services/ModeratorService.d.ts +269 -0
  153. package/dist/src/services/ModeratorService.d.ts.map +1 -0
  154. package/dist/src/services/MultiPoolStateManager.d.ts +4 -6
  155. package/dist/src/services/MultiPoolStateManager.d.ts.map +1 -1
  156. package/dist/src/services/NetworkKeyedCacheService.d.ts +185 -0
  157. package/dist/src/services/NetworkKeyedCacheService.d.ts.map +1 -0
  158. package/dist/src/services/OverseerService.d.ts +322 -0
  159. package/dist/src/services/OverseerService.d.ts.map +1 -0
  160. package/dist/src/services/PoolCacheManager.d.ts +2 -2
  161. package/dist/src/services/PoolCacheManager.d.ts.map +1 -1
  162. package/dist/src/services/PoolService.d.ts +61 -7
  163. package/dist/src/services/PoolService.d.ts.map +1 -1
  164. package/dist/src/services/PoolStateManager.d.ts +2 -2
  165. package/dist/src/services/PoolStateManager.d.ts.map +1 -1
  166. package/dist/src/services/PriceHistoryService.d.ts.map +1 -1
  167. package/dist/src/services/SignatureService.d.ts.map +1 -1
  168. package/dist/src/services/StreamChatService.d.ts +378 -0
  169. package/dist/src/services/StreamChatService.d.ts.map +1 -0
  170. package/dist/src/services/StreamTokenServiceBase.d.ts +371 -0
  171. package/dist/src/services/StreamTokenServiceBase.d.ts.map +1 -0
  172. package/dist/src/services/StreamWebSocketService.d.ts +268 -0
  173. package/dist/src/services/StreamWebSocketService.d.ts.map +1 -0
  174. package/dist/src/services/StreamingEventService.d.ts +431 -0
  175. package/dist/src/services/StreamingEventService.d.ts.map +1 -0
  176. package/dist/src/services/StreamingService.d.ts +547 -0
  177. package/dist/src/services/StreamingService.d.ts.map +1 -0
  178. package/dist/src/services/SwapEventQueue.d.ts +2 -2
  179. package/dist/src/services/SwapEventQueue.d.ts.map +1 -1
  180. package/dist/src/services/TokenBanService.d.ts +214 -0
  181. package/dist/src/services/TokenBanService.d.ts.map +1 -0
  182. package/dist/src/services/TokenClassKeyService.d.ts.map +1 -1
  183. package/dist/src/services/TokenMetadataCache.d.ts +36 -27
  184. package/dist/src/services/TokenMetadataCache.d.ts.map +1 -1
  185. package/dist/src/services/TokenMetadataService.d.ts +24 -4
  186. package/dist/src/services/TokenMetadataService.d.ts.map +1 -1
  187. package/dist/src/services/TokenResolverService.d.ts.map +1 -1
  188. package/dist/src/services/TradeService.d.ts +73 -0
  189. package/dist/src/services/TradeService.d.ts.map +1 -1
  190. package/dist/src/services/UserService.d.ts +56 -3
  191. package/dist/src/services/UserService.d.ts.map +1 -1
  192. package/dist/src/services/WebSocketService.d.ts +3 -3
  193. package/dist/src/services/WebSocketService.d.ts.map +1 -1
  194. package/dist/src/services/WrapService.d.ts +18 -5
  195. package/dist/src/services/WrapService.d.ts.map +1 -1
  196. package/dist/src/services/WrappableTokenCache.d.ts +8 -36
  197. package/dist/src/services/WrappableTokenCache.d.ts.map +1 -1
  198. package/dist/src/services/WrappableTokenService.d.ts +18 -12
  199. package/dist/src/services/WrappableTokenService.d.ts.map +1 -1
  200. package/dist/src/services/shared/cache-helpers.d.ts +188 -0
  201. package/dist/src/services/shared/cache-helpers.d.ts.map +1 -0
  202. package/dist/src/services/shared/http-helpers.d.ts +146 -0
  203. package/dist/src/services/shared/http-helpers.d.ts.map +1 -0
  204. package/dist/src/services/shared/pagination-helpers.d.ts +157 -0
  205. package/dist/src/services/shared/pagination-helpers.d.ts.map +1 -0
  206. package/dist/src/services/shared/service-validators.d.ts +137 -0
  207. package/dist/src/services/shared/service-validators.d.ts.map +1 -0
  208. package/dist/src/services/shared/websocket-helpers.d.ts +158 -0
  209. package/dist/src/services/shared/websocket-helpers.d.ts.map +1 -0
  210. package/dist/src/test-constants.d.ts +29 -0
  211. package/dist/src/test-constants.d.ts.map +1 -0
  212. package/dist/src/types/api-key.dto.d.ts +300 -0
  213. package/dist/src/types/api-key.dto.d.ts.map +1 -0
  214. package/dist/src/types/backend-responses.d.ts +12 -0
  215. package/dist/src/types/backend-responses.d.ts.map +1 -1
  216. package/dist/src/types/ban.dto.d.ts +413 -0
  217. package/dist/src/types/ban.dto.d.ts.map +1 -0
  218. package/dist/src/types/burn.dto.d.ts +21 -0
  219. package/dist/src/types/burn.dto.d.ts.map +1 -1
  220. package/dist/src/types/chat-messages.dto.d.ts +193 -0
  221. package/dist/src/types/chat-messages.dto.d.ts.map +1 -0
  222. package/dist/src/types/comment.dto.d.ts +180 -0
  223. package/dist/src/types/comment.dto.d.ts.map +1 -0
  224. package/dist/src/types/comments.dto.d.ts +210 -0
  225. package/dist/src/types/comments.dto.d.ts.map +1 -0
  226. package/dist/src/types/common.d.ts +369 -0
  227. package/dist/src/types/common.d.ts.map +1 -1
  228. package/dist/src/types/constraints.d.ts +374 -0
  229. package/dist/src/types/constraints.d.ts.map +1 -0
  230. package/dist/src/types/content-flag.dto.d.ts +310 -0
  231. package/dist/src/types/content-flag.dto.d.ts.map +1 -0
  232. package/dist/src/types/content-reactions.dto.d.ts +132 -0
  233. package/dist/src/types/content-reactions.dto.d.ts.map +1 -0
  234. package/dist/src/types/dex-pool.dto.d.ts +13 -37
  235. package/dist/src/types/dex-pool.dto.d.ts.map +1 -1
  236. package/dist/src/types/dto.d.ts +8 -0
  237. package/dist/src/types/dto.d.ts.map +1 -1
  238. package/dist/src/types/galachain-api.types.d.ts +30 -0
  239. package/dist/src/types/galachain-api.types.d.ts.map +1 -1
  240. package/dist/src/types/gswap-responses.types.d.ts.map +1 -1
  241. package/dist/src/types/launchpad.dto.d.ts +234 -131
  242. package/dist/src/types/launchpad.dto.d.ts.map +1 -1
  243. package/dist/src/types/launchpad.validation.d.ts.map +1 -1
  244. package/dist/src/types/lock.dto.d.ts +20 -35
  245. package/dist/src/types/lock.dto.d.ts.map +1 -1
  246. package/dist/src/types/moderator.dto.d.ts +581 -0
  247. package/dist/src/types/moderator.dto.d.ts.map +1 -0
  248. package/dist/src/types/options.dto.d.ts +25 -115
  249. package/dist/src/types/options.dto.d.ts.map +1 -1
  250. package/dist/src/types/overseer.dto.d.ts +420 -0
  251. package/dist/src/types/overseer.dto.d.ts.map +1 -0
  252. package/dist/src/types/pool.dto.d.ts +106 -0
  253. package/dist/src/types/pool.dto.d.ts.map +1 -0
  254. package/dist/src/types/result.types.d.ts +3 -2
  255. package/dist/src/types/result.types.d.ts.map +1 -1
  256. package/dist/src/types/session-auth.dto.d.ts +91 -0
  257. package/dist/src/types/session-auth.dto.d.ts.map +1 -0
  258. package/dist/src/types/stream-chat.dto.d.ts +815 -0
  259. package/dist/src/types/stream-chat.dto.d.ts.map +1 -0
  260. package/dist/src/types/streaming-events.dto.d.ts +586 -0
  261. package/dist/src/types/streaming-events.dto.d.ts.map +1 -0
  262. package/dist/src/types/streaming.dto.d.ts +1141 -0
  263. package/dist/src/types/streaming.dto.d.ts.map +1 -0
  264. package/dist/src/types/token-ban.dto.d.ts +195 -0
  265. package/dist/src/types/token-ban.dto.d.ts.map +1 -0
  266. package/dist/src/types/trade.dto.d.ts +21 -61
  267. package/dist/src/types/trade.dto.d.ts.map +1 -1
  268. package/dist/src/types/trades-query.dto.d.ts +127 -0
  269. package/dist/src/types/trades-query.dto.d.ts.map +1 -0
  270. package/dist/src/types/transfer.dto.d.ts +20 -15
  271. package/dist/src/types/transfer.dto.d.ts.map +1 -1
  272. package/dist/src/types/user.dto.d.ts +185 -73
  273. package/dist/src/types/user.dto.d.ts.map +1 -1
  274. package/dist/src/types/wrappable-token.dto.d.ts +6 -2
  275. package/dist/src/types/wrappable-token.dto.d.ts.map +1 -1
  276. package/dist/src/utils/LiquidityEventExtractor.d.ts.map +1 -1
  277. package/dist/src/utils/Logger.d.ts.map +1 -1
  278. package/dist/src/utils/MonitoringMetrics.d.ts.map +1 -1
  279. package/dist/src/utils/PoolKeyNormalizer.d.ts.map +1 -1
  280. package/dist/src/utils/ReconnectionManager.d.ts +142 -0
  281. package/dist/src/utils/ReconnectionManager.d.ts.map +1 -0
  282. package/dist/src/utils/SignatureHelper.d.ts +9 -0
  283. package/dist/src/utils/SignatureHelper.d.ts.map +1 -1
  284. package/dist/src/utils/SwapEventExtractor.d.ts.map +1 -1
  285. package/dist/src/utils/adapters.d.ts.map +1 -1
  286. package/dist/src/utils/address-formatter.d.ts +317 -0
  287. package/dist/src/utils/address-formatter.d.ts.map +1 -0
  288. package/dist/src/utils/agent-config.d.ts.map +1 -1
  289. package/dist/src/utils/amount-validator.d.ts +268 -0
  290. package/dist/src/utils/amount-validator.d.ts.map +1 -0
  291. package/dist/src/utils/api-patterns.d.ts +347 -0
  292. package/dist/src/utils/api-patterns.d.ts.map +1 -0
  293. package/dist/src/utils/array-helpers.d.ts +115 -0
  294. package/dist/src/utils/array-helpers.d.ts.map +1 -0
  295. package/dist/src/utils/async-patterns.d.ts +272 -0
  296. package/dist/src/utils/async-patterns.d.ts.map +1 -0
  297. package/dist/src/utils/auto-pagination.d.ts +195 -2
  298. package/dist/src/utils/auto-pagination.d.ts.map +1 -1
  299. package/dist/src/utils/bignumber-helpers.d.ts +119 -13
  300. package/dist/src/utils/bignumber-helpers.d.ts.map +1 -1
  301. package/dist/src/utils/bignumber-pool-cache.d.ts.map +1 -1
  302. package/dist/src/utils/bondingCurveCalculations.d.ts.map +1 -1
  303. package/dist/src/utils/cacheWarmingHelpers.d.ts +2 -2
  304. package/dist/src/utils/cacheWarmingHelpers.d.ts.map +1 -1
  305. package/dist/src/utils/data-transform-patterns.d.ts +393 -0
  306. package/dist/src/utils/data-transform-patterns.d.ts.map +1 -0
  307. package/dist/src/utils/date-utils.d.ts +166 -0
  308. package/dist/src/utils/date-utils.d.ts.map +1 -1
  309. package/dist/src/utils/delimiter-parser.d.ts +139 -0
  310. package/dist/src/utils/delimiter-parser.d.ts.map +1 -0
  311. package/dist/src/utils/error-factories.d.ts +346 -1
  312. package/dist/src/utils/error-factories.d.ts.map +1 -1
  313. package/dist/src/utils/error-handling-patterns.d.ts +390 -0
  314. package/dist/src/utils/error-handling-patterns.d.ts.map +1 -0
  315. package/dist/src/utils/error-patterns.d.ts +360 -0
  316. package/dist/src/utils/error-patterns.d.ts.map +1 -0
  317. package/dist/src/utils/error-utils.d.ts +250 -0
  318. package/dist/src/utils/error-utils.d.ts.map +1 -1
  319. package/dist/src/utils/error-wrapper.d.ts +208 -0
  320. package/dist/src/utils/error-wrapper.d.ts.map +1 -0
  321. package/dist/src/utils/errors.d.ts +70 -0
  322. package/dist/src/utils/errors.d.ts.map +1 -1
  323. package/dist/src/utils/http-factory.d.ts +36 -0
  324. package/dist/src/utils/http-factory.d.ts.map +1 -0
  325. package/dist/src/utils/http.d.ts.map +1 -1
  326. package/dist/src/utils/load-env.d.ts.map +1 -1
  327. package/dist/src/utils/multipart.d.ts.map +1 -1
  328. package/dist/src/utils/numeric-patterns.d.ts +289 -0
  329. package/dist/src/utils/numeric-patterns.d.ts.map +1 -0
  330. package/dist/src/utils/numeric-wrappers.d.ts +146 -0
  331. package/dist/src/utils/numeric-wrappers.d.ts.map +1 -0
  332. package/dist/src/utils/object-extractors.d.ts +115 -0
  333. package/dist/src/utils/object-extractors.d.ts.map +1 -0
  334. package/dist/src/utils/object-patterns.d.ts +81 -0
  335. package/dist/src/utils/object-patterns.d.ts.map +1 -0
  336. package/dist/src/utils/pagination-helpers.d.ts +230 -0
  337. package/dist/src/utils/pagination-helpers.d.ts.map +1 -0
  338. package/dist/src/utils/pool-pair-parser.d.ts +3 -1
  339. package/dist/src/utils/pool-pair-parser.d.ts.map +1 -1
  340. package/dist/src/utils/pool-state-validator.d.ts.map +1 -1
  341. package/dist/src/utils/position-filters.d.ts +1 -2
  342. package/dist/src/utils/position-filters.d.ts.map +1 -1
  343. package/dist/src/utils/query-params.d.ts +0 -16
  344. package/dist/src/utils/query-params.d.ts.map +1 -1
  345. package/dist/src/utils/response-handlers.d.ts +149 -20
  346. package/dist/src/utils/response-handlers.d.ts.map +1 -1
  347. package/dist/src/utils/response-helpers.d.ts +28 -0
  348. package/dist/src/utils/response-helpers.d.ts.map +1 -0
  349. package/dist/src/utils/response-normalizers.d.ts +27 -49
  350. package/dist/src/utils/response-normalizers.d.ts.map +1 -1
  351. package/dist/src/utils/safe-parsers.d.ts +487 -0
  352. package/dist/src/utils/safe-parsers.d.ts.map +1 -0
  353. package/dist/src/utils/service-validators.d.ts +268 -0
  354. package/dist/src/utils/service-validators.d.ts.map +1 -0
  355. package/dist/src/utils/slippage-utils.d.ts.map +1 -1
  356. package/dist/src/utils/string-patterns.d.ts +404 -0
  357. package/dist/src/utils/string-patterns.d.ts.map +1 -0
  358. package/dist/src/utils/string-transforms.d.ts +89 -0
  359. package/dist/src/utils/string-transforms.d.ts.map +1 -0
  360. package/dist/src/utils/string-utils.d.ts +108 -0
  361. package/dist/src/utils/string-utils.d.ts.map +1 -0
  362. package/dist/src/utils/swap-delta-calculator.d.ts.map +1 -1
  363. package/dist/src/utils/tick-crossing-handler.d.ts.map +1 -1
  364. package/dist/src/utils/token-format-converter.d.ts +22 -8
  365. package/dist/src/utils/token-format-converter.d.ts.map +1 -1
  366. package/dist/src/utils/token-parser.d.ts +2 -2
  367. package/dist/src/utils/token-parser.d.ts.map +1 -1
  368. package/dist/src/utils/token-stringification.d.ts +168 -0
  369. package/dist/src/utils/token-stringification.d.ts.map +1 -0
  370. package/dist/src/utils/tokenNameNormalizer.d.ts +96 -0
  371. package/dist/src/utils/tokenNameNormalizer.d.ts.map +1 -0
  372. package/dist/src/utils/tokenNormalizer.d.ts +8 -45
  373. package/dist/src/utils/tokenNormalizer.d.ts.map +1 -1
  374. package/dist/src/utils/transfer-validation.d.ts +1 -1
  375. package/dist/src/utils/transfer-validation.d.ts.map +1 -1
  376. package/dist/src/utils/type-guard-factory.d.ts +260 -0
  377. package/dist/src/utils/type-guard-factory.d.ts.map +1 -0
  378. package/dist/src/utils/unique-key-generator.d.ts +148 -0
  379. package/dist/src/utils/unique-key-generator.d.ts.map +1 -0
  380. package/dist/src/utils/validation-helpers.d.ts +906 -183
  381. package/dist/src/utils/validation-helpers.d.ts.map +1 -1
  382. package/dist/src/utils/validation-patterns.d.ts +745 -0
  383. package/dist/src/utils/validation-patterns.d.ts.map +1 -0
  384. package/dist/src/utils/validation.d.ts +2 -30
  385. package/dist/src/utils/validation.d.ts.map +1 -1
  386. package/dist/src/utils/wallet.d.ts +12 -1
  387. package/dist/src/utils/wallet.d.ts.map +1 -1
  388. package/dist/src/utils/websocket-patterns.d.ts +681 -0
  389. package/dist/src/utils/websocket-patterns.d.ts.map +1 -0
  390. package/dist/src/utils/websocket-validators.d.ts.map +1 -1
  391. package/package.json +86 -19
  392. package/dist/src/bridge/strategies/index.d.ts +0 -9
  393. package/dist/src/bridge/strategies/index.d.ts.map +0 -1
  394. package/dist/src/constants/counts.d.ts +0 -66
  395. package/dist/src/constants/counts.d.ts.map +0 -1
  396. package/dist/src/services/WebSocketManager.d.ts +0 -99
  397. package/dist/src/services/WebSocketManager.d.ts.map +0 -1
  398. package/dist/src/types/eip712-types.d.ts +0 -140
  399. package/dist/src/types/eip712-types.d.ts.map +0 -1
  400. package/dist/src/types/pool-state-manager-config.dto.d.ts +0 -103
  401. package/dist/src/types/pool-state-manager-config.dto.d.ts.map +0 -1
  402. package/dist/src/utils/number-utils.d.ts +0 -94
  403. package/dist/src/utils/number-utils.d.ts.map +0 -1
  404. package/dist/src/utils/precision-math.d.ts +0 -37
  405. package/dist/src/utils/precision-math.d.ts.map +0 -1
@@ -0,0 +1,214 @@
1
+ /**
2
+ * Token Ban Service
3
+ *
4
+ * Handles platform-wide token ban operations for overseers.
5
+ * Banned tokens are hidden from all listings and have actions blocked.
6
+ *
7
+ * This is different from BanService which handles per-token user bans.
8
+ * TokenBanService bans entire tokens from the platform (overseer-only),
9
+ * while BanService bans specific users from specific tokens (owner/admin).
10
+ *
11
+ * @category Services
12
+ * @since 6.x.0
13
+ */
14
+ import { HttpClient } from '../utils/http';
15
+ import { StreamTokenServiceBase } from './StreamTokenServiceBase';
16
+ import type { JwtAuth } from '../auth/JwtAuth';
17
+ import { BanTokenOptions, BanTokenResult, UnbanTokenOptions, UnbanTokenResult, ListTokenBansOptions, TokenBanListResult, GetTokenBanOptions, TokenBanStatusResult } from '../types/token-ban.dto';
18
+ /**
19
+ * Token Ban Service Class
20
+ *
21
+ * Provides methods for managing platform-wide token bans:
22
+ * - Banning tokens (hides from all listings)
23
+ * - Unbanning tokens (restores visibility)
24
+ * - Listing all banned tokens
25
+ * - Checking ban status for specific tokens
26
+ *
27
+ * **Access Control**: All endpoints require either:
28
+ * - Admin API key (server-to-server)
29
+ * - JWT with overseer status (authenticated overseer user)
30
+ *
31
+ * **Effects of Token Bans**:
32
+ * - Hidden from ALL pool listings (including creator's profile)
33
+ * - Comments blocked on banned tokens
34
+ * - Live streaming blocked on banned tokens
35
+ * - Chat messages blocked on banned tokens
36
+ * - Trading NOT blocked (GalaChain handles trading independently)
37
+ *
38
+ * @remarks
39
+ * **Case Normalization**: Token names are automatically normalized to lowercase
40
+ * in all requests and responses for consistency.
41
+ *
42
+ * **Permanent Bans**: Token bans do not expire. They remain in effect until
43
+ * explicitly removed by an overseer.
44
+ *
45
+ * @example
46
+ * ```typescript
47
+ * const tokenBanService = new TokenBanService(httpClient, 'admin-api-key', jwtAuth, true);
48
+ *
49
+ * // Ban a token
50
+ * await tokenBanService.banToken({
51
+ * tokenName: 'scamtoken',
52
+ * reason: 'Fraudulent project - reported by multiple users'
53
+ * });
54
+ *
55
+ * // Check if a token is banned
56
+ * const status = await tokenBanService.isTokenBanned({ tokenName: 'sometoken' });
57
+ * if (status.banned) {
58
+ * console.log('Token is banned:', status.ban?.reason);
59
+ * }
60
+ *
61
+ * // List all banned tokens
62
+ * const bans = await tokenBanService.listTokenBans({ page: 1, limit: 20 });
63
+ *
64
+ * // Unban a token
65
+ * await tokenBanService.unbanToken({ tokenName: 'scamtoken' });
66
+ * ```
67
+ */
68
+ export declare class TokenBanService extends StreamTokenServiceBase {
69
+ constructor(http: HttpClient, adminApiKey?: string, jwtAuth?: JwtAuth, debugMode?: boolean);
70
+ /**
71
+ * Ban a token from the platform
72
+ *
73
+ * Dual-auth endpoint - supports both Admin API key and JWT (overseer) auth.
74
+ *
75
+ * When a token is banned:
76
+ * - Hidden from all pool listings
77
+ * - Hidden from creator's profile
78
+ * - Comments blocked
79
+ * - Live streaming blocked
80
+ * - Chat blocked
81
+ * - Trading still allowed (GalaChain handles)
82
+ *
83
+ * @param options - Ban options including tokenName and optional reason
84
+ * @returns Created ban data with token name
85
+ * @throws ValidationError if parameters are invalid
86
+ * @throws ConfigurationError if neither admin API key nor JWT is configured
87
+ * @throws Error if token is already banned (409 Conflict)
88
+ *
89
+ * @example
90
+ * ```typescript
91
+ * // Ban with reason
92
+ * const result = await tokenBanService.banToken({
93
+ * tokenName: 'scamtoken',
94
+ * reason: 'Fraudulent project - reported by multiple users'
95
+ * });
96
+ * console.log('Banned:', result.tokenName);
97
+ * console.log('Ban ID:', result.ban.id);
98
+ *
99
+ * // Ban without reason
100
+ * await tokenBanService.banToken({ tokenName: 'problematictoken' });
101
+ * ```
102
+ */
103
+ banToken(options: BanTokenOptions): Promise<BanTokenResult>;
104
+ /**
105
+ * Remove a ban from a token
106
+ *
107
+ * Dual-auth endpoint - supports both Admin API key and JWT (overseer) auth.
108
+ *
109
+ * When a token is unbanned:
110
+ * - Restored to all pool listings
111
+ * - Visible on creator's profile again
112
+ * - Comments re-enabled
113
+ * - Live streaming re-enabled
114
+ * - Chat re-enabled
115
+ *
116
+ * @param options - Unban options including tokenName
117
+ * @returns Removal confirmation with token name
118
+ * @throws ValidationError if token name is invalid
119
+ * @throws ConfigurationError if neither admin API key nor JWT is configured
120
+ * @throws Error if token is not banned (404 Not Found)
121
+ *
122
+ * @example
123
+ * ```typescript
124
+ * const result = await tokenBanService.unbanToken({ tokenName: 'scamtoken' });
125
+ * console.log('Removed ban:', result.removed); // true
126
+ * console.log('Token:', result.tokenName);
127
+ * ```
128
+ */
129
+ unbanToken(options: UnbanTokenOptions): Promise<UnbanTokenResult>;
130
+ /**
131
+ * List all banned tokens
132
+ *
133
+ * Dual-auth endpoint - supports both Admin API key and JWT (overseer) auth.
134
+ * Returns paginated results with ban details.
135
+ *
136
+ * @param options - List options including optional pagination and search
137
+ * @returns Paginated list of banned tokens
138
+ * @throws ValidationError if pagination parameters are invalid
139
+ * @throws ConfigurationError if neither admin API key nor JWT is configured
140
+ *
141
+ * @example
142
+ * ```typescript
143
+ * // Get first page with default limit (20)
144
+ * const page1 = await tokenBanService.listTokenBans({});
145
+ * console.log('Total banned tokens:', page1.meta.total);
146
+ *
147
+ * // Search for specific tokens
148
+ * const searchResults = await tokenBanService.listTokenBans({
149
+ * search: 'scam',
150
+ * page: 1,
151
+ * limit: 10
152
+ * });
153
+ *
154
+ * // Paginate through all results
155
+ * let page = 1;
156
+ * let hasMore = true;
157
+ * while (hasMore) {
158
+ * const results = await tokenBanService.listTokenBans({ page, limit: 20 });
159
+ * console.log('Bans:', results.items);
160
+ * hasMore = page < results.meta.totalPages;
161
+ * page++;
162
+ * }
163
+ * ```
164
+ */
165
+ listTokenBans(options?: ListTokenBansOptions): Promise<TokenBanListResult>;
166
+ /**
167
+ * Get ban details for a specific token
168
+ *
169
+ * Dual-auth endpoint - supports both Admin API key and JWT (overseer) auth.
170
+ *
171
+ * Returns the ban record if the token is banned, or null if not banned.
172
+ * Use this to get full ban details including reason and who banned it.
173
+ *
174
+ * @param options - Options including tokenName
175
+ * @returns Ban data if banned, null if not banned
176
+ * @throws ValidationError if token name is invalid
177
+ * @throws ConfigurationError if neither admin API key nor JWT is configured
178
+ *
179
+ * @example
180
+ * ```typescript
181
+ * const status = await tokenBanService.getTokenBan({ tokenName: 'sometoken' });
182
+ * if (status.banned) {
183
+ * console.log('Token is banned');
184
+ * console.log('Reason:', status.ban?.reason);
185
+ * console.log('Banned by:', status.ban?.bannedBy);
186
+ * console.log('Banned at:', status.ban?.createdAt);
187
+ * } else {
188
+ * console.log('Token is not banned');
189
+ * }
190
+ * ```
191
+ */
192
+ getTokenBan(options: GetTokenBanOptions): Promise<TokenBanStatusResult>;
193
+ /**
194
+ * Check if a token is banned (convenience method)
195
+ *
196
+ * Alias for getTokenBan() - provided for semantic clarity.
197
+ * Use when you just need to check if a token is banned.
198
+ *
199
+ * @param options - Options including tokenName
200
+ * @returns Ban status with full details if banned
201
+ * @throws ValidationError if token name is invalid
202
+ * @throws ConfigurationError if neither admin API key nor JWT is configured
203
+ *
204
+ * @example
205
+ * ```typescript
206
+ * const status = await tokenBanService.isTokenBanned({ tokenName: 'sometoken' });
207
+ * if (status.banned) {
208
+ * console.log('Token is banned:', status.ban?.reason);
209
+ * }
210
+ * ```
211
+ */
212
+ isTokenBanned(options: GetTokenBanOptions): Promise<TokenBanStatusResult>;
213
+ }
214
+ //# sourceMappingURL=TokenBanService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TokenBanService.d.ts","sourceRoot":"","sources":["../../../src/services/TokenBanService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EACL,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EASrB,MAAM,wBAAwB,CAAC;AAIhC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,qBAAa,eAAgB,SAAQ,sBAAsB;gBAEvD,IAAI,EAAE,UAAU,EAChB,WAAW,CAAC,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,OAAO,EACjB,SAAS,GAAE,OAAe;IAS5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACG,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC;IAoCjE;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACG,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAoBvE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACG,aAAa,CAAC,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAuBpF;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACG,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAsB7E;;;;;;;;;;;;;;;;;;OAkBG;IACG,aAAa,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,oBAAoB,CAAC;CAGhF"}
@@ -1 +1 @@
1
- {"version":3,"file":"TokenClassKeyService.d.ts","sourceRoot":"","sources":["../../../src/services/TokenClassKeyService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAU3C;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,UAAU;gBACtC,SAAS,GAAE,OAAe;IAItC;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,2BAA2B,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE;IAwC3D;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,aAAa;IAgBvD;;;;;;;;;;;;;;;;;;OAkBG;IACH,kBAAkB,IAAI,aAAa;IAcnC;;;;;;;;;;;;;OAaG;IACH,2BAA2B,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM;IA0BzD;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO;IA4CnD;;;;;;;;OAQG;IACH,2BAA2B,CACzB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,MAAM,GACpB,MAAM;IAIT;;;;;OAKG;IACH,wBAAwB,CAAC,SAAS,EAAE,MAAM,GAAG;QAC3C,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,aAAa,EAAE,MAAM,CAAC;KACvB;CAcF"}
1
+ {"version":3,"file":"TokenClassKeyService.d.ts","sourceRoot":"","sources":["../../../src/services/TokenClassKeyService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAY3C;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,UAAU;gBACtC,SAAS,GAAE,OAAe;IAItC;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,2BAA2B,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE;IAwC3D;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,aAAa;IAgBvD;;;;;;;;;;;;;;;;;;OAkBG;IACH,kBAAkB,IAAI,aAAa;IAcnC;;;;;;;;;;;;;OAaG;IACH,2BAA2B,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM;IA0BzD;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO;IA4CnD;;;;;;;;OAQG;IACH,2BAA2B,CACzB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,MAAM,GACpB,MAAM;IAIT;;;;;OAKG;IACH,wBAAwB,CAAC,SAAS,EAAE,MAAM,GAAG;QAC3C,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,aAAa,EAAE,MAAM,CAAC;KACvB;CAcF"}
@@ -12,14 +12,16 @@
12
12
  * @category Services
13
13
  * @since 3.9.2
14
14
  */
15
- import { LoggerBase } from './BaseService';
15
+ import { AbstractCacheService, type BaseCacheStats } from './AbstractCacheService';
16
16
  /**
17
- * Token metadata cache entry
17
+ * Bonding curve cache entry
18
18
  *
19
- * Stores immutable token properties needed for local calculations.
19
+ * Stores immutable token properties needed for local bonding curve calculations.
20
20
  * All properties are optional - cache can be partially populated.
21
+ *
22
+ * @since 6.10.0 - Renamed from TokenMetadata for clarity (distinct from blockchain metadata)
21
23
  */
22
- export interface TokenMetadata {
24
+ export interface BondingCurveCacheEntry {
23
25
  /** Minimum reverse bonding curve fee factor (0.0 - 1.0) */
24
26
  reverseBondingCurveMinFeeFactor?: number;
25
27
  /** Maximum reverse bonding curve fee factor (0.0 - 1.0) */
@@ -38,7 +40,7 @@ export interface TokenMetadata {
38
40
  /**
39
41
  * Cache statistics for monitoring and debugging
40
42
  */
41
- export interface CacheStats {
43
+ export interface CacheStats extends BaseCacheStats {
42
44
  /** Total number of tokens in cache */
43
45
  totalTokens: number;
44
46
  /** Approximate cache size in bytes */
@@ -91,11 +93,19 @@ export interface CacheStats {
91
93
  * @category Services
92
94
  * @since 3.9.2
93
95
  */
94
- export declare class TokenMetadataCache extends LoggerBase {
96
+ export declare class TokenMetadataCache extends AbstractCacheService<string, BondingCurveCacheEntry, CacheStats> {
95
97
  /** Maximum cache size (10,000 tokens ≈ 2.5MB max memory) */
96
98
  private static readonly MAX_CACHE_SIZE;
97
- private cache;
98
99
  constructor(debugMode?: boolean);
100
+ /**
101
+ * Normalize token name for consistent cache keys
102
+ *
103
+ * Handles edge cases: unicode control chars, multiple spaces, case insensitivity.
104
+ *
105
+ * @param tokenName Raw token name
106
+ * @returns Normalized token name (lowercase, trimmed, cleaned)
107
+ */
108
+ protected normalizeKey(tokenName: string): string;
99
109
  /**
100
110
  * Get least recently updated entry for LRU eviction
101
111
  *
@@ -106,16 +116,6 @@ export declare class TokenMetadataCache extends LoggerBase {
106
116
  * @private
107
117
  */
108
118
  private getLRUKey;
109
- /**
110
- * Normalize token name for consistent cache keys
111
- *
112
- * Handles edge cases: unicode control chars, multiple spaces, case insensitivity.
113
- *
114
- * @param tokenName Raw token name
115
- * @returns Normalized token name (lowercase, trimmed, cleaned)
116
- * @private
117
- */
118
- private normalizeTokenName;
119
119
  /**
120
120
  * Update cache entry with LRU management
121
121
  *
@@ -150,7 +150,7 @@ export declare class TokenMetadataCache extends LoggerBase {
150
150
  * });
151
151
  * ```
152
152
  */
153
- warmFromPoolData(tokenName: string, poolData: Partial<TokenMetadata>): void;
153
+ warmFromPoolData(tokenName: string, poolData: Partial<BondingCurveCacheEntry>): void;
154
154
  /**
155
155
  * Set or update cache entry for a token
156
156
  *
@@ -166,22 +166,22 @@ export declare class TokenMetadataCache extends LoggerBase {
166
166
  * });
167
167
  * ```
168
168
  */
169
- set(tokenName: string, metadata: Partial<TokenMetadata>): void;
169
+ set(tokenName: string, metadata: Partial<BondingCurveCacheEntry>): void;
170
170
  /**
171
171
  * Get cached metadata for a token
172
172
  *
173
173
  * @param tokenName Token name (normalized to lowercase)
174
- * @returns Cached metadata or null if not cached
174
+ * @returns Cached metadata or undefined if not cached
175
175
  *
176
176
  * @example Retrieving cached data
177
177
  * ```typescript
178
- * const metadata = cache.get('anime');
178
+ * const metadata = cache.getByName('anime');
179
179
  * if (metadata?.reverseBondingCurveMaxFeeFactor) {
180
180
  * console.log('RBC max fee:', metadata.reverseBondingCurveMaxFeeFactor);
181
181
  * }
182
182
  * ```
183
183
  */
184
- get(tokenName: string): TokenMetadata | null;
184
+ getByName(tokenName: string): BondingCurveCacheEntry | undefined;
185
185
  /**
186
186
  * Get maxSupply for a token (returns cached or default constant)
187
187
  *
@@ -231,12 +231,12 @@ export declare class TokenMetadataCache extends LoggerBase {
231
231
  *
232
232
  * @example Dump cache for debugging
233
233
  * ```typescript
234
- * const cacheData = cache.dump();
234
+ * const cacheData = cache.dumpAsObject();
235
235
  * console.log('Cached tokens:', Object.keys(cacheData));
236
236
  * console.log('Cache contents:', JSON.stringify(cacheData, null, 2));
237
237
  * ```
238
238
  */
239
- dump(): Record<string, TokenMetadata>;
239
+ dumpAsObject(): Record<string, BondingCurveCacheEntry>;
240
240
  /**
241
241
  * Get cache statistics
242
242
  *
@@ -254,7 +254,16 @@ export declare class TokenMetadataCache extends LoggerBase {
254
254
  * console.log(`Oldest entry: ${new Date(stats.oldestEntry).toISOString()}`);
255
255
  * ```
256
256
  */
257
- stats(): CacheStats;
257
+ getStats(): CacheStats;
258
+ /**
259
+ * Calculate cache size in bytes and find oldest entry
260
+ *
261
+ * Helper method for getStats() - O(n) iteration over all entries.
262
+ *
263
+ * @returns Object with cacheSize (bytes) and oldestEntry (timestamp)
264
+ * @private
265
+ */
266
+ private calculateCacheSizeAndAge;
258
267
  /**
259
268
  * Get cached metadata by tokenId (DEX token format)
260
269
  *
@@ -272,7 +281,7 @@ export declare class TokenMetadataCache extends LoggerBase {
272
281
  * }
273
282
  * ```
274
283
  */
275
- getByTokenId(tokenId: string): TokenMetadata | null;
284
+ getByTokenId(tokenId: string): BondingCurveCacheEntry | null;
276
285
  /**
277
286
  * Set or update cache entry by tokenId (DEX token format)
278
287
  *
@@ -289,7 +298,7 @@ export declare class TokenMetadataCache extends LoggerBase {
289
298
  * });
290
299
  * ```
291
300
  */
292
- setByTokenId(tokenId: string, metadata: Partial<TokenMetadata>): void;
301
+ setByTokenId(tokenId: string, metadata: Partial<BondingCurveCacheEntry>): void;
293
302
  /**
294
303
  * Check if a tokenId exists in cache (DEX token format)
295
304
  *
@@ -1 +1 @@
1
- {"version":3,"file":"TokenMetadataCache.d.ts","sourceRoot":"","sources":["../../../src/services/TokenMetadataCache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C;;;;;GAKG;AACH,MAAM,WAAW,aAAa;IAC5B,2DAA2D;IAC3D,+BAA+B,CAAC,EAAE,MAAM,CAAC;IACzC,2DAA2D;IAC3D,+BAA+B,CAAC,EAAE,MAAM,CAAC;IACzC,uDAAuD;IACvD,+BAA+B,CAAC,EAAE,MAAM,CAAC;IACzC,sDAAsD;IACtD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,4DAA4D;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6DAA6D;IAC7D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uDAAuD;IACvD,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,sCAAsC;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,sCAAsC;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,sCAAsC;IACtC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,qBAAa,kBAAmB,SAAQ,UAAU;IAChD,4DAA4D;IAC5D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAS;IAE/C,OAAO,CAAC,KAAK,CAAoC;gBAErC,SAAS,GAAE,OAAe;IAItC;;;;;;;;OAQG;IACH,OAAO,CAAC,SAAS;IAKjB;;;;;;;;OAQG;IACH,OAAO,CAAC,kBAAkB;IAS1B;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,gBAAgB;IAyBxB;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,IAAI;IAK3E;;;;;;;;;;;;;;OAcG;IACH,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,IAAI;IAK9D;;;;;;;;;;;;;OAaG;IACH,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAK5C;;;;;;;;;;;;;;;OAeG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAQvC;;;;;OAKG;IACH,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAK/B;;;;;;;;;;;;;;OAcG;IACH,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAS/B;;;;;;;;;;;;;OAaG;IACH,IAAI,IAAI,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC;IAQrC;;;;;;;;;;;;;;;;OAgBG;IACH,KAAK,IAAI,UAAU;IAwCnB;;;;;;;;;;;;;;;;OAgBG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAKnD;;;;;;;;;;;;;;;OAeG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,IAAI;IAKrE;;;;;OAKG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;CAIvC"}
1
+ {"version":3,"file":"TokenMetadataCache.d.ts","sourceRoot":"","sources":["../../../src/services/TokenMetadataCache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,EAAE,oBAAoB,EAAE,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAGnF;;;;;;;GAOG;AACH,MAAM,WAAW,sBAAsB;IACrC,2DAA2D;IAC3D,+BAA+B,CAAC,EAAE,MAAM,CAAC;IACzC,2DAA2D;IAC3D,+BAA+B,CAAC,EAAE,MAAM,CAAC;IACzC,uDAAuD;IACvD,+BAA+B,CAAC,EAAE,MAAM,CAAC;IACzC,sDAAsD;IACtD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,4DAA4D;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6DAA6D;IAC7D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uDAAuD;IACvD,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,UAAW,SAAQ,cAAc;IAChD,sCAAsC;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,sCAAsC;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,sCAAsC;IACtC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,qBAAa,kBAAmB,SAAQ,oBAAoB,CAAC,MAAM,EAAE,sBAAsB,EAAE,UAAU,CAAC;IACtG,4DAA4D;IAC5D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAS;gBAEnC,SAAS,GAAE,OAAe;IAItC;;;;;;;OAOG;IACH,SAAS,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAOjD;;;;;;;;OAQG;IACH,OAAO,CAAC,SAAS;IAMjB;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,gBAAgB;IAyBxB;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,sBAAsB,CAAC,GAAG,IAAI;IAKpF;;;;;;;;;;;;;;OAcG;IACI,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,sBAAsB,CAAC,GAAG,IAAI;IAK9E;;;;;;;;;;;;;OAaG;IACI,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,sBAAsB,GAAG,SAAS;IAKvE;;;;;;;;;;;;;;;OAeG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAQvC;;;;;OAKG;IACI,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAKtC;;;;;;;;;;;;;;OAcG;IACI,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAStC;;;;;;;;;;;;;OAaG;IACI,YAAY,IAAI,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC;IAQ7D;;;;;;;;;;;;;;;;OAgBG;IACI,QAAQ,IAAI,UAAU;IAY7B;;;;;;;OAOG;IACH,OAAO,CAAC,wBAAwB;IAuChC;;;;;;;;;;;;;;;;OAgBG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI;IAK5D;;;;;;;;;;;;;;;OAeG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,sBAAsB,CAAC,GAAG,IAAI;IAK9E;;;;;OAKG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;CAIvC"}
@@ -79,19 +79,39 @@
79
79
  */
80
80
  import { LoggerBase } from './BaseService';
81
81
  import type { TokenClass } from '../types/gswap.dto';
82
- export interface TokenMetadata {
82
+ /**
83
+ * Blockchain-verified token metadata from GalaChain
84
+ *
85
+ * Contains authoritative token properties fetched from the blockchain,
86
+ * distinct from bonding curve cache entries or bridge metadata.
87
+ *
88
+ * @since 6.10.0 - Renamed from TokenMetadata for clarity
89
+ */
90
+ export interface BlockchainTokenMetadata {
91
+ /** Official token symbol from blockchain (e.g., "ANIME", "GALA") */
83
92
  symbol: string;
93
+ /** Token full name (optional) */
84
94
  name?: string;
95
+ /** Token decimal places (e.g., 8 for GALA, 18 for WETH) */
85
96
  decimals: number;
97
+ /** Token collection (e.g., "Token", "GALA") */
86
98
  collection: string;
99
+ /** Token category (e.g., "Unit") */
87
100
  category: string;
101
+ /** Token type (e.g., "ANIME", "none") */
88
102
  type: string;
103
+ /** Additional identifier (e.g., chain/address, "none") */
89
104
  additionalKey: string;
105
+ /** Whether token is Gala-verified */
90
106
  verified: boolean;
91
107
  }
92
- export interface TokenMetadataCache {
108
+ /**
109
+ * Internal cache structure for blockchain token metadata
110
+ * @internal
111
+ */
112
+ export interface BlockchainTokenMetadataCache {
93
113
  [key: string]: {
94
- data: TokenMetadata;
114
+ data: BlockchainTokenMetadata;
95
115
  timestamp: number;
96
116
  };
97
117
  }
@@ -190,7 +210,7 @@ export declare class TokenMetadataService extends LoggerBase {
190
210
  * @category Metadata Resolution
191
211
  * @since 3.0.0
192
212
  */
193
- resolveTokenMetadata(token: string | TokenClass): Promise<TokenMetadata>;
213
+ resolveTokenMetadata(token: string | TokenClass): Promise<BlockchainTokenMetadata>;
194
214
  /**
195
215
  * Get token symbol from blockchain
196
216
  *
@@ -1 +1 @@
1
- {"version":3,"file":"TokenMetadataService.d.ts","sourceRoot":"","sources":["../../../src/services/TokenMetadataService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8EG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAErD,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,CAAC,GAAG,EAAE,MAAM,GAAG;QACb,IAAI,EAAE,aAAa,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAED,qBAAa,oBAAqB,SAAQ,UAAU;IAClD,OAAO,CAAC,KAAK,CAA0B;IACvC,OAAO,CAAC,WAAW,CAAmB;gBAE1B,SAAS,GAAE,OAAe;IAItC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA0FG;IACG,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC;IAyB9E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAsCG;IACG,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAKjE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuDG;IACG,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAKnE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6CG;IACH,UAAU,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI;IAUnC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmDG;IACH,aAAa,IAAI;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE;IAQpD;;;OAGG;IAEH,OAAO,CAAC,WAAW;IAYnB;;;;;;;OAOG;IAEH,OAAO,CAAC,eAAe;IAyDvB;;;;;OAKG;IACH,OAAO,CAAC,mBAAmB;IAa3B;;;OAGG;IACH,OAAO,CAAC,cAAc;IAItB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkEG;IACH,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;CAIjC"}
1
+ {"version":3,"file":"TokenMetadataService.d.ts","sourceRoot":"","sources":["../../../src/services/TokenMetadataService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8EG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAKrD;;;;;;;GAOG;AACH,MAAM,WAAW,uBAAuB;IACtC,oEAAoE;IACpE,MAAM,EAAE,MAAM,CAAC;IACf,iCAAiC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,2DAA2D;IAC3D,QAAQ,EAAE,MAAM,CAAC;IACjB,+CAA+C;IAC/C,UAAU,EAAE,MAAM,CAAC;IACnB,oCAAoC;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,0DAA0D;IAC1D,aAAa,EAAE,MAAM,CAAC;IACtB,qCAAqC;IACrC,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,MAAM,WAAW,4BAA4B;IAC3C,CAAC,GAAG,EAAE,MAAM,GAAG;QACb,IAAI,EAAE,uBAAuB,CAAC;QAC9B,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAED,qBAAa,oBAAqB,SAAQ,UAAU;IAClD,OAAO,CAAC,KAAK,CAAoC;IACjD,OAAO,CAAC,WAAW,CAAmB;gBAE1B,SAAS,GAAE,OAAe;IAItC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA0FG;IACG,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAyBxF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAsCG;IACG,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAKjE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuDG;IACG,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAKnE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6CG;IACH,UAAU,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI;IAUnC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmDG;IACH,aAAa,IAAI;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE;IAQpD;;;OAGG;IAEH,OAAO,CAAC,WAAW;IAYnB;;;;;;;OAOG;IAEH,OAAO,CAAC,eAAe;IAyDvB;;;;;OAKG;IACH,OAAO,CAAC,mBAAmB;IAa3B;;;OAGG;IACH,OAAO,CAAC,cAAc;IAItB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkEG;IACH,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;CAIjC"}
@@ -1 +1 @@
1
- {"version":3,"file":"TokenResolverService.d.ts","sourceRoot":"","sources":["../../../src/services/TokenResolverService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAKrD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,oBAAqB,SAAQ,UAAU;IActC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAbxC;;;;OAIG;IACH,OAAO,CAAC,KAAK,CAA6B;IAE1C;;;;;OAKG;gBAC0B,WAAW,EAAE,WAAW,EAAE,SAAS,GAAE,OAAe;IAIjF;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAmCpE;;;;;;;;;;;;;;;;;;OAkBG;IACG,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAerE;;;;;OAKG;IACH,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAIrC;;;;;OAKG;IACH,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI;IAIlD;;;;OAIG;IACH,KAAK,IAAI,IAAI;IAIb;;;;OAIG;IACH,QAAQ,IAAI;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE;IAO5C;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CACL,QAAQ,EAAE,KAAK,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC,GAC3D,IAAI;IAMP;;;;;;;OAOG;IACH,OAAO,CAAC,gCAAgC;CAkBzC"}
1
+ {"version":3,"file":"TokenResolverService.d.ts","sourceRoot":"","sources":["../../../src/services/TokenResolverService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAI5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAMrD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,oBAAqB,SAAQ,UAAU;IActC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAbxC;;;;OAIG;IACH,OAAO,CAAC,KAAK,CAA6B;IAE1C;;;;;OAKG;gBAC0B,WAAW,EAAE,WAAW,EAAE,SAAS,GAAE,OAAe;IAIjF;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IA+BpE;;;;;;;;;;;;;;;;;;OAkBG;IACG,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAerE;;;;;OAKG;IACH,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAIrC;;;;;OAKG;IACH,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI;IAIlD;;;;OAIG;IACH,KAAK,IAAI,IAAI;IAIb;;;;OAIG;IACH,QAAQ,IAAI;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE;IAO5C;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CACL,QAAQ,EAAE,KAAK,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC,GAC3D,IAAI;IAMP;;;;;;;OAOG;IACH,OAAO,CAAC,gCAAgC;CAkBzC"}
@@ -10,6 +10,7 @@ import { BaseService } from './BaseService';
10
10
  import { HttpClient } from '../utils/http';
11
11
  import { TradesResult } from '../types/trade.dto';
12
12
  import { FetchTradesOptions } from '../types/options.dto';
13
+ import { GetTradesOptions, TradesQueryResult } from '../types/trades-query.dto';
13
14
  /**
14
15
  * Trade Service Class
15
16
  *
@@ -207,5 +208,77 @@ export declare class TradeService extends BaseService {
207
208
  * ```
208
209
  */
209
210
  fetchTrades(options: FetchTradesOptions): Promise<TradesResult>;
211
+ /**
212
+ * Build query parameters for trades endpoint
213
+ */
214
+ private buildTradesQueryParams;
215
+ /**
216
+ * Get trades with flexible filtering (v6.2.0+)
217
+ *
218
+ * Public endpoint - no authentication required.
219
+ * Filter by tokenName, userAddress, or both.
220
+ * At least one filter is required.
221
+ *
222
+ * This is the unified trades endpoint that replaces the legacy
223
+ * token-only fetchTrades method for more flexible querying.
224
+ *
225
+ * @param options Query options with tokenName and/or userAddress
226
+ * @returns Paginated list of trades with metadata
227
+ * @throws ValidationError if neither tokenName nor userAddress provided
228
+ * @throws ValidationError if options contain invalid values
229
+ *
230
+ * @category Trade Operations
231
+ * @since 6.2.0
232
+ *
233
+ * @example Get all trades for a token
234
+ * ```typescript
235
+ * const { trades, meta } = await tradeService.getTrades({
236
+ * tokenName: 'anime'
237
+ * });
238
+ * console.log(`Found ${meta.totalItems} trades`);
239
+ * trades.forEach(trade => {
240
+ * console.log(`${trade.txnType}: ${trade.inputAmount} -> ${trade.outputAmount}`);
241
+ * });
242
+ * ```
243
+ *
244
+ * @example Get all trades by a user
245
+ * ```typescript
246
+ * const { trades, meta } = await tradeService.getTrades({
247
+ * userAddress: 'eth|1234567890abcdef...'
248
+ * });
249
+ * console.log(`User has ${meta.totalItems} trades across all tokens`);
250
+ * ```
251
+ *
252
+ * @example Get a user's trades on a specific token with pagination
253
+ * ```typescript
254
+ * const { trades, meta } = await tradeService.getTrades({
255
+ * tokenName: 'anime',
256
+ * userAddress: 'eth|1234567890abcdef...',
257
+ * page: 2,
258
+ * limit: 20
259
+ * });
260
+ * console.log(`Page ${meta.currentPage} of ${meta.totalPages}`);
261
+ * ```
262
+ *
263
+ * @example Calculate trading volume for a user
264
+ * ```typescript
265
+ * const result = await tradeService.getTrades({
266
+ * userAddress: 'eth|1234567890abcdef...',
267
+ * limit: 50
268
+ * });
269
+ *
270
+ * let totalBought = 0;
271
+ * let totalSold = 0;
272
+ * for (const trade of result.trades) {
273
+ * if (trade.txnType === 'BUY') {
274
+ * totalBought += trade.outputAmount;
275
+ * } else {
276
+ * totalSold += trade.inputAmount;
277
+ * }
278
+ * }
279
+ * console.log(`Bought: ${totalBought} tokens, Sold: ${totalSold} tokens`);
280
+ * ```
281
+ */
282
+ getTrades(options: GetTradesOptions): Promise<TradesQueryResult>;
210
283
  }
211
284
  //# sourceMappingURL=TradeService.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TradeService.d.ts","sourceRoot":"","sources":["../../../src/services/TradeService.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAO3C,OAAO,EAEL,YAAY,EAEb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,kBAAkB,EAAwB,MAAM,sBAAsB,CAAC;AAEhF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AACH,qBAAa,YAAa,SAAQ,WAAW;IAC3C;;;;;;;;;;;OAWG;gBACS,IAAI,EAAE,UAAU,EAAE,SAAS,GAAE,OAAe;IAIxD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAoIG;IACG,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,YAAY,CAAC;CA2DtE"}
1
+ {"version":3,"file":"TradeService.d.ts","sourceRoot":"","sources":["../../../src/services/TradeService.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAY3C,OAAO,EAEL,YAAY,EAEb,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,kBAAkB,EAAwB,MAAM,sBAAsB,CAAC;AAChF,OAAO,EACL,gBAAgB,EAEhB,iBAAiB,EAGlB,MAAM,2BAA2B,CAAC;AAGnC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AACH,qBAAa,YAAa,SAAQ,WAAW;IAC3C;;;;;;;;;;;OAWG;gBACS,IAAI,EAAE,UAAU,EAAE,SAAS,GAAE,OAAe;IAIxD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAoIG;IACG,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,YAAY,CAAC;IAyDrE;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA4C9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkEG;IACG,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAgBvE"}
@@ -9,7 +9,8 @@
9
9
  */
10
10
  import { HttpClient } from '../utils/http';
11
11
  import { BaseService } from './BaseService';
12
- import { GetTokenListOptions, UserTokenListResult, UpdateProfileData, UploadProfileImageOptions } from '../types/user.dto';
12
+ import type { JwtAuth } from '../auth/JwtAuth';
13
+ import { GetTokenListOptions, UserTokenListResult, UpdateProfileData, UploadProfileImageOptions, GetManagedTokensOptions, ManagedTokensResult } from '../types/user.dto';
13
14
  /**
14
15
  * User Service Class
15
16
  *
@@ -25,7 +26,7 @@ import { GetTokenListOptions, UserTokenListResult, UpdateProfileData, UploadProf
25
26
  * // Get user profile
26
27
  * const profile = await userService.fetchProfile();
27
28
  *
28
- * // Update profile
29
+ * // Update profile (requires JWT auth - call sdk.login() first)
29
30
  * await userService.updateProfile({
30
31
  * profileImage: "https://example.com/avatar.jpg",
31
32
  * fullName: "John Doe",
@@ -34,7 +35,7 @@ import { GetTokenListOptions, UserTokenListResult, UpdateProfileData, UploadProf
34
35
  * ```
35
36
  */
36
37
  export declare class UserService extends BaseService {
37
- constructor(http: HttpClient, debugMode?: boolean);
38
+ constructor(http: HttpClient, jwtAuth?: JwtAuth, debugMode?: boolean);
38
39
  /**
39
40
  * Fetch user profile information from launchpad backend
40
41
  *
@@ -64,6 +65,8 @@ export declare class UserService extends BaseService {
64
65
  /**
65
66
  * Updates user profile information
66
67
  *
68
+ * **Requires JWT authentication** - call sdk.login() before using this method.
69
+ *
67
70
  * **Smart Image Preservation**: If profileImage is empty or not provided,
68
71
  * the method automatically fetches and preserves the existing profile image
69
72
  * to prevent accidental image loss.
@@ -71,15 +74,19 @@ export declare class UserService extends BaseService {
71
74
  * @param data Profile update data
72
75
  * @returns Promise<void> No return data - throws on failure
73
76
  * @throws ValidationError if input validation fails
77
+ * @throws ConfigurationError if JWT auth is not configured
74
78
  * @throws Error if profile update fails
75
79
  */
76
80
  updateProfile(data: UpdateProfileData): Promise<void>;
77
81
  /**
78
82
  * Uploads a profile image and returns the image URL
79
83
  *
84
+ * **Requires JWT authentication** - call sdk.login() before using this method.
85
+ *
80
86
  * @param options Profile image upload options
81
87
  * @returns Promise<string> Clean image URL
82
88
  * @throws ValidationError if input validation fails
89
+ * @throws ConfigurationError if JWT auth is not configured
83
90
  * @throws Error if upload fails
84
91
  */
85
92
  uploadProfileImage(options: UploadProfileImageOptions): Promise<string>;
@@ -195,6 +202,52 @@ export declare class UserService extends BaseService {
195
202
  search?: string;
196
203
  tokenName?: string;
197
204
  }): Promise<UserTokenListResult>;
205
+ /**
206
+ * Get all tokens the authenticated user can manage
207
+ *
208
+ * Returns a comprehensive view of the user's management capabilities:
209
+ * - **ownedTokens**: Tokens the user created (full OWNER access)
210
+ * - **moderatedTokens**: Tokens with moderator access via claimed invites
211
+ * - **isOverseer**: Whether user has platform-wide overseer access
212
+ * - **overseerSince**: When user became overseer (if applicable)
213
+ *
214
+ * This is used by the /moderators dashboard page to show all tokens
215
+ * a user can access in Studio.
216
+ *
217
+ * **Requires JWT authentication** - call sdk.login() before using this method.
218
+ *
219
+ * @param options Optional pagination options (page, limit)
220
+ * @returns ManagedTokensResult with owned tokens, moderated tokens, and overseer status
221
+ * @throws ConfigurationError if JWT auth is not configured
222
+ * @throws ValidationError if pagination parameters are invalid
223
+ *
224
+ * @since 5.11.0
225
+ *
226
+ * @example
227
+ * ```typescript
228
+ * const managed = await userService.getManagedTokens();
229
+ *
230
+ * console.log(`Owned tokens: ${managed.ownedTokensCount}`);
231
+ * console.log(`Moderated tokens: ${managed.moderatedTokensCount}`);
232
+ * console.log(`Is overseer: ${managed.isOverseer}`);
233
+ *
234
+ * // List owned tokens with Studio links
235
+ * managed.ownedTokens.forEach(token => {
236
+ * console.log(`${token.tokenName} - ${token.isLive ? 'LIVE' : 'offline'}`);
237
+ * });
238
+ *
239
+ * // List moderated tokens with role info
240
+ * managed.moderatedTokens.forEach(token => {
241
+ * console.log(`${token.tokenName} - ${token.role} (${token.inviteScope})`);
242
+ * });
243
+ *
244
+ * // Check overseer status
245
+ * if (managed.isOverseer) {
246
+ * console.log(`Overseer since: ${managed.overseerSince}`);
247
+ * }
248
+ * ```
249
+ */
250
+ getManagedTokens(options?: GetManagedTokensOptions): Promise<ManagedTokensResult>;
198
251
  /**
199
252
  * Builds and executes a token fetch request with consistent error handling and normalization
200
253
  *