@gala-chain/launchpad-sdk 4.0.0 → 4.0.1-beta.10

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 (386) hide show
  1. package/API.md +5 -5
  2. package/CHANGELOG.md +15 -15
  3. package/EXAMPLES.md +80 -2
  4. package/README.md +118 -1
  5. package/dist/index.cjs.js +1 -1
  6. package/dist/index.d.ts +37 -34
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.esm.js +1 -1
  9. package/dist/index.js +1 -1
  10. package/dist/{LaunchpadSDK.d.ts → src/LaunchpadSDK.d.ts} +899 -20
  11. package/dist/src/LaunchpadSDK.d.ts.map +1 -0
  12. package/dist/src/api/LaunchpadAPI.d.ts.map +1 -0
  13. package/dist/src/api/dto/BondingCurveDTOs.d.ts.map +1 -0
  14. package/dist/src/api/dto/LockTokenDto.d.ts +97 -0
  15. package/dist/src/api/dto/LockTokenDto.d.ts.map +1 -0
  16. package/dist/src/api/dto/TransferTokenDto.d.ts.map +1 -0
  17. package/dist/src/api/dto/UnlockTokenDto.d.ts +86 -0
  18. package/dist/src/api/dto/UnlockTokenDto.d.ts.map +1 -0
  19. package/dist/src/auth/SignatureAuth.d.ts.map +1 -0
  20. package/dist/src/auth/types.d.ts.map +1 -0
  21. package/dist/src/config/environments.d.ts.map +1 -0
  22. package/dist/src/constants/bondingCurve.d.ts.map +1 -0
  23. package/dist/src/constants/config.d.ts.map +1 -0
  24. package/dist/src/constants/counts.d.ts.map +1 -0
  25. package/dist/src/constants/decimals.d.ts.map +1 -0
  26. package/dist/src/constants/endpoints.d.ts.map +1 -0
  27. package/dist/src/constants/enums.d.ts.map +1 -0
  28. package/dist/src/constants/error-messages.d.ts.map +1 -0
  29. package/dist/src/constants/pagination.d.ts.map +1 -0
  30. package/dist/src/constants/query-fields.d.ts.map +1 -0
  31. package/dist/src/constants/version.d.ts.map +1 -0
  32. package/dist/{constants → src/constants}/version.generated.d.ts +1 -1
  33. package/dist/src/constants/version.generated.d.ts.map +1 -0
  34. package/dist/src/helpers/sdk.d.ts.map +1 -0
  35. package/dist/src/helpers/wallet.d.ts.map +1 -0
  36. package/dist/src/index.d.ts +51 -0
  37. package/dist/src/index.d.ts.map +1 -0
  38. package/dist/src/polyfills/file-global.d.ts.map +1 -0
  39. package/dist/src/schemas/files.d.ts.map +1 -0
  40. package/dist/src/schemas/index.d.ts.map +1 -0
  41. package/dist/src/schemas/launchpad.d.ts.map +1 -0
  42. package/dist/src/schemas/pagination.d.ts.map +1 -0
  43. package/dist/src/schemas/primitives.d.ts.map +1 -0
  44. package/dist/src/schemas/trade.d.ts.map +1 -0
  45. package/dist/src/schemas/user.d.ts.map +1 -0
  46. package/dist/src/schemas/validators.d.ts.map +1 -0
  47. package/dist/src/services/BaseService.d.ts.map +1 -0
  48. package/dist/src/services/BundleService.d.ts.map +1 -0
  49. package/dist/src/services/CommentService.d.ts.map +1 -0
  50. package/dist/src/services/DexBackendClient.d.ts.map +1 -0
  51. package/dist/src/services/DexPoolService.d.ts.map +1 -0
  52. package/dist/src/services/DexQuoteService.d.ts.map +1 -0
  53. package/dist/{services → src/services}/DexService.d.ts +83 -9
  54. package/dist/src/services/DexService.d.ts.map +1 -0
  55. package/dist/src/services/FaucetService.d.ts.map +1 -0
  56. package/dist/{services → src/services}/GSwapService.d.ts +101 -17
  57. package/dist/src/services/GSwapService.d.ts.map +1 -0
  58. package/dist/{services → src/services}/GalaChainGatewayClient.d.ts +12 -3
  59. package/dist/src/services/GalaChainGatewayClient.d.ts.map +1 -0
  60. package/dist/{services → src/services}/GalaChainService.d.ts +73 -4
  61. package/dist/src/services/GalaChainService.d.ts.map +1 -0
  62. package/dist/src/services/ImageService.d.ts.map +1 -0
  63. package/dist/src/services/LaunchpadService.d.ts.map +1 -0
  64. package/dist/src/services/MultiPoolStateManager.d.ts +284 -0
  65. package/dist/src/services/MultiPoolStateManager.d.ts.map +1 -0
  66. package/dist/src/services/PoolCacheManager.d.ts +171 -0
  67. package/dist/src/services/PoolCacheManager.d.ts.map +1 -0
  68. package/dist/src/services/PoolService.d.ts.map +1 -0
  69. package/dist/src/services/PoolStateManager.d.ts.map +1 -0
  70. package/dist/{services → src/services}/PriceHistoryService.d.ts +5 -5
  71. package/dist/src/services/PriceHistoryService.d.ts.map +1 -0
  72. package/dist/src/services/SignatureService.d.ts.map +1 -0
  73. package/dist/src/services/SwapEventQueue.d.ts +123 -0
  74. package/dist/src/services/SwapEventQueue.d.ts.map +1 -0
  75. package/dist/src/services/TokenClassKeyService.d.ts.map +1 -0
  76. package/dist/{services → src/services}/TokenMetadataCache.d.ts +5 -5
  77. package/dist/src/services/TokenMetadataCache.d.ts.map +1 -0
  78. package/dist/{services → src/services}/TokenMetadataService.d.ts +3 -3
  79. package/dist/src/services/TokenMetadataService.d.ts.map +1 -0
  80. package/dist/src/services/TokenResolverService.d.ts.map +1 -0
  81. package/dist/src/services/TradeService.d.ts.map +1 -0
  82. package/dist/src/services/UserService.d.ts.map +1 -0
  83. package/dist/src/services/WebSocketManager.d.ts.map +1 -0
  84. package/dist/src/services/WebSocketService.d.ts.map +1 -0
  85. package/dist/src/services/__mocks__/logger.mock.d.ts.map +1 -0
  86. package/dist/{setup.d.ts.map → src/setup.d.ts.map} +1 -1
  87. package/dist/{types → src/types}/backend-responses.d.ts +17 -0
  88. package/dist/src/types/backend-responses.d.ts.map +1 -0
  89. package/dist/src/types/comment.dto.d.ts.map +1 -0
  90. package/dist/src/types/common.d.ts.map +1 -0
  91. package/dist/{types → src/types}/composite-pool.dto.d.ts +1 -1
  92. package/dist/src/types/composite-pool.dto.d.ts.map +1 -0
  93. package/dist/src/types/dex-pool.dto.d.ts.map +1 -0
  94. package/dist/src/types/dto.d.ts.map +1 -0
  95. package/dist/src/types/eip712-types.d.ts.map +1 -0
  96. package/dist/{types → src/types}/galachain-api.types.d.ts +18 -8
  97. package/dist/src/types/galachain-api.types.d.ts.map +1 -0
  98. package/dist/{types → src/types}/gswap-responses.types.d.ts +14 -14
  99. package/dist/src/types/gswap-responses.types.d.ts.map +1 -0
  100. package/dist/src/types/gswap.dto.d.ts.map +1 -0
  101. package/dist/{types → src/types}/launchpad.dto.d.ts +175 -0
  102. package/dist/src/types/launchpad.dto.d.ts.map +1 -0
  103. package/dist/src/types/launchpad.validation.d.ts.map +1 -0
  104. package/dist/src/types/liquidity-monitor.dto.d.ts +177 -0
  105. package/dist/src/types/liquidity-monitor.dto.d.ts.map +1 -0
  106. package/dist/src/types/lock.dto.d.ts +146 -0
  107. package/dist/src/types/lock.dto.d.ts.map +1 -0
  108. package/dist/src/types/options.dto.d.ts.map +1 -0
  109. package/dist/src/types/pool-state-delta.dto.d.ts.map +1 -0
  110. package/dist/src/types/pool-state-manager-config.dto.d.ts.map +1 -0
  111. package/dist/{types → src/types}/priceHistory.dto.d.ts +4 -4
  112. package/dist/src/types/priceHistory.dto.d.ts.map +1 -0
  113. package/dist/src/types/result.types.d.ts.map +1 -0
  114. package/dist/src/types/swap-monitor.dto.d.ts +256 -0
  115. package/dist/src/types/swap-monitor.dto.d.ts.map +1 -0
  116. package/dist/src/types/trade.dto.d.ts.map +1 -0
  117. package/dist/src/types/transfer.dto.d.ts.map +1 -0
  118. package/dist/src/types/user.dto.d.ts.map +1 -0
  119. package/dist/src/types/websocket-data.types.d.ts.map +1 -0
  120. package/dist/src/types/websocket.types.d.ts.map +1 -0
  121. package/dist/src/utils/LiquidityEventExtractor.d.ts +99 -0
  122. package/dist/src/utils/LiquidityEventExtractor.d.ts.map +1 -0
  123. package/dist/src/utils/Logger.d.ts.map +1 -0
  124. package/dist/src/utils/MonitoringMetrics.d.ts +152 -0
  125. package/dist/src/utils/MonitoringMetrics.d.ts.map +1 -0
  126. package/dist/src/utils/PoolKeyNormalizer.d.ts +135 -0
  127. package/dist/src/utils/PoolKeyNormalizer.d.ts.map +1 -0
  128. package/dist/{utils → src/utils}/SignatureHelper.d.ts +38 -0
  129. package/dist/src/utils/SignatureHelper.d.ts.map +1 -0
  130. package/dist/src/utils/SwapEventExtractor.d.ts +152 -0
  131. package/dist/src/utils/SwapEventExtractor.d.ts.map +1 -0
  132. package/dist/src/utils/adapters.d.ts.map +1 -0
  133. package/dist/src/utils/agent-config.d.ts.map +1 -0
  134. package/dist/{utils → src/utils}/auto-pagination.d.ts +1 -1
  135. package/dist/src/utils/auto-pagination.d.ts.map +1 -0
  136. package/dist/{utils → src/utils}/bignumber-helpers.d.ts +5 -1
  137. package/dist/src/utils/bignumber-helpers.d.ts.map +1 -0
  138. package/dist/src/utils/bignumber-pool-cache.d.ts.map +1 -0
  139. package/dist/src/utils/bondingCurveCalculations.d.ts.map +1 -0
  140. package/dist/src/utils/cacheWarmingHelpers.d.ts.map +1 -0
  141. package/dist/src/utils/composite-pool-converter.d.ts.map +1 -0
  142. package/dist/src/utils/date-utils.d.ts.map +1 -0
  143. package/dist/src/utils/error-factories.d.ts.map +1 -0
  144. package/dist/src/utils/error-utils.d.ts.map +1 -0
  145. package/dist/src/utils/errors.d.ts.map +1 -0
  146. package/dist/src/utils/http.d.ts.map +1 -0
  147. package/dist/src/utils/load-env.d.ts.map +1 -0
  148. package/dist/src/utils/multipart-helpers.d.ts.map +1 -0
  149. package/dist/{utils → src/utils}/multipart.d.ts +2 -2
  150. package/dist/src/utils/multipart.d.ts.map +1 -0
  151. package/dist/src/utils/number-utils.d.ts.map +1 -0
  152. package/dist/src/utils/pool-pair-parser.d.ts.map +1 -0
  153. package/dist/src/utils/pool-state-validator.d.ts.map +1 -0
  154. package/dist/src/utils/position-filters.d.ts.map +1 -0
  155. package/dist/src/utils/precision-math.d.ts.map +1 -0
  156. package/dist/{utils → src/utils}/query-params.d.ts +2 -2
  157. package/dist/src/utils/query-params.d.ts.map +1 -0
  158. package/dist/src/utils/response-handlers.d.ts.map +1 -0
  159. package/dist/src/utils/response-normalizers.d.ts.map +1 -0
  160. package/dist/src/utils/slippage-utils.d.ts.map +1 -0
  161. package/dist/src/utils/swap-delta-calculator.d.ts.map +1 -0
  162. package/dist/src/utils/tick-crossing-handler.d.ts.map +1 -0
  163. package/dist/{utils → src/utils}/token-format-converter.d.ts +8 -8
  164. package/dist/src/utils/token-format-converter.d.ts.map +1 -0
  165. package/dist/src/utils/token-parser.d.ts.map +1 -0
  166. package/dist/src/utils/tokenNormalizer.d.ts.map +1 -0
  167. package/dist/src/utils/trade-transformers.d.ts.map +1 -0
  168. package/dist/src/utils/transfer-validation.d.ts.map +1 -0
  169. package/dist/{utils → src/utils}/validation-helpers.d.ts +1 -1
  170. package/dist/src/utils/validation-helpers.d.ts.map +1 -0
  171. package/dist/src/utils/validation.d.ts.map +1 -0
  172. package/dist/src/utils/wallet.d.ts.map +1 -0
  173. package/dist/src/utils/websocket-errors.d.ts.map +1 -0
  174. package/dist/src/utils/websocket-validators.d.ts.map +1 -0
  175. package/package.json +39 -6
  176. package/dist/LaunchpadSDK.d.ts.map +0 -1
  177. package/dist/api/LaunchpadAPI.d.ts.map +0 -1
  178. package/dist/api/dto/BondingCurveDTOs.d.ts.map +0 -1
  179. package/dist/api/dto/TransferTokenDto.d.ts.map +0 -1
  180. package/dist/auth/SignatureAuth.d.ts.map +0 -1
  181. package/dist/auth/types.d.ts.map +0 -1
  182. package/dist/config/environments.d.ts.map +0 -1
  183. package/dist/constants/bondingCurve.d.ts.map +0 -1
  184. package/dist/constants/config.d.ts.map +0 -1
  185. package/dist/constants/counts.d.ts.map +0 -1
  186. package/dist/constants/decimals.d.ts.map +0 -1
  187. package/dist/constants/endpoints.d.ts.map +0 -1
  188. package/dist/constants/enums.d.ts.map +0 -1
  189. package/dist/constants/error-messages.d.ts.map +0 -1
  190. package/dist/constants/pagination.d.ts.map +0 -1
  191. package/dist/constants/query-fields.d.ts.map +0 -1
  192. package/dist/constants/version.d.ts.map +0 -1
  193. package/dist/constants/version.generated.d.ts.map +0 -1
  194. package/dist/helpers/sdk.d.ts.map +0 -1
  195. package/dist/helpers/wallet.d.ts.map +0 -1
  196. package/dist/polyfills/file-global.d.ts.map +0 -1
  197. package/dist/schemas/files.d.ts.map +0 -1
  198. package/dist/schemas/index.d.ts.map +0 -1
  199. package/dist/schemas/launchpad.d.ts.map +0 -1
  200. package/dist/schemas/pagination.d.ts.map +0 -1
  201. package/dist/schemas/primitives.d.ts.map +0 -1
  202. package/dist/schemas/trade.d.ts.map +0 -1
  203. package/dist/schemas/user.d.ts.map +0 -1
  204. package/dist/schemas/validators.d.ts.map +0 -1
  205. package/dist/services/BaseService.d.ts.map +0 -1
  206. package/dist/services/BundleService.d.ts.map +0 -1
  207. package/dist/services/CommentService.d.ts.map +0 -1
  208. package/dist/services/DexBackendClient.d.ts.map +0 -1
  209. package/dist/services/DexPoolService.d.ts.map +0 -1
  210. package/dist/services/DexQuoteService.d.ts.map +0 -1
  211. package/dist/services/DexService.d.ts.map +0 -1
  212. package/dist/services/FaucetService.d.ts.map +0 -1
  213. package/dist/services/GSwapService.d.ts.map +0 -1
  214. package/dist/services/GalaChainGatewayClient.d.ts.map +0 -1
  215. package/dist/services/GalaChainService.d.ts.map +0 -1
  216. package/dist/services/ImageService.d.ts.map +0 -1
  217. package/dist/services/LaunchpadService.d.ts.map +0 -1
  218. package/dist/services/PoolService.d.ts.map +0 -1
  219. package/dist/services/PoolStateManager.d.ts.map +0 -1
  220. package/dist/services/PriceHistoryService.d.ts.map +0 -1
  221. package/dist/services/SignatureService.d.ts.map +0 -1
  222. package/dist/services/TokenClassKeyService.d.ts.map +0 -1
  223. package/dist/services/TokenMetadataCache.d.ts.map +0 -1
  224. package/dist/services/TokenMetadataService.d.ts.map +0 -1
  225. package/dist/services/TokenResolverService.d.ts.map +0 -1
  226. package/dist/services/TradeService.d.ts.map +0 -1
  227. package/dist/services/UserService.d.ts.map +0 -1
  228. package/dist/services/WebSocketManager.d.ts.map +0 -1
  229. package/dist/services/WebSocketService.d.ts.map +0 -1
  230. package/dist/services/__mocks__/logger.mock.d.ts.map +0 -1
  231. package/dist/types/backend-responses.d.ts.map +0 -1
  232. package/dist/types/comment.dto.d.ts.map +0 -1
  233. package/dist/types/common.d.ts.map +0 -1
  234. package/dist/types/composite-pool.dto.d.ts.map +0 -1
  235. package/dist/types/dex-pool.dto.d.ts.map +0 -1
  236. package/dist/types/dto.d.ts.map +0 -1
  237. package/dist/types/eip712-types.d.ts.map +0 -1
  238. package/dist/types/galachain-api.types.d.ts.map +0 -1
  239. package/dist/types/gswap-responses.types.d.ts.map +0 -1
  240. package/dist/types/gswap.dto.d.ts.map +0 -1
  241. package/dist/types/launchpad.dto.d.ts.map +0 -1
  242. package/dist/types/launchpad.validation.d.ts.map +0 -1
  243. package/dist/types/options.dto.d.ts.map +0 -1
  244. package/dist/types/pool-state-delta.dto.d.ts.map +0 -1
  245. package/dist/types/pool-state-manager-config.dto.d.ts.map +0 -1
  246. package/dist/types/priceHistory.dto.d.ts.map +0 -1
  247. package/dist/types/result.types.d.ts.map +0 -1
  248. package/dist/types/trade.dto.d.ts.map +0 -1
  249. package/dist/types/transfer.dto.d.ts.map +0 -1
  250. package/dist/types/user.dto.d.ts.map +0 -1
  251. package/dist/types/websocket-data.types.d.ts.map +0 -1
  252. package/dist/types/websocket.types.d.ts.map +0 -1
  253. package/dist/utils/Logger.d.ts.map +0 -1
  254. package/dist/utils/SignatureHelper.d.ts.map +0 -1
  255. package/dist/utils/adapters.d.ts.map +0 -1
  256. package/dist/utils/agent-config.d.ts.map +0 -1
  257. package/dist/utils/auto-pagination.d.ts.map +0 -1
  258. package/dist/utils/bignumber-helpers.d.ts.map +0 -1
  259. package/dist/utils/bignumber-pool-cache.d.ts.map +0 -1
  260. package/dist/utils/bondingCurveCalculations.d.ts.map +0 -1
  261. package/dist/utils/cacheWarmingHelpers.d.ts.map +0 -1
  262. package/dist/utils/composite-pool-converter.d.ts.map +0 -1
  263. package/dist/utils/date-utils.d.ts.map +0 -1
  264. package/dist/utils/error-factories.d.ts.map +0 -1
  265. package/dist/utils/error-utils.d.ts.map +0 -1
  266. package/dist/utils/errors.d.ts.map +0 -1
  267. package/dist/utils/http.d.ts.map +0 -1
  268. package/dist/utils/load-env.d.ts.map +0 -1
  269. package/dist/utils/multipart-helpers.d.ts.map +0 -1
  270. package/dist/utils/multipart.d.ts.map +0 -1
  271. package/dist/utils/number-utils.d.ts.map +0 -1
  272. package/dist/utils/pool-pair-parser.d.ts.map +0 -1
  273. package/dist/utils/pool-state-validator.d.ts.map +0 -1
  274. package/dist/utils/position-filters.d.ts.map +0 -1
  275. package/dist/utils/precision-math.d.ts.map +0 -1
  276. package/dist/utils/query-params.d.ts.map +0 -1
  277. package/dist/utils/response-handlers.d.ts.map +0 -1
  278. package/dist/utils/response-normalizers.d.ts.map +0 -1
  279. package/dist/utils/slippage-utils.d.ts.map +0 -1
  280. package/dist/utils/swap-delta-calculator.d.ts.map +0 -1
  281. package/dist/utils/tick-crossing-handler.d.ts.map +0 -1
  282. package/dist/utils/token-format-converter.d.ts.map +0 -1
  283. package/dist/utils/token-parser.d.ts.map +0 -1
  284. package/dist/utils/tokenNormalizer.d.ts.map +0 -1
  285. package/dist/utils/trade-transformers.d.ts.map +0 -1
  286. package/dist/utils/transfer-validation.d.ts.map +0 -1
  287. package/dist/utils/validation-helpers.d.ts.map +0 -1
  288. package/dist/utils/validation.d.ts.map +0 -1
  289. package/dist/utils/wallet.d.ts.map +0 -1
  290. package/dist/utils/websocket-errors.d.ts.map +0 -1
  291. package/dist/utils/websocket-validators.d.ts.map +0 -1
  292. /package/dist/{api → src/api}/LaunchpadAPI.d.ts +0 -0
  293. /package/dist/{api → src/api}/dto/BondingCurveDTOs.d.ts +0 -0
  294. /package/dist/{api → src/api}/dto/TransferTokenDto.d.ts +0 -0
  295. /package/dist/{auth → src/auth}/SignatureAuth.d.ts +0 -0
  296. /package/dist/{auth → src/auth}/types.d.ts +0 -0
  297. /package/dist/{config → src/config}/environments.d.ts +0 -0
  298. /package/dist/{constants → src/constants}/bondingCurve.d.ts +0 -0
  299. /package/dist/{constants → src/constants}/config.d.ts +0 -0
  300. /package/dist/{constants → src/constants}/counts.d.ts +0 -0
  301. /package/dist/{constants → src/constants}/decimals.d.ts +0 -0
  302. /package/dist/{constants → src/constants}/endpoints.d.ts +0 -0
  303. /package/dist/{constants → src/constants}/enums.d.ts +0 -0
  304. /package/dist/{constants → src/constants}/error-messages.d.ts +0 -0
  305. /package/dist/{constants → src/constants}/pagination.d.ts +0 -0
  306. /package/dist/{constants → src/constants}/query-fields.d.ts +0 -0
  307. /package/dist/{constants → src/constants}/version.d.ts +0 -0
  308. /package/dist/{helpers → src/helpers}/sdk.d.ts +0 -0
  309. /package/dist/{helpers → src/helpers}/wallet.d.ts +0 -0
  310. /package/dist/{polyfills → src/polyfills}/file-global.d.ts +0 -0
  311. /package/dist/{schemas → src/schemas}/files.d.ts +0 -0
  312. /package/dist/{schemas → src/schemas}/index.d.ts +0 -0
  313. /package/dist/{schemas → src/schemas}/launchpad.d.ts +0 -0
  314. /package/dist/{schemas → src/schemas}/pagination.d.ts +0 -0
  315. /package/dist/{schemas → src/schemas}/primitives.d.ts +0 -0
  316. /package/dist/{schemas → src/schemas}/trade.d.ts +0 -0
  317. /package/dist/{schemas → src/schemas}/user.d.ts +0 -0
  318. /package/dist/{schemas → src/schemas}/validators.d.ts +0 -0
  319. /package/dist/{services → src/services}/BaseService.d.ts +0 -0
  320. /package/dist/{services → src/services}/BundleService.d.ts +0 -0
  321. /package/dist/{services → src/services}/CommentService.d.ts +0 -0
  322. /package/dist/{services → src/services}/DexBackendClient.d.ts +0 -0
  323. /package/dist/{services → src/services}/DexPoolService.d.ts +0 -0
  324. /package/dist/{services → src/services}/DexQuoteService.d.ts +0 -0
  325. /package/dist/{services → src/services}/FaucetService.d.ts +0 -0
  326. /package/dist/{services → src/services}/ImageService.d.ts +0 -0
  327. /package/dist/{services → src/services}/LaunchpadService.d.ts +0 -0
  328. /package/dist/{services → src/services}/PoolService.d.ts +0 -0
  329. /package/dist/{services → src/services}/PoolStateManager.d.ts +0 -0
  330. /package/dist/{services → src/services}/SignatureService.d.ts +0 -0
  331. /package/dist/{services → src/services}/TokenClassKeyService.d.ts +0 -0
  332. /package/dist/{services → src/services}/TokenResolverService.d.ts +0 -0
  333. /package/dist/{services → src/services}/TradeService.d.ts +0 -0
  334. /package/dist/{services → src/services}/UserService.d.ts +0 -0
  335. /package/dist/{services → src/services}/WebSocketManager.d.ts +0 -0
  336. /package/dist/{services → src/services}/WebSocketService.d.ts +0 -0
  337. /package/dist/{services → src/services}/__mocks__/logger.mock.d.ts +0 -0
  338. /package/dist/{setup.d.ts → src/setup.d.ts} +0 -0
  339. /package/dist/{types → src/types}/comment.dto.d.ts +0 -0
  340. /package/dist/{types → src/types}/common.d.ts +0 -0
  341. /package/dist/{types → src/types}/dex-pool.dto.d.ts +0 -0
  342. /package/dist/{types → src/types}/dto.d.ts +0 -0
  343. /package/dist/{types → src/types}/eip712-types.d.ts +0 -0
  344. /package/dist/{types → src/types}/gswap.dto.d.ts +0 -0
  345. /package/dist/{types → src/types}/launchpad.validation.d.ts +0 -0
  346. /package/dist/{types → src/types}/options.dto.d.ts +0 -0
  347. /package/dist/{types → src/types}/pool-state-delta.dto.d.ts +0 -0
  348. /package/dist/{types → src/types}/pool-state-manager-config.dto.d.ts +0 -0
  349. /package/dist/{types → src/types}/result.types.d.ts +0 -0
  350. /package/dist/{types → src/types}/trade.dto.d.ts +0 -0
  351. /package/dist/{types → src/types}/transfer.dto.d.ts +0 -0
  352. /package/dist/{types → src/types}/user.dto.d.ts +0 -0
  353. /package/dist/{types → src/types}/websocket-data.types.d.ts +0 -0
  354. /package/dist/{types → src/types}/websocket.types.d.ts +0 -0
  355. /package/dist/{utils → src/utils}/Logger.d.ts +0 -0
  356. /package/dist/{utils → src/utils}/adapters.d.ts +0 -0
  357. /package/dist/{utils → src/utils}/agent-config.d.ts +0 -0
  358. /package/dist/{utils → src/utils}/bignumber-pool-cache.d.ts +0 -0
  359. /package/dist/{utils → src/utils}/bondingCurveCalculations.d.ts +0 -0
  360. /package/dist/{utils → src/utils}/cacheWarmingHelpers.d.ts +0 -0
  361. /package/dist/{utils → src/utils}/composite-pool-converter.d.ts +0 -0
  362. /package/dist/{utils → src/utils}/date-utils.d.ts +0 -0
  363. /package/dist/{utils → src/utils}/error-factories.d.ts +0 -0
  364. /package/dist/{utils → src/utils}/error-utils.d.ts +0 -0
  365. /package/dist/{utils → src/utils}/errors.d.ts +0 -0
  366. /package/dist/{utils → src/utils}/http.d.ts +0 -0
  367. /package/dist/{utils → src/utils}/load-env.d.ts +0 -0
  368. /package/dist/{utils → src/utils}/multipart-helpers.d.ts +0 -0
  369. /package/dist/{utils → src/utils}/number-utils.d.ts +0 -0
  370. /package/dist/{utils → src/utils}/pool-pair-parser.d.ts +0 -0
  371. /package/dist/{utils → src/utils}/pool-state-validator.d.ts +0 -0
  372. /package/dist/{utils → src/utils}/position-filters.d.ts +0 -0
  373. /package/dist/{utils → src/utils}/precision-math.d.ts +0 -0
  374. /package/dist/{utils → src/utils}/response-handlers.d.ts +0 -0
  375. /package/dist/{utils → src/utils}/response-normalizers.d.ts +0 -0
  376. /package/dist/{utils → src/utils}/slippage-utils.d.ts +0 -0
  377. /package/dist/{utils → src/utils}/swap-delta-calculator.d.ts +0 -0
  378. /package/dist/{utils → src/utils}/tick-crossing-handler.d.ts +0 -0
  379. /package/dist/{utils → src/utils}/token-parser.d.ts +0 -0
  380. /package/dist/{utils → src/utils}/tokenNormalizer.d.ts +0 -0
  381. /package/dist/{utils → src/utils}/trade-transformers.d.ts +0 -0
  382. /package/dist/{utils → src/utils}/transfer-validation.d.ts +0 -0
  383. /package/dist/{utils → src/utils}/validation.d.ts +0 -0
  384. /package/dist/{utils → src/utils}/wallet.d.ts +0 -0
  385. /package/dist/{utils → src/utils}/websocket-errors.d.ts +0 -0
  386. /package/dist/{utils → src/utils}/websocket-validators.d.ts +0 -0
