@gala-chain/launchpad-sdk 3.31.2 → 4.0.1-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 (369) hide show
  1. package/API.md +525 -5
  2. package/CHANGELOG.md +101 -9
  3. package/EXAMPLES.md +923 -0
  4. package/README.md +539 -15
  5. package/dist/index.cjs.js +1 -1
  6. package/dist/index.d.ts +37 -27
  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} +1333 -37
  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 +46 -0
  51. package/dist/src/services/DexBackendClient.d.ts.map +1 -0
  52. package/dist/src/services/DexPoolService.d.ts +137 -0
  53. package/dist/src/services/DexPoolService.d.ts.map +1 -0
  54. package/dist/src/services/DexQuoteService.d.ts +288 -0
  55. package/dist/src/services/DexQuoteService.d.ts.map +1 -0
  56. package/dist/{services → src/services}/DexService.d.ts +83 -9
  57. package/dist/src/services/DexService.d.ts.map +1 -0
  58. package/dist/src/services/FaucetService.d.ts.map +1 -0
  59. package/dist/src/services/GSwapService.d.ts +817 -0
  60. package/dist/src/services/GSwapService.d.ts.map +1 -0
  61. package/dist/src/services/GalaChainGatewayClient.d.ts +98 -0
  62. package/dist/src/services/GalaChainGatewayClient.d.ts.map +1 -0
  63. package/dist/{services → src/services}/GalaChainService.d.ts +99 -4
  64. package/dist/src/services/GalaChainService.d.ts.map +1 -0
  65. package/dist/src/services/ImageService.d.ts.map +1 -0
  66. package/dist/src/services/LaunchpadService.d.ts.map +1 -0
  67. package/dist/src/services/MultiPoolStateManager.d.ts +284 -0
  68. package/dist/src/services/MultiPoolStateManager.d.ts.map +1 -0
  69. package/dist/src/services/PoolCacheManager.d.ts +171 -0
  70. package/dist/src/services/PoolCacheManager.d.ts.map +1 -0
  71. package/dist/src/services/PoolService.d.ts.map +1 -0
  72. package/dist/src/services/PoolStateManager.d.ts +176 -0
  73. package/dist/src/services/PoolStateManager.d.ts.map +1 -0
  74. package/dist/{services → src/services}/PriceHistoryService.d.ts +5 -5
  75. package/dist/src/services/PriceHistoryService.d.ts.map +1 -0
  76. package/dist/{services → src/services}/SignatureService.d.ts +13 -35
  77. package/dist/src/services/SignatureService.d.ts.map +1 -0
  78. package/dist/src/services/SwapEventQueue.d.ts +123 -0
  79. package/dist/src/services/SwapEventQueue.d.ts.map +1 -0
  80. package/dist/src/services/TokenClassKeyService.d.ts.map +1 -0
  81. package/dist/{services → src/services}/TokenMetadataCache.d.ts +5 -5
  82. package/dist/src/services/TokenMetadataCache.d.ts.map +1 -0
  83. package/dist/{services → src/services}/TokenMetadataService.d.ts +3 -3
  84. package/dist/src/services/TokenMetadataService.d.ts.map +1 -0
  85. package/dist/src/services/TokenResolverService.d.ts.map +1 -0
  86. package/dist/src/services/TradeService.d.ts.map +1 -0
  87. package/dist/src/services/UserService.d.ts.map +1 -0
  88. package/dist/src/services/WebSocketManager.d.ts.map +1 -0
  89. package/dist/src/services/WebSocketService.d.ts +183 -0
  90. package/dist/src/services/WebSocketService.d.ts.map +1 -0
  91. package/dist/src/services/__mocks__/logger.mock.d.ts +17 -0
  92. package/dist/src/services/__mocks__/logger.mock.d.ts.map +1 -0
  93. package/dist/{setup.d.ts.map → src/setup.d.ts.map} +1 -1
  94. package/dist/{types → src/types}/backend-responses.d.ts +17 -0
  95. package/dist/src/types/backend-responses.d.ts.map +1 -0
  96. package/dist/src/types/comment.dto.d.ts.map +1 -0
  97. package/dist/{types → src/types}/common.d.ts +2 -0
  98. package/dist/src/types/common.d.ts.map +1 -0
  99. package/dist/src/types/composite-pool.dto.d.ts +103 -0
  100. package/dist/src/types/composite-pool.dto.d.ts.map +1 -0
  101. package/dist/{types → src/types}/dex-pool.dto.d.ts +56 -5
  102. package/dist/src/types/dex-pool.dto.d.ts.map +1 -0
  103. package/dist/{types → src/types}/dto.d.ts +6 -6
  104. package/dist/src/types/dto.d.ts.map +1 -0
  105. package/dist/src/types/eip712-types.d.ts +140 -0
  106. package/dist/src/types/eip712-types.d.ts.map +1 -0
  107. package/dist/src/types/galachain-api.types.d.ts +216 -0
  108. package/dist/src/types/galachain-api.types.d.ts.map +1 -0
  109. package/dist/src/types/gswap-responses.types.d.ts +366 -0
  110. package/dist/src/types/gswap-responses.types.d.ts.map +1 -0
  111. package/dist/{types → src/types}/gswap.dto.d.ts +58 -3
  112. package/dist/src/types/gswap.dto.d.ts.map +1 -0
  113. package/dist/{types → src/types}/launchpad.dto.d.ts +232 -0
  114. package/dist/src/types/launchpad.dto.d.ts.map +1 -0
  115. package/dist/src/types/launchpad.validation.d.ts.map +1 -0
  116. package/dist/src/types/liquidity-monitor.dto.d.ts +177 -0
  117. package/dist/src/types/liquidity-monitor.dto.d.ts.map +1 -0
  118. package/dist/src/types/lock.dto.d.ts +146 -0
  119. package/dist/src/types/lock.dto.d.ts.map +1 -0
  120. package/dist/src/types/options.dto.d.ts.map +1 -0
  121. package/dist/src/types/pool-state-delta.dto.d.ts +246 -0
  122. package/dist/src/types/pool-state-delta.dto.d.ts.map +1 -0
  123. package/dist/src/types/pool-state-manager-config.dto.d.ts +103 -0
  124. package/dist/src/types/pool-state-manager-config.dto.d.ts.map +1 -0
  125. package/dist/{types → src/types}/priceHistory.dto.d.ts +4 -4
  126. package/dist/src/types/priceHistory.dto.d.ts.map +1 -0
  127. package/dist/src/types/result.types.d.ts.map +1 -0
  128. package/dist/src/types/swap-monitor.dto.d.ts +256 -0
  129. package/dist/src/types/swap-monitor.dto.d.ts.map +1 -0
  130. package/dist/src/types/trade.dto.d.ts.map +1 -0
  131. package/dist/src/types/transfer.dto.d.ts.map +1 -0
  132. package/dist/src/types/user.dto.d.ts.map +1 -0
  133. package/dist/src/types/websocket-data.types.d.ts.map +1 -0
  134. package/dist/src/types/websocket.types.d.ts.map +1 -0
  135. package/dist/src/utils/LiquidityEventExtractor.d.ts +99 -0
  136. package/dist/src/utils/LiquidityEventExtractor.d.ts.map +1 -0
  137. package/dist/src/utils/Logger.d.ts.map +1 -0
  138. package/dist/src/utils/MonitoringMetrics.d.ts +152 -0
  139. package/dist/src/utils/MonitoringMetrics.d.ts.map +1 -0
  140. package/dist/src/utils/PoolKeyNormalizer.d.ts +135 -0
  141. package/dist/src/utils/PoolKeyNormalizer.d.ts.map +1 -0
  142. package/dist/{utils → src/utils}/SignatureHelper.d.ts +38 -0
  143. package/dist/src/utils/SignatureHelper.d.ts.map +1 -0
  144. package/dist/src/utils/SwapEventExtractor.d.ts +152 -0
  145. package/dist/src/utils/SwapEventExtractor.d.ts.map +1 -0
  146. package/dist/src/utils/adapters.d.ts.map +1 -0
  147. package/dist/src/utils/agent-config.d.ts.map +1 -0
  148. package/dist/{utils → src/utils}/auto-pagination.d.ts +75 -1
  149. package/dist/src/utils/auto-pagination.d.ts.map +1 -0
  150. package/dist/{utils → src/utils}/bignumber-helpers.d.ts +79 -3
  151. package/dist/src/utils/bignumber-helpers.d.ts.map +1 -0
  152. package/dist/src/utils/bignumber-pool-cache.d.ts +169 -0
  153. package/dist/src/utils/bignumber-pool-cache.d.ts.map +1 -0
  154. package/dist/src/utils/bondingCurveCalculations.d.ts.map +1 -0
  155. package/dist/src/utils/cacheWarmingHelpers.d.ts.map +1 -0
  156. package/dist/src/utils/composite-pool-converter.d.ts +121 -0
  157. package/dist/src/utils/composite-pool-converter.d.ts.map +1 -0
  158. package/dist/src/utils/date-utils.d.ts.map +1 -0
  159. package/dist/src/utils/error-factories.d.ts.map +1 -0
  160. package/dist/src/utils/error-utils.d.ts.map +1 -0
  161. package/dist/{utils → src/utils}/errors.d.ts +86 -0
  162. package/dist/src/utils/errors.d.ts.map +1 -0
  163. package/dist/src/utils/http.d.ts.map +1 -0
  164. package/dist/src/utils/load-env.d.ts +31 -0
  165. package/dist/src/utils/load-env.d.ts.map +1 -0
  166. package/dist/src/utils/multipart-helpers.d.ts.map +1 -0
  167. package/dist/{utils → src/utils}/multipart.d.ts +2 -2
  168. package/dist/src/utils/multipart.d.ts.map +1 -0
  169. package/dist/src/utils/number-utils.d.ts.map +1 -0
  170. package/dist/src/utils/pool-pair-parser.d.ts +55 -0
  171. package/dist/src/utils/pool-pair-parser.d.ts.map +1 -0
  172. package/dist/src/utils/pool-state-validator.d.ts +207 -0
  173. package/dist/src/utils/pool-state-validator.d.ts.map +1 -0
  174. package/dist/src/utils/position-filters.d.ts +253 -0
  175. package/dist/src/utils/position-filters.d.ts.map +1 -0
  176. package/dist/src/utils/precision-math.d.ts.map +1 -0
  177. package/dist/{utils → src/utils}/query-params.d.ts +2 -2
  178. package/dist/src/utils/query-params.d.ts.map +1 -0
  179. package/dist/src/utils/response-handlers.d.ts.map +1 -0
  180. package/dist/src/utils/response-normalizers.d.ts.map +1 -0
  181. package/dist/src/utils/slippage-utils.d.ts.map +1 -0
  182. package/dist/src/utils/swap-delta-calculator.d.ts +231 -0
  183. package/dist/src/utils/swap-delta-calculator.d.ts.map +1 -0
  184. package/dist/src/utils/tick-crossing-handler.d.ts +250 -0
  185. package/dist/src/utils/tick-crossing-handler.d.ts.map +1 -0
  186. package/dist/{utils → src/utils}/token-format-converter.d.ts +18 -11
  187. package/dist/src/utils/token-format-converter.d.ts.map +1 -0
  188. package/dist/src/utils/token-parser.d.ts +235 -0
  189. package/dist/src/utils/token-parser.d.ts.map +1 -0
  190. package/dist/src/utils/tokenNormalizer.d.ts.map +1 -0
  191. package/dist/src/utils/trade-transformers.d.ts.map +1 -0
  192. package/dist/src/utils/transfer-validation.d.ts.map +1 -0
  193. package/dist/{utils → src/utils}/validation-helpers.d.ts +1 -1
  194. package/dist/src/utils/validation-helpers.d.ts.map +1 -0
  195. package/dist/src/utils/validation.d.ts.map +1 -0
  196. package/dist/src/utils/wallet.d.ts.map +1 -0
  197. package/dist/src/utils/websocket-errors.d.ts.map +1 -0
  198. package/dist/src/utils/websocket-validators.d.ts.map +1 -0
  199. package/package.json +73 -19
  200. package/dist/LaunchpadSDK.d.ts.map +0 -1
  201. package/dist/api/LaunchpadAPI.d.ts.map +0 -1
  202. package/dist/api/dto/BondingCurveDTOs.d.ts.map +0 -1
  203. package/dist/api/dto/TransferTokenDto.d.ts.map +0 -1
  204. package/dist/auth/SignatureAuth.d.ts.map +0 -1
  205. package/dist/auth/types.d.ts.map +0 -1
  206. package/dist/config/environments.d.ts.map +0 -1
  207. package/dist/constants/bondingCurve.d.ts.map +0 -1
  208. package/dist/constants/config.d.ts.map +0 -1
  209. package/dist/constants/counts.d.ts.map +0 -1
  210. package/dist/constants/decimals.d.ts.map +0 -1
  211. package/dist/constants/endpoints.d.ts.map +0 -1
  212. package/dist/constants/enums.d.ts.map +0 -1
  213. package/dist/constants/error-messages.d.ts.map +0 -1
  214. package/dist/constants/pagination.d.ts.map +0 -1
  215. package/dist/constants/query-fields.d.ts.map +0 -1
  216. package/dist/constants/version.d.ts.map +0 -1
  217. package/dist/constants/version.generated.d.ts.map +0 -1
  218. package/dist/helpers/sdk.d.ts.map +0 -1
  219. package/dist/helpers/wallet.d.ts.map +0 -1
  220. package/dist/polyfills/file-global.d.ts.map +0 -1
  221. package/dist/schemas/files.d.ts.map +0 -1
  222. package/dist/schemas/index.d.ts.map +0 -1
  223. package/dist/schemas/launchpad.d.ts.map +0 -1
  224. package/dist/schemas/pagination.d.ts.map +0 -1
  225. package/dist/schemas/primitives.d.ts.map +0 -1
  226. package/dist/schemas/trade.d.ts.map +0 -1
  227. package/dist/schemas/user.d.ts.map +0 -1
  228. package/dist/schemas/validators.d.ts.map +0 -1
  229. package/dist/services/BaseService.d.ts.map +0 -1
  230. package/dist/services/BundleService.d.ts.map +0 -1
  231. package/dist/services/CommentService.d.ts.map +0 -1
  232. package/dist/services/DexPoolService.d.ts +0 -95
  233. package/dist/services/DexPoolService.d.ts.map +0 -1
  234. package/dist/services/DexService.d.ts.map +0 -1
  235. package/dist/services/FaucetService.d.ts.map +0 -1
  236. package/dist/services/GSwapService.d.ts +0 -315
  237. package/dist/services/GSwapService.d.ts.map +0 -1
  238. package/dist/services/GalaChainService.d.ts.map +0 -1
  239. package/dist/services/ImageService.d.ts.map +0 -1
  240. package/dist/services/LaunchpadService.d.ts.map +0 -1
  241. package/dist/services/PoolService.d.ts.map +0 -1
  242. package/dist/services/PriceHistoryService.d.ts.map +0 -1
  243. package/dist/services/SignatureService.d.ts.map +0 -1
  244. package/dist/services/TokenClassKeyService.d.ts.map +0 -1
  245. package/dist/services/TokenMetadataCache.d.ts.map +0 -1
  246. package/dist/services/TokenMetadataService.d.ts.map +0 -1
  247. package/dist/services/TokenResolverService.d.ts.map +0 -1
  248. package/dist/services/TradeService.d.ts.map +0 -1
  249. package/dist/services/UserService.d.ts.map +0 -1
  250. package/dist/services/WebSocketManager.d.ts.map +0 -1
  251. package/dist/services/WebSocketService.d.ts +0 -85
  252. package/dist/services/WebSocketService.d.ts.map +0 -1
  253. package/dist/types/backend-responses.d.ts.map +0 -1
  254. package/dist/types/comment.dto.d.ts.map +0 -1
  255. package/dist/types/common.d.ts.map +0 -1
  256. package/dist/types/dex-pool.dto.d.ts.map +0 -1
  257. package/dist/types/dto.d.ts.map +0 -1
  258. package/dist/types/gswap.dto.d.ts.map +0 -1
  259. package/dist/types/launchpad.dto.d.ts.map +0 -1
  260. package/dist/types/launchpad.validation.d.ts.map +0 -1
  261. package/dist/types/options.dto.d.ts.map +0 -1
  262. package/dist/types/priceHistory.dto.d.ts.map +0 -1
  263. package/dist/types/result.types.d.ts.map +0 -1
  264. package/dist/types/trade.dto.d.ts.map +0 -1
  265. package/dist/types/transfer.dto.d.ts.map +0 -1
  266. package/dist/types/user.dto.d.ts.map +0 -1
  267. package/dist/types/websocket-data.types.d.ts.map +0 -1
  268. package/dist/types/websocket.types.d.ts.map +0 -1
  269. package/dist/utils/Logger.d.ts.map +0 -1
  270. package/dist/utils/SignatureHelper.d.ts.map +0 -1
  271. package/dist/utils/adapters.d.ts.map +0 -1
  272. package/dist/utils/agent-config.d.ts.map +0 -1
  273. package/dist/utils/auto-pagination.d.ts.map +0 -1
  274. package/dist/utils/bignumber-helpers.d.ts.map +0 -1
  275. package/dist/utils/bondingCurveCalculations.d.ts.map +0 -1
  276. package/dist/utils/cacheWarmingHelpers.d.ts.map +0 -1
  277. package/dist/utils/date-utils.d.ts.map +0 -1
  278. package/dist/utils/error-factories.d.ts.map +0 -1
  279. package/dist/utils/error-utils.d.ts.map +0 -1
  280. package/dist/utils/errors.d.ts.map +0 -1
  281. package/dist/utils/http.d.ts.map +0 -1
  282. package/dist/utils/multipart-helpers.d.ts.map +0 -1
  283. package/dist/utils/multipart.d.ts.map +0 -1
  284. package/dist/utils/number-utils.d.ts.map +0 -1
  285. package/dist/utils/precision-math.d.ts.map +0 -1
  286. package/dist/utils/query-params.d.ts.map +0 -1
  287. package/dist/utils/response-handlers.d.ts.map +0 -1
  288. package/dist/utils/response-normalizers.d.ts.map +0 -1
  289. package/dist/utils/slippage-utils.d.ts.map +0 -1
  290. package/dist/utils/token-format-converter.d.ts.map +0 -1
  291. package/dist/utils/tokenNormalizer.d.ts.map +0 -1
  292. package/dist/utils/trade-transformers.d.ts.map +0 -1
  293. package/dist/utils/transfer-validation.d.ts.map +0 -1
  294. package/dist/utils/validation-helpers.d.ts.map +0 -1
  295. package/dist/utils/validation.d.ts.map +0 -1
  296. package/dist/utils/wallet.d.ts.map +0 -1
  297. package/dist/utils/websocket-errors.d.ts.map +0 -1
  298. package/dist/utils/websocket-validators.d.ts.map +0 -1
  299. /package/dist/{api → src/api}/LaunchpadAPI.d.ts +0 -0
  300. /package/dist/{api → src/api}/dto/BondingCurveDTOs.d.ts +0 -0
  301. /package/dist/{api → src/api}/dto/TransferTokenDto.d.ts +0 -0
  302. /package/dist/{auth → src/auth}/SignatureAuth.d.ts +0 -0
  303. /package/dist/{auth → src/auth}/types.d.ts +0 -0
  304. /package/dist/{config → src/config}/environments.d.ts +0 -0
  305. /package/dist/{constants → src/constants}/bondingCurve.d.ts +0 -0
  306. /package/dist/{constants → src/constants}/config.d.ts +0 -0
  307. /package/dist/{constants → src/constants}/counts.d.ts +0 -0
  308. /package/dist/{constants → src/constants}/decimals.d.ts +0 -0
  309. /package/dist/{constants → src/constants}/endpoints.d.ts +0 -0
  310. /package/dist/{constants → src/constants}/enums.d.ts +0 -0
  311. /package/dist/{constants → src/constants}/error-messages.d.ts +0 -0
  312. /package/dist/{constants → src/constants}/pagination.d.ts +0 -0
  313. /package/dist/{constants → src/constants}/query-fields.d.ts +0 -0
  314. /package/dist/{constants → src/constants}/version.d.ts +0 -0
  315. /package/dist/{helpers → src/helpers}/sdk.d.ts +0 -0
  316. /package/dist/{helpers → src/helpers}/wallet.d.ts +0 -0
  317. /package/dist/{polyfills → src/polyfills}/file-global.d.ts +0 -0
  318. /package/dist/{schemas → src/schemas}/files.d.ts +0 -0
  319. /package/dist/{schemas → src/schemas}/index.d.ts +0 -0
  320. /package/dist/{schemas → src/schemas}/launchpad.d.ts +0 -0
  321. /package/dist/{schemas → src/schemas}/pagination.d.ts +0 -0
  322. /package/dist/{schemas → src/schemas}/primitives.d.ts +0 -0
  323. /package/dist/{schemas → src/schemas}/trade.d.ts +0 -0
  324. /package/dist/{schemas → src/schemas}/user.d.ts +0 -0
  325. /package/dist/{schemas → src/schemas}/validators.d.ts +0 -0
  326. /package/dist/{services → src/services}/BaseService.d.ts +0 -0
  327. /package/dist/{services → src/services}/BundleService.d.ts +0 -0
  328. /package/dist/{services → src/services}/CommentService.d.ts +0 -0
  329. /package/dist/{services → src/services}/FaucetService.d.ts +0 -0
  330. /package/dist/{services → src/services}/ImageService.d.ts +0 -0
  331. /package/dist/{services → src/services}/LaunchpadService.d.ts +0 -0
  332. /package/dist/{services → src/services}/PoolService.d.ts +0 -0
  333. /package/dist/{services → src/services}/TokenClassKeyService.d.ts +0 -0
  334. /package/dist/{services → src/services}/TokenResolverService.d.ts +0 -0
  335. /package/dist/{services → src/services}/TradeService.d.ts +0 -0
  336. /package/dist/{services → src/services}/UserService.d.ts +0 -0
  337. /package/dist/{services → src/services}/WebSocketManager.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}/launchpad.validation.d.ts +0 -0
  341. /package/dist/{types → src/types}/options.dto.d.ts +0 -0
  342. /package/dist/{types → src/types}/result.types.d.ts +0 -0
  343. /package/dist/{types → src/types}/trade.dto.d.ts +0 -0
  344. /package/dist/{types → src/types}/transfer.dto.d.ts +0 -0
  345. /package/dist/{types → src/types}/user.dto.d.ts +0 -0
  346. /package/dist/{types → src/types}/websocket-data.types.d.ts +0 -0
  347. /package/dist/{types → src/types}/websocket.types.d.ts +0 -0
  348. /package/dist/{utils → src/utils}/Logger.d.ts +0 -0
  349. /package/dist/{utils → src/utils}/adapters.d.ts +0 -0
  350. /package/dist/{utils → src/utils}/agent-config.d.ts +0 -0
  351. /package/dist/{utils → src/utils}/bondingCurveCalculations.d.ts +0 -0
  352. /package/dist/{utils → src/utils}/cacheWarmingHelpers.d.ts +0 -0
  353. /package/dist/{utils → src/utils}/date-utils.d.ts +0 -0
  354. /package/dist/{utils → src/utils}/error-factories.d.ts +0 -0
  355. /package/dist/{utils → src/utils}/error-utils.d.ts +0 -0
  356. /package/dist/{utils → src/utils}/http.d.ts +0 -0
  357. /package/dist/{utils → src/utils}/multipart-helpers.d.ts +0 -0
  358. /package/dist/{utils → src/utils}/number-utils.d.ts +0 -0
  359. /package/dist/{utils → src/utils}/precision-math.d.ts +0 -0
  360. /package/dist/{utils → src/utils}/response-handlers.d.ts +0 -0
  361. /package/dist/{utils → src/utils}/response-normalizers.d.ts +0 -0
  362. /package/dist/{utils → src/utils}/slippage-utils.d.ts +0 -0
  363. /package/dist/{utils → src/utils}/tokenNormalizer.d.ts +0 -0
  364. /package/dist/{utils → src/utils}/trade-transformers.d.ts +0 -0
  365. /package/dist/{utils → src/utils}/transfer-validation.d.ts +0 -0
  366. /package/dist/{utils → src/utils}/validation.d.ts +0 -0
  367. /package/dist/{utils → src/utils}/wallet.d.ts +0 -0
  368. /package/dist/{utils → src/utils}/websocket-errors.d.ts +0 -0
  369. /package/dist/{utils → src/utils}/websocket-validators.d.ts +0 -0
