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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (405) hide show
  1. package/EXAMPLES.md +141 -7
  2. package/README.md +68 -36
  3. package/dist/ai-docs.json +7357 -0
  4. package/dist/index.cjs.js +1 -1
  5. package/dist/index.d.ts +70 -11
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.esm.js +1 -1
  8. package/dist/index.js +1 -1
  9. package/dist/src/LaunchpadSDK.d.ts +3288 -214
  10. package/dist/src/LaunchpadSDK.d.ts.map +1 -1
  11. package/dist/src/api/LaunchpadAPI.d.ts +21 -41
  12. package/dist/src/api/LaunchpadAPI.d.ts.map +1 -1
  13. package/dist/src/api/dto/BurnTokensDto.d.ts.map +1 -1
  14. package/dist/src/api/dto/LockTokenDto.d.ts.map +1 -1
  15. package/dist/src/api/dto/TransferTokenDto.d.ts.map +1 -1
  16. package/dist/src/api/dto/UnlockTokenDto.d.ts.map +1 -1
  17. package/dist/src/auth/JwtAuth.d.ts +145 -0
  18. package/dist/src/auth/JwtAuth.d.ts.map +1 -0
  19. package/dist/src/auth/SessionAuthService.d.ts +146 -0
  20. package/dist/src/auth/SessionAuthService.d.ts.map +1 -0
  21. package/dist/src/auth/SignatureAuth.d.ts.map +1 -1
  22. package/dist/src/bridge/BridgeService.d.ts.map +1 -1
  23. package/dist/src/bridge/GalaConnectClient.d.ts.map +1 -1
  24. package/dist/src/bridge/constants/tokens.d.ts +4 -3
  25. package/dist/src/bridge/constants/tokens.d.ts.map +1 -1
  26. package/dist/src/bridge/index.d.ts +1 -0
  27. package/dist/src/bridge/index.d.ts.map +1 -1
  28. package/dist/src/bridge/strategies/BridgeStrategy.d.ts.map +1 -1
  29. package/dist/src/bridge/strategies/EthereumBridgeStrategy.d.ts +1 -38
  30. package/dist/src/bridge/strategies/EthereumBridgeStrategy.d.ts.map +1 -1
  31. package/dist/src/bridge/strategies/SolanaBridgeStrategy.d.ts +1 -21
  32. package/dist/src/bridge/strategies/SolanaBridgeStrategy.d.ts.map +1 -1
  33. package/dist/src/bridge/types/bridge.dto.d.ts +15 -2
  34. package/dist/src/bridge/types/bridge.dto.d.ts.map +1 -1
  35. package/dist/src/bridge/utils/RateLimiter.d.ts +1 -1
  36. package/dist/src/bridge/utils/RateLimiter.d.ts.map +1 -1
  37. package/dist/src/bridge/utils/address-formatter.d.ts +25 -0
  38. package/dist/src/bridge/utils/address-formatter.d.ts.map +1 -0
  39. package/dist/src/bridge/utils/addressValidation.d.ts +200 -0
  40. package/dist/src/bridge/utils/addressValidation.d.ts.map +1 -0
  41. package/dist/src/bridge/utils/balanceHelpers.d.ts +215 -0
  42. package/dist/src/bridge/utils/balanceHelpers.d.ts.map +1 -0
  43. package/dist/src/bridge/utils/bridgeErrors.d.ts +98 -0
  44. package/dist/src/bridge/utils/bridgeErrors.d.ts.map +1 -0
  45. package/dist/src/bridge/utils/bridgeOutHelpers.d.ts +68 -0
  46. package/dist/src/bridge/utils/bridgeOutHelpers.d.ts.map +1 -0
  47. package/dist/src/bridge/utils/bridgePayload.d.ts +107 -0
  48. package/dist/src/bridge/utils/bridgePayload.d.ts.map +1 -0
  49. package/dist/src/bridge/utils/bridgeStatusParser.d.ts +75 -0
  50. package/dist/src/bridge/utils/bridgeStatusParser.d.ts.map +1 -0
  51. package/dist/src/bridge/utils/eip712Helpers.d.ts +66 -0
  52. package/dist/src/bridge/utils/eip712Helpers.d.ts.map +1 -0
  53. package/dist/src/bridge/utils/index.d.ts +9 -0
  54. package/dist/src/bridge/utils/index.d.ts.map +1 -1
  55. package/dist/src/bridge/utils/retry.d.ts +16 -0
  56. package/dist/src/bridge/utils/retry.d.ts.map +1 -1
  57. package/dist/src/bridge/utils/strategyDelegation.d.ts +69 -0
  58. package/dist/src/bridge/utils/strategyDelegation.d.ts.map +1 -0
  59. package/dist/src/bridge/utils/tokenIdUtils.d.ts +7 -0
  60. package/dist/src/bridge/utils/tokenIdUtils.d.ts.map +1 -1
  61. package/dist/src/bridge/utils/tokenMath.d.ts.map +1 -1
  62. package/dist/src/bridge/utils/tokenMetadataResolver.d.ts +97 -0
  63. package/dist/src/bridge/utils/tokenMetadataResolver.d.ts.map +1 -0
  64. package/dist/src/constants/endpoints.d.ts +453 -0
  65. package/dist/src/constants/endpoints.d.ts.map +1 -1
  66. package/dist/src/constants/error-messages.d.ts +1 -1
  67. package/dist/src/constants/error-messages.d.ts.map +1 -1
  68. package/dist/src/constants/jwt.d.ts +41 -0
  69. package/dist/src/constants/jwt.d.ts.map +1 -0
  70. package/dist/src/constants/sdk-defaults.d.ts +37 -0
  71. package/dist/src/constants/sdk-defaults.d.ts.map +1 -0
  72. package/dist/src/constants/version.generated.d.ts +1 -1
  73. package/dist/src/helpers/sdk.d.ts.map +1 -1
  74. package/dist/src/helpers/wallet.d.ts +4 -3
  75. package/dist/src/helpers/wallet.d.ts.map +1 -1
  76. package/dist/src/index.d.ts +70 -11
  77. package/dist/src/index.d.ts.map +1 -1
  78. package/dist/src/schemas/files.d.ts +2 -2
  79. package/dist/src/schemas/launchpad.d.ts +40 -8
  80. package/dist/src/schemas/launchpad.d.ts.map +1 -1
  81. package/dist/src/schemas/pagination.d.ts +7 -7
  82. package/dist/src/schemas/primitives.d.ts.map +1 -1
  83. package/dist/src/schemas/trade.d.ts +6 -6
  84. package/dist/src/schemas/user.d.ts +4 -4
  85. package/dist/src/schemas/validators.d.ts +15 -7
  86. package/dist/src/schemas/validators.d.ts.map +1 -1
  87. package/dist/src/services/AbstractCacheService.d.ts +227 -0
  88. package/dist/src/services/AbstractCacheService.d.ts.map +1 -0
  89. package/dist/src/services/AbstractTokenFetchService.d.ts +150 -0
  90. package/dist/src/services/AbstractTokenFetchService.d.ts.map +1 -0
  91. package/dist/src/services/ApiKeyService.d.ts +205 -0
  92. package/dist/src/services/ApiKeyService.d.ts.map +1 -0
  93. package/dist/src/services/BanService.d.ts +195 -0
  94. package/dist/src/services/BanService.d.ts.map +1 -0
  95. package/dist/src/services/BaseService.d.ts +50 -3
  96. package/dist/src/services/BaseService.d.ts.map +1 -1
  97. package/dist/src/services/BatchedCacheService.d.ts +132 -0
  98. package/dist/src/services/BatchedCacheService.d.ts.map +1 -0
  99. package/dist/src/services/BridgeableTokenCache.d.ts +32 -98
  100. package/dist/src/services/BridgeableTokenCache.d.ts.map +1 -1
  101. package/dist/src/services/BridgeableTokenService.d.ts +18 -13
  102. package/dist/src/services/BridgeableTokenService.d.ts.map +1 -1
  103. package/dist/src/services/BundleService.d.ts.map +1 -1
  104. package/dist/src/services/BundlerClientFactory.d.ts +32 -0
  105. package/dist/src/services/BundlerClientFactory.d.ts.map +1 -0
  106. package/dist/src/services/ChatMessagesService.d.ts +152 -0
  107. package/dist/src/services/ChatMessagesService.d.ts.map +1 -0
  108. package/dist/src/services/CommentService.d.ts +119 -0
  109. package/dist/src/services/CommentService.d.ts.map +1 -0
  110. package/dist/src/services/CommentsService.d.ts +155 -0
  111. package/dist/src/services/CommentsService.d.ts.map +1 -0
  112. package/dist/src/services/ContentFlagService.d.ts +212 -0
  113. package/dist/src/services/ContentFlagService.d.ts.map +1 -0
  114. package/dist/src/services/ContentReactionService.d.ts +175 -0
  115. package/dist/src/services/ContentReactionService.d.ts.map +1 -0
  116. package/dist/src/services/DexBackendClient.d.ts.map +1 -1
  117. package/dist/src/services/DexPoolService.d.ts +3 -3
  118. package/dist/src/services/DexPoolService.d.ts.map +1 -1
  119. package/dist/src/services/DexQuoteService.d.ts.map +1 -1
  120. package/dist/src/services/DexService.d.ts +2 -5
  121. package/dist/src/services/DexService.d.ts.map +1 -1
  122. package/dist/src/services/GSwapAssetService.d.ts +80 -0
  123. package/dist/src/services/GSwapAssetService.d.ts.map +1 -0
  124. package/dist/src/services/GSwapLiquidityMutationService.d.ts +140 -0
  125. package/dist/src/services/GSwapLiquidityMutationService.d.ts.map +1 -0
  126. package/dist/src/services/GSwapLiquidityQueryService.d.ts +87 -0
  127. package/dist/src/services/GSwapLiquidityQueryService.d.ts.map +1 -0
  128. package/dist/src/services/GSwapPoolCalculationService.d.ts +200 -0
  129. package/dist/src/services/GSwapPoolCalculationService.d.ts.map +1 -0
  130. package/dist/src/services/GSwapPoolQueryService.d.ts +116 -0
  131. package/dist/src/services/GSwapPoolQueryService.d.ts.map +1 -0
  132. package/dist/src/services/GSwapService.d.ts +14 -0
  133. package/dist/src/services/GSwapService.d.ts.map +1 -1
  134. package/dist/src/services/GSwapSwapService.d.ts +68 -0
  135. package/dist/src/services/GSwapSwapService.d.ts.map +1 -0
  136. package/dist/src/services/GalaChainBalanceService.d.ts +155 -0
  137. package/dist/src/services/GalaChainBalanceService.d.ts.map +1 -0
  138. package/dist/src/services/GalaChainGatewayClient.d.ts +32 -1
  139. package/dist/src/services/GalaChainGatewayClient.d.ts.map +1 -1
  140. package/dist/src/services/GalaChainLockService.d.ts +144 -0
  141. package/dist/src/services/GalaChainLockService.d.ts.map +1 -0
  142. package/dist/src/services/GalaChainService.d.ts +23 -106
  143. package/dist/src/services/GalaChainService.d.ts.map +1 -1
  144. package/dist/src/services/GalaChainTokenService.d.ts +108 -0
  145. package/dist/src/services/GalaChainTokenService.d.ts.map +1 -0
  146. package/dist/src/services/GalaChainTransferService.d.ts +205 -0
  147. package/dist/src/services/GalaChainTransferService.d.ts.map +1 -0
  148. package/dist/src/services/ImageService.d.ts +24 -8
  149. package/dist/src/services/ImageService.d.ts.map +1 -1
  150. package/dist/src/services/LaunchpadService.d.ts +77 -5
  151. package/dist/src/services/LaunchpadService.d.ts.map +1 -1
  152. package/dist/src/services/ModeratorService.d.ts +269 -0
  153. package/dist/src/services/ModeratorService.d.ts.map +1 -0
  154. package/dist/src/services/MultiPoolStateManager.d.ts +4 -6
  155. package/dist/src/services/MultiPoolStateManager.d.ts.map +1 -1
  156. package/dist/src/services/NetworkKeyedCacheService.d.ts +185 -0
  157. package/dist/src/services/NetworkKeyedCacheService.d.ts.map +1 -0
  158. package/dist/src/services/OverseerService.d.ts +322 -0
  159. package/dist/src/services/OverseerService.d.ts.map +1 -0
  160. package/dist/src/services/PoolCacheManager.d.ts +2 -2
  161. package/dist/src/services/PoolCacheManager.d.ts.map +1 -1
  162. package/dist/src/services/PoolService.d.ts +61 -7
  163. package/dist/src/services/PoolService.d.ts.map +1 -1
  164. package/dist/src/services/PoolStateManager.d.ts +2 -2
  165. package/dist/src/services/PoolStateManager.d.ts.map +1 -1
  166. package/dist/src/services/PriceHistoryService.d.ts.map +1 -1
  167. package/dist/src/services/SignatureService.d.ts.map +1 -1
  168. package/dist/src/services/StreamChatService.d.ts +378 -0
  169. package/dist/src/services/StreamChatService.d.ts.map +1 -0
  170. package/dist/src/services/StreamTokenServiceBase.d.ts +371 -0
  171. package/dist/src/services/StreamTokenServiceBase.d.ts.map +1 -0
  172. package/dist/src/services/StreamWebSocketService.d.ts +268 -0
  173. package/dist/src/services/StreamWebSocketService.d.ts.map +1 -0
  174. package/dist/src/services/StreamingEventService.d.ts +431 -0
  175. package/dist/src/services/StreamingEventService.d.ts.map +1 -0
  176. package/dist/src/services/StreamingService.d.ts +547 -0
  177. package/dist/src/services/StreamingService.d.ts.map +1 -0
  178. package/dist/src/services/SwapEventQueue.d.ts +2 -2
  179. package/dist/src/services/SwapEventQueue.d.ts.map +1 -1
  180. package/dist/src/services/TokenBanService.d.ts +214 -0
  181. package/dist/src/services/TokenBanService.d.ts.map +1 -0
  182. package/dist/src/services/TokenClassKeyService.d.ts.map +1 -1
  183. package/dist/src/services/TokenMetadataCache.d.ts +36 -27
  184. package/dist/src/services/TokenMetadataCache.d.ts.map +1 -1
  185. package/dist/src/services/TokenMetadataService.d.ts +24 -4
  186. package/dist/src/services/TokenMetadataService.d.ts.map +1 -1
  187. package/dist/src/services/TokenResolverService.d.ts.map +1 -1
  188. package/dist/src/services/TradeService.d.ts +73 -0
  189. package/dist/src/services/TradeService.d.ts.map +1 -1
  190. package/dist/src/services/UserService.d.ts +56 -3
  191. package/dist/src/services/UserService.d.ts.map +1 -1
  192. package/dist/src/services/WebSocketService.d.ts +3 -3
  193. package/dist/src/services/WebSocketService.d.ts.map +1 -1
  194. package/dist/src/services/WrapService.d.ts +18 -5
  195. package/dist/src/services/WrapService.d.ts.map +1 -1
  196. package/dist/src/services/WrappableTokenCache.d.ts +8 -36
  197. package/dist/src/services/WrappableTokenCache.d.ts.map +1 -1
  198. package/dist/src/services/WrappableTokenService.d.ts +18 -12
  199. package/dist/src/services/WrappableTokenService.d.ts.map +1 -1
  200. package/dist/src/services/shared/cache-helpers.d.ts +188 -0
  201. package/dist/src/services/shared/cache-helpers.d.ts.map +1 -0
  202. package/dist/src/services/shared/http-helpers.d.ts +146 -0
  203. package/dist/src/services/shared/http-helpers.d.ts.map +1 -0
  204. package/dist/src/services/shared/pagination-helpers.d.ts +157 -0
  205. package/dist/src/services/shared/pagination-helpers.d.ts.map +1 -0
  206. package/dist/src/services/shared/service-validators.d.ts +137 -0
  207. package/dist/src/services/shared/service-validators.d.ts.map +1 -0
  208. package/dist/src/services/shared/websocket-helpers.d.ts +158 -0
  209. package/dist/src/services/shared/websocket-helpers.d.ts.map +1 -0
  210. package/dist/src/test-constants.d.ts +29 -0
  211. package/dist/src/test-constants.d.ts.map +1 -0
  212. package/dist/src/types/api-key.dto.d.ts +300 -0
  213. package/dist/src/types/api-key.dto.d.ts.map +1 -0
  214. package/dist/src/types/backend-responses.d.ts +12 -0
  215. package/dist/src/types/backend-responses.d.ts.map +1 -1
  216. package/dist/src/types/ban.dto.d.ts +413 -0
  217. package/dist/src/types/ban.dto.d.ts.map +1 -0
  218. package/dist/src/types/burn.dto.d.ts +21 -0
  219. package/dist/src/types/burn.dto.d.ts.map +1 -1
  220. package/dist/src/types/chat-messages.dto.d.ts +193 -0
  221. package/dist/src/types/chat-messages.dto.d.ts.map +1 -0
  222. package/dist/src/types/comment.dto.d.ts +180 -0
  223. package/dist/src/types/comment.dto.d.ts.map +1 -0
  224. package/dist/src/types/comments.dto.d.ts +210 -0
  225. package/dist/src/types/comments.dto.d.ts.map +1 -0
  226. package/dist/src/types/common.d.ts +369 -0
  227. package/dist/src/types/common.d.ts.map +1 -1
  228. package/dist/src/types/constraints.d.ts +374 -0
  229. package/dist/src/types/constraints.d.ts.map +1 -0
  230. package/dist/src/types/content-flag.dto.d.ts +310 -0
  231. package/dist/src/types/content-flag.dto.d.ts.map +1 -0
  232. package/dist/src/types/content-reactions.dto.d.ts +132 -0
  233. package/dist/src/types/content-reactions.dto.d.ts.map +1 -0
  234. package/dist/src/types/dex-pool.dto.d.ts +13 -37
  235. package/dist/src/types/dex-pool.dto.d.ts.map +1 -1
  236. package/dist/src/types/dto.d.ts +8 -0
  237. package/dist/src/types/dto.d.ts.map +1 -1
  238. package/dist/src/types/galachain-api.types.d.ts +30 -0
  239. package/dist/src/types/galachain-api.types.d.ts.map +1 -1
  240. package/dist/src/types/gswap-responses.types.d.ts.map +1 -1
  241. package/dist/src/types/launchpad.dto.d.ts +234 -131
  242. package/dist/src/types/launchpad.dto.d.ts.map +1 -1
  243. package/dist/src/types/launchpad.validation.d.ts.map +1 -1
  244. package/dist/src/types/lock.dto.d.ts +20 -35
  245. package/dist/src/types/lock.dto.d.ts.map +1 -1
  246. package/dist/src/types/moderator.dto.d.ts +581 -0
  247. package/dist/src/types/moderator.dto.d.ts.map +1 -0
  248. package/dist/src/types/options.dto.d.ts +25 -115
  249. package/dist/src/types/options.dto.d.ts.map +1 -1
  250. package/dist/src/types/overseer.dto.d.ts +420 -0
  251. package/dist/src/types/overseer.dto.d.ts.map +1 -0
  252. package/dist/src/types/pool.dto.d.ts +106 -0
  253. package/dist/src/types/pool.dto.d.ts.map +1 -0
  254. package/dist/src/types/result.types.d.ts +3 -2
  255. package/dist/src/types/result.types.d.ts.map +1 -1
  256. package/dist/src/types/session-auth.dto.d.ts +91 -0
  257. package/dist/src/types/session-auth.dto.d.ts.map +1 -0
  258. package/dist/src/types/stream-chat.dto.d.ts +815 -0
  259. package/dist/src/types/stream-chat.dto.d.ts.map +1 -0
  260. package/dist/src/types/streaming-events.dto.d.ts +586 -0
  261. package/dist/src/types/streaming-events.dto.d.ts.map +1 -0
  262. package/dist/src/types/streaming.dto.d.ts +1141 -0
  263. package/dist/src/types/streaming.dto.d.ts.map +1 -0
  264. package/dist/src/types/token-ban.dto.d.ts +195 -0
  265. package/dist/src/types/token-ban.dto.d.ts.map +1 -0
  266. package/dist/src/types/trade.dto.d.ts +21 -61
  267. package/dist/src/types/trade.dto.d.ts.map +1 -1
  268. package/dist/src/types/trades-query.dto.d.ts +127 -0
  269. package/dist/src/types/trades-query.dto.d.ts.map +1 -0
  270. package/dist/src/types/transfer.dto.d.ts +20 -15
  271. package/dist/src/types/transfer.dto.d.ts.map +1 -1
  272. package/dist/src/types/user.dto.d.ts +185 -73
  273. package/dist/src/types/user.dto.d.ts.map +1 -1
  274. package/dist/src/types/wrappable-token.dto.d.ts +6 -2
  275. package/dist/src/types/wrappable-token.dto.d.ts.map +1 -1
  276. package/dist/src/utils/LiquidityEventExtractor.d.ts.map +1 -1
  277. package/dist/src/utils/Logger.d.ts.map +1 -1
  278. package/dist/src/utils/MonitoringMetrics.d.ts.map +1 -1
  279. package/dist/src/utils/PoolKeyNormalizer.d.ts.map +1 -1
  280. package/dist/src/utils/ReconnectionManager.d.ts +142 -0
  281. package/dist/src/utils/ReconnectionManager.d.ts.map +1 -0
  282. package/dist/src/utils/SignatureHelper.d.ts +9 -0
  283. package/dist/src/utils/SignatureHelper.d.ts.map +1 -1
  284. package/dist/src/utils/SwapEventExtractor.d.ts.map +1 -1
  285. package/dist/src/utils/adapters.d.ts.map +1 -1
  286. package/dist/src/utils/address-formatter.d.ts +317 -0
  287. package/dist/src/utils/address-formatter.d.ts.map +1 -0
  288. package/dist/src/utils/agent-config.d.ts.map +1 -1
  289. package/dist/src/utils/amount-validator.d.ts +268 -0
  290. package/dist/src/utils/amount-validator.d.ts.map +1 -0
  291. package/dist/src/utils/api-patterns.d.ts +347 -0
  292. package/dist/src/utils/api-patterns.d.ts.map +1 -0
  293. package/dist/src/utils/array-helpers.d.ts +115 -0
  294. package/dist/src/utils/array-helpers.d.ts.map +1 -0
  295. package/dist/src/utils/async-patterns.d.ts +272 -0
  296. package/dist/src/utils/async-patterns.d.ts.map +1 -0
  297. package/dist/src/utils/auto-pagination.d.ts +195 -2
  298. package/dist/src/utils/auto-pagination.d.ts.map +1 -1
  299. package/dist/src/utils/bignumber-helpers.d.ts +119 -13
  300. package/dist/src/utils/bignumber-helpers.d.ts.map +1 -1
  301. package/dist/src/utils/bignumber-pool-cache.d.ts.map +1 -1
  302. package/dist/src/utils/bondingCurveCalculations.d.ts.map +1 -1
  303. package/dist/src/utils/cacheWarmingHelpers.d.ts +2 -2
  304. package/dist/src/utils/cacheWarmingHelpers.d.ts.map +1 -1
  305. package/dist/src/utils/data-transform-patterns.d.ts +393 -0
  306. package/dist/src/utils/data-transform-patterns.d.ts.map +1 -0
  307. package/dist/src/utils/date-utils.d.ts +166 -0
  308. package/dist/src/utils/date-utils.d.ts.map +1 -1
  309. package/dist/src/utils/delimiter-parser.d.ts +139 -0
  310. package/dist/src/utils/delimiter-parser.d.ts.map +1 -0
  311. package/dist/src/utils/error-factories.d.ts +346 -1
  312. package/dist/src/utils/error-factories.d.ts.map +1 -1
  313. package/dist/src/utils/error-handling-patterns.d.ts +390 -0
  314. package/dist/src/utils/error-handling-patterns.d.ts.map +1 -0
  315. package/dist/src/utils/error-patterns.d.ts +360 -0
  316. package/dist/src/utils/error-patterns.d.ts.map +1 -0
  317. package/dist/src/utils/error-utils.d.ts +250 -0
  318. package/dist/src/utils/error-utils.d.ts.map +1 -1
  319. package/dist/src/utils/error-wrapper.d.ts +208 -0
  320. package/dist/src/utils/error-wrapper.d.ts.map +1 -0
  321. package/dist/src/utils/errors.d.ts +70 -0
  322. package/dist/src/utils/errors.d.ts.map +1 -1
  323. package/dist/src/utils/http-factory.d.ts +36 -0
  324. package/dist/src/utils/http-factory.d.ts.map +1 -0
  325. package/dist/src/utils/http.d.ts.map +1 -1
  326. package/dist/src/utils/load-env.d.ts.map +1 -1
  327. package/dist/src/utils/multipart.d.ts.map +1 -1
  328. package/dist/src/utils/numeric-patterns.d.ts +289 -0
  329. package/dist/src/utils/numeric-patterns.d.ts.map +1 -0
  330. package/dist/src/utils/numeric-wrappers.d.ts +146 -0
  331. package/dist/src/utils/numeric-wrappers.d.ts.map +1 -0
  332. package/dist/src/utils/object-extractors.d.ts +115 -0
  333. package/dist/src/utils/object-extractors.d.ts.map +1 -0
  334. package/dist/src/utils/object-patterns.d.ts +81 -0
  335. package/dist/src/utils/object-patterns.d.ts.map +1 -0
  336. package/dist/src/utils/pagination-helpers.d.ts +230 -0
  337. package/dist/src/utils/pagination-helpers.d.ts.map +1 -0
  338. package/dist/src/utils/pool-pair-parser.d.ts +3 -1
  339. package/dist/src/utils/pool-pair-parser.d.ts.map +1 -1
  340. package/dist/src/utils/pool-state-validator.d.ts.map +1 -1
  341. package/dist/src/utils/position-filters.d.ts +1 -2
  342. package/dist/src/utils/position-filters.d.ts.map +1 -1
  343. package/dist/src/utils/query-params.d.ts +0 -16
  344. package/dist/src/utils/query-params.d.ts.map +1 -1
  345. package/dist/src/utils/response-handlers.d.ts +149 -20
  346. package/dist/src/utils/response-handlers.d.ts.map +1 -1
  347. package/dist/src/utils/response-helpers.d.ts +28 -0
  348. package/dist/src/utils/response-helpers.d.ts.map +1 -0
  349. package/dist/src/utils/response-normalizers.d.ts +27 -49
  350. package/dist/src/utils/response-normalizers.d.ts.map +1 -1
  351. package/dist/src/utils/safe-parsers.d.ts +487 -0
  352. package/dist/src/utils/safe-parsers.d.ts.map +1 -0
  353. package/dist/src/utils/service-validators.d.ts +268 -0
  354. package/dist/src/utils/service-validators.d.ts.map +1 -0
  355. package/dist/src/utils/slippage-utils.d.ts.map +1 -1
  356. package/dist/src/utils/string-patterns.d.ts +404 -0
  357. package/dist/src/utils/string-patterns.d.ts.map +1 -0
  358. package/dist/src/utils/string-transforms.d.ts +89 -0
  359. package/dist/src/utils/string-transforms.d.ts.map +1 -0
  360. package/dist/src/utils/string-utils.d.ts +108 -0
  361. package/dist/src/utils/string-utils.d.ts.map +1 -0
  362. package/dist/src/utils/swap-delta-calculator.d.ts.map +1 -1
  363. package/dist/src/utils/tick-crossing-handler.d.ts.map +1 -1
  364. package/dist/src/utils/token-format-converter.d.ts +22 -8
  365. package/dist/src/utils/token-format-converter.d.ts.map +1 -1
  366. package/dist/src/utils/token-parser.d.ts +2 -2
  367. package/dist/src/utils/token-parser.d.ts.map +1 -1
  368. package/dist/src/utils/token-stringification.d.ts +168 -0
  369. package/dist/src/utils/token-stringification.d.ts.map +1 -0
  370. package/dist/src/utils/tokenNameNormalizer.d.ts +96 -0
  371. package/dist/src/utils/tokenNameNormalizer.d.ts.map +1 -0
  372. package/dist/src/utils/tokenNormalizer.d.ts +8 -45
  373. package/dist/src/utils/tokenNormalizer.d.ts.map +1 -1
  374. package/dist/src/utils/transfer-validation.d.ts +1 -1
  375. package/dist/src/utils/transfer-validation.d.ts.map +1 -1
  376. package/dist/src/utils/type-guard-factory.d.ts +260 -0
  377. package/dist/src/utils/type-guard-factory.d.ts.map +1 -0
  378. package/dist/src/utils/unique-key-generator.d.ts +148 -0
  379. package/dist/src/utils/unique-key-generator.d.ts.map +1 -0
  380. package/dist/src/utils/validation-helpers.d.ts +906 -183
  381. package/dist/src/utils/validation-helpers.d.ts.map +1 -1
  382. package/dist/src/utils/validation-patterns.d.ts +745 -0
  383. package/dist/src/utils/validation-patterns.d.ts.map +1 -0
  384. package/dist/src/utils/validation.d.ts +2 -30
  385. package/dist/src/utils/validation.d.ts.map +1 -1
  386. package/dist/src/utils/wallet.d.ts +12 -1
  387. package/dist/src/utils/wallet.d.ts.map +1 -1
  388. package/dist/src/utils/websocket-patterns.d.ts +681 -0
  389. package/dist/src/utils/websocket-patterns.d.ts.map +1 -0
  390. package/dist/src/utils/websocket-validators.d.ts.map +1 -1
  391. package/package.json +86 -19
  392. package/dist/src/bridge/strategies/index.d.ts +0 -9
  393. package/dist/src/bridge/strategies/index.d.ts.map +0 -1
  394. package/dist/src/constants/counts.d.ts +0 -66
  395. package/dist/src/constants/counts.d.ts.map +0 -1
  396. package/dist/src/services/WebSocketManager.d.ts +0 -99
  397. package/dist/src/services/WebSocketManager.d.ts.map +0 -1
  398. package/dist/src/types/eip712-types.d.ts +0 -140
  399. package/dist/src/types/eip712-types.d.ts.map +0 -1
  400. package/dist/src/types/pool-state-manager-config.dto.d.ts +0 -103
  401. package/dist/src/types/pool-state-manager-config.dto.d.ts.map +0 -1
  402. package/dist/src/utils/number-utils.d.ts +0 -94
  403. package/dist/src/utils/number-utils.d.ts.map +0 -1
  404. package/dist/src/utils/precision-math.d.ts +0 -37
  405. package/dist/src/utils/precision-math.d.ts.map +0 -1