@@ -0,0 +1,284 @@
1
+ /**
2
+ * Multi-Pool State Manager
3
+ *
4
+ * Core coordinator for real-time DEX swap monitoring with offline price prediction.
5
+ * Manages WebSocket events, pool caching, delta application, and offline quotes.
6
+ *
7
+ * Architecture:
8
+ * - WebSocket listener for global swap broadcasts
9
+ * - Event extraction and recursive payload walking
10
+ * - Tiered LRU pool cache (hot/warm/cold)
11
+ * - Delta-based pool updates (~15-25ms vs full refetch ~200-400ms)
12
+ * - Offline quote calculation (~25-50ms)
13
+ * - Event filtering (position-independent tokens, order-independent pairs)
14
+ * - Metrics collection and health monitoring
15
+ *
16
+ * Performance Target: <50ms P50 latency for arbitrage bot use case
17
+ *
18
+ * @packageDocumentation
19
+ */
20
+ import type { Socket } from 'socket.io-client';
21
+ import type { SwapEventCallback, SubscribeSwapOptions, SwapMonitorConfig, SwapMonitorHealth, CleanupFunction } from '../types/swap-monitor.dto';
22
+ import type { CompositePoolDataResult } from '../types/composite-pool.dto';
23
+ import { Logger } from '../utils/Logger';
24
+ import type { DexQuoteService } from './DexQuoteService';
25
+ /**
26
+ * Manages real-time DEX swap monitoring across multiple pools
27
+ *
28
+ * Coordinates event extraction, filtering, caching, delta application,
29
+ * and offline quote calculation for arbitrage bot use cases.
30
+ *
31
+ * @internal
32
+ */
33
+ export declare class MultiPoolStateManager {
34
+ private socket;
35
+ private socketReady;
36
+ private readonly config;
37
+ private readonly logger;
38
+ private readonly metrics;
39
+ private readonly eventExtractor;
40
+ private readonly quoteService;
41
+ private readonly cacheManager;
42
+ private readonly eventQueue;
43
+ private seenTransactions;
44
+ private maxSeenTransactions;
45
+ private listeners;
46
+ private onErrorCallbacks;
47
+ private isActive;
48
+ private listenerRegistered;
49
+ /** Handler function for cleanup reference */
50
+ private handleSwapEvent;
51
+ /** Background warming loop interval handle */
52
+ private warmingIntervalHandle;
53
+ /** Reconnection state tracking */
54
+ private reconnectAttempts;
55
+ private maxReconnectAttempts;
56
+ private reconnectDelayMs;
57
+ constructor(socket: Socket | Promise<Socket>, fetchPoolFn: (poolKey: string) => Promise<CompositePoolDataResult>, quoteService: DexQuoteService, config?: SwapMonitorConfig, logger?: Logger);
58
+ /**
59
+ * Subscribe to swap events for real-time monitoring
60
+ *
61
+ * Sets up WebSocket listener for global swap broadcasts and event processing.
62
+ * Filters events based on options and calls callback for matching swaps.
63
+ * Automatically manages cache warming, offline quote calculation, and reconnection.
64
+ *
65
+ * **Performance:**
66
+ * - WebSocket connection: ~100-500ms initial setup
67
+ * - Event latency: <50ms P50 (25-50ms typical)
68
+ * - Delta application: 15-25ms (vs 200-400ms full refetch)
69
+ * - Offline quote: 25-50ms
70
+ *
71
+ * **Features:**
72
+ * - Position-independent token matching (GALA/USDC matches token0/token1 in any position)
73
+ * - Order-independent pair matching (GALA/USDC == USDC/GALA)
74
+ * - Tiered LRU cache with automatic background warming
75
+ * - Three-tier reconnection strategy for resilience
76
+ * - Delta-based pool updates for sub-50ms latency
77
+ *
78
+ * @param options - Subscription filter options
79
+ * @param options.tokenFilter - Token symbol to monitor (position-independent)
80
+ * @param options.pairFilter - Pair of tokens to monitor (order-independent, e.g., ['GALA', 'USDC'])
81
+ * @param options.feeFilter - Fee tier in basis points (e.g., 500, 3000, 10000)
82
+ * @param options.userFilter - User address to filter events
83
+ * @param options.onError - Error callback for connection/processing failures
84
+ *
85
+ * @param callback - Function called for each matching swap with signature:
86
+ * `(event: SwapEventData, quote: OfflineQuote | null) => Promise<void>`
87
+ *
88
+ * @returns Cleanup function to unsubscribe and stop monitoring. Call this to:
89
+ * - Remove the listener
90
+ * - Unsubscribe from WebSocket if no other listeners exist
91
+ * - Clean up background warming and metric collection
92
+ *
93
+ * @example
94
+ * ```typescript
95
+ * // Monitor GALA/USDC swaps for arbitrage opportunities
96
+ * const cleanup = monitor.subscribe(
97
+ * {
98
+ * pairFilter: ['GALA', 'USDC'],
99
+ * feeFilter: 3000,
100
+ * onError: (error) => console.error('Monitoring error:', error)
101
+ * },
102
+ * async (swap, quote) => {
103
+ * if (quote && quote.priceImpact < 0.01) {
104
+ * console.log(`Arbitrage opportunity: ${quote.priceImpact * 100}% impact`);
105
+ * // Execute arbitrage logic
106
+ * }
107
+ * }
108
+ * );
109
+ *
110
+ * // Later, stop monitoring
111
+ * cleanup();
112
+ * ```
113
+ */
114
+ subscribe(options: SubscribeSwapOptions, callback: SwapEventCallback): CleanupFunction;
115
+ /**
116
+ * Get current health status with enhanced diagnostics
117
+ *
118
+ * Provides comprehensive health metrics including latency percentiles,
119
+ * cache performance trends, memory usage, and health recommendations.
120
+ *
121
+ * @returns Enhanced health object with detailed diagnostics
122
+ */
123
+ getHealth(): SwapMonitorHealth & {
124
+ recommendations?: string[];
125
+ detailedMetrics?: {
126
+ eventQueueUtilization: number;
127
+ cacheUtilization: number;
128
+ memoryUtilization: number;
129
+ };
130
+ };
131
+ /**
132
+ * Generate health recommendations based on current state
133
+ *
134
+ * @internal
135
+ */
136
+ private generateHealthRecommendations;
137
+ /**
138
+ * Get summary statistics
139
+ *
140
+ * @returns Summary with key metrics
141
+ */
142
+ getSummary(): {
143
+ queueStats: import("./SwapEventQueue").QueueStats;
144
+ cacheStats: {
145
+ totalCached: number;
146
+ hotCacheSize: number;
147
+ warmCacheSize: number;
148
+ coldCacheSize: number;
149
+ memoryUsedMB: number;
150
+ };
151
+ eventsProcessed: number;
152
+ eventsDropped: number;
153
+ cacheHitRate: number;
154
+ averageLatency: number;
155
+ memoryUsedMB: number;
156
+ throughputPerSecond: number;
157
+ };
158
+ /**
159
+ * Start background cache warming loop
160
+ *
161
+ * Periodically refreshes hot and warm cached pools to keep data fresh.
162
+ * Helps prevent accumulated drift from delta-only updates.
163
+ *
164
+ * @internal
165
+ */
166
+ private startBackgroundWarming;
167
+ /**
168
+ * Stop background cache warming loop
169
+ *
170
+ * @internal
171
+ */
172
+ private stopBackgroundWarming;
173
+ /**
174
+ * Perform background cache warming
175
+ *
176
+ * Periodically refreshes pools in hot and warm tiers to prevent accumulated drift.
177
+ * This helps maintain cache accuracy during low-event periods.
178
+ *
179
+ * @internal
180
+ */
181
+ private performBackgroundWarming;
182
+ /**
183
+ * Shutdown gracefully
184
+ *
185
+ * Stops listening, processes remaining events, and cleans up resources.
186
+ */
187
+ shutdown(): Promise<void>;
188
+ /**
189
+ * Set up connection monitoring and error handling
190
+ *
191
+ * Implements three-tier reconnection strategy:
192
+ * - Tier 1 (Quick): Immediate reconnect for transient failures
193
+ * - Tier 2 (Exponential): Backoff with exponential delay after failures
194
+ * - Tier 3 (Reset): Full system reset after max retries
195
+ *
196
+ * @internal
197
+ */
198
+ private setupConnectionMonitoring;
199
+ /**
200
+ * Attempt to reconnect with three-tier strategy
201
+ *
202
+ * @internal
203
+ */
204
+ private attemptReconnection;
205
+ /**
206
+ * Perform full system reset after max reconnection failures
207
+ *
208
+ * Clears cache, resets metrics, and logs comprehensive diagnostic info.
209
+ *
210
+ * @internal
211
+ */
212
+ private performFullReset;
213
+ /**
214
+ * Set up WebSocket listener for swap events
215
+ *
216
+ * @internal
217
+ */
218
+ private setupWebSocketListener;
219
+ /**
220
+ * Unsubscribe from events
221
+ *
222
+ * @internal
223
+ */
224
+ private unsubscribe;
225
+ /**
226
+ * Filter swap based on subscription options
227
+ *
228
+ * Applies position-independent and order-independent matching.
229
+ *
230
+ * @internal
231
+ */
232
+ private filterSwap;
233
+ /**
234
+ * Process a single swap event
235
+ *
236
+ * Updates pool cache with delta, calculates offline quote, and calls listeners.
237
+ *
238
+ * @internal
239
+ */
240
+ private processSwapEvent;
241
+ /**
242
+ * Notify error handlers
243
+ *
244
+ * @internal
245
+ */
246
+ private notifyError;
247
+ /**
248
+ * Determine health status based on metrics
249
+ *
250
+ * @internal
251
+ */
252
+ private determineHealthStatus;
253
+ /**
254
+ * Get max memory based on profile
255
+ *
256
+ * @internal
257
+ */
258
+ private getMaxMemoryMB;
259
+ /**
260
+ * Apply configuration defaults
261
+ *
262
+ * @internal
263
+ */
264
+ private applyDefaults;
265
+ }
266
+ /**
267
+ * Bounded Set with LRU eviction for transaction deduplication
268
+ *
269
+ * Provides Set-like interface with automatic eviction of oldest entries
270
+ * when capacity is reached. Prevents unbounded memory growth in 24/7 bots.
271
+ *
272
+ * @internal
273
+ */
274
+ export declare class BoundedTransactionSet {
275
+ private readonly map;
276
+ private readonly maxSize;
277
+ constructor(maxSize: number);
278
+ has(transactionId: string): boolean;
279
+ add(transactionId: string): this;
280
+ delete(transactionId: string): boolean;
281
+ clear(): void;
282
+ get size(): number;
283
+ }
284
+ //# sourceMappingURL=MultiPoolStateManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MultiPoolStateManager.d.ts","sourceRoot":"","sources":["../../../src/services/MultiPoolStateManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,171 @@
1
+ /**
2
+ * Pool Cache Manager
3
+ *
4
+ * Manages tiered LRU caching of pool state with automatic refetching.
5
+ * Optimized for swap monitoring with delta-based updates instead of full refetches.
6
+ *
7
+ * Cache Tiers:
8
+ * - Hot Cache (50 pools): Never evicted, ~infinite TTL, highest priority
9
+ * - Warm Cache (200 pools): 30-minute TTL, automatic refresh
10
+ * - Cold Cache (500 max total): 5-minute TTL, LRU eviction
11
+ *
12
+ * @packageDocumentation
13
+ */
14
+ import type { CompositePoolDataResult } from '../types/composite-pool.dto';
15
+ import type { SwapMonitorConfig, SwapEventData as SwapMonitorEvent } from '../types/swap-monitor.dto';
16
+ import { Logger } from '../utils/Logger';
17
+ import { MonitoringMetrics } from '../utils/MonitoringMetrics';
18
+ /**
19
+ * Cache tier classification
20
+ *
21
+ * @internal
22
+ */
23
+ type CacheTier = 'hot' | 'warm' | 'cold';
24
+ /**
25
+ * Manages tiered LRU pool cache for swap monitoring
26
+ *
27
+ * Maintains hot/warm/cold cache tiers with automatic eviction and refetching.
28
+ * Tracks cache performance metrics and applies swap deltas efficiently.
29
+ *
30
+ * @internal
31
+ */
32
+ export declare class PoolCacheManager {
33
+ private readonly cache;
34
+ private readonly metrics;
35
+ private readonly config;
36
+ private readonly logger;
37
+ private readonly fetchPoolFn;
38
+ /** Configuration with defaults applied */
39
+ private readonly tierSizes;
40
+ /** TTL in milliseconds per tier */
41
+ private readonly tierTTLs;
42
+ /** Refetch thresholds */
43
+ private readonly refetchThresholds;
44
+ constructor(fetchPoolFn: (poolKey: string) => Promise<CompositePoolDataResult>, config: Required<SwapMonitorConfig>, metrics: MonitoringMetrics, logger?: Logger);
45
+ /**
46
+ * Get pool data from cache, fetching if necessary
47
+ *
48
+ * Implements three-tier cache strategy:
49
+ * 1. Check hot cache (never expires)
50
+ * 2. Check warm cache (30-min TTL)
51
+ * 3. Check cold cache (5-min TTL)
52
+ * 4. Fetch from backend if not found or expired
53
+ *
54
+ * @param poolKey - Pool identifier
55
+ * @returns Pool data
56
+ */
57
+ getPool(poolKey: string): Promise<CompositePoolDataResult>;
58
+ /**
59
+ * Update pool cache with swap delta
60
+ *
61
+ * Applies swap delta to cached pool state using SwapDeltaCalculator.
62
+ * Tracks swap count, drift accumulation, and marks for refetch when thresholds exceeded.
63
+ *
64
+ * Performance: 25-50ms for typical swaps (1-3 tick crossings)
65
+ *
66
+ * @param poolKey - Pool identifier
67
+ * @param direction - Swap direction (zeroForOne or oneForZero)
68
+ * @param amount0 - Amount of token0
69
+ * @param amount1 - Amount of token1
70
+ * @param swapEvent - Full swap event data for delta calculation
71
+ * @returns Whether delta was successfully applied
72
+ */
73
+ updatePoolWithSwapDelta(poolKey: string, direction: 'zeroForOne' | 'oneForZero', amount0: string, amount1: string, swapEvent?: SwapMonitorEvent): boolean;
74
+ /**
75
+ * Get cache statistics
76
+ *
77
+ * @returns Cache stats with tier breakdown
78
+ */
79
+ getStats(): {
80
+ totalCached: number;
81
+ hotCacheSize: number;
82
+ warmCacheSize: number;
83
+ coldCacheSize: number;
84
+ memoryUsedMB: number;
85
+ };
86
+ /**
87
+ * Get information about a cached pool
88
+ *
89
+ * @param poolKey - Pool identifier
90
+ * @returns Pool info or null if not cached
91
+ */
92
+ getPoolInfo(poolKey: string): {
93
+ poolKey: string;
94
+ tier: CacheTier;
95
+ lastAccessTime: Date;
96
+ expiresAt: Date;
97
+ swapsSinceRefetch: number;
98
+ cumulativeDrift: number;
99
+ isExpired: boolean;
100
+ } | null;
101
+ /**
102
+ * Warm cache with a pool (eager preload)
103
+ *
104
+ * Fetches and caches pool data for future access. Used during startup
105
+ * to preload high-priority pools.
106
+ *
107
+ * @param poolKey - Pool identifier to warm
108
+ * @returns Whether pool was successfully warmed
109
+ */
110
+ warmCache(poolKey: string): Promise<boolean>;
111
+ /**
112
+ * Warm cache with multiple pools (batch eager preload)
113
+ *
114
+ * Fetches multiple pools in parallel with concurrency control.
115
+ * Useful for preloading top pools at startup.
116
+ *
117
+ * @param poolKeys - Array of pool identifiers to warm
118
+ * @param maxConcurrent - Maximum parallel requests (default: 5)
119
+ * @returns Statistics on warming results
120
+ */
121
+ warmCacheBatch(poolKeys: string[], maxConcurrent?: number): Promise<{
122
+ succeeded: number;
123
+ failed: number;
124
+ total: number;
125
+ }>;
126
+ /**
127
+ * Clear entire cache
128
+ */
129
+ clear(): void;
130
+ /**
131
+ * Clear expired entries
132
+ */
133
+ clearExpired(): void;
134
+ /**
135
+ * Determine which tier a new pool should be added to
136
+ *
137
+ * @internal
138
+ */
139
+ private determineTier;
140
+ /**
141
+ * Check if pool needs refetching
142
+ *
143
+ * @internal
144
+ */
145
+ private checkRefetchNeeded;
146
+ /**
147
+ * Check if refetch thresholds are exceeded
148
+ *
149
+ * @internal
150
+ */
151
+ private shouldRefetch;
152
+ /**
153
+ * Evict least recently used entries from cold cache
154
+ *
155
+ * Only evicts from cold cache tier. Preserves hot and warm caches.
156
+ *
157
+ * @internal
158
+ */
159
+ private evictLRU;
160
+ /**
161
+ * Refresh hot and warm tier pools
162
+ *
163
+ * Called periodically by background warming to keep frequently accessed
164
+ * pools fresh and prevent accumulated drift from delta-only updates.
165
+ *
166
+ * @internal
167
+ */
168
+ refreshWarmAndHotTiers(): Promise<void>;
169
+ }
170
+ export {};
171
+ //# sourceMappingURL=PoolCacheManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PoolCacheManager.d.ts","sourceRoot":"","sources":["../../../src/services/PoolCacheManager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAC3E,OAAO,KAAK,EAAE,iBAAiB,EAAE,aAAa,IAAI,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAEtG,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAG/D;;;;GAIG;AACH,KAAK,SAAS,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;AAwBzC;;;;;;;GAOG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAqC;IAC3D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;IAC5C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA8B;IACrD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAwD;IAEpF,0CAA0C;IAC1C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAIxB;IAEF,mCAAmC;IACnC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAIvB;IAEF,yBAAyB;IACzB,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAGhC;gBAGA,WAAW,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,uBAAuB,CAAC,EAClE,MAAM,EAAE,QAAQ,CAAC,iBAAiB,CAAC,EACnC,OAAO,EAAE,iBAAiB,EAC1B,MAAM,CAAC,EAAE,MAAM;IAkBjB;;;;;;;;;;;OAWG;IACG,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC;IA2DhE;;;;;;;;;;;;;;OAcG;IACH,uBAAuB,CACrB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,YAAY,GAAG,YAAY,EACtC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,gBAAgB,GAC3B,OAAO;IAyEV;;;;OAIG;IACH,QAAQ,IAAI;QACV,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,EAAE,MAAM,CAAC;QACtB,aAAa,EAAE,MAAM,CAAC;QACtB,YAAY,EAAE,MAAM,CAAC;KACtB;IAkBD;;;;;OAKG;IACH,WAAW,CAAC,OAAO,EAAE,MAAM;;;;;;;;;IAiB3B;;;;;;;;OAQG;IACG,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAgBlD;;;;;;;;;OASG;IACG,cAAc,CAClB,QAAQ,EAAE,MAAM,EAAE,EAClB,aAAa,GAAE,MAAU,GACxB,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAsChE;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,YAAY,IAAI,IAAI;IAgBpB;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAkBrB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAU1B;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAcrB;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ;IA2BhB;;;;;;;OAOG;IACG,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC;CAmC9C"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PoolService.d.ts","sourceRoot":"","sources":["../../../src/services/PoolService.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAW3C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAGL,WAAW,EAEX,gBAAgB,EAIhB,eAAe,EAEf,uBAAuB,EAEvB,iBAAiB,EAClB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EAErB,MAAM,sBAAsB,CAAC;AAE9B;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,WAAY,SAAQ,WAAW;gBAC9B,IAAI,EAAE,UAAU,EAAE,SAAS,GAAE,OAAe;IAIxD;;;OAGG;YACW,eAAe;IAwD7B;;;;OAIG;YACW,kBAAkB;IAqGhC;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACG,UAAU,CACd,OAAO,GAAE;QACP,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,IAAI,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;KACX,GACL,OAAO,CAAC,WAAW,CAAC;IA+IvB;;;;;;;;;;;;;;;;;;OAkBG;IACG,aAAa,CACjB,OAAO,CAAC,EAAE;QACR,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,IAAI,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;KAC7B,GACA,OAAO,CAAC,WAAW,CAAC;IAIvB;;;;;OAKG;IACG,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC;IAyC5D;;;;;OAKG;IACG,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAW/D;;;;;OAKG;IACG,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAW9D;;;;;OAKG;IACG,eAAe,CACnB,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,eAAe,CAAC;IAqD3B;;;;;;;;OAQG;IACG,sBAAsB,CAC1B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,uBAAuB,CAAC;IA4GnC;;;;;;;;OAQG;IACG,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA4BrE;;;;;OAKG;IACG,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC;IAkBpE;;;;;;;;;;;;;;;;OAgBG;IACG,uBAAuB,CAC3B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CAuB1B"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PoolStateManager.d.ts","sourceRoot":"","sources":["../../../src/services/PoolStateManager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAEjD,OAAO,EACL,aAAa,EACb,eAAe,EACf,iBAAiB,EAClB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAKtE;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACrC,6EAA6E;IAC7E,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,6DAA6D;IAC7D,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B,oDAAoD;IACpD,YAAY,CAAC,EAAE,SAAS,CAAC,YAAY,CAAC;IAEtC,4CAA4C;IAC5C,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,uEAAuE;IACvE,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B,+EAA+E;IAC/E,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;;OAGG;IACH,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAE1G;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B,0FAA0F;IAC1F,yBAAyB,CAAC,EAAE,OAAO,CAAC;IAEpC,qEAAqE;IACrE,2BAA2B,CAAC,EAAE,MAAM,CAAC;CACtC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAErB;IACF,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA4B;IAE7D,gCAAgC;IAChC,OAAO,CAAC,IAAI,CAAO;IAEnB,4BAA4B;IAC5B,OAAO,CAAC,WAAW,CAA2B;IAE9C,oDAAoD;IACpD,OAAO,CAAC,QAAQ,CAAoB;IAEpC,wCAAwC;IACxC,OAAO,CAAC,eAAe,CAAC,CAItB;IAEF;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,sBAAsB;IAKrC;;;;;;OAMG;gBACS,QAAQ,EAAE,uBAAuB,EAAE,MAAM,CAAC,EAAE,sBAAsB;IAoE9E;;;;;;;;;OASG;IACG,cAAc,CAAC,SAAS,EAAE,aAAa,GAAG,OAAO,CAAC,eAAe,CAAC;IAoKxE;;;;;;;OAOG;IACH,gBAAgB,CAAC,QAAQ,EAAE,uBAAuB,GAAG,IAAI;IAYzD;;;;OAIG;IACH,YAAY,IAAI,IAAI;IAIpB;;;;OAIG;IACH,cAAc,IAAI,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC;IAI1C;;;;OAIG;IACH,WAAW,IAAI,iBAAiB;IAIhC;;;;OAIG;IACH,kBAAkB,IAAI;QAAE,iBAAiB,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS;IAOrG;;;;OAIG;IACH,oBAAoB,IAAI,OAAO;IAO/B;;;;OAIG;IACH,KAAK,CAAC,QAAQ,EAAE,uBAAuB,GAAG,IAAI;CAgB/C;AAED;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,uBAAuB,EACjC,OAAO,CAAC,EAAE,sBAAsB,GAC/B,gBAAgB,CAElB"}
@@ -31,7 +31,7 @@ import { BaseService } from './BaseService';
31
31
  *