@@ -0,0 +1,231 @@
1
+ /**
2
+ * Swap Delta Calculator
3
+ *
4
+ * Pure math functions that calculate how a swap affects pool state.
5
+ * Implements Uniswap V3 concentrated liquidity swap mechanics with tick crossing.
6
+ *
7
+ * This is a CALCULATION-ONLY utility with NO state management.
8
+ * All functions are pure and return new objects without mutating inputs.
9
+ *
10
+ * @packageDocumentation
11
+ */
12
+ import BigNumber from 'bignumber.js';
13
+ import { Pool, TickData } from '@gala-chain/dex';
14
+ import { SwapEventData, InternalSwapState, SwapDeltaResult } from '../types/pool-state-delta.dto';
15
+ import { CompositePoolDataResult } from '../types/composite-pool.dto';
16
+ /**
17
+ * Configuration for swap calculation behavior
18
+ *
19
+ * @category Pool State
20
+ */
21
+ export interface SwapCalculationConfig {
22
+ /** Safety limit for maximum swap iterations (default: 100) */
23
+ maxIterations: number;
24
+ /** Use BigNumber cache for performance (default: true) */
25
+ enableBigNumberCache: boolean;
26
+ /** BigNumber rounding mode (default: ROUND_DOWN) */
27
+ roundingMode: BigNumber.RoundingMode;
28
+ /** Enable debug logging for swap calculations (default: false) */
29
+ debugLogging: boolean;
30
+ }
31
+ /**
32
+ * Result of the iterative swap loop calculation
33
+ *
34
+ * @internal
35
+ */
36
+ interface SwapLoopResult {
37
+ /** Final internal state after all iterations */
38
+ state: InternalSwapState;
39
+ /** Array of tick indices that were crossed during the swap */
40
+ ticksCrossed: number[];
41
+ /** True if price reached limit before consuming all input */
42
+ priceHitLimit: boolean;
43
+ /** Number of iterations executed */
44
+ stepCount: number;
45
+ /** Updated tick data map (only changed ticks) */
46
+ updatedTicks: Record<string, TickData>;
47
+ }
48
+ /**
49
+ * Core swap calculation engine for applying swap deltas to pool state
50
+ *
51
+ * Implements Uniswap V3 concentrated liquidity mechanics:
52
+ * - Iterative swap execution across tick boundaries
53
+ * - Dynamic liquidity tracking as price crosses initialized ticks
54
+ * - Fee accumulation and protocol fee calculation
55
+ * - Exact input vs exact output handling
56
+ *
57
+ * @category Pool State
58
+ * @since 3.33.0
59
+ */
60
+ export declare class SwapDeltaCalculator {
61
+ private static readonly logger;
62
+ /**
63
+ * Apply a single swap event to pool state
64
+ *
65
+ * Calculates new sqrtPrice, liquidity, tick, fees by simulating the swap execution.
66
+ * Returns complete updated state without modifying input poolData.
67
+ *
68
+ * **Performance**: 25-50ms for typical swaps (1-3 tick crossings)
69
+ *
70
+ * @param poolData Current composite pool data (not modified)
71
+ * @param swapEvent The swap to apply
72
+ * @param config Optional calculation configuration
73
+ * @returns Complete result with updated state and metadata
74
+ * @throws Error if swap calculation fails or pool data is invalid
75
+ *
76
+ * @example Simple swap calculation
77
+ * ```typescript
78
+ * const result = SwapDeltaCalculator.calculateSwapDelta(
79
+ * compositePoolData,
80
+ * {
81
+ * transactionId: 'tx-123',
82
+ * timestamp: Date.now(),
83
+ * amountSpecified: '1000000000',
84
+ * zeroForOne: true,
85
+ * exactInput: true,
86
+ * }
87
+ * );
88
+ *
89
+ * console.log(`New price: ${result.updatedPool.sqrtPrice}`);
90
+ * console.log(`Ticks crossed: ${result.ticksCrossed.length}`);
91
+ * console.log(`Amount0: ${result.amount0.toString()}`);
92
+ * console.log(`Amount1: ${result.amount1.toString()}`);
93
+ * ```
94
+ *
95
+ * @example With validation data
96
+ * ```typescript
97
+ * const result = SwapDeltaCalculator.calculateSwapDelta(
98
+ * compositePoolData,
99
+ * {
100
+ * transactionId: 'tx-456',
101
+ * timestamp: Date.now(),
102
+ * amountSpecified: '5000000000',
103
+ * zeroForOne: false,
104
+ * exactInput: true,
105
+ * actualAmount0: '4950000000',
106
+ * actualAmount1: '-5000000000',
107
+ * actualSqrtPrice: '79228162514264337593543950336',
108
+ * }
109
+ * );
110
+ *
111
+ * if (result.metadata.driftPercentage) {
112
+ * console.log(`Drift: ${result.metadata.driftPercentage.toFixed(4)}%`);
113
+ * }
114
+ * ```
115
+ */
116
+ static calculateSwapDelta(poolData: CompositePoolDataResult, swapEvent: SwapEventData, config?: Partial<SwapCalculationConfig>): SwapDeltaResult;
117
+ /**
118
+ * Initialize swap state from pool data and swap event
119
+ *
120
+ * Sets up the initial state for iterative swap calculation including:
121
+ * - Current price, liquidity, and tick
122
+ * - Amount remaining to swap
123
+ * - Fee growth and protocol fee accumulators
124
+ *
125
+ * @param poolData Current pool state
126
+ * @param swapEvent Swap event to process
127
+ * @param config Calculation configuration
128
+ * @returns Initialized swap state ready for loop execution
129
+ * @throws Error if pool data is invalid or inconsistent
130
+ *
131
+ * @internal
132
+ */
133
+ static initializeSwapState(poolData: CompositePoolDataResult, swapEvent: SwapEventData, config: SwapCalculationConfig): InternalSwapState;
134
+ /**
135
+ * Main iterative swap calculation loop
136
+ *
137
+ * Executes swap step-by-step, crossing tick boundaries as needed.
138
+ * Implements Uniswap V3 concentrated liquidity mechanics:
139
+ *
140
+ * 1. Find next initialized tick in swap direction
141
+ * 2. Calculate swap step to that tick boundary
142
+ * 3. Update state accumulators (amount, fees)
143
+ * 4. Handle tick crossing (liquidity changes)
144
+ * 5. Repeat until amount consumed or price limit reached
145
+ *
146
+ * **Performance**: 20-40ms for typical swaps (1-3 iterations)
147
+ *
148
+ * @param state Initial swap state to mutate during loop
149
+ * @param poolData Pool and tick data
150
+ * @param swapEvent Original swap information
151
+ * @param config Calculation configuration
152
+ * @returns Loop result with final state and metadata
153
+ * @throws Error if swap exceeds iteration limit or encounters invalid state
154
+ *
155
+ * @internal
156
+ */
157
+ static computeSwapLoop(state: InternalSwapState, poolData: CompositePoolDataResult, swapEvent: SwapEventData, config: SwapCalculationConfig): SwapLoopResult;
158
+ /**
159
+ * Create updated pool object with new state
160
+ *
161
+ * Returns a new Pool instance with updated sqrtPrice, liquidity, tick, and fees.
162
+ * Does NOT mutate the original pool object.
163
+ *
164
+ * @param originalPool Original pool state
165
+ * @param newState Updated swap state
166
+ * @param swapEvent Swap event that was applied
167
+ * @param config Calculation configuration
168
+ * @returns New Pool instance with updated state
169
+ *
170
+ * @internal
171
+ */
172
+ static createUpdatedPool(originalPool: Pool, newState: InternalSwapState, swapEvent: SwapEventData, _config: SwapCalculationConfig): Pool;
173
+ /**
174
+ * Calculate final token amounts from swap state
175
+ *
176
+ * Determines amount0 and amount1 based on swap direction and type (exact input vs exact output).
177
+ * Calculates fee amounts for each token.
178
+ *
179
+ * @param initialState State before swap
180
+ * @param finalState State after swap
181
+ * @param swapEvent Swap event details
182
+ * @returns Token amounts and fees (signed: negative = spent, positive = received)
183
+ *
184
+ * @internal
185
+ */
186
+ static calculateFinalAmounts(initialState: InternalSwapState, finalState: InternalSwapState, swapEvent: SwapEventData): {
187
+ amount0: BigNumber;
188
+ amount1: BigNumber;
189
+ feeAmount0: BigNumber;
190
+ feeAmount1: BigNumber;
191
+ };
192
+ /**
193
+ * Find next initialized tick in swap direction
194
+ *
195
+ * Scans tick data map to find the nearest initialized tick boundary.
196
+ * Uses pool's tick spacing to determine valid tick indices.
197
+ *
198
+ * @param tickDataMap Map of initialized ticks
199
+ * @param currentTick Current tick index
200
+ * @param tickSpacing Pool's tick spacing (e.g., 60 for 0.3% fee tier)
201
+ * @param zeroForOne Swap direction (true = decreasing price)
202
+ * @returns [nextTick, initialized] tuple
203
+ *
204
+ * @internal
205
+ */
206
+ private static findNextInitializedTick;
207
+ /**
208
+ * Execute a single swap step calculation
209
+ *
210
+ * Uses the production-ready Uniswap V3 swap math from @gala-chain/dex.
211
+ * Implements accurate constant-product pricing, fee calculations, and tick boundary handling.
212
+ *
213
+ * @param sqrtPriceCurrent Current sqrt price before swap
214
+ * @param sqrtPriceTarget Target sqrt price (next tick boundary or price limit)
215
+ * @param liquidity Active liquidity in current price range
216
+ * @param amountRemaining Tokens remaining to swap (positive value)
217
+ * @param feeTier Fee tier in basis points (3000 = 0.3%, 10000 = 1%)
218
+ * @param exactInput true=exact input amount, false=exact output amount
219
+ * @returns SwapStepResult with sqrtPriceNext, amountIn, amountOut, feeAmount
220
+ * @throws Error on invalid inputs or calculation failures
221
+ *
222
+ * @internal
223
+ */
224
+ private static executeSwapStep;
225
+ }
226
+ /**
227
+ * Default export for convenience
228
+ * @see {@link SwapDeltaCalculator}
229
+ */
230
+ export default SwapDeltaCalculator;
231
+ //# sourceMappingURL=swap-delta-calculator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"swap-delta-calculator.d.ts","sourceRoot":"","sources":["../../../src/utils/swap-delta-calculator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAIjD,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,eAAe,EAEhB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAGtE;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACpC,8DAA8D;IAC9D,aAAa,EAAE,MAAM,CAAC;IAEtB,0DAA0D;IAC1D,oBAAoB,EAAE,OAAO,CAAC;IAE9B,oDAAoD;IACpD,YAAY,EAAE,SAAS,CAAC,YAAY,CAAC;IAErC,kEAAkE;IAClE,YAAY,EAAE,OAAO,CAAC;CACvB;AAYD;;;;GAIG;AACH,UAAU,cAAc;IACtB,gDAAgD;IAChD,KAAK,EAAE,iBAAiB,CAAC;IAEzB,8DAA8D;IAC9D,YAAY,EAAE,MAAM,EAAE,CAAC;IAEvB,6DAA6D;IAC7D,aAAa,EAAE,OAAO,CAAC;IAEvB,oCAAoC;IACpC,SAAS,EAAE,MAAM,CAAC;IAElB,iDAAiD;IACjD,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;CACxC;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAG3B;IAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAqDG;IACH,MAAM,CAAC,kBAAkB,CACvB,QAAQ,EAAE,uBAAuB,EACjC,SAAS,EAAE,aAAa,EACxB,MAAM,GAAE,OAAO,CAAC,qBAAqB,CAAM,GAC1C,eAAe;IA4GlB;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CAAC,mBAAmB,CACxB,QAAQ,EAAE,uBAAuB,EACjC,SAAS,EAAE,aAAa,EACxB,MAAM,EAAE,qBAAqB,GAC5B,iBAAiB;IAkEpB;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,MAAM,CAAC,eAAe,CACpB,KAAK,EAAE,iBAAiB,EACxB,QAAQ,EAAE,uBAAuB,EACjC,SAAS,EAAE,aAAa,EACxB,MAAM,EAAE,qBAAqB,GAC5B,cAAc;IAgKjB;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,iBAAiB,CACtB,YAAY,EAAE,IAAI,EAClB,QAAQ,EAAE,iBAAiB,EAC3B,SAAS,EAAE,aAAa,EACxB,OAAO,EAAE,qBAAqB,GAC7B,IAAI;IA4BP;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,qBAAqB,CAC1B,YAAY,EAAE,iBAAiB,EAC/B,UAAU,EAAE,iBAAiB,EAC7B,SAAS,EAAE,aAAa,GACvB;QACD,OAAO,EAAE,SAAS,CAAC;QACnB,OAAO,EAAE,SAAS,CAAC;QACnB,UAAU,EAAE,SAAS,CAAC;QACtB,UAAU,EAAE,SAAS,CAAC;KACvB;IAyDD;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,MAAM,CAAC,uBAAuB;IA0CtC;;;;;;;;;;;;;;;;OAgBG;IACH,OAAO,CAAC,MAAM,CAAC,eAAe;CAqE/B;AAED;;;GAGG;AACH,eAAe,mBAAmB,CAAC"}
@@ -0,0 +1,250 @@
1
+ /**
2
+ * Tick Crossing Handler
3
+ *
4
+ * Manages all tick boundary crossing logic during swap calculations.
5
+ * This is complex logic that reuses functions from @gala-chain/dex for:
6
+ * - Finding next initialized ticks in the bitmap
7
+ * - Applying liquidity and fee changes when crossing ticks
8
+ * - Validating tick ranges and boundaries
9
+ *
10
+ * @packageDocumentation
11
+ */
12
+ import { TickData } from '@gala-chain/dex';
13
+ import BigNumber from 'bignumber.js';
14
+ import type { TickCrossingEvent } from '../types/pool-state-delta.dto';
15
+ /**
16
+ * Handler for tick boundary crossing during swaps
17
+ *
18
+ * Provides pure functions for navigating tick boundaries, applying liquidity changes,
19
+ * and managing tick data updates during swap calculations.
20
+ *
21
+ * @category Pool State
22
+ */
23
+ export declare class TickCrossingHandler {
24
+ private static readonly logger;
25
+ /**
26
+ * Minimum valid tick index (-887272)
27
+ * Corresponds to minimum price = 1.0001^-887272
28
+ */
29
+ static readonly MIN_TICK: number;
30
+ /**
31
+ * Maximum valid tick index (887272)
32
+ * Corresponds to maximum price = 1.0001^887272
33
+ */
34
+ static readonly MAX_TICK: number;
35
+ /**
36
+ * Standard tick spacing for most pools
37
+ */
38
+ static readonly TICK_SPACING_STANDARD = 60;
39
+ /**
40
+ * Warning threshold for large tick crossing ranges
41
+ * Log warning if more than this many ticks are crossed
42
+ */
43
+ static readonly LARGE_TICK_RANGE_WARNING = 10;
44
+ /**
45
+ * Find the next initialized tick in the bitmap
46
+ *
47
+ * Uses bitmap navigation from @gala-chain/dex to efficiently locate
48
+ * the next tick boundary in the direction of price movement.
49
+ *
50
+ * @param bitmap - Pool's tick bitmap (map of tick index to initialization state)
51
+ * @param currentTick - Current tick position
52
+ * @param tickSpacing - Spacing between ticks (10, 60, 200, etc.)
53
+ * @param zeroForOne - True if moving toward negative ticks (price decreasing)
54
+ * @returns Tuple of [nextTick, isInitialized]
55
+ * @throws Error if tick is outside valid range
56
+ *
57
+ * @example
58
+ * ```typescript
59
+ * const [nextTick, initialized] = TickCrossingHandler.findNextInitializedTick(
60
+ * pool.bitmap,
61
+ * currentTick,
62
+ * 60,
63
+ * true // swapping token0 for token1
64
+ * );
65
+ * ```
66
+ */
67
+ static findNextInitializedTick(bitmap: Record<string, string>, currentTick: number, tickSpacing: number, zeroForOne: boolean): [number, boolean];
68
+ /**
69
+ * Apply liquidity and fee changes when crossing a tick boundary
70
+ *
71
+ * When price crosses a tick, we need to:
72
+ * 1. Update the tick's fee growth outside values
73
+ * 2. Get the net liquidity change at this tick
74
+ * 3. Apply the liquidity change based on swap direction
75
+ *
76
+ * @param tickData - Tick data for the crossing tick
77
+ * @param feeGrowthGlobal0 - Current feeGrowthGlobal0 (for token0)
78
+ * @param feeGrowthGlobal1 - Current feeGrowthGlobal1 (for token1)
79
+ * @param zeroForOne - Direction of swap (true = selling token0)
80
+ * @returns liquidityNet - the net liquidity change at this tick
81
+ *
82
+ * @example
83
+ * ```typescript
84
+ * const liquidityNetChange = TickCrossingHandler.handleTickCrossing(
85
+ * tickDataMap[tickNext],
86
+ * state.feeGrowthGlobal0,
87
+ * state.feeGrowthGlobal1,
88
+ * true // swapping token0 for token1
89
+ * );
90
+ *
91
+ * // Apply based on direction:
92
+ * const newLiquidity = zeroForOne
93
+ * ? state.liquidity.minus(liquidityNetChange)
94
+ * : state.liquidity.plus(liquidityNetChange);
95
+ * ```
96
+ */
97
+ static handleTickCrossing(tickData: TickData, feeGrowthGlobal0: BigNumber, feeGrowthGlobal1: BigNumber, zeroForOne: boolean): BigNumber;
98
+ /**
99
+ * Update tick data in the map (without mutation)
100
+ *
101
+ * Creates a new tick data map with the updated tick.
102
+ * Does NOT mutate the original map.
103
+ *
104
+ * @param tickDataMap - Original tick map
105
+ * @param tick - Tick index to update
106
+ * @param updatedData - New tick data object
107
+ * @returns New map with updated tick
108
+ *
109
+ * @example
110
+ * ```typescript
111
+ * const newTickMap = TickCrossingHandler.updateTickData(
112
+ * originalTickMap,
113
+ * tickIndex,
114
+ * updatedTickData
115
+ * );
116
+ * ```
117
+ */
118
+ static updateTickData(tickDataMap: Record<string, TickData>, tick: number, updatedData: TickData): Record<string, TickData>;
119
+ /**
120
+ * Get price boundaries for a tick
121
+ *
122
+ * Returns the sqrt price at this tick and the next tick.
123
+ * Useful for understanding the price range of a tick.
124
+ *
125
+ * @param tick - Tick number
126
+ * @returns Object with sqrtPriceLower and sqrtPriceUpper
127
+ *
128
+ * @example
129
+ * ```typescript
130
+ * const { sqrtPriceLower, sqrtPriceUpper } = TickCrossingHandler.getTickBoundaries(1000);
131
+ * console.log(`Price range: ${sqrtPriceLower} to ${sqrtPriceUpper}`);
132
+ * ```
133
+ */
134
+ static getTickBoundaries(tick: number): {
135
+ sqrtPriceLower: BigNumber;
136
+ sqrtPriceUpper: BigNumber;
137
+ };
138
+ /**
139
+ * Calculate which ticks are crossed during a swap
140
+ *
141
+ * Returns the range of ticks between start and end positions.
142
+ * Useful for analysis and logging.
143
+ *
144
+ * @param startTick - Starting tick
145
+ * @param endTick - Ending tick
146
+ * @param zeroForOne - Swap direction
147
+ * @returns Array of crossed ticks (sorted)
148
+ *
149
+ * @example
150
+ * ```typescript
151
+ * const crossedTicks = TickCrossingHandler.calculateTickRange(1000, 950, true);
152
+ * // Returns: [999, 998, 997, ..., 951, 950]
153
+ * ```
154
+ */
155
+ static calculateTickRange(startTick: number, endTick: number, zeroForOne: boolean): number[];
156
+ /**
157
+ * Validate tick is within valid range
158
+ *
159
+ * @param tick - Tick to validate
160
+ * @returns True if tick is valid, false otherwise
161
+ *
162
+ * @example
163
+ * ```typescript
164
+ * if (!TickCrossingHandler.validateTick(tick)) {
165
+ * throw new Error('Invalid tick');
166
+ * }
167
+ * ```
168
+ */
169
+ static validateTick(tick: number): boolean;
170
+ /**
171
+ * Create a tick crossing event for tracking
172
+ *
173
+ * Generates a TickCrossingEvent with complete metadata about the crossing.
174
+ * Useful for logging and analysis.
175
+ *
176
+ * @param tick - Tick that was crossed
177
+ * @param direction - Direction of crossing ('up' or 'down')
178
+ * @param liquidityNet - Net liquidity change at this tick
179
+ * @param liquidityBefore - Liquidity before crossing
180
+ * @param liquidityAfter - Liquidity after crossing
181
+ * @returns TickCrossingEvent object
182
+ *
183
+ * @example
184
+ * ```typescript
185
+ * const event = TickCrossingHandler.createTickCrossingEvent(
186
+ * 1000,
187
+ * 'down',
188
+ * liquidityNet,
189
+ * oldLiquidity,
190
+ * newLiquidity
191
+ * );
192
+ * ticksCrossed.push(event);
193
+ * ```
194
+ */
195
+ static createTickCrossingEvent(tick: number, direction: 'up' | 'down', liquidityNet: BigNumber, liquidityBefore: BigNumber, liquidityAfter: BigNumber): TickCrossingEvent;
196
+ /**
197
+ * Validate bitmap structure
198
+ *
199
+ * Checks that the bitmap has the expected structure.
200
+ * Used for defensive validation before bitmap operations.
201
+ *
202
+ * @param bitmap - Bitmap to validate
203
+ * @returns True if bitmap is valid
204
+ *
205
+ * @example
206
+ * ```typescript
207
+ * if (!TickCrossingHandler.validateBitmap(pool.bitmap)) {
208
+ * throw new Error('Invalid bitmap structure');
209
+ * }
210
+ * ```
211
+ */
212
+ static validateBitmap(bitmap: Record<string, string>): boolean;
213
+ /**
214
+ * Get tick data safely from map
215
+ *
216
+ * Returns tick data or undefined if not found.
217
+ * Logs warning if tick is expected but not found.
218
+ *
219
+ * @param tickDataMap - Tick data map
220
+ * @param tick - Tick to retrieve
221
+ * @param expectFound - Whether to log warning if not found
222
+ * @returns TickData or undefined
223
+ *
224
+ * @example
225
+ * ```typescript
226
+ * const tickData = TickCrossingHandler.getTickDataSafe(
227
+ * tickDataMap,
228
+ * tickIndex,
229
+ * true // log warning if not found
230
+ * );
231
+ * ```
232
+ */
233
+ static getTickDataSafe(tickDataMap: Record<string, TickData>, tick: number, expectFound?: boolean): TickData | undefined;
234
+ /**
235
+ * Calculate performance metrics for tick crossing
236
+ *
237
+ * Estimates the expected time for crossing N ticks based on benchmarks.
238
+ *
239
+ * @param tickCount - Number of ticks to cross
240
+ * @returns Estimated time in milliseconds
241
+ *
242
+ * @example
243
+ * ```typescript
244
+ * const estimatedMs = TickCrossingHandler.estimateTickCrossingTime(5);
245
+ * console.log(`Expect ~${estimatedMs}ms for 5 tick crossings`);
246
+ * ```
247
+ */
248
+ static estimateTickCrossingTime(tickCount: number): number;
249
+ }
250
+ //# sourceMappingURL=tick-crossing-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tick-crossing-handler.d.ts","sourceRoot":"","sources":["../../../src/utils/tick-crossing-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EACL,QAAQ,EAGT,MAAM,iBAAiB,CAAC;AACzB,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAGvE;;;;;;;GAOG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAG3B;IAEH;;;OAGG;IACH,MAAM,CAAC,QAAQ,CAAC,QAAQ,SAAqB;IAE7C;;;OAGG;IACH,MAAM,CAAC,QAAQ,CAAC,QAAQ,SAAqB;IAE7C;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,qBAAqB,MAAM;IAE3C;;;OAGG;IACH,MAAM,CAAC,QAAQ,CAAC,wBAAwB,MAAM;IAE9C;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,MAAM,CAAC,uBAAuB,CAC5B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC9B,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,OAAO,GAClB,CAAC,MAAM,EAAE,OAAO,CAAC;IAwCpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACH,MAAM,CAAC,kBAAkB,CACvB,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,SAAS,EAC3B,gBAAgB,EAAE,SAAS,EAC3B,UAAU,EAAE,OAAO,GAClB,SAAS;IAyBZ;;;;;;;;;;;;;;;;;;;OAmBG;IACH,MAAM,CAAC,cAAc,CACnB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACrC,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,QAAQ,GACpB,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC;IAY3B;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG;QACtC,cAAc,EAAE,SAAS,CAAC;QAC1B,cAAc,EAAE,SAAS,CAAC;KAC3B;IAqBD;;;;;;;;;;;;;;;;OAgBG;IACH,MAAM,CAAC,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,MAAM,EAAE;IA2B5F;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI1C;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,MAAM,CAAC,uBAAuB,CAC5B,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,IAAI,GAAG,MAAM,EACxB,YAAY,EAAE,SAAS,EACvB,eAAe,EAAE,SAAS,EAC1B,cAAc,EAAE,SAAS,GACxB,iBAAiB;IAUpB;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO;IAgB9D;;;;;;;;;;;;;;;;;;;OAmBG;IACH,MAAM,CAAC,eAAe,CACpB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACrC,IAAI,EAAE,MAAM,EACZ,WAAW,GAAE,OAAe,GAC3B,QAAQ,GAAG,SAAS;IAavB;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,wBAAwB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;CAU3D"}
@@ -25,8 +25,12 @@ export declare class TokenFormatConverter {
25
25
  *
26
26
  * ⚠️ WARNING: For API format conversion ONLY
27
27
  * This does NOT validate or resolve token symbols - it's structural only.
28
+ * USE parseToken() utility instead for proper token format handling (src/utils/token-parser.ts)
28
29
  *
29
- * Input: "GALA" or "GALA|Unit|none|none" or { collection: "Token", category: "Unit", type: "GALA", additionalKey: "none" }
30
+ * Input examples:
31
+ * - "GALA" → "GALA|Unit|none|none"
32
+ * - "GALA|Unit|none|none" → "GALA|Unit|none|none" (unchanged)
33
+ * - { collection: "GALA", category: "Unit", type: "none", additionalKey: "none" } → "GALA|Unit|none|none"
30
34
  * Output: "GALA|Unit|none|none"
31
35
  */
32
36
  toLaunchpadFormat(token: string | TokenClass | any): string;
@@ -35,10 +39,13 @@ export declare class TokenFormatConverter {
35
39
  *
36
40
  * ⚠️ WARNING: For API format conversion ONLY
37
41
  * This does NOT provide real symbol/metadata - it's structural only.
42
+ * USE parseToken() utility instead for proper token format handling (src/utils/token-parser.ts)
38
43
  * For actual token data, use GalaChainService.fetchTokenClassFromChain()
39
44
  *
40
- * Input: "GALA|Unit|none|none" or { type: "GALA", ... }
41
- * Output: { collection: "Token", category: "Unit", type: "GALA", additionalKey: "none" }
45
+ * Input examples:
46
+ * - "GALA|Unit|none|none" { collection: "GALA", category: "Unit", type: "none", additionalKey: "none" }
47
+ * - { type: "GALA", ... } → proper TokenClassKey
48
+ * Output: TokenClassKey with collection, category, type, additionalKey
42
49
  */
43
50
  toTokenClass(token: string | TokenClass | any): TokenClass;
44
51
  /**
@@ -61,13 +68,13 @@ export declare class TokenFormatConverter {
61
68
  /**
62
69
  * Convert pipe-delimited token ID to dollar-delimited format for API
63
70
  *
64
- * @param pipeToken Pipe-delimited format: "Token|Unit|GUSDC|eth:0x..."
71
+ * @param pipeToken Pipe-delimited format: "GUSDC|Unit|none|eth:0x..."
65
72
  * @returns Dollar-delimited format: "Token$Unit$GUSDC$eth:0x..."
66
73
  * @throws Error if token is null or empty
67
74
  *
68
75
  * @example
69
76
  * ```typescript
70
- * pipeFormatToDollarFormat("Token|Unit|GUSDC|eth:0x123")
77
+ * pipeFormatToDollarFormat("GUSDC|Unit|none|eth:0x123")
71
78
  * // Returns: "Token$Unit$GUSDC$eth:0x123"
72
79
  * ```
73
80
  */
@@ -76,13 +83,13 @@ export declare function pipeFormatToDollarFormat(pipeToken: string): string;
76
83
  * Convert dollar-delimited API response to pipe-delimited format
77
84
  *
78
85
  * @param dollarToken Dollar-delimited format: "Token$Unit$GUSDC$eth:0x..."
79
- * @returns Pipe-delimited format: "Token|Unit|GUSDC|eth:0x..."
86
+ * @returns Pipe-delimited format: "GUSDC|Unit|none|eth:0x..."
80
87
  * @throws Error if token is null or empty
81
88
  *
82
89
  * @example
83
90
  * ```typescript
84
91
  * dollarFormatToPipeFormat("Token$Unit$GUSDC$eth:0x123")
85
- * // Returns: "Token|Unit|GUSDC|eth:0x123"
92
+ * // Returns: "GUSDC|Unit|none|eth:0x123"
86
93
  * ```
87
94
  */
88
95
  export declare function dollarFormatToPipeFormat(dollarToken: string): string;
@@ -116,12 +123,12 @@ export declare function convertSortOrderToApi(sortOrder?: 'ASC' | 'DESC'): 'asc'
116
123
  *
117
124
  * @example
118
125
  * ```typescript
119
- * const tokenClass = parseDollarDelimitedToken('Token$Unit$GUSDC$eth:0x...');
120
- * // → { collection: "Token", category: "Unit", type: "GUSDC", additionalKey: "eth:0x..." }
126
+ * const tokenClass = parseDollarDelimitedToken('GUSDC$Unit$none$eth:0x...');
127
+ * // → { collection: "GUSDC", category: "Unit", type: "none", additionalKey: "eth:0x..." }
121
128
  *
122
129
  * // Handles additionalKey with $ characters
123
- * const complex = parseDollarDelimitedToken('Token$Unit$SYMBOL$eth:0x$1234$5678');
124
- * // → { collection: "Token", category: "Unit", type: "SYMBOL", additionalKey: "eth:0x$1234$5678" }
130
+ * const complex = parseDollarDelimitedToken('SYMBOL$Unit$none$eth:0x$1234$5678');
131
+ * // → { collection: "SYMBOL", category: "Unit", type: "none", additionalKey: "eth:0x$1234$5678" }
125
132
  * ```
126
133
  *
127
134
  * @since 3.32.0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token-format-converter.d.ts","sourceRoot":"","sources":["../../../src/utils/token-format-converter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGrD,qBAAa,oBAAoB;IAC/B;;;;;;;;;;;;OAYG;IACH,iBAAiB,CAEf,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,GAAG,GAC/B,MAAM;IAyBT;;;;;;;;;;;;OAYG;IAEH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,GAAG,GAAG,UAAU;IAiC1D;;;;OAIG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAIrC;;;;;;;;OAQG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM;CAY9C;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAMlE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,wBAAwB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAMpE;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,SAAS,CAM5F;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,yBAAyB,CAAC,WAAW,EAAE,MAAM,GAAG,aAAa,CAyC5E"}