@@ -0,0 +1,317 @@
1
+ /**
2
+ * AddressFormatter - Consolidated address format conversion utilities
3
+ *
4
+ * Consolidates address formatting logic scattered across multiple files:
5
+ * - validation.ts: `toBackendAddressFormat()`, `fromBackendAddressFormat()`, `normalizeAddressInput()`
6
+ * - validation-helpers.ts: `formatAddressForBackend()`, `isValidAddress()`, `assertValidWalletAddress()`
7
+ * - Multiple services: Duplicate address parsing and normalization
8
+ *
9
+ * ## Problem Solved
10
+ *
11
+ * Address formatting was duplicated with inconsistent patterns:
12
+ * - Ethereum format: "0x1234..."
13
+ * - Backend format: "eth|1234..."
14
+ * - Client format: "client|abc123"
15
+ * - Different validation patterns in different files
16
+ * - Inconsistent error messages
17
+ *
18
+ * This utility provides a cohesive, well-documented interface for all address operations.
19
+ *
20
+ * @category Utilities
21
+ * @since 6.5.0
22
+ */
23
+ import { AddressFormat } from '../types/common';
24
+ import { stripHexPrefix as bridgeStripHexPrefix } from '../bridge/utils/address-formatter';
25
+ /**
26
+ * Address format types
27
+ */
28
+ export type AddressFormatType = 'ethereum' | 'backend' | 'client';
29
+ /**
30
+ * AddressFormatter - Unified address format operations
31
+ *
32
+ * Provides consistent, well-documented address formatting and validation
33
+ * across all services that work with wallet addresses.
34
+ *
35
+ * ## Supported Formats
36
+ *
37
+ * - **Ethereum**: `0x1234567890abcdef...` (40 hex chars with 0x prefix)
38
+ * - **Backend**: `eth|1234567890abcdef...` (40 hex chars without 0x)
39
+ * - **Client**: `client|identifier` (arbitrary client identifiers)
40
+ *
41
+ * ## Usage Examples
42
+ *
43
+ * ### Format conversion
44
+ * ```typescript
45
+ * const formatter = new AddressFormatter();
46
+ *
47
+ * // Ethereum to backend
48
+ * formatter.toBackendFormat('0x1234...abc');
49
+ * // Returns: 'eth|1234...abc'
50
+ *
51
+ * // Backend to Ethereum
52
+ * formatter.toEthereumFormat('eth|1234...abc');
53
+ * // Returns: '0x1234...abc'
54
+ *
55
+ * // Auto-detect and convert
56
+ * const format = formatter.normalizeInput('0x1234...abc');
57
+ * // Returns: 'eth|1234...abc' (backend format)
58
+ * ```
59
+ *
60
+ * ### Validation
61
+ * ```typescript
62
+ * const formatter = new AddressFormatter();
63
+ *
64
+ * // Check validity (no throw)
65
+ * if (formatter.isValid('0x1234...abc')) {
66
+ * // Process address
67
+ * }
68
+ *
69
+ * // Validate with throw
70
+ * formatter.assertValid(address, 'userAddress');
71
+ * // Safe to use
72
+ * ```
73
+ *
74
+ * @since 6.5.0
75
+ */
76
+ export declare class AddressFormatter {
77
+ /**
78
+ * Convert Ethereum address to backend format
79
+ *
80
+ * Accepts Ethereum format (with or without 0x prefix) and returns backend format.
81
+ *
82
+ * @param address Ethereum address (0x... or plain 40 hex)
83
+ * @returns Backend format address (eth|...)
84
+ * @throws ValidationError if address format is invalid
85
+ *
86
+ * @example
87
+ * ```typescript
88
+ * const formatter = new AddressFormatter();
89
+ *
90
+ * formatter.toBackendFormat('0x1234567890abcdef...abcdef');
91
+ * // Returns: 'eth|1234567890abcdef...abcdef'
92
+ *
93
+ * formatter.toBackendFormat('1234567890abcdef...abcdef');
94
+ * // Returns: 'eth|1234567890abcdef...abcdef'
95
+ * ```
96
+ */
97
+ toBackendFormat(address: string): string;
98
+ /**
99
+ * Convert backend address format to Ethereum format
100
+ *
101
+ * Converts backend format (eth|...) to standard Ethereum format (0x...).
102
+ * Preserves the original case of the address portion (including EIP-55 checksummed addresses).
103
+ *
104
+ * @param address Backend format address (eth|...)
105
+ * @returns Ethereum format address (0x...)
106
+ * @throws ValidationError if address format is invalid
107
+ *
108
+ * @example
109
+ * ```typescript
110
+ * const formatter = new AddressFormatter();
111
+ *
112
+ * formatter.toEthereumFormat('eth|1234567890abcdef...abcdef');
113
+ * // Returns: '0x1234567890abcdef...abcdef'
114
+ *
115
+ * formatter.toEthereumFormat('eth|5aAeb6053f3E94C9b9A09f33669435E7Ef1BeAed');
116
+ * // Returns: '0x5aAeb6053f3E94C9b9A09f33669435E7Ef1BeAed' (preserves checksum case)
117
+ * ```
118
+ */
119
+ toEthereumFormat(address: string): string;
120
+ /**
121
+ * Smart address parser - accepts both Ethereum and backend formats
122
+ *
123
+ * Automatically detects format and converts to backend format required by SDK.
124
+ * Handles both "0x..." and "eth|..." formats seamlessly.
125
+ *
126
+ * @param address Address in either Ethereum or backend format
127
+ * @returns Backend format address (eth|...)
128
+ * @throws ValidationError if address format is invalid
129
+ *
130
+ * @example
131
+ * ```typescript
132
+ * const formatter = new AddressFormatter();
133
+ *
134
+ * // Ethereum format input
135
+ * formatter.normalizeInput('0x1234...abc');
136
+ * // Returns: 'eth|1234...abc'
137
+ *
138
+ * // Backend format input
139
+ * formatter.normalizeInput('eth|1234...abc');
140
+ * // Returns: 'eth|1234...abc' (unchanged)
141
+ *
142
+ * // Plain hex (with or without 0x)
143
+ * formatter.normalizeInput('1234...abc');
144
+ * // Returns: 'eth|1234...abc'
145
+ * ```
146
+ */
147
+ normalizeInput(address: string | undefined): AddressFormat | undefined;
148
+ /**
149
+ * Check if an address is valid (without throwing)
150
+ *
151
+ * Returns true if address is in valid Ethereum or backend format.
152
+ *
153
+ * @param address Address to check
154
+ * @returns true if valid, false otherwise
155
+ *
156
+ * @example
157
+ * ```typescript
158
+ * const formatter = new AddressFormatter();
159
+ *
160
+ * if (formatter.isValid('0x1234...abc')) {
161
+ * // Process address
162
+ * }
163
+ * ```
164
+ */
165
+ isValid(address: string | undefined | null): address is string;
166
+ /**
167
+ * Validate address format, throwing on invalid
168
+ *
169
+ * @param address Address to validate
170
+ * @param fieldName Field name for error messages (default: 'address')
171
+ * @throws ValidationError if address is invalid
172
+ *
173
+ * @example
174
+ * ```typescript
175
+ * const formatter = new AddressFormatter();
176
+ *
177
+ * formatter.assertValid(userAddress, 'userAddress');
178
+ * // Safe to use userAddress
179
+ * ```
180
+ */
181
+ assertValid(address: string | undefined, fieldName?: string): void;
182
+ /**
183
+ * Detect the format of an address string
184
+ *
185
+ * @param address Address string to check
186
+ * @returns Format type ('ethereum', 'backend', 'client') or null if invalid
187
+ *
188
+ * @example
189
+ * ```typescript
190
+ * const formatter = new AddressFormatter();
191
+ *
192
+ * formatter.detectFormat('0x1234...abc'); // 'ethereum'
193
+ * formatter.detectFormat('eth|1234...abc'); // 'backend'
194
+ * formatter.detectFormat('client|xyz'); // 'client'
195
+ * formatter.detectFormat('invalid'); // null
196
+ * ```
197
+ */
198
+ detectFormat(address: string | undefined): AddressFormatType | null;
199
+ /**
200
+ * Normalize address casing (lowercase for consistency)
201
+ *
202
+ * Ethereum addresses can be checksummed, but we normalize to lowercase
203
+ * for consistency in comparisons and storage.
204
+ *
205
+ * @param address Address to normalize
206
+ * @returns Lowercase address
207
+ *
208
+ * @example
209
+ * ```typescript
210
+ * const formatter = new AddressFormatter();
211
+ *
212
+ * formatter.normalize('0xABCD...DCBA');
213
+ * // Returns: '0xabcd...dcba'
214
+ *
215
+ * formatter.normalize('ETH|ABCD...DCBA');
216
+ * // Returns: 'eth|abcd...dcba'
217
+ * ```
218
+ */
219
+ normalize(address: string | undefined): string | undefined;
220
+ /**
221
+ * Extract hex address from either format
222
+ *
223
+ * Returns just the 40-character hex portion without any prefix.
224
+ *
225
+ * @param address Ethereum or backend format address
226
+ * @returns 40-character hex string (lowercase)
227
+ * @throws ValidationError if address format is invalid
228
+ *
229
+ * @example
230
+ * ```typescript
231
+ * const formatter = new AddressFormatter();
232
+ *
233
+ * formatter.extractHex('0x1234...abc');
234
+ * // Returns: '1234...abc'
235
+ *
236
+ * formatter.extractHex('eth|1234...abc');
237
+ * // Returns: '1234...abc'
238
+ * ```
239
+ */
240
+ extractHex(address: string): string;
241
+ }
242
+ export declare const stripHexPrefix: typeof bridgeStripHexPrefix;
243
+ /**
244
+ * Convert Ethereum address to backend format (function style)
245
+ *
246
+ * @param address Ethereum address
247
+ * @returns Backend format
248
+ * @throws ValidationError if invalid
249
+ */
250
+ export declare function toBackendAddressFormat(address: string): string;
251
+ /**
252
+ * Convert backend address to Ethereum format (function style)
253
+ *
254
+ * @param address Backend format address
255
+ * @returns Ethereum format
256
+ * @throws ValidationError if invalid
257
+ */
258
+ export declare function fromBackendAddressFormat(address: string): string;
259
+ /**
260
+ * Smart address parser (function style)
261
+ *
262
+ * @param address Address to normalize
263
+ * @returns Backend format or undefined
264
+ */
265
+ export declare function normalizeAddressInput(address: string | undefined): AddressFormat | undefined;
266
+ /**
267
+ * Check if address is valid (function style)
268
+ *
269
+ * @param address Address to check
270
+ * @returns true if valid
271
+ */
272
+ export declare function isValidAddress(address: string | undefined): address is string;
273
+ /**
274
+ * Validate address and throw (function style)
275
+ *
276
+ * @param address Address to validate
277
+ * @param fieldName Field name for errors
278
+ * @throws ValidationError if invalid
279
+ */
280
+ export declare function assertValidWalletAddress(address: string | undefined, fieldName?: string): void;
281
+ /**
282
+ * Convert Ethereum address object (from ethers Wallet) to backend format
283
+ *
284
+ * Provides a convenient one-step conversion from ethers Wallet addresses to backend format.
285
+ * Handles both Wallet objects and plain addresses.
286
+ *
287
+ * @param ethAddress Ethereum address with or without 0x prefix, or ethers Wallet object
288
+ * @returns Backend format address (eth|...)
289
+ * @throws ValidationError if address format is invalid
290
+ *
291
+ * @example
292
+ * ```typescript
293
+ * import { Wallet } from 'ethers';
294
+ * import { toBackendAddressFromEthers } from '@/utils/address-formatter';
295
+ *
296
+ * const wallet = new Wallet(privateKey);
297
+ * const backendAddr = toBackendAddressFromEthers(wallet.address);
298
+ * // Returns: 'eth|1234567890abcdef...abcdef'
299
+ *
300
+ * // Also works with plain addresses
301
+ * const result = toBackendAddressFromEthers('0x1234...abc');
302
+ * // Returns: 'eth|1234...abc'
303
+ * ```
304
+ *
305
+ * @since 6.6.0
306
+ */
307
+ export declare function toBackendAddressFromEthers(ethAddress: string | {
308
+ address: string;
309
+ }): string;
310
+ /**
311
+ * Detect the format of an address string (function style)
312
+ *
313
+ * @param address Address to check
314
+ * @returns Format type ('ethereum', 'backend', 'client') or null if invalid
315
+ */
316
+ export declare function detectFormat(address: string | undefined): AddressFormatType | null;
317
+ //# sourceMappingURL=address-formatter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"address-formatter.d.ts","sourceRoot":"","sources":["../../../src/utils/address-formatter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,cAAc,IAAI,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAE3F;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,UAAU,GAAG,SAAS,GAAG,QAAQ,CAAC;AAwBlE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,qBAAa,gBAAgB;IAC3B;;;;;;;;;;;;;;;;;;;OAmBG;IACH,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAyBxC;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IA+BzC;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,aAAa,GAAG,SAAS;IAsBtE;;;;;;;;;;;;;;;;OAgBG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO,IAAI,MAAM;IA4B9D;;;;;;;;;;;;;;OAcG;IACH,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,EAAE,SAAS,GAAE,MAAkB,GAAG,IAAI;IAU7E;;;;;;;;;;;;;;;OAeG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,iBAAiB,GAAG,IAAI;IAwBnE;;;;;;;;;;;;;;;;;;;OAmBG;IACH,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS;IAQ1D;;;;;;;;;;;;;;;;;;;OAmBG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;CAoBpC;AAQD,eAAO,MAAM,cAAc,6BAAuB,CAAC;AAEnD;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE9D;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEhE;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,aAAa,GAAG,SAAS,CAE5F;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,IAAI,MAAM,CAE7E;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,EAAE,SAAS,GAAE,MAAkB,GAAG,IAAI,CAEzG;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAG3F;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,iBAAiB,GAAG,IAAI,CAElF"}
@@ -1 +1 @@
1
- {"version":3,"file":"agent-config.d.ts","sourceRoot":"","sources":["../../../src/utils/agent-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-config.d.ts","sourceRoot":"","sources":["../../../src/utils/agent-config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,268 @@
1
+ /**
2
+ * AmountValidator - Comprehensive token amount validation utility
3
+ *
4
+ * Consolidates amount validation logic scattered across multiple services:
5
+ * - validateNumericString() from validation.ts
6
+ * - Amount range validation patterns
7
+ * - Decimal precision validation
8
+ * - Safe amount parsing and conversion
9
+ *
10
+ * ## Problem Solved
11
+ *
12
+ * Amount validation was duplicated across services:
13
+ * - validation.ts: `validateNumericString()` with inline error messages
14
+ * - GSwapService, BondingCurveService: Duplicate amount range checks
15
+ * - Multiple services: Inconsistent error messages for amount validation
16
+ *
17
+ * This utility provides a cohesive, reusable validation interface.
18
+ *
19
+ * @category Utilities
20
+ * @since 6.5.0
21
+ */
22
+ import BigNumber from 'bignumber.js';
23
+ /**
24
+ * Amount validation configuration
25
+ */
26
+ export interface AmountValidationOptions {
27
+ /**
28
+ * Whether zero amounts are allowed (default: true)
29
+ */
30
+ allowZero?: boolean;
31
+ /**
32
+ * Minimum allowed amount (default: 0)
33
+ */
34
+ minimum?: string | number;
35
+ /**
36
+ * Maximum allowed amount (optional)
37
+ */
38
+ maximum?: string | number;
39
+ /**
40
+ * Maximum decimal places (default: 18)
41
+ */
42
+ maxDecimals?: number;
43
+ /**
44
+ * Custom field name for error messages (default: 'amount')
45
+ */
46
+ fieldName?: string;
47
+ }
48
+ /**
49
+ * AmountValidator - Comprehensive token amount validation
50
+ *
51
+ * Provides consistent, well-documented amount validation across all trading operations.
52
+ *
53
+ * ## Usage Examples
54
+ *
55
+ * ### Basic validation
56
+ * ```typescript
57
+ * const validator = new AmountValidator();
58
+ *
59
+ * // Validate with defaults (positive number)
60
+ * validator.validate('100'); // OK
61
+ * validator.validate('100.50'); // OK
62
+ * validator.validate('0'); // OK (zero allowed by default)
63
+ * validator.validate('abc'); // Throws - not numeric
64
+ * validator.validate('-100'); // Throws - negative
65
+ * ```
66
+ *
67
+ * ### With custom options
68
+ * ```typescript
69
+ * const validator = new AmountValidator();
70
+ *
71
+ * // No zero amounts allowed
72
+ * validator.validate('0', { allowZero: false });
73
+ * // Throws: "amount must be greater than zero"
74
+ *
75
+ * // Range validation
76
+ * validator.validate('50', {
77
+ * minimum: '100',
78
+ * maximum: '1000',
79
+ * fieldName: 'trade amount'
80
+ * });
81
+ * // Throws: "trade amount must be at least 100"
82
+ * ```
83
+ *
84
+ * ### Decimal precision validation
85
+ * ```typescript
86
+ * const validator = new AmountValidator();
87
+ *
88
+ * // Strict decimal precision for USDC (2 decimals)
89
+ * validator.validate('123.456', { maxDecimals: 2, fieldName: 'USDC amount' });
90
+ * // Throws: "USDC amount cannot exceed 2 decimal places"
91
+ * ```
92
+ *
93
+ * ### Safe parsing
94
+ * ```typescript
95
+ * const validator = new AmountValidator();
96
+ *
97
+ * // Parse string amount to BigNumber
98
+ * const amount = validator.parseAmount('123.456');
99
+ * // Returns: BigNumber('123.456')
100
+ *
101
+ * // Parse with default fallback
102
+ * const amount = validator.parseAmount(undefined, '0');
103
+ * // Returns: BigNumber('0')
104
+ * ```
105
+ *
106
+ * @since 6.5.0
107
+ */
108
+ export declare class AmountValidator {
109
+ /**
110
+ * Maximum allowed decimal places for amounts (18 = standard wei precision)
111
+ */
112
+ static readonly MAX_DECIMAL_PLACES = 18;
113
+ /**
114
+ * Minimum positive amount
115
+ */
116
+ static readonly MIN_POSITIVE = "0.00000000000000001";
117
+ /**
118
+ * Validate a numeric string amount
119
+ *
120
+ * Performs comprehensive validation to ensure the string represents a valid,
121
+ * non-negative (or positive) decimal number without edge cases that could
122
+ * cause calculation errors.
123
+ *
124
+ * Rejects:
125
+ * - Empty strings or whitespace-only strings
126
+ * - Non-numeric values (NaN, Infinity, -Infinity)
127
+ * - Scientific notation (e.g., '1e10')
128
+ * - Negative numbers (unless explicitly allowed)
129
+ * - Numbers exceeding maximum decimal places
130
+ * - Numbers outside specified min/max range
131
+ * - Invalid number formats
132
+ *
133
+ * @param amount The string amount to validate
134
+ * @param options Validation options (optional)
135
+ * @throws ValidationError if validation fails
136
+ *
137
+ * @example Basic validation
138
+ * ```typescript
139
+ * const validator = new AmountValidator();
140
+ *
141
+ * validator.validate('100.50', { fieldName: 'amount' }); // OK
142
+ * validator.validate('0', { fieldName: 'amount' }); // OK (zero allowed)
143
+ * validator.validate(' ', { fieldName: 'amount' }); // Throws: whitespace-only
144
+ * validator.validate('1e10', { fieldName: 'amount' }); // Throws: scientific notation
145
+ * validator.validate('-50', { fieldName: 'amount' }); // Throws: negative
146
+ * ```
147
+ *
148
+ * @example With range validation
149
+ * ```typescript
150
+ * const validator = new AmountValidator();
151
+ *
152
+ * validator.validate('500', {
153
+ * fieldName: 'stake amount',
154
+ * minimum: '100',
155
+ * maximum: '1000'
156
+ * }); // OK
157
+ *
158
+ * validator.validate('50', {
159
+ * fieldName: 'stake amount',
160
+ * minimum: '100'
161
+ * }); // Throws: below minimum
162
+ * ```
163
+ *
164
+ * @example Token-specific precision
165
+ * ```typescript
166
+ * const validator = new AmountValidator();
167
+ *
168
+ * // GALA has 8 decimals
169
+ * validator.validate('123.12345678', {
170
+ * fieldName: 'GALA amount',
171
+ * maxDecimals: 8
172
+ * }); // OK
173
+ *
174
+ * // USDC has 6 decimals
175
+ * validator.validate('123.1234567', {
176
+ * fieldName: 'USDC amount',
177
+ * maxDecimals: 6
178
+ * }); // Throws: exceeds precision
179
+ * ```
180
+ */
181
+ validate(amount: string, options?: AmountValidationOptions): void;
182
+ /**
183
+ * Parse a string amount to BigNumber with fallback
184
+ *
185
+ * Safe parsing that applies a fallback value if input is null/undefined/invalid.
186
+ * Delegates to toBigNumber from bignumber-helpers for consistency.
187
+ *
188
+ * @param amount Amount string to parse
189
+ * @param fallback Fallback value if amount is invalid (default: '0')
190
+ * @returns BigNumber instance
191
+ *
192
+ * @example
193
+ * ```typescript
194
+ * const validator = new AmountValidator();
195
+ *
196
+ * const amount1 = validator.parseAmount('123.45'); // BigNumber('123.45')
197
+ * const amount2 = validator.parseAmount(undefined); // BigNumber('0')
198
+ * const amount3 = validator.parseAmount(null, '100'); // BigNumber('100')
199
+ * ```
200
+ */
201
+ parseAmount(amount: string | undefined | null, fallback?: string | number): BigNumber;
202
+ /**
203
+ * Check if amount is valid without throwing
204
+ *
205
+ * @param amount Amount string to check
206
+ * @param options Validation options (optional)
207
+ * @returns true if valid, false otherwise
208
+ *
209
+ * @example
210
+ * ```typescript
211
+ * const validator = new AmountValidator();
212
+ *
213
+ * if (validator.isValid('100.50')) {
214
+ * // Process amount
215
+ * } else {
216
+ * // Show error to user
217
+ * }
218
+ * ```
219
+ */
220
+ isValid(amount: string | undefined | null, options?: AmountValidationOptions): boolean;
221
+ /**
222
+ * Format amount as string with specific decimal places
223
+ *
224
+ * Removes trailing zeros and unnecessary decimal point.
225
+ * Delegates to toBigNumberFixed from bignumber-helpers for consistency.
226
+ *
227
+ * @param amount Amount string or BigNumber
228
+ * @param decimals Number of decimal places (default: auto)
229
+ * @returns Formatted string
230
+ *
231
+ * @example
232
+ * ```typescript
233
+ * const validator = new AmountValidator();
234
+ *
235
+ * validator.formatAmount('100.5000'); // "100.5"
236
+ * validator.formatAmount('100', 2); // "100"
237
+ * validator.formatAmount('100.123456', 2); // "100.12"
238
+ * ```
239
+ */
240
+ formatAmount(amount: string | BigNumber, decimals?: number): string;
241
+ /**
242
+ * Ensure amount is within valid range
243
+ *
244
+ * Clamps amount between minimum and maximum (if specified).
245
+ * Uses toBigNumber from bignumber-helpers for consistent parsing.
246
+ *
247
+ * @param amount Amount to clamp
248
+ * @param minimum Minimum value
249
+ * @param maximum Maximum value
250
+ * @returns Clamped amount as string
251
+ *
252
+ * @example
253
+ * ```typescript
254
+ * const validator = new AmountValidator();
255
+ *
256
+ * const clamped = validator.clampAmount('500', '100', '1000');
257
+ * // Returns: "500"
258
+ *
259
+ * const clamped2 = validator.clampAmount('50', '100', '1000');
260
+ * // Returns: "100" (below minimum, clamped)
261
+ *
262
+ * const clamped3 = validator.clampAmount('2000', '100', '1000');
263
+ * // Returns: "1000" (above maximum, clamped)
264
+ * ```
265
+ */
266
+ clampAmount(amount: string | number, minimum: string | number, maximum: string | number): string;
267
+ }
268
+ //# sourceMappingURL=amount-validator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"amount-validator.d.ts","sourceRoot":"","sources":["../../../src/utils/amount-validator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,SAAS,MAAM,cAAc,CAAC;AAYrC;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE1B;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE1B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AACH,qBAAa,eAAe;IAC1B;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,kBAAkB,MAAM;IAExC;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,YAAY,yBAAyB;IAErD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+DG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,uBAA4B,GAAG,IAAI;IAoGrE;;;;;;;;;;;;;;;;;;OAkBG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,EAAE,QAAQ,GAAE,MAAM,GAAG,MAAY,GAAG,SAAS;IAK1F;;;;;;;;;;;;;;;;;OAiBG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,EAAE,OAAO,GAAE,uBAA4B,GAAG,OAAO;IAY1F;;;;;;;;;;;;;;;;;;OAkBG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM;IAKnE;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM;CAcjG"}