32
32
  * // Using tokenId
33
33
  * const history = await service.fetchPriceHistory({
34
- * tokenId: { collection: 'Token', category: 'Unit', type: 'GUSDC', additionalKey: 'eth:...' },
34
+ * tokenId: { collection: 'GUSDC', category: 'Unit', type: 'none', additionalKey: 'eth:...' },
35
35
  * from: new Date('2024-01-01'),
36
36
  * to: new Date('2024-01-31'),
37
37
  * page: 1,
@@ -106,10 +106,10 @@ export declare class PriceHistoryService extends BaseService {
106
106
  * // Using tokenId object format (explicit, no lookup required)
107
107
  * const result = await service.fetchPriceHistory({
108
108
  * tokenId: {
109
- * collection: 'Token',
109
+ * collection: 'GUSDC',
110
110
  * category: 'Unit',
111
- * type: 'USDC',
112
- * additionalKey: 'eth:123...'
111
+ * type: 'none',
112
+ * additionalKey: 'none'
113
113
  * },
114
114
  * from: new Date('2024-01-01'),
115
115
  * to: new Date('2024-01-31'),
@@ -119,7 +119,7 @@ export declare class PriceHistoryService extends BaseService {
119
119
  *
120
120
  * // Using tokenId string format (backward compatible)
121
121
  * const result = await service.fetchPriceHistory({
122
- * tokenId: 'Token|Unit|USDC|eth:123...',
122
+ * tokenId: 'GUSDC|Unit|none|none',
123
123
  * page: 1,
124
124
  * limit: 20
125
125
  * });
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PriceHistoryService.d.ts","sourceRoot":"","sources":["../../../src/services/PriceHistoryService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAGnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAI9D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,qBAAa,mBAAoB,SAAQ,WAAW;IAClD,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAmC;IAExE;;;;;OAKG;gBACS,UAAU,EAAE,UAAU,EAAE,SAAS,GAAE,OAAe,EAAE,oBAAoB,CAAC,EAAE,oBAAoB;IAK3G;;;;;;;;;;;;;;;;;;;OAmBG;IACG,6BAA6B,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAoDvE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2DG;IACG,iBAAiB,CAAC,OAAO,EAAE,wBAAwB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAkFvF;;;OAGG;IACH,OAAO,CAAC,kCAAkC;IA+B1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAoDG;IACG,oBAAoB,CACxB,OAAO,EAAE,IAAI,CAAC,wBAAwB,EAAE,MAAM,GAAG,OAAO,CAAC,GACxD,OAAO,CAAC,kBAAkB,CAAC;IA+B9B;;;;OAIG;IACH,OAAO,CAAC,eAAe;CAgCxB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SignatureService.d.ts","sourceRoot":"","sources":["../../../src/services/SignatureService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAQ3C;;GAEG;AACH,KAAK,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAAC;AAEzE;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAChH,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACnD,UAAU,CAAC,EAAE,MAAM,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC,CAAC;CACxE;AAED;;GAEG;AACH,KAAK,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE3C;;GAEG;AACH,UAAU,YAAY;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,UAAU;IAE5C,OAAO,CAAC,cAAc;gBAAd,cAAc,EAAE,cAAc,EACtC,KAAK,GAAE,OAAe;IAKxB;;;;;;;OAOG;IACG,OAAO,CACX,GAAG,EAAE,WAAW,EAChB,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,WAAW,GAAG;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,WAAW,CAAC;QAAC,MAAM,CAAC,EAAE,YAAY,CAAA;KAAE,CAAC;IAoC3F;;;;;OAKG;YACW,oBAAoB;IA8ClC;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;CA0F5B"}
@@ -0,0 +1,123 @@
1
+ /**
2
+ * Swap Event Queue
3
+ *
4
+ * Manages event queuing with backpressure handling and batch processing.
5
+ * Prevents memory overflow by dropping events when queue exceeds capacity.
6
+ *
7
+ * Features:
8
+ * - Configurable queue capacity
9
+ * - Batch processing for efficiency
10
+ * - Concurrency control
11
+ * - Automatic metrics tracking
12
+ * - Graceful shutdown
13
+ *
14
+ * @packageDocumentation
15
+ */
16
+ import type { SwapEventData, SwapMonitorConfig } from '../types/swap-monitor.dto';
17
+ import { Logger } from '../utils/Logger';
18
+ import { MonitoringMetrics } from '../utils/MonitoringMetrics';
19
+ /**
20
+ * Queue statistics
21
+ *
22
+ * @internal
23
+ */
24
+ export interface QueueStats {
25
+ queueSize: number;
26
+ eventsProcessed: number;
27
+ eventsDropped: number;
28
+ currentConcurrent: number;
29
+ maxConcurrentReached: number;
30
+ averageBatchSize: number;
31
+ totalBatchesProcessed: number;
32
+ }
33
+ /**
34
+ * Manages event queue with backpressure and batch processing
35
+ *
36
+ * Provides reliable event queuing with overflow protection. Events are processed
37
+ * in batches to improve efficiency while maintaining concurrency limits.
38
+ *
39
+ * @internal
40
+ */
41
+ export declare class SwapEventQueue {
42
+ private readonly queue;
43
+ private readonly config;
44
+ private readonly metrics;
45
+ private readonly logger;
46
+ private isShuttingDown;
47
+ private currentConcurrency;
48
+ private maxConcurrencyReached;
49
+ private eventsDropped;
50
+ private totalBatchesProcessed;
51
+ private totalBatchSize;
52
+ private eventsProcessedCount;
53
+ /** Processor function - called for each event */
54
+ private processor;
55
+ /** Processing loop control */
56
+ private processingScheduled;
57
+ /** Cross-platform scheduler */
58
+ private scheduleProcessing;
59
+ constructor(config: Required<SwapMonitorConfig>, metrics: MonitoringMetrics, logger?: Logger);
60
+ /**
61
+ * Set the event processor function
62
+ *
63
+ * @param processor - Function to process each event
64
+ */
65
+ setProcessor(processor: (event: SwapEventData) => Promise<void>): void;
66
+ /**
67
+ * Enqueue a swap event for processing
68
+ *
69
+ * Returns false if queue is full (backpressure), indicating event was dropped.
70
+ *
71
+ * @param event - Swap event to queue
72
+ * @returns True if enqueued, false if dropped due to overflow
73
+ */
74
+ enqueue(event: SwapEventData): boolean;
75
+ /**
76
+ * Get current queue size
77
+ *
78
+ * @returns Number of events waiting to be processed
79
+ */
80
+ getQueueSize(): number;
81
+ /**
82
+ * Get queue statistics
83
+ *
84
+ * @returns Queue stats with metrics
85
+ */
86
+ getStats(): QueueStats;
87
+ /**
88
+ * Wait for queue to be empty
89
+ *
90
+ * @param timeoutMs - Maximum time to wait (default: no timeout)
91
+ * @returns Promise that resolves when queue is empty or timeout
92
+ */
93
+ waitForEmpty(timeoutMs?: number): Promise<void>;
94
+ /**
95
+ * Shutdown the queue gracefully
96
+ *
97
+ * Stops accepting new events and waits for processing to complete.
98
+ *
99
+ * @param timeoutMs - Maximum time to wait for processing to complete (default: 30s)
100
+ */
101
+ shutdown(timeoutMs?: number): Promise<void>;
102
+ /**
103
+ * Clear the queue without processing
104
+ *
105
+ * Use with caution - discards all pending events.
106
+ */
107
+ clear(): void;
108
+ /**
109
+ * Process next batch of events
110
+ *
111
+ * Respects concurrency limits and batch size configuration.
112
+ *
113
+ * @internal
114
+ */
115
+ private processNextBatch;
116
+ /**
117
+ * Process a single event
118
+ *
119
+ * @internal
120
+ */
121
+ private processEvent;
122
+ }
123
+ //# sourceMappingURL=SwapEventQueue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SwapEventQueue.d.ts","sourceRoot":"","sources":["../../../src/services/SwapEventQueue.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAClF,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE/D;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,gBAAgB,EAAE,MAAM,CAAC;IACzB,qBAAqB,EAAE,MAAM,CAAC;CAC/B;AAED;;;;;;;GAOG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAuB;IAC7C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA8B;IACrD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;IAC5C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAEhC,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,kBAAkB,CAAK;IAC/B,OAAO,CAAC,qBAAqB,CAAK;IAClC,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,qBAAqB,CAAK;IAClC,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,oBAAoB,CAAK;IAEjC,iDAAiD;IACjD,OAAO,CAAC,SAAS,CAA0D;IAE3E,8BAA8B;IAC9B,OAAO,CAAC,mBAAmB,CAAS;IAEpC,+BAA+B;IAC/B,OAAO,CAAC,kBAAkB,CAMxB;gBAGA,MAAM,EAAE,QAAQ,CAAC,iBAAiB,CAAC,EACnC,OAAO,EAAE,iBAAiB,EAC1B,MAAM,CAAC,EAAE,MAAM;IAWjB;;;;OAIG;IACH,YAAY,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAItE;;;;;;;OAOG;IACH,OAAO,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO;IAgCtC;;;;OAIG;IACH,YAAY,IAAI,MAAM;IAItB;;;;OAIG;IACH,QAAQ,IAAI,UAAU;IAYtB;;;;;OAKG;IACG,YAAY,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBrD;;;;;;OAMG;IACG,QAAQ,CAAC,SAAS,GAAE,MAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAoBxD;;;;OAIG;IACH,KAAK,IAAI,IAAI;IAQb;;;;;;OAMG;YACW,gBAAgB;IAoE9B;;;;OAIG;YACW,YAAY;CAiB3B"}
@@ -0,0 +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;;;;;;;OAOG;IACH,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,aAAa;IAgBvD;;;;OAIG;IACH,kBAAkB,IAAI,aAAa;IAcnC;;;;;;;;;;;;;OAaG;IACH,2BAA2B,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM;IA0BzD;;;;;OAKG;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"}