@chainstream-io/sdk 0.1.10 → 0.1.12

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 (395) hide show
  1. package/dist/WatchlistApi-iO0m0ez9.d.cts +7581 -0
  2. package/dist/WatchlistApi-iO0m0ez9.d.ts +7581 -0
  3. package/dist/index-BkJK0-d_.d.ts +457 -0
  4. package/dist/index-DNVVUaIe.d.cts +457 -0
  5. package/dist/index.cjs +6429 -0
  6. package/dist/index.cjs.map +1 -0
  7. package/dist/index.d.cts +2 -0
  8. package/dist/index.d.ts +2 -40
  9. package/dist/index.mjs +6403 -0
  10. package/dist/index.mjs.map +1 -0
  11. package/dist/openapi/index.cjs +9874 -0
  12. package/dist/openapi/index.cjs.map +1 -0
  13. package/dist/openapi/index.d.cts +1340 -0
  14. package/dist/openapi/index.d.ts +1340 -3
  15. package/dist/openapi/index.mjs +9318 -0
  16. package/dist/openapi/index.mjs.map +1 -0
  17. package/dist/stream/index.cjs +1403 -0
  18. package/dist/stream/index.cjs.map +1 -0
  19. package/dist/stream/{stream.fields.d.ts → index.d.cts} +12 -7
  20. package/dist/stream/index.d.ts +45 -3
  21. package/dist/stream/index.mjs +1369 -0
  22. package/dist/stream/index.mjs.map +1 -0
  23. package/package.json +15 -13
  24. package/dist/esm/index.d.ts +0 -40
  25. package/dist/esm/index.js +0 -125
  26. package/dist/esm/openapi/apis/BlockchainApi.d.ts +0 -57
  27. package/dist/esm/openapi/apis/BlockchainApi.js +0 -101
  28. package/dist/esm/openapi/apis/DefiSolanaMoonshotApi.d.ts +0 -44
  29. package/dist/esm/openapi/apis/DefiSolanaMoonshotApi.js +0 -92
  30. package/dist/esm/openapi/apis/DefiSolanaPumpfunApi.d.ts +0 -31
  31. package/dist/esm/openapi/apis/DefiSolanaPumpfunApi.js +0 -56
  32. package/dist/esm/openapi/apis/DexApi.d.ts +0 -166
  33. package/dist/esm/openapi/apis/DexApi.js +0 -318
  34. package/dist/esm/openapi/apis/DexPoolApi.d.ts +0 -48
  35. package/dist/esm/openapi/apis/DexPoolApi.js +0 -74
  36. package/dist/esm/openapi/apis/EndpointApi.d.ts +0 -119
  37. package/dist/esm/openapi/apis/EndpointApi.js +0 -279
  38. package/dist/esm/openapi/apis/IpfsApi.d.ts +0 -27
  39. package/dist/esm/openapi/apis/IpfsApi.js +0 -55
  40. package/dist/esm/openapi/apis/JobsApi.d.ts +0 -44
  41. package/dist/esm/openapi/apis/JobsApi.js +0 -90
  42. package/dist/esm/openapi/apis/RankingApi.d.ts +0 -565
  43. package/dist/esm/openapi/apis/RankingApi.js +0 -739
  44. package/dist/esm/openapi/apis/RedPacketApi.d.ts +0 -202
  45. package/dist/esm/openapi/apis/RedPacketApi.js +0 -413
  46. package/dist/esm/openapi/apis/TokenApi.d.ts +0 -966
  47. package/dist/esm/openapi/apis/TokenApi.js +0 -1748
  48. package/dist/esm/openapi/apis/TradeApi.d.ts +0 -278
  49. package/dist/esm/openapi/apis/TradeApi.js +0 -425
  50. package/dist/esm/openapi/apis/TransactionApi.d.ts +0 -32
  51. package/dist/esm/openapi/apis/TransactionApi.js +0 -60
  52. package/dist/esm/openapi/apis/WalletApi.d.ts +0 -141
  53. package/dist/esm/openapi/apis/WalletApi.js +0 -247
  54. package/dist/esm/openapi/apis/WatchlistApi.d.ts +0 -48
  55. package/dist/esm/openapi/apis/WatchlistApi.js +0 -74
  56. package/dist/esm/openapi/apis/index.d.ts +0 -15
  57. package/dist/esm/openapi/apis/index.js +0 -17
  58. package/dist/esm/openapi/index.d.ts +0 -3
  59. package/dist/esm/openapi/index.js +0 -5
  60. package/dist/esm/openapi/models/BlockchainDTO.d.ts +0 -50
  61. package/dist/esm/openapi/models/BlockchainDTO.js +0 -55
  62. package/dist/esm/openapi/models/BlockchainLatestBlockDTO.d.ts +0 -38
  63. package/dist/esm/openapi/models/BlockchainLatestBlockDTO.js +0 -47
  64. package/dist/esm/openapi/models/BooleanResultDTO.d.ts +0 -32
  65. package/dist/esm/openapi/models/BooleanResultDTO.js +0 -43
  66. package/dist/esm/openapi/models/CalculatePnlInput.d.ts +0 -32
  67. package/dist/esm/openapi/models/CalculatePnlInput.js +0 -41
  68. package/dist/esm/openapi/models/Candle.d.ts +0 -69
  69. package/dist/esm/openapi/models/Candle.js +0 -68
  70. package/dist/esm/openapi/models/ClaimRedPacketInput.d.ts +0 -50
  71. package/dist/esm/openapi/models/ClaimRedPacketInput.js +0 -49
  72. package/dist/esm/openapi/models/CreateEndpointInput.d.ts +0 -74
  73. package/dist/esm/openapi/models/CreateEndpointInput.js +0 -55
  74. package/dist/esm/openapi/models/CreateRedPacketInput.d.ts +0 -74
  75. package/dist/esm/openapi/models/CreateRedPacketInput.js +0 -61
  76. package/dist/esm/openapi/models/CreateRedPacketReply.d.ts +0 -38
  77. package/dist/esm/openapi/models/CreateRedPacketReply.js +0 -47
  78. package/dist/esm/openapi/models/CreateTokenInput.d.ts +0 -85
  79. package/dist/esm/openapi/models/CreateTokenInput.js +0 -73
  80. package/dist/esm/openapi/models/CreateTokenReply.d.ts +0 -38
  81. package/dist/esm/openapi/models/CreateTokenReply.js +0 -47
  82. package/dist/esm/openapi/models/DexDTO.d.ts +0 -50
  83. package/dist/esm/openapi/models/DexDTO.js +0 -49
  84. package/dist/esm/openapi/models/DexPage.d.ts +0 -63
  85. package/dist/esm/openapi/models/DexPage.js +0 -54
  86. package/dist/esm/openapi/models/DexPoolDTO.d.ts +0 -86
  87. package/dist/esm/openapi/models/DexPoolDTO.js +0 -67
  88. package/dist/esm/openapi/models/EndpointListResponse.d.ts +0 -51
  89. package/dist/esm/openapi/models/EndpointListResponse.js +0 -48
  90. package/dist/esm/openapi/models/EndpointOperationResponse.d.ts +0 -32
  91. package/dist/esm/openapi/models/EndpointOperationResponse.js +0 -41
  92. package/dist/esm/openapi/models/EndpointResponse.d.ts +0 -92
  93. package/dist/esm/openapi/models/EndpointResponse.js +0 -61
  94. package/dist/esm/openapi/models/EndpointSecretResponse.d.ts +0 -32
  95. package/dist/esm/openapi/models/EndpointSecretResponse.js +0 -41
  96. package/dist/esm/openapi/models/FilterCondition.d.ts +0 -95
  97. package/dist/esm/openapi/models/FilterCondition.js +0 -95
  98. package/dist/esm/openapi/models/GainersAndLosersDTO.d.ts +0 -50
  99. package/dist/esm/openapi/models/GainersAndLosersDTO.js +0 -55
  100. package/dist/esm/openapi/models/GainersAndLosersPage.d.ts +0 -63
  101. package/dist/esm/openapi/models/GainersAndLosersPage.js +0 -54
  102. package/dist/esm/openapi/models/JobDTO.d.ts +0 -38
  103. package/dist/esm/openapi/models/JobDTO.js +0 -47
  104. package/dist/esm/openapi/models/JobStreamingDTO.d.ts +0 -38
  105. package/dist/esm/openapi/models/JobStreamingDTO.js +0 -47
  106. package/dist/esm/openapi/models/Link.d.ts +0 -48
  107. package/dist/esm/openapi/models/Link.js +0 -56
  108. package/dist/esm/openapi/models/MoonshotCreateTokenInput.d.ts +0 -109
  109. package/dist/esm/openapi/models/MoonshotCreateTokenInput.js +0 -94
  110. package/dist/esm/openapi/models/MoonshotCreateTokenReply.d.ts +0 -38
  111. package/dist/esm/openapi/models/MoonshotCreateTokenReply.js +0 -47
  112. package/dist/esm/openapi/models/MoonshotSubmitCreateToken200Response.d.ts +0 -38
  113. package/dist/esm/openapi/models/MoonshotSubmitCreateToken200Response.js +0 -43
  114. package/dist/esm/openapi/models/MoonshotSubmitCreateTokenInput.d.ts +0 -38
  115. package/dist/esm/openapi/models/MoonshotSubmitCreateTokenInput.js +0 -45
  116. package/dist/esm/openapi/models/PumpCreateTokenInput.d.ts +0 -113
  117. package/dist/esm/openapi/models/PumpCreateTokenInput.js +0 -92
  118. package/dist/esm/openapi/models/PumpCreateTokenReply.d.ts +0 -38
  119. package/dist/esm/openapi/models/PumpCreateTokenReply.js +0 -45
  120. package/dist/esm/openapi/models/QuoteResponse.d.ts +0 -62
  121. package/dist/esm/openapi/models/QuoteResponse.js +0 -51
  122. package/dist/esm/openapi/models/RedPacketClaimDTO.d.ts +0 -90
  123. package/dist/esm/openapi/models/RedPacketClaimDTO.js +0 -86
  124. package/dist/esm/openapi/models/RedPacketClaimsPage.d.ts +0 -57
  125. package/dist/esm/openapi/models/RedPacketClaimsPage.js +0 -60
  126. package/dist/esm/openapi/models/RedPacketDTO.d.ts +0 -144
  127. package/dist/esm/openapi/models/RedPacketDTO.js +0 -122
  128. package/dist/esm/openapi/models/RedPacketReply.d.ts +0 -32
  129. package/dist/esm/openapi/models/RedPacketReply.js +0 -43
  130. package/dist/esm/openapi/models/RedPacketSendTxInput.d.ts +0 -32
  131. package/dist/esm/openapi/models/RedPacketSendTxInput.js +0 -43
  132. package/dist/esm/openapi/models/RedPacketSendTxResponse.d.ts +0 -32
  133. package/dist/esm/openapi/models/RedPacketSendTxResponse.js +0 -43
  134. package/dist/esm/openapi/models/RedPacketsPage.d.ts +0 -57
  135. package/dist/esm/openapi/models/RedPacketsPage.js +0 -60
  136. package/dist/esm/openapi/models/Resolution.d.ts +0 -33
  137. package/dist/esm/openapi/models/Resolution.js +0 -51
  138. package/dist/esm/openapi/models/SendTxInput.d.ts +0 -52
  139. package/dist/esm/openapi/models/SendTxInput.js +0 -54
  140. package/dist/esm/openapi/models/SendTxResponse.d.ts +0 -44
  141. package/dist/esm/openapi/models/SendTxResponse.js +0 -51
  142. package/dist/esm/openapi/models/SwapInput.d.ts +0 -99
  143. package/dist/esm/openapi/models/SwapInput.js +0 -84
  144. package/dist/esm/openapi/models/SwapReply.d.ts +0 -38
  145. package/dist/esm/openapi/models/SwapReply.js +0 -47
  146. package/dist/esm/openapi/models/SwapRouteInput.d.ts +0 -120
  147. package/dist/esm/openapi/models/SwapRouteInput.js +0 -89
  148. package/dist/esm/openapi/models/SwapRouteResponse.d.ts +0 -51
  149. package/dist/esm/openapi/models/SwapRouteResponse.js +0 -56
  150. package/dist/esm/openapi/models/Token.d.ts +0 -140
  151. package/dist/esm/openapi/models/Token.js +0 -95
  152. package/dist/esm/openapi/models/TokenCreationDTO.d.ts +0 -77
  153. package/dist/esm/openapi/models/TokenCreationDTO.js +0 -73
  154. package/dist/esm/openapi/models/TokenCreationPage.d.ts +0 -63
  155. package/dist/esm/openapi/models/TokenCreationPage.js +0 -54
  156. package/dist/esm/openapi/models/TokenCreatorsDTO.d.ts +0 -44
  157. package/dist/esm/openapi/models/TokenCreatorsDTO.js +0 -45
  158. package/dist/esm/openapi/models/TokenExtraDTO.d.ts +0 -152
  159. package/dist/esm/openapi/models/TokenExtraDTO.js +0 -81
  160. package/dist/esm/openapi/models/TokenHolder.d.ts +0 -50
  161. package/dist/esm/openapi/models/TokenHolder.js +0 -55
  162. package/dist/esm/openapi/models/TokenHolderPage.d.ts +0 -63
  163. package/dist/esm/openapi/models/TokenHolderPage.js +0 -54
  164. package/dist/esm/openapi/models/TokenListPage.d.ts +0 -63
  165. package/dist/esm/openapi/models/TokenListPage.js +0 -54
  166. package/dist/esm/openapi/models/TokenMarketData.d.ts +0 -122
  167. package/dist/esm/openapi/models/TokenMarketData.js +0 -81
  168. package/dist/esm/openapi/models/TokenMetadata.d.ts +0 -107
  169. package/dist/esm/openapi/models/TokenMetadata.js +0 -78
  170. package/dist/esm/openapi/models/TokenPage.d.ts +0 -69
  171. package/dist/esm/openapi/models/TokenPage.js +0 -56
  172. package/dist/esm/openapi/models/TokenPriceDTO.d.ts +0 -50
  173. package/dist/esm/openapi/models/TokenPriceDTO.js +0 -55
  174. package/dist/esm/openapi/models/TokenPricePage.d.ts +0 -63
  175. package/dist/esm/openapi/models/TokenPricePage.js +0 -54
  176. package/dist/esm/openapi/models/TokenSocialMediasDTO.d.ts +0 -104
  177. package/dist/esm/openapi/models/TokenSocialMediasDTO.js +0 -65
  178. package/dist/esm/openapi/models/TokenStat.d.ts +0 -788
  179. package/dist/esm/openapi/models/TokenStat.js +0 -451
  180. package/dist/esm/openapi/models/TopTradersDTO.d.ts +0 -98
  181. package/dist/esm/openapi/models/TopTradersDTO.js +0 -85
  182. package/dist/esm/openapi/models/TopTradersPage.d.ts +0 -63
  183. package/dist/esm/openapi/models/TopTradersPage.js +0 -54
  184. package/dist/esm/openapi/models/TradeDetailDTO.d.ts +0 -176
  185. package/dist/esm/openapi/models/TradeDetailDTO.js +0 -139
  186. package/dist/esm/openapi/models/TradeEvent.d.ts +0 -105
  187. package/dist/esm/openapi/models/TradeEvent.js +0 -92
  188. package/dist/esm/openapi/models/TradePage.d.ts +0 -63
  189. package/dist/esm/openapi/models/TradePage.js +0 -54
  190. package/dist/esm/openapi/models/TradeType.d.ts +0 -25
  191. package/dist/esm/openapi/models/TradeType.js +0 -43
  192. package/dist/esm/openapi/models/UpdateEndpointInput.d.ts +0 -80
  193. package/dist/esm/openapi/models/UpdateEndpointInput.js +0 -57
  194. package/dist/esm/openapi/models/WalletBalanceDetailDTO.d.ts +0 -176
  195. package/dist/esm/openapi/models/WalletBalanceDetailDTO.js +0 -139
  196. package/dist/esm/openapi/models/WalletBalancesDTO.d.ts +0 -45
  197. package/dist/esm/openapi/models/WalletBalancesDTO.js +0 -52
  198. package/dist/esm/openapi/models/WalletPnlDTO.d.ts +0 -164
  199. package/dist/esm/openapi/models/WalletPnlDTO.js +0 -131
  200. package/dist/esm/openapi/models/index.d.ts +0 -70
  201. package/dist/esm/openapi/models/index.js +0 -72
  202. package/dist/esm/openapi/runtime.d.ts +0 -184
  203. package/dist/esm/openapi/runtime.js +0 -333
  204. package/dist/esm/stream/index.d.ts +0 -3
  205. package/dist/esm/stream/index.js +0 -3
  206. package/dist/esm/stream/stream.d.ts +0 -142
  207. package/dist/esm/stream/stream.fields.d.ts +0 -40
  208. package/dist/esm/stream/stream.fields.js +0 -242
  209. package/dist/esm/stream/stream.js +0 -988
  210. package/dist/esm/stream/stream.model.d.ts +0 -275
  211. package/dist/esm/stream/stream.model.js +0 -37
  212. package/dist/index.js +0 -125
  213. package/dist/openapi/apis/BlockchainApi.d.ts +0 -57
  214. package/dist/openapi/apis/BlockchainApi.js +0 -101
  215. package/dist/openapi/apis/DefiSolanaMoonshotApi.d.ts +0 -44
  216. package/dist/openapi/apis/DefiSolanaMoonshotApi.js +0 -92
  217. package/dist/openapi/apis/DefiSolanaPumpfunApi.d.ts +0 -31
  218. package/dist/openapi/apis/DefiSolanaPumpfunApi.js +0 -56
  219. package/dist/openapi/apis/DexApi.d.ts +0 -166
  220. package/dist/openapi/apis/DexApi.js +0 -318
  221. package/dist/openapi/apis/DexPoolApi.d.ts +0 -48
  222. package/dist/openapi/apis/DexPoolApi.js +0 -74
  223. package/dist/openapi/apis/EndpointApi.d.ts +0 -119
  224. package/dist/openapi/apis/EndpointApi.js +0 -279
  225. package/dist/openapi/apis/IpfsApi.d.ts +0 -27
  226. package/dist/openapi/apis/IpfsApi.js +0 -55
  227. package/dist/openapi/apis/JobsApi.d.ts +0 -44
  228. package/dist/openapi/apis/JobsApi.js +0 -90
  229. package/dist/openapi/apis/RankingApi.d.ts +0 -565
  230. package/dist/openapi/apis/RankingApi.js +0 -739
  231. package/dist/openapi/apis/RedPacketApi.d.ts +0 -202
  232. package/dist/openapi/apis/RedPacketApi.js +0 -413
  233. package/dist/openapi/apis/TokenApi.d.ts +0 -966
  234. package/dist/openapi/apis/TokenApi.js +0 -1748
  235. package/dist/openapi/apis/TradeApi.d.ts +0 -278
  236. package/dist/openapi/apis/TradeApi.js +0 -425
  237. package/dist/openapi/apis/TransactionApi.d.ts +0 -32
  238. package/dist/openapi/apis/TransactionApi.js +0 -60
  239. package/dist/openapi/apis/WalletApi.d.ts +0 -141
  240. package/dist/openapi/apis/WalletApi.js +0 -247
  241. package/dist/openapi/apis/WatchlistApi.d.ts +0 -48
  242. package/dist/openapi/apis/WatchlistApi.js +0 -74
  243. package/dist/openapi/apis/index.d.ts +0 -15
  244. package/dist/openapi/apis/index.js +0 -17
  245. package/dist/openapi/index.js +0 -5
  246. package/dist/openapi/models/BlockchainDTO.d.ts +0 -50
  247. package/dist/openapi/models/BlockchainDTO.js +0 -55
  248. package/dist/openapi/models/BlockchainLatestBlockDTO.d.ts +0 -38
  249. package/dist/openapi/models/BlockchainLatestBlockDTO.js +0 -47
  250. package/dist/openapi/models/BooleanResultDTO.d.ts +0 -32
  251. package/dist/openapi/models/BooleanResultDTO.js +0 -43
  252. package/dist/openapi/models/CalculatePnlInput.d.ts +0 -32
  253. package/dist/openapi/models/CalculatePnlInput.js +0 -41
  254. package/dist/openapi/models/Candle.d.ts +0 -69
  255. package/dist/openapi/models/Candle.js +0 -68
  256. package/dist/openapi/models/ClaimRedPacketInput.d.ts +0 -50
  257. package/dist/openapi/models/ClaimRedPacketInput.js +0 -49
  258. package/dist/openapi/models/CreateEndpointInput.d.ts +0 -74
  259. package/dist/openapi/models/CreateEndpointInput.js +0 -55
  260. package/dist/openapi/models/CreateRedPacketInput.d.ts +0 -74
  261. package/dist/openapi/models/CreateRedPacketInput.js +0 -61
  262. package/dist/openapi/models/CreateRedPacketReply.d.ts +0 -38
  263. package/dist/openapi/models/CreateRedPacketReply.js +0 -47
  264. package/dist/openapi/models/CreateTokenInput.d.ts +0 -85
  265. package/dist/openapi/models/CreateTokenInput.js +0 -73
  266. package/dist/openapi/models/CreateTokenReply.d.ts +0 -38
  267. package/dist/openapi/models/CreateTokenReply.js +0 -47
  268. package/dist/openapi/models/DexDTO.d.ts +0 -50
  269. package/dist/openapi/models/DexDTO.js +0 -49
  270. package/dist/openapi/models/DexPage.d.ts +0 -63
  271. package/dist/openapi/models/DexPage.js +0 -54
  272. package/dist/openapi/models/DexPoolDTO.d.ts +0 -86
  273. package/dist/openapi/models/DexPoolDTO.js +0 -67
  274. package/dist/openapi/models/EndpointListResponse.d.ts +0 -51
  275. package/dist/openapi/models/EndpointListResponse.js +0 -48
  276. package/dist/openapi/models/EndpointOperationResponse.d.ts +0 -32
  277. package/dist/openapi/models/EndpointOperationResponse.js +0 -41
  278. package/dist/openapi/models/EndpointResponse.d.ts +0 -92
  279. package/dist/openapi/models/EndpointResponse.js +0 -61
  280. package/dist/openapi/models/EndpointSecretResponse.d.ts +0 -32
  281. package/dist/openapi/models/EndpointSecretResponse.js +0 -41
  282. package/dist/openapi/models/FilterCondition.d.ts +0 -95
  283. package/dist/openapi/models/FilterCondition.js +0 -95
  284. package/dist/openapi/models/GainersAndLosersDTO.d.ts +0 -50
  285. package/dist/openapi/models/GainersAndLosersDTO.js +0 -55
  286. package/dist/openapi/models/GainersAndLosersPage.d.ts +0 -63
  287. package/dist/openapi/models/GainersAndLosersPage.js +0 -54
  288. package/dist/openapi/models/JobDTO.d.ts +0 -38
  289. package/dist/openapi/models/JobDTO.js +0 -47
  290. package/dist/openapi/models/JobStreamingDTO.d.ts +0 -38
  291. package/dist/openapi/models/JobStreamingDTO.js +0 -47
  292. package/dist/openapi/models/Link.d.ts +0 -48
  293. package/dist/openapi/models/Link.js +0 -56
  294. package/dist/openapi/models/MoonshotCreateTokenInput.d.ts +0 -109
  295. package/dist/openapi/models/MoonshotCreateTokenInput.js +0 -94
  296. package/dist/openapi/models/MoonshotCreateTokenReply.d.ts +0 -38
  297. package/dist/openapi/models/MoonshotCreateTokenReply.js +0 -47
  298. package/dist/openapi/models/MoonshotSubmitCreateToken200Response.d.ts +0 -38
  299. package/dist/openapi/models/MoonshotSubmitCreateToken200Response.js +0 -43
  300. package/dist/openapi/models/MoonshotSubmitCreateTokenInput.d.ts +0 -38
  301. package/dist/openapi/models/MoonshotSubmitCreateTokenInput.js +0 -45
  302. package/dist/openapi/models/PumpCreateTokenInput.d.ts +0 -113
  303. package/dist/openapi/models/PumpCreateTokenInput.js +0 -92
  304. package/dist/openapi/models/PumpCreateTokenReply.d.ts +0 -38
  305. package/dist/openapi/models/PumpCreateTokenReply.js +0 -45
  306. package/dist/openapi/models/QuoteResponse.d.ts +0 -62
  307. package/dist/openapi/models/QuoteResponse.js +0 -51
  308. package/dist/openapi/models/RedPacketClaimDTO.d.ts +0 -90
  309. package/dist/openapi/models/RedPacketClaimDTO.js +0 -86
  310. package/dist/openapi/models/RedPacketClaimsPage.d.ts +0 -57
  311. package/dist/openapi/models/RedPacketClaimsPage.js +0 -60
  312. package/dist/openapi/models/RedPacketDTO.d.ts +0 -144
  313. package/dist/openapi/models/RedPacketDTO.js +0 -122
  314. package/dist/openapi/models/RedPacketReply.d.ts +0 -32
  315. package/dist/openapi/models/RedPacketReply.js +0 -43
  316. package/dist/openapi/models/RedPacketSendTxInput.d.ts +0 -32
  317. package/dist/openapi/models/RedPacketSendTxInput.js +0 -43
  318. package/dist/openapi/models/RedPacketSendTxResponse.d.ts +0 -32
  319. package/dist/openapi/models/RedPacketSendTxResponse.js +0 -43
  320. package/dist/openapi/models/RedPacketsPage.d.ts +0 -57
  321. package/dist/openapi/models/RedPacketsPage.js +0 -60
  322. package/dist/openapi/models/Resolution.d.ts +0 -33
  323. package/dist/openapi/models/Resolution.js +0 -51
  324. package/dist/openapi/models/SendTxInput.d.ts +0 -52
  325. package/dist/openapi/models/SendTxInput.js +0 -54
  326. package/dist/openapi/models/SendTxResponse.d.ts +0 -44
  327. package/dist/openapi/models/SendTxResponse.js +0 -51
  328. package/dist/openapi/models/SwapInput.d.ts +0 -99
  329. package/dist/openapi/models/SwapInput.js +0 -84
  330. package/dist/openapi/models/SwapReply.d.ts +0 -38
  331. package/dist/openapi/models/SwapReply.js +0 -47
  332. package/dist/openapi/models/SwapRouteInput.d.ts +0 -120
  333. package/dist/openapi/models/SwapRouteInput.js +0 -89
  334. package/dist/openapi/models/SwapRouteResponse.d.ts +0 -51
  335. package/dist/openapi/models/SwapRouteResponse.js +0 -56
  336. package/dist/openapi/models/Token.d.ts +0 -140
  337. package/dist/openapi/models/Token.js +0 -95
  338. package/dist/openapi/models/TokenCreationDTO.d.ts +0 -77
  339. package/dist/openapi/models/TokenCreationDTO.js +0 -73
  340. package/dist/openapi/models/TokenCreationPage.d.ts +0 -63
  341. package/dist/openapi/models/TokenCreationPage.js +0 -54
  342. package/dist/openapi/models/TokenCreatorsDTO.d.ts +0 -44
  343. package/dist/openapi/models/TokenCreatorsDTO.js +0 -45
  344. package/dist/openapi/models/TokenExtraDTO.d.ts +0 -152
  345. package/dist/openapi/models/TokenExtraDTO.js +0 -81
  346. package/dist/openapi/models/TokenHolder.d.ts +0 -50
  347. package/dist/openapi/models/TokenHolder.js +0 -55
  348. package/dist/openapi/models/TokenHolderPage.d.ts +0 -63
  349. package/dist/openapi/models/TokenHolderPage.js +0 -54
  350. package/dist/openapi/models/TokenListPage.d.ts +0 -63
  351. package/dist/openapi/models/TokenListPage.js +0 -54
  352. package/dist/openapi/models/TokenMarketData.d.ts +0 -122
  353. package/dist/openapi/models/TokenMarketData.js +0 -81
  354. package/dist/openapi/models/TokenMetadata.d.ts +0 -107
  355. package/dist/openapi/models/TokenMetadata.js +0 -78
  356. package/dist/openapi/models/TokenPage.d.ts +0 -69
  357. package/dist/openapi/models/TokenPage.js +0 -56
  358. package/dist/openapi/models/TokenPriceDTO.d.ts +0 -50
  359. package/dist/openapi/models/TokenPriceDTO.js +0 -55
  360. package/dist/openapi/models/TokenPricePage.d.ts +0 -63
  361. package/dist/openapi/models/TokenPricePage.js +0 -54
  362. package/dist/openapi/models/TokenSocialMediasDTO.d.ts +0 -104
  363. package/dist/openapi/models/TokenSocialMediasDTO.js +0 -65
  364. package/dist/openapi/models/TokenStat.d.ts +0 -788
  365. package/dist/openapi/models/TokenStat.js +0 -451
  366. package/dist/openapi/models/TopTradersDTO.d.ts +0 -98
  367. package/dist/openapi/models/TopTradersDTO.js +0 -85
  368. package/dist/openapi/models/TopTradersPage.d.ts +0 -63
  369. package/dist/openapi/models/TopTradersPage.js +0 -54
  370. package/dist/openapi/models/TradeDetailDTO.d.ts +0 -176
  371. package/dist/openapi/models/TradeDetailDTO.js +0 -139
  372. package/dist/openapi/models/TradeEvent.d.ts +0 -105
  373. package/dist/openapi/models/TradeEvent.js +0 -92
  374. package/dist/openapi/models/TradePage.d.ts +0 -63
  375. package/dist/openapi/models/TradePage.js +0 -54
  376. package/dist/openapi/models/TradeType.d.ts +0 -25
  377. package/dist/openapi/models/TradeType.js +0 -43
  378. package/dist/openapi/models/UpdateEndpointInput.d.ts +0 -80
  379. package/dist/openapi/models/UpdateEndpointInput.js +0 -57
  380. package/dist/openapi/models/WalletBalanceDetailDTO.d.ts +0 -176
  381. package/dist/openapi/models/WalletBalanceDetailDTO.js +0 -139
  382. package/dist/openapi/models/WalletBalancesDTO.d.ts +0 -45
  383. package/dist/openapi/models/WalletBalancesDTO.js +0 -52
  384. package/dist/openapi/models/WalletPnlDTO.d.ts +0 -164
  385. package/dist/openapi/models/WalletPnlDTO.js +0 -131
  386. package/dist/openapi/models/index.d.ts +0 -70
  387. package/dist/openapi/models/index.js +0 -72
  388. package/dist/openapi/runtime.d.ts +0 -184
  389. package/dist/openapi/runtime.js +0 -333
  390. package/dist/stream/index.js +0 -3
  391. package/dist/stream/stream.d.ts +0 -142
  392. package/dist/stream/stream.fields.js +0 -242
  393. package/dist/stream/stream.js +0 -988
  394. package/dist/stream/stream.model.d.ts +0 -275
  395. package/dist/stream/stream.model.js +0 -37
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/stream/stream.ts","../../src/stream/stream.fields.ts","../../src/stream/stream.model.ts"],"sourcesContent":["import { Centrifuge, ConnectionTokenContext } from \"@chainstream-io/centrifuge\";\nimport { DexRequestContext } from \"..\";\nimport { Resolution } from \"../openapi\";\nimport {\n DexPoolBalance,\n NewToken,\n TokenMetadata,\n TokenHolder,\n TokenStat,\n TokenLiquidity,\n WalletBalance,\n TokenSupply,\n WalletPnl,\n ChannelType,\n TokenCandle,\n TradeActivity,\n WalletTokenPnl,\n RankingType,\n Dex,\n RankingTokenList,\n TokenBondingCurve,\n} from \"./stream.model\";\nimport { replaceFilterFields } from \"./stream.fields\";\n\nexport interface Unsubscrible {\n unsubscribe(): void;\n}\n\nexport class StreamApi {\n private realtimeClient: Centrifuge;\n private listenersMap: Map<string, Set<(data: any) => void>>;\n\n constructor(context: DexRequestContext) {\n const realtimeEndpoint = context.streamUrl;\n this.realtimeClient = new Centrifuge(realtimeEndpoint, {\n getToken: async (_ctx: ConnectionTokenContext) => {\n return typeof context.accessToken === \"string\"\n ? context.accessToken\n : await context.accessToken.getToken();\n },\n });\n\n this.realtimeClient\n .on(\"connected\", () => {\n console.log(\"[streaming] connected\");\n })\n .on(\"disconnected\", (err) => {\n console.warn(\"[streaming] disconnected\", err);\n })\n .on(\"error\", (err) => {\n console.error(\"[streaming] error: \", err);\n });\n\n this.listenersMap = new Map();\n }\n\n connect() {\n this.realtimeClient.connect();\n }\n\n /**\n * Start batching commands for efficient bulk operations\n * All subscription commands after this call will be batched until stopBatching is called\n */\n startBatching() {\n this.realtimeClient.startBatching();\n }\n\n /**\n * Stop batching and flush all collected commands to the server\n * This will send all batched subscription commands in a single network request\n */\n stopBatching() {\n this.realtimeClient.stopBatching();\n }\n\n /**\n * Batch subscribe method that accepts a function containing subscription calls\n * All subscription methods called within the function will be batched\n * @param batchFunction Function containing subscription method calls\n * @returns Array of unsubscribe functions\n */\n batchSubscribe(batchFunction: () => Unsubscrible[]): Unsubscrible[] {\n // Start batching commands\n this.startBatching();\n\n // Execute the batch function (all subscription calls will be batched)\n const unsubscribles = batchFunction();\n\n // Stop batching and flush all commands\n this.stopBatching();\n\n return unsubscribles;\n }\n\n /**\n * Batch unsubscribe method that accepts an array of unsubscribe functions\n * All unsubscribe calls will be executed at once\n * @param unsubscribles Array of unsubscribe functions to execute\n */\n batchUnsubscribe(unsubscribles: Unsubscrible[]): void {\n if (!unsubscribles || unsubscribles.length === 0) {\n return;\n }\n\n // Execute all unsubscribe calls\n unsubscribles.forEach((unsub) => {\n if (unsub && typeof unsub.unsubscribe === \"function\") {\n unsub.unsubscribe();\n }\n });\n }\n\n subscribe<T = any>(channel: string, fn: (data: T) => void, filter?: string, methodName?: string): Unsubscrible {\n let sub = this.realtimeClient.getSubscription(channel);\n let listeners = this.listenersMap.get(channel);\n\n if (!sub) {\n listeners = new Set();\n this.listenersMap.set(channel, listeners);\n\n console.log(\"[xrealtime] create new sub: \", channel);\n\n // Process filter expression with method-specific field mappings\n const processedFilter = filter && methodName ? replaceFilterFields(filter, methodName) : filter;\n\n sub = this.realtimeClient.newSubscription(channel, {\n delta: \"fossil\",\n ...(processedFilter && { filter: processedFilter }),\n });\n\n sub\n .on(\"subscribed\", () => {\n console.log(\"[xrealtime] subscribed\", channel);\n })\n .on(\"unsubscribed\", () => {\n console.log(\"[xrealtime] unsubscribed\", channel);\n })\n .on(\"publication\", (ctx) => {\n // console.log('[xrealtime] publication, ctx.data: ', ctx.data);\n listeners?.forEach((it) => it(ctx.data));\n })\n .subscribe();\n }\n\n listeners?.add(fn);\n\n return new StreamUnsubscrible<T>(this, channel, fn);\n }\n\n unsubscribe<T = any>(channel: string, fn: (data: T) => void) {\n const listeners = this.listenersMap.get(channel);\n if (!listeners) {\n return;\n }\n\n listeners.delete(fn);\n console.log(\"unsubscribe, remain listeners: \", listeners.size);\n\n if (listeners.size === 0) {\n console.log(\"unsubscribe channel: \", channel);\n\n const sub = this.realtimeClient.getSubscription(channel);\n if (sub) {\n sub.unsubscribe();\n this.realtimeClient.removeSubscription(sub);\n }\n\n this.listenersMap.delete(channel);\n }\n }\n\n private formatScientificNotation(value: any): string {\n if (value === null || value === undefined) {\n return \"0\";\n }\n\n const strValue = value.toString();\n if (strValue.includes(\"e-\") || strValue.includes(\"E-\")) {\n return Number(value)\n .toFixed(20)\n .replace(/\\.?0+$/, \"\");\n }\n\n return strValue;\n }\n\n subscribeTokenCandles({\n chain,\n tokenAddress,\n resolution,\n callback,\n filter,\n }: {\n chain: string;\n tokenAddress: string;\n resolution: Resolution;\n callback: (data: TokenCandle) => void;\n filter?: string;\n }): Unsubscrible {\n const channel = `dex-candle:${chain}_${tokenAddress}_${resolution}`;\n return this.subscribe(channel, (data: any) => {\n callback({\n open: data.o,\n close: data.c,\n high: data.h,\n low: data.l,\n volume: data.v,\n resolution: data.r,\n time: data.t,\n number: data.n,\n });\n }, filter, \"subscribeTokenCandles\");\n }\n\n subscribeTokenStats({\n chain,\n tokenAddress,\n callback,\n filter,\n }: {\n chain: string;\n tokenAddress: string;\n callback: (data: TokenStat) => void;\n filter?: string;\n }): Unsubscrible {\n const channel = `dex-token-stats:${chain}_${tokenAddress}`;\n return this.subscribe(channel, (data: any) =>\n callback({\n address: data.a,\n timestamp: data.t,\n buys1m: data.b1m,\n sells1m: data.s1m,\n buyers1m: data.be1m,\n sellers1m: data.se1m,\n buyVolumeInUsd1m: this.formatScientificNotation(data.bviu1m),\n sellVolumeInUsd1m: this.formatScientificNotation(data.sviu1m),\n price1m: this.formatScientificNotation(data.p1m),\n openInUsd1m: this.formatScientificNotation(data.oiu1m),\n closeInUsd1m: this.formatScientificNotation(data.ciu1m),\n\n buys5m: data.b5m,\n sells5m: data.s5m,\n buyers5m: data.be5m,\n sellers5m: data.se5m,\n buyVolumeInUsd5m: this.formatScientificNotation(data.bviu5m),\n sellVolumeInUsd5m: this.formatScientificNotation(data.sviu5m),\n price5m: this.formatScientificNotation(data.p5m),\n openInUsd5m: this.formatScientificNotation(data.oiu5m),\n closeInUsd5m: this.formatScientificNotation(data.ciu5m),\n\n buys15m: data.b15m,\n sells15m: data.s15m,\n buyers15m: data.be15m,\n sellers15m: data.se15m,\n buyVolumeInUsd15m: this.formatScientificNotation(data.bviu15m),\n sellVolumeInUsd15m: this.formatScientificNotation(data.sviu15m),\n price15m: this.formatScientificNotation(data.p15m),\n openInUsd15m: this.formatScientificNotation(data.oiu15m),\n closeInUsd15m: this.formatScientificNotation(data.ciu15m),\n\n buys30m: data.b30m,\n sells30m: data.s30m,\n buyers30m: data.be30m,\n sellers30m: data.se30m,\n buyVolumeInUsd30m: this.formatScientificNotation(data.bviu30m),\n sellVolumeInUsd30m: this.formatScientificNotation(data.sviu30m),\n price30m: this.formatScientificNotation(data.p30m),\n openInUsd30m: this.formatScientificNotation(data.oiu30m),\n closeInUsd30m: this.formatScientificNotation(data.ciu30m),\n\n buys1h: data.b1h,\n sells1h: data.s1h,\n buyers1h: data.be1h,\n sellers1h: data.se1h,\n buyVolumeInUsd1h: this.formatScientificNotation(data.bviu1h),\n sellVolumeInUsd1h: this.formatScientificNotation(data.sviu1h),\n price1h: this.formatScientificNotation(data.p1h),\n openInUsd1h: this.formatScientificNotation(data.oiu1h),\n closeInUsd1h: this.formatScientificNotation(data.ciu1h),\n\n buys4h: data.b4h,\n sells4h: data.s4h,\n buyers4h: data.be4h,\n sellers4h: data.se4h,\n buyVolumeInUsd4h: this.formatScientificNotation(data.bviu4h),\n sellVolumeInUsd4h: this.formatScientificNotation(data.sviu4h),\n price4h: this.formatScientificNotation(data.p4h),\n openInUsd4h: this.formatScientificNotation(data.oiu4h),\n closeInUsd4h: this.formatScientificNotation(data.ciu4h),\n\n buys24h: data.b24h,\n sells24h: data.s24h,\n buyers24h: data.be24h,\n sellers24h: data.se24h,\n buyVolumeInUsd24h: this.formatScientificNotation(data.bviu24h),\n sellVolumeInUsd24h: this.formatScientificNotation(data.sviu24h),\n price24h: this.formatScientificNotation(data.p24h),\n openInUsd24h: this.formatScientificNotation(data.oiu24h),\n closeInUsd24h: this.formatScientificNotation(data.ciu24h),\n\n price: this.formatScientificNotation(data.p),\n }), filter, \"subscribeTokenStats\");\n }\n\n subscribeTokenHolders({\n chain,\n tokenAddress,\n callback,\n filter,\n }: {\n chain: string;\n tokenAddress: string;\n callback: (data: TokenHolder) => void;\n filter?: string;\n }): Unsubscrible {\n const channel = `dex-token-holding:${chain}_${tokenAddress}`;\n return this.subscribe(channel, (data: any) =>\n callback({\n tokenAddress: data.a,\n holders: data.h,\n top100Amount: this.formatScientificNotation(data.t100a),\n top10Amount: this.formatScientificNotation(data.t10a),\n top100Holders: data.t100h,\n top10Holders: data.t10h,\n top100Ratio: this.formatScientificNotation(data.t100r),\n top10Ratio: this.formatScientificNotation(data.t10r),\n creatorsHolders: data.ch,\n creatorsAmount: this.formatScientificNotation(data.ca),\n creatorsRatio: this.formatScientificNotation(data.cr),\n timestamp: data.ts,\n }), filter, \"subscribeTokenHolders\");\n }\n\n subscribeNewToken({\n chain,\n callback,\n filter,\n }: {\n chain: string;\n callback: (data: NewToken) => void;\n filter?: string;\n }): Unsubscrible {\n const channel = `dex-new-token:${chain}`;\n return this.subscribe(channel, (data: any) => {\n const result: any = {\n tokenAddress: data.a,\n name: data.n,\n symbol: data.s,\n createdAtMs: data.cts,\n };\n \n if (data.dec) {\n result.decimals = data.dec;\n }\n \n if (data.lf) {\n result.launchFrom = {};\n if (data.lf.pa) { result.launchFrom.programAddress = data.lf.pa }\n if (data.lf.pf) { result.launchFrom.protocolFamily = data.lf.pf }\n if (data.lf.pn) { result.launchFrom.protocolName = data.lf.pn }\n }\n \n callback(result);\n }, filter, \"subscribeNewToken\");\n }\n\n subscribeNewTokensMetadata({\n chain,\n callback,\n }: {\n chain: string;\n callback: (data: TokenMetadata[]) => void;\n }): Unsubscrible {\n const channel = `dex-new-tokens-metadata:${chain}`;\n return this.subscribe(channel, (data: any[]) =>\n callback(\n data.map(\n (it: any) =>\n ({\n tokenAddress: it.a,\n name: it.n,\n symbol: it.s,\n imageUrl: it.iu,\n description: it.de,\n socialMedia: (() => {\n const socialMedia: any = {};\n if (it.sm?.tw) { socialMedia.twitter = it.sm.tw }\n if (it.sm?.tg) { socialMedia.telegram = it.sm.tg }\n if (it.sm?.w) { socialMedia.website = it.sm.w }\n if (it.sm?.tt) { socialMedia.tiktok = it.sm.tt }\n if (it.sm?.dc) { socialMedia.discord = it.sm.dc }\n if (it.sm?.fb) { socialMedia.facebook = it.sm.fb }\n if (it.sm?.gh) { socialMedia.github = it.sm.gh }\n if (it.sm?.ig) { socialMedia.instagram = it.sm.ig }\n if (it.sm?.li) { socialMedia.linkedin = it.sm.li }\n if (it.sm?.md) { socialMedia.medium = it.sm.md }\n if (it.sm?.rd) { socialMedia.reddit = it.sm.rd }\n if (it.sm?.yt) { socialMedia.youtube = it.sm.yt }\n if (it.sm?.bb) { socialMedia.bitbucket = it.sm.bb }\n return socialMedia;\n })(),\n createdAtMs: it.cts,\n })\n )\n )\n );\n }\n\n // subscribeNewTokens({\n // chain,\n // callback,\n // }: {\n // chain: string;\n // callback: (data: NewToken[]) => void;\n // }): Unsubscrible {\n // const channel = `dex-new-tokens:${chain}`;\n // return this.subscribe(channel, (data: any[]) =>\n // callback(\n // data.map(\n // (it: any) =>\n // ({\n // tokenAddress: it.a,\n // name: it.n,\n // symbol: it.s,\n // description: it.de,\n // createdAtMs: it.cts,\n // }) as NewToken\n // )\n // )\n // );\n // }\n\n subscribeTokenSupply({\n chain,\n tokenAddress,\n callback,\n filter,\n }: {\n chain: string;\n tokenAddress: string;\n callback: (data: TokenSupply) => void;\n filter?: string;\n }): Unsubscrible {\n const channel = `dex-token-supply:${chain}_${tokenAddress}`;\n return this.subscribe(channel, (data: any) =>\n callback({\n tokenAddress: data.a,\n supply: data.s,\n marketCapInUsd: data.mc,\n timestamp: data.ts,\n }), filter, \"subscribeTokenSupply\");\n }\n\n subscribeTokenLiquidity({\n chain,\n tokenAddress,\n callback,\n filter,\n }: {\n chain: string;\n tokenAddress: string;\n callback: (data: TokenLiquidity) => void;\n filter?: string;\n }): Unsubscrible {\n const channel = `dex-token-general-stat-num:${chain}_${tokenAddress}`;\n return this.subscribe(channel, (data: any) =>\n callback({\n tokenAddress: data.a,\n metricType: data.t,\n value: data.v,\n timestamp: data.ts,\n }), filter, \"subscribeTokenLiquidity\");\n }\n\n subscribeRankingTokensLiquidity({\n chain,\n channelType,\n callback,\n }: {\n chain: string;\n channelType: ChannelType;\n callback: (data: TokenLiquidity[]) => void;\n }): Unsubscrible {\n const channel = `dex-ranking-token-general_stat_num-list:${chain}_${channelType}`;\n return this.subscribe(channel, (data: any[]) =>\n callback(\n data?.map(\n (it: any) =>\n ({\n tokenAddress: it.a,\n metricType: it.t,\n value: it.v,\n timestamp: it.ts,\n }) as TokenLiquidity\n )\n )\n );\n }\n\n subscribeRankingTokensList({\n chain,\n ranking_type,\n dex,\n callback,\n }: {\n chain: string;\n ranking_type: RankingType;\n dex?: Dex;\n callback: (data: RankingTokenList[]) => void;\n }): Unsubscrible {\n const channel = dex\n ? `dex-ranking-list:${chain}_${ranking_type}_${dex}`\n : `dex-ranking-list:${chain}_${ranking_type}`;\n return this.subscribe(channel, (data: any[]) =>\n callback(\n data?.map((item: any) => {\n const result: RankingTokenList = {} as RankingTokenList;\n\n // TokenMetadata (t)\n if (item.t) {\n result.metadata = {\n tokenAddress: item.t.a,\n };\n if (item.t.n) { result.metadata.name = item.t.n }\n if (item.t.s) { result.metadata.symbol = item.t.s }\n if (item.t.iu) { result.metadata.imageUrl = item.t.iu }\n if (item.t.de) { result.metadata.description = item.t.de }\n if (item.t.d) { result.metadata.decimals = item.t.dec }\n if (item.t.cts) { result.metadata.createdAtMs = item.t.cts }\n if (item.t.lf) {\n result.metadata.launchFrom = {};\n if (item.t.lf.pa) { result.metadata.launchFrom.programAddress = item.t.lf.pa }\n if (item.t.lf.pf) { result.metadata.launchFrom.protocolFamily = item.t.lf.pf }\n if (item.t.lf.pn) { result.metadata.launchFrom.protocolName = item.t.lf.pn }\n }\n if (item.t.mt) {\n result.metadata.migratedTo = {};\n if (item.t.mt.pa) { result.metadata.migratedTo.programAddress = item.t.mt.pa }\n if (item.t.mt.pf) { result.metadata.migratedTo.protocolFamily = item.t.mt.pf }\n if (item.t.mt.pn) { result.metadata.migratedTo.protocolName = item.t.mt.pn }\n }\n if (item.t.sm) {\n result.metadata.socialMedia = {};\n if (item.t.sm.tw) { result.metadata.socialMedia.twitter = item.t.sm.tw }\n if (item.t.sm.tg) { result.metadata.socialMedia.telegram = item.t.sm.tg }\n if (item.t.sm.w) { result.metadata.socialMedia.website = item.t.sm.w }\n if (item.t.sm.tt) { result.metadata.socialMedia.tiktok = item.t.sm.tt }\n if (item.t.sm.dc) { result.metadata.socialMedia.discord = item.t.sm.dc }\n if (item.t.sm.fb) { result.metadata.socialMedia.facebook = item.t.sm.fb }\n if (item.t.sm.gh) { result.metadata.socialMedia.github = item.t.sm.gh }\n if (item.t.sm.ig) { result.metadata.socialMedia.instagram = item.t.sm.ig }\n if (item.t.sm.li) { result.metadata.socialMedia.linkedin = item.t.sm.li }\n if (item.t.sm.md) { result.metadata.socialMedia.medium = item.t.sm.md }\n if (item.t.sm.rd) { result.metadata.socialMedia.reddit = item.t.sm.rd }\n if (item.t.sm.yt) { result.metadata.socialMedia.youtube = item.t.sm.yt }\n if (item.t.sm.bb) { result.metadata.socialMedia.bitbucket = item.t.sm.bb }\n }\n if (item.t.cts) { result.metadata.createdAtMs = item.t.cts }\n }\n\n // TokenBondingCurve (bc)\n if (item.bc) {\n result.bondingCurve = {};\n if (item.bc.pr) { result.bondingCurve.progressRatio = this.formatScientificNotation(item.bc.pr) }\n }\n\n // TokenHolder (h)\n if (item.h) {\n result.holder = {\n tokenAddress: item.h.a,\n timestamp: item.h.ts || 0,\n };\n if (item.h.h) { result.holder.holders = item.h.h }\n if (item.h.t100a) { result.holder.top100Amount = this.formatScientificNotation(item.h.t100a) }\n if (item.h.t10a) { result.holder.top10Amount = this.formatScientificNotation(item.h.t10a) }\n if (item.h.t100h) { result.holder.top100Holders = item.h.t100h }\n if (item.h.t10h) { result.holder.top10Holders = item.h.t10h }\n if (item.h.t100r) { result.holder.top100Ratio = this.formatScientificNotation(item.h.t100r) }\n if (item.h.t10r) { result.holder.top10Ratio = this.formatScientificNotation(item.h.t10r) }\n }\n\n // TokenSupply (s)\n if (item.s) {\n result.supply = {\n tokenAddress: item.s.a,\n timestamp: item.s.ts || 0,\n };\n if (item.s.s) { result.supply.supply = item.s.s }\n if (item.s.mc) { result.supply.marketCapInUsd = item.s.mc }\n }\n\n // TokenStat (ts)\n if (item.ts) {\n result.stat = {\n address: item.ts.a,\n timestamp: item.ts.t || 0,\n };\n\n // 1m data\n if (item.ts.b1m) { result.stat.buys1m = item.ts.b1m }\n if (item.ts.s1m) { result.stat.sells1m = item.ts.s1m }\n if (item.ts.be1m) { result.stat.buyers1m = item.ts.be1m }\n if (item.ts.se1m) { result.stat.sellers1m = item.ts.se1m }\n if (item.ts.bviu1m) { result.stat.buyVolumeInUsd1m = this.formatScientificNotation(item.ts.bviu1m) }\n if (item.ts.sviu1m) { result.stat.sellVolumeInUsd1m = this.formatScientificNotation(item.ts.sviu1m) }\n if (item.ts.p1m) { result.stat.price1m = this.formatScientificNotation(item.ts.p1m) }\n if (item.ts.oiu1m) { result.stat.openInUsd1m = this.formatScientificNotation(item.ts.oiu1m) }\n if (item.ts.ciu1m) { result.stat.closeInUsd1m = this.formatScientificNotation(item.ts.ciu1m) }\n\n // 5m data\n if (item.ts.b5m) { result.stat.buys5m = item.ts.b5m }\n if (item.ts.s5m) { result.stat.sells5m = item.ts.s5m }\n if (item.ts.be5m) { result.stat.buyers5m = item.ts.be5m }\n if (item.ts.se5m) { result.stat.sellers5m = item.ts.se5m }\n if (item.ts.bviu5m) { result.stat.buyVolumeInUsd5m = this.formatScientificNotation(item.ts.bviu5m) }\n if (item.ts.sviu5m) { result.stat.sellVolumeInUsd5m = this.formatScientificNotation(item.ts.sviu5m) }\n if (item.ts.p5m) { result.stat.price5m = this.formatScientificNotation(item.ts.p5m) }\n if (item.ts.oiu5m) { result.stat.openInUsd5m = this.formatScientificNotation(item.ts.oiu5m) }\n if (item.ts.ciu5m) { result.stat.closeInUsd5m = this.formatScientificNotation(item.ts.ciu5m) }\n\n // 15m data\n if (item.ts.b15m) { result.stat.buys15m = item.ts.b15m }\n if (item.ts.s15m) { result.stat.sells15m = item.ts.s15m }\n if (item.ts.be15m) { result.stat.buyers15m = item.ts.be15m }\n if (item.ts.se15m) { result.stat.sellers15m = item.ts.se15m }\n if (item.ts.bviu15m) { result.stat.buyVolumeInUsd15m = this.formatScientificNotation(item.ts.bviu15m) }\n if (item.ts.sviu15m) { result.stat.sellVolumeInUsd15m = this.formatScientificNotation(item.ts.sviu15m) }\n if (item.ts.p15m) { result.stat.price15m = this.formatScientificNotation(item.ts.p15m) }\n if (item.ts.oiu15m) { result.stat.openInUsd15m = this.formatScientificNotation(item.ts.oiu15m) }\n if (item.ts.ciu15m) { result.stat.closeInUsd15m = this.formatScientificNotation(item.ts.ciu15m) }\n\n // 30m data\n if (item.ts.b30m) { result.stat.buys30m = item.ts.b30m }\n if (item.ts.s30m) { result.stat.sells30m = item.ts.s30m }\n if (item.ts.be30m) { result.stat.buyers30m = item.ts.be30m }\n if (item.ts.se30m) { result.stat.sellers30m = item.ts.se30m }\n if (item.ts.bviu30m) { result.stat.buyVolumeInUsd30m = this.formatScientificNotation(item.ts.bviu30m) }\n if (item.ts.sviu30m) { result.stat.sellVolumeInUsd30m = this.formatScientificNotation(item.ts.sviu30m) }\n if (item.ts.p30m) { result.stat.price30m = this.formatScientificNotation(item.ts.p30m) }\n if (item.ts.oiu30m) { result.stat.openInUsd30m = this.formatScientificNotation(item.ts.oiu30m) }\n if (item.ts.ciu30m) { result.stat.closeInUsd30m = this.formatScientificNotation(item.ts.ciu30m) }\n\n // 1h data\n if (item.ts.b1h) { result.stat.buys1h = item.ts.b1h }\n if (item.ts.s1h) { result.stat.sells1h = item.ts.s1h }\n if (item.ts.be1h) { result.stat.buyers1h = item.ts.be1h }\n if (item.ts.se1h) { result.stat.sellers1h = item.ts.se1h }\n if (item.ts.bviu1h) { result.stat.buyVolumeInUsd1h = this.formatScientificNotation(item.ts.bviu1h) }\n if (item.ts.sviu1h) { result.stat.sellVolumeInUsd1h = this.formatScientificNotation(item.ts.sviu1h) }\n if (item.ts.p1h) { result.stat.price1h = this.formatScientificNotation(item.ts.p1h) }\n if (item.ts.oiu1h) { result.stat.openInUsd1h = this.formatScientificNotation(item.ts.oiu1h) }\n if (item.ts.ciu1h) { result.stat.closeInUsd1h = this.formatScientificNotation(item.ts.ciu1h) }\n\n // 4h data\n if (item.ts.b4h) { result.stat.buys4h = item.ts.b4h }\n if (item.ts.s4h) { result.stat.sells4h = item.ts.s4h }\n if (item.ts.be4h) { result.stat.buyers4h = item.ts.be4h }\n if (item.ts.se4h) { result.stat.sellers4h = item.ts.se4h }\n if (item.ts.bviu4h) { result.stat.buyVolumeInUsd4h = this.formatScientificNotation(item.ts.bviu4h) }\n if (item.ts.sviu4h) { result.stat.sellVolumeInUsd4h = this.formatScientificNotation(item.ts.sviu4h) }\n if (item.ts.p4h) { result.stat.price4h = this.formatScientificNotation(item.ts.p4h) }\n if (item.ts.oiu4h) { result.stat.openInUsd4h = this.formatScientificNotation(item.ts.oiu4h) }\n if (item.ts.ciu4h) { result.stat.closeInUsd4h = this.formatScientificNotation(item.ts.ciu4h) }\n\n // 24h data\n if (item.ts.b24h) { result.stat.buys24h = item.ts.b24h }\n if (item.ts.s24h) { result.stat.sells24h = item.ts.s24h }\n if (item.ts.be24h) { result.stat.buyers24h = item.ts.be24h }\n if (item.ts.se24h) { result.stat.sellers24h = item.ts.se24h }\n if (item.ts.bviu24h) { result.stat.buyVolumeInUsd24h = this.formatScientificNotation(item.ts.bviu24h) }\n if (item.ts.sviu24h) { result.stat.sellVolumeInUsd24h = this.formatScientificNotation(item.ts.sviu24h) }\n if (item.ts.p24h) { result.stat.price24h = this.formatScientificNotation(item.ts.p24h) }\n if (item.ts.oiu24h) { result.stat.openInUsd24h = this.formatScientificNotation(item.ts.oiu24h) }\n if (item.ts.ciu24h) { result.stat.closeInUsd24h = this.formatScientificNotation(item.ts.ciu24h) }\n\n // Current price\n if (item.ts.p) { result.stat.price = this.formatScientificNotation(item.ts.p) }\n }\n\n return result;\n })\n )\n );\n }\n\n subscribeRankingTokensStats({\n chain,\n channelType,\n callback,\n }: {\n chain: string;\n channelType: ChannelType;\n callback: (data: TokenStat[]) => void;\n }): Unsubscrible {\n const channel = `dex-ranking-token-stats-list:${chain}_${channelType}`;\n return this.subscribe(channel, (data: any[]) =>\n callback(\n data?.map(\n (it: any) =>\n ({\n address: it.a,\n timestamp: it.t,\n buys1m: it.b1m,\n sells1m: it.s1m,\n buyers1m: it.be1m,\n sellers1m: it.se1m,\n buyVolumeInUsd1m: this.formatScientificNotation(it.bviu1m),\n sellVolumeInUsd1m: this.formatScientificNotation(it.sviu1m),\n price1m: this.formatScientificNotation(it.p1m),\n openInUsd1m: this.formatScientificNotation(it.oiu1m),\n closeInUsd1m: this.formatScientificNotation(it.ciu1m),\n buys5m: it.b5m,\n sells5m: it.s5m,\n buyers5m: it.be5m,\n sellers5m: it.se5m,\n buyVolumeInUsd5m: this.formatScientificNotation(it.bviu5m),\n sellVolumeInUsd5m: this.formatScientificNotation(it.sviu5m),\n price5m: this.formatScientificNotation(it.p5m),\n openInUsd5m: this.formatScientificNotation(it.oiu5m),\n closeInUsd5m: this.formatScientificNotation(it.ciu5m),\n buys15m: it.b15m,\n sells15m: it.s15m,\n buyers15m: it.be15m,\n sellers15m: it.se15m,\n buyVolumeInUsd15m: this.formatScientificNotation(it.bviu15m),\n sellVolumeInUsd15m: this.formatScientificNotation(it.sviu15m),\n price15m: this.formatScientificNotation(it.p15m),\n openInUsd15m: this.formatScientificNotation(it.oiu15m),\n closeInUsd15m: this.formatScientificNotation(it.ciu15m),\n buys30m: it.b30m,\n sells30m: it.s30m,\n buyers30m: it.be30m,\n sellers30m: it.se30m,\n buyVolumeInUsd30m: this.formatScientificNotation(it.bviu30m),\n sellVolumeInUsd30m: this.formatScientificNotation(it.sviu30m),\n price30m: this.formatScientificNotation(it.p30m),\n openInUsd30m: this.formatScientificNotation(it.oiu30m),\n closeInUsd30m: this.formatScientificNotation(it.ciu30m),\n buys1h: it.b1h,\n sells1h: it.s1h,\n buyers1h: it.be1h,\n sellers1h: it.se1h,\n buyVolumeInUsd1h: this.formatScientificNotation(it.bviu1h),\n sellVolumeInUsd1h: this.formatScientificNotation(it.sviu1h),\n price1h: this.formatScientificNotation(it.p1h),\n openInUsd1h: this.formatScientificNotation(it.oiu1h),\n closeInUsd1h: this.formatScientificNotation(it.ciu1h),\n buys4h: it.b4h,\n sells4h: it.s4h,\n buyers4h: it.be4h,\n sellers4h: it.se4h,\n buyVolumeInUsd4h: this.formatScientificNotation(it.bviu4h),\n sellVolumeInUsd4h: this.formatScientificNotation(it.sviu4h),\n price4h: this.formatScientificNotation(it.p4h),\n openInUsd4h: this.formatScientificNotation(it.oiu4h),\n closeInUsd4h: this.formatScientificNotation(it.ciu4h),\n buys24h: it.b24h,\n sells24h: it.s24h,\n buyers24h: it.be24h,\n sellers24h: it.se24h,\n buyVolumeInUsd24h: this.formatScientificNotation(it.bviu24h),\n sellVolumeInUsd24h: this.formatScientificNotation(it.sviu24h),\n price24h: this.formatScientificNotation(it.p24h),\n price: this.formatScientificNotation(it.p),\n openInUsd24h: this.formatScientificNotation(it.oiu24h),\n closeInUsd24h: this.formatScientificNotation(it.ciu24h),\n }) as TokenStat\n )\n )\n );\n }\n\n subscribeRankingTokensHolders({\n chain,\n channelType,\n callback,\n }: {\n chain: string;\n channelType: ChannelType;\n callback: (data: TokenHolder[]) => void;\n }): Unsubscrible {\n const channel = `dex-ranking-token-holding-list:${chain}_${channelType}`;\n return this.subscribe(channel, (data: any[]) =>\n callback(\n data?.map(\n (it: any) =>\n ({\n tokenAddress: it.a,\n holders: it.h,\n top100Amount: this.formatScientificNotation(it.t100a),\n top10Amount: this.formatScientificNotation(it.t10a),\n top100Holders: it.t100h,\n top10Holders: it.t10h,\n top100Ratio: this.formatScientificNotation(it.t100r),\n top10Ratio: this.formatScientificNotation(it.t10r),\n timestamp: it.ts,\n }) as TokenHolder\n )\n )\n );\n }\n\n subscribeRankingTokensSupply({\n chain,\n channelType,\n callback,\n }: {\n chain: string;\n channelType: ChannelType;\n callback: (data: TokenSupply[]) => void;\n }): Unsubscrible {\n const channel = `dex-ranking-token-supply-list:${chain}_${channelType}`;\n return this.subscribe(channel, (data: any[]) =>\n callback(\n data?.map(\n (it: any) =>\n ({\n tokenAddress: it.a,\n supply: it.s,\n marketCapInUsd: it.mc,\n timestamp: it.ts,\n })\n )\n )\n );\n }\n\n subscribeRankingTokensBondingCurve({\n chain,\n callback,\n }: {\n chain: string;\n callback: (data: TokenBondingCurve[]) => void;\n }): Unsubscrible {\n const channel = `dex-ranking-token-bounding-curve-list:${chain}_new`;\n return this.subscribe(channel, (data: any[]) =>\n callback(\n data?.map(\n (it: any) =>\n ({\n tokenAddress: it.a,\n progressRatio: it.pr,\n })\n )\n )\n );\n }\n\n // subscribeTokenTrades({\n // chain,\n // tokenAddress,\n // callback,\n // }: {\n // chain: string;\n // tokenAddress: string;\n // callback: (data: TradeEvent[]) => void;\n // }): Unsubscrible {\n // const channel = `dex-trades:${chain}_${tokenAddress}`;\n // return this.subscribe(channel, (data: any[]) =>\n // callback(\n // data?.map(\n // (it: any) =>\n // ({\n // maker: it.bwa,\n // baseAmount: it.ba,\n // quoteAmount: it.sa,\n // // quoteSymbol: ,\n // quoteAddress: it.swa,\n // amountInUsd: it.baiu,\n // timestamp: it.t,\n // event: it.k,\n // txHash: it.h,\n // // priceInUsd: ,\n // // id: ,\n // // buyCostUsd: it.,\n // tokenAddress: it.a,\n // }) as TradeEvent\n // )\n // )\n // );\n // }\n\n subscribeWalletBalance({\n chain,\n walletAddress,\n callback,\n filter,\n }: {\n chain: string;\n walletAddress: string;\n callback: (data: WalletBalance[]) => void;\n filter?: string;\n }): Unsubscrible {\n const channel = `dex-wallet-balance:${chain}_${walletAddress}`;\n return this.subscribe(channel, (data: any) =>\n callback([\n {\n walletAddress: data.a,\n tokenAddress: data.ta,\n tokenPriceInUsd: data.tpiu,\n balance: data.b,\n timestamp: data.t,\n },\n ]), filter, \"subscribeWalletBalance\");\n }\n\n subscribeWalletPnl({\n chain,\n walletAddress,\n callback,\n filter,\n }: {\n chain: string;\n walletAddress: string;\n callback: (data: WalletTokenPnl) => void;\n filter?: string;\n }): Unsubscrible {\n const channel = `dex-wallet-token-pnl:${chain}_${walletAddress}`;\n return this.subscribe(channel, (data: any) =>\n callback({\n walletAddress: data.a,\n tokenAddress: data.ta,\n tokenPriceInUsd: data.tpiu,\n timestamp: data.t,\n opentime: data.ot,\n lasttime: data.lt,\n closetime: data.ct,\n buyAmount: data.ba,\n buyAmountInUsd: data.baiu,\n buyCount: data.bs,\n buyCount30d: data.bs30d,\n buyCount7d: data.bs7d,\n sellAmount: data.sa,\n sellAmountInUsd: data.saiu,\n sellCount: data.ss,\n sellCount30d: data.ss30d,\n sellCount7d: data.ss7d,\n heldDurationTimestamp: data.hdts,\n averageBuyPriceInUsd: data.abpiu,\n averageSellPriceInUsd: data.aspiu,\n unrealizedProfitInUsd: data.upiu,\n unrealizedProfitRatio: data.upr,\n realizedProfitInUsd: data.rpiu,\n realizedProfitRatio: data.rpr,\n totalRealizedProfitInUsd: data.trpiu,\n totalRealizedProfitRatio: data.trr,\n }), filter, \"subscribeWalletPnl\");\n }\n\n subscribeWalletPnlList({\n chain,\n walletAddress,\n callback,\n }: {\n chain: string;\n walletAddress: string;\n callback: (data: WalletPnl[]) => void;\n }): Unsubscrible {\n const channel = `dex-wallet-pnl-list:${chain}_${walletAddress}`;\n return this.subscribe(channel, (data: any[]) =>\n callback(\n data?.map(\n (it: any) =>\n ({\n walletAddress: it.a,\n buys: it.bs,\n buyAmount: it.ba,\n buyAmountInUsd: it.baiu,\n averageBuyPriceInUsd: it.abpiu,\n sellAmount: it.sa,\n sellAmountInUsd: it.saiu,\n sells: it.ss,\n wins: it.ws,\n winRatio: it.wr,\n pnlInUsd: it.piu,\n averagePnlInUsd: it.apiu,\n pnlRatio: it.pr,\n profitableDays: it.pd,\n losingDays: it.ld,\n tokens: it.ts,\n resolution: it.r,\n }) as WalletPnl\n )\n )\n );\n }\n\n subscribeTokenTrade({\n chain,\n tokenAddress,\n callback,\n filter,\n }: {\n chain: string;\n tokenAddress: string;\n callback: (data: TradeActivity) => void;\n filter?: string;\n }): Unsubscrible {\n const channel = `dex-trade:${chain}_${tokenAddress}`;\n return this.subscribe(channel, (data: any) =>\n callback({\n tokenAddress: data.a,\n timestamp: data.t,\n kind: data.k,\n buyAmount: data.ba,\n buyAmountInUsd: data.baiu,\n buyTokenAddress: data.btma,\n buyTokenName: data.btn,\n buyTokenSymbol: data.bts,\n buyWalletAddress: data.bwa,\n sellAmount: data.sa,\n sellAmountInUsd: data.saiu,\n sellTokenAddress: data.stma,\n sellTokenName: data.stn,\n sellTokenSymbol: data.sts,\n sellWalletAddress: data.swa,\n txHash: data.h,\n }), filter, \"subscribeTokenTrades\");\n }\n\n subscribeWalletTrade({\n chain,\n walletAddress,\n callback,\n filter,\n }: {\n chain: string;\n walletAddress: string;\n callback: (data: TradeActivity) => void;\n filter?: string;\n }): Unsubscrible {\n const channel = `dex-wallet-trade:${chain}_${walletAddress}`;\n return this.subscribe(channel, (data: any) =>\n callback({\n tokenAddress: data.a,\n timestamp: data.t,\n kind: data.k,\n buyAmount: data.ba,\n buyAmountInUsd: data.baiu,\n buyTokenAddress: data.btma,\n buyTokenName: data.btn,\n buyTokenSymbol: data.bts,\n buyWalletAddress: data.bwa,\n sellAmount: data.sa,\n sellAmountInUsd: data.saiu,\n sellTokenAddress: data.stma,\n sellTokenName: data.stn,\n sellTokenSymbol: data.sts,\n sellWalletAddress: data.swa,\n txHash: data.h,\n }), filter, \"subscribeTokenTrades\");\n }\n\n subscribeDexPoolBalance({\n chain,\n poolAddress,\n callback,\n }: {\n chain: string;\n poolAddress: string;\n callback: (data: DexPoolBalance) => void;\n }): Unsubscrible {\n const channel = `dex-pool-balance:${chain}_${poolAddress}`;\n return this.subscribe(channel, (data: any) =>\n callback({\n poolAddress: data.a,\n tokenAAddress: data.taa,\n tokenALiquidityInUsd: data.taliu,\n tokenBAddress: data.tba,\n tokenBLiquidityInUsd: data.tbliu,\n })\n );\n }\n}\nclass StreamUnsubscrible<T> {\n constructor(\n private readonly streamApi: StreamApi,\n private readonly channel: string,\n private readonly fn: (data: T) => void\n ) { }\n\n unsubscribe() {\n this.streamApi.unsubscribe(this.channel, this.fn);\n }\n}","/**\n * Field mappings for CEL filter expressions\n * Maps human-readable field names to short field names used in the API\n * Organized by subscription method to handle field name conflicts\n */\n\nexport interface FieldMapping {\n readonly [key: string]: string;\n}\n\nexport interface MethodFieldMappings {\n readonly [methodName: string]: FieldMapping;\n}\n\n/**\n * Field mappings organized by subscription method\n * Each method can have its own field mappings to handle conflicts\n */\nexport const CEL_FIELD_MAPPINGS: MethodFieldMappings = {\n // Wallet balance subscription fields\n \"subscribeWalletBalance\": {\n \"walletAddress\": \"a\",\n \"tokenAddress\": \"ta\",\n \"tokenPriceInUsd\": \"tpiu\",\n \"balance\": \"b\",\n \"timestamp\": \"t\",\n },\n\n // Token candles subscription fields\n \"subscribeTokenCandles\": {\n \"open\": \"o\",\n \"close\": \"c\",\n \"high\": \"h\",\n \"low\": \"l\",\n \"volume\": \"v\",\n \"resolution\": \"r\",\n \"time\": \"t\",\n \"number\": \"n\",\n },\n\n // Token stats subscription fields\n \"subscribeTokenStats\": {\n \"address\": \"a\",\n \"timestamp\": \"t\",\n \"buys1m\": \"b1m\",\n \"sells1m\": \"s1m\",\n \"buyers1m\": \"be1m\",\n \"sellers1m\": \"se1m\",\n \"buyVolumeInUsd1m\": \"bviu1m\",\n \"sellVolumeInUsd1m\": \"sviu1m\",\n \"price1m\": \"p1m\",\n \"openInUsd1m\": \"oiu1m\",\n \"closeInUsd1m\": \"ciu1m\",\n \"buys5m\": \"b5m\",\n \"sells5m\": \"s5m\",\n \"buyers5m\": \"be5m\",\n \"sellers5m\": \"se5m\",\n \"buyVolumeInUsd5m\": \"bviu5m\",\n \"sellVolumeInUsd5m\": \"sviu5m\",\n \"price5m\": \"p5m\",\n \"openInUsd5m\": \"oiu5m\",\n \"closeInUsd5m\": \"ciu5m\",\n \"buys15m\": \"b15m\",\n \"sells15m\": \"s15m\",\n \"buyers15m\": \"be15m\",\n \"sellers15m\": \"se15m\",\n \"buyVolumeInUsd15m\": \"bviu15m\",\n \"sellVolumeInUsd15m\": \"sviu15m\",\n \"price15m\": \"p15m\",\n \"openInUsd15m\": \"oiu15m\",\n \"closeInUsd15m\": \"ciu15m\",\n \"buys30m\": \"b30m\",\n \"sells30m\": \"s30m\",\n \"buyers30m\": \"be30m\",\n \"sellers30m\": \"se30m\",\n \"buyVolumeInUsd30m\": \"bviu30m\",\n \"sellVolumeInUsd30m\": \"sviu30m\",\n \"price30m\": \"p30m\",\n \"openInUsd30m\": \"oiu30m\",\n \"closeInUsd30m\": \"ciu30m\",\n \"buys1h\": \"b1h\",\n \"sells1h\": \"s1h\",\n \"buyers1h\": \"be1h\",\n \"sellers1h\": \"se1h\",\n \"buyVolumeInUsd1h\": \"bviu1h\",\n \"sellVolumeInUsd1h\": \"sviu1h\",\n \"price1h\": \"p1h\",\n \"openInUsd1h\": \"oiu1h\",\n \"closeInUsd1h\": \"ciu1h\",\n \"buys4h\": \"b4h\",\n \"sells4h\": \"s4h\",\n \"buyers4h\": \"be4h\",\n \"sellers4h\": \"se4h\",\n \"buyVolumeInUsd4h\": \"bviu4h\",\n \"sellVolumeInUsd4h\": \"sviu4h\",\n \"price4h\": \"p4h\",\n \"openInUsd4h\": \"oiu4h\",\n \"closeInUsd4h\": \"ciu4h\",\n \"buys24h\": \"b24h\",\n \"sells24h\": \"s24h\",\n \"buyers24h\": \"be24h\",\n \"sellers24h\": \"se24h\",\n \"buyVolumeInUsd24h\": \"bviu24h\",\n \"sellVolumeInUsd24h\": \"sviu24h\",\n \"price24h\": \"p24h\",\n \"price\": \"p\",\n \"openInUsd24h\": \"oiu24h\",\n \"closeInUsd24h\": \"ciu24h\",\n },\n\n // Token holder subscription fields\n \"subscribeTokenHolders\": {\n \"tokenAddress\": \"a\",\n \"holders\": \"h\",\n \"top100Amount\": \"t100a\",\n \"top10Amount\": \"t10a\",\n \"top100Holders\": \"t100h\",\n \"top10Holders\": \"t10h\",\n \"top100Ratio\": \"t100r\",\n \"top10Ratio\": \"t10r\",\n \"timestamp\": \"ts\",\n },\n\n // New token subscription fields\n \"subscribeNewToken\": {\n \"tokenAddress\": \"a\",\n \"name\": \"n\",\n \"symbol\": \"s\",\n \"createdAtMs\": \"cts\",\n },\n\n // Token supply subscription fields\n \"subscribeTokenSupply\": {\n \"tokenAddress\": \"a\",\n \"supply\": \"s\",\n \"timestamp\": \"ts\",\n },\n\n // Dex pool balance subscription fields\n \"subscribeDexPoolBalance\": {\n \"poolAddress\": \"a\",\n \"tokenAAddress\": \"taa\",\n \"tokenALiquidityInUsd\": \"taliu\",\n \"tokenBAddress\": \"tba\",\n \"tokenBLiquidityInUsd\": \"tbliu\",\n },\n\n // Token liquidity subscription fields\n \"subscribeTokenLiquidity\": {\n \"tokenAddress\": \"a\",\n \"metricType\": \"t\",\n \"value\": \"v\",\n \"timestamp\": \"ts\",\n },\n\n // New token metadata subscription fields\n \"subscribeNewTokensMetadata\": {\n \"tokenAddress\": \"a\",\n \"name\": \"n\",\n \"symbol\": \"s\",\n \"imageUrl\": \"iu\",\n \"description\": \"de\",\n \"socialMedia\": \"sm\",\n \"createdAtMs\": \"cts\",\n },\n\n // Token trades subscription fields\n \"subscribeTokenTrades\": {\n \"tokenAddress\": \"a\",\n \"timestamp\": \"t\",\n \"kind\": \"k\",\n \"buyAmount\": \"ba\",\n \"buyAmountInUsd\": \"baiu\",\n \"buyTokenAddress\": \"btma\",\n \"buyTokenName\": \"btn\",\n \"buyTokenSymbol\": \"bts\",\n \"buyWalletAddress\": \"bwa\",\n \"sellAmount\": \"sa\",\n \"sellAmountInUsd\": \"saiu\",\n \"sellTokenAddress\": \"stma\",\n \"sellTokenName\": \"stn\",\n \"sellTokenSymbol\": \"sts\",\n \"sellWalletAddress\": \"swa\",\n \"txHash\": \"h\",\n },\n\n // Wallet token PnL subscription fields\n \"subscribeWalletPnl\": {\n \"walletAddress\": \"a\",\n \"tokenAddress\": \"ta\",\n \"tokenPriceInUsd\": \"tpiu\",\n \"timestamp\": \"t\",\n \"opentime\": \"ot\",\n \"lasttime\": \"lt\",\n \"closetime\": \"ct\",\n \"buyAmount\": \"ba\",\n \"buyAmountInUsd\": \"baiu\",\n \"buyCount\": \"bs\",\n \"buyCount30d\": \"bs30d\",\n \"buyCount7d\": \"bs7d\",\n \"sellAmount\": \"sa\",\n \"sellAmountInUsd\": \"saiu\",\n \"sellCount\": \"ss\",\n \"sellCount30d\": \"ss30d\",\n \"sellCount7d\": \"ss7d\",\n \"heldDurationTimestamp\": \"hdts\",\n \"averageBuyPriceInUsd\": \"abpiu\",\n \"averageSellPriceInUsd\": \"aspiu\",\n \"unrealizedProfitInUsd\": \"upiu\",\n \"unrealizedProfitRatio\": \"upr\",\n \"realizedProfitInUsd\": \"rpiu\",\n \"realizedProfitRatio\": \"rpr\",\n \"totalRealizedProfitInUsd\": \"trpiu\",\n \"totalRealizedProfitRatio\": \"trr\",\n },\n} as const;\n\n/**\n * Get field mappings for a specific subscription method\n * @param methodName - The name of the subscription method\n * @returns Field mapping object for the method, or empty object if not found\n */\nexport function getFieldMappings(methodName: string): FieldMapping {\n return CEL_FIELD_MAPPINGS[methodName] || {};\n}\n\n/**\n * Replace long field names with short field names in a filter expression\n * Automatically adds meta. prefix if not present\n * @param filter - Original filter expression\n * @param methodName - The name of the subscription method\n * @returns Filter expression with short field names and meta. prefix\n */\nexport function replaceFilterFields(filter: string, methodName: string): string {\n if (!filter) {return filter}\n \n const fieldMappings = getFieldMappings(methodName);\n let result = filter;\n \n // Replace all long field names with short field names\n for (const [longField, shortField] of Object.entries(fieldMappings)) {\n // Handle both cases: with and without meta. prefix\n const patterns = [\n // Pattern 1: fieldName (without meta. prefix)\n new RegExp(`\\\\b${longField}\\\\b`, \"g\"),\n // Pattern 2: meta.fieldName (with meta. prefix)\n new RegExp(`\\\\bmeta\\\\.${longField}\\\\b`, \"g\"),\n ];\n \n patterns.forEach((pattern) => {\n result = result.replace(pattern, `meta.${shortField}`);\n });\n }\n \n return result;\n}\n\n/**\n * Type-safe field mapping for specific subscription methods\n */\nexport type SubscriptionMethod = keyof typeof CEL_FIELD_MAPPINGS;\n\n/**\n * Get available field names for a specific subscription method\n * @param methodName - The name of the subscription method\n * @returns Array of available field names\n */\nexport function getAvailableFields(methodName: string): string[] {\n const mappings = getFieldMappings(methodName);\n return Object.keys(mappings);\n}\n","import { Resolution } from \"../openapi\";\n\n\n\nexport enum TokenActivityType {\n Sell = \"sell\",\n Buy = \"buy\",\n AddLiquidity = \"add_liquidity\",\n RemoveLiquidity = \"remove_liquidity\",\n}\n\nexport enum ChannelType {\n New = \"new\",\n HOT = \"trending\",\n US_STOCKS = \"us_stocks\",\n COMPLETED = \"completed\",\n GRADUATED = \"graduated\",\n}\n\nexport enum MetricType {\n LIQUIDITY_IN_USD = \"liquidity_in_usd\",\n MIGRATED_RATIO = \"migrated_ratio\",\n}\n\nexport interface TokenActivity {\n address: string;\n priceUsd: string;\n amount: string;\n type: TokenActivityType;\n // maker: string;\n txHash: string;\n timestamp: number;\n}\n\nexport interface TokenStat {\n address: string;\n timestamp: number;\n buys1m?: number;\n sells1m?: number;\n buyers1m?: number;\n sellers1m?: number;\n buyVolumeInUsd1m?: string;\n sellVolumeInUsd1m?: string;\n price1m?: string;\n openInUsd1m?: string;\n closeInUsd1m?: string;\n\n buys5m?: number;\n sells5m?: number;\n buyers5m?: number;\n sellers5m?: number;\n buyVolumeInUsd5m?: string;\n sellVolumeInUsd5m?: string;\n price5m?: string;\n openInUsd5m?: string;\n closeInUsd5m?: string;\n\n buys15m?: number;\n sells15m?: number;\n buyers15m?: number;\n sellers15m?: number;\n buyVolumeInUsd15m?: string;\n sellVolumeInUsd15m?: string;\n price15m?: string;\n openInUsd15m?: string;\n closeInUsd15m?: string;\n\n buys30m?: number;\n sells30m?: number;\n buyers30m?: number;\n sellers30m?: number;\n buyVolumeInUsd30m?: string;\n sellVolumeInUsd30m?: string;\n price30m?: string;\n openInUsd30m?: string;\n closeInUsd30m?: string;\n\n buys1h?: number;\n sells1h?: number;\n buyers1h?: number;\n sellers1h?: number;\n buyVolumeInUsd1h?: string;\n sellVolumeInUsd1h?: string;\n price1h?: string;\n openInUsd1h?: string;\n closeInUsd1h?: string;\n\n buys4h?: number;\n sells4h?: number;\n buyers4h?: number;\n sellers4h?: number;\n buyVolumeInUsd4h?: string;\n sellVolumeInUsd4h?: string;\n price4h?: string;\n openInUsd4h?: string;\n closeInUsd4h?: string;\n\n buys24h?: number;\n sells24h?: number;\n buyers24h?: number;\n sellers24h?: number;\n buyVolumeInUsd24h?: string;\n sellVolumeInUsd24h?: string;\n price24h?: string;\n openInUsd24h?: string;\n closeInUsd24h?: string;\n\n price?: string;\n}\n\nexport interface TokenHolder {\n tokenAddress: string;\n holders?: number;\n top100Amount?: string;\n top10Amount?: string;\n top100Holders?: number;\n top10Holders?: number;\n top100Ratio?: string;\n top10Ratio?: string;\n creatorsHolders?: number;\n creatorsAmount?: string;\n creatorsRatio?: string;\n timestamp: number;\n}\n\nexport interface WalletBalance {\n walletAddress: string;\n tokenAddress: string;\n tokenPriceInUsd: string;\n balance: string;\n timestamp: number;\n}\n\nexport interface WalletPnl {\n walletAddress: string;\n buys: number;\n buyAmount: string;\n buyAmountInUsd: string;\n averageBuyPriceInUsd: string;\n sellAmount: string;\n sellAmountInUsd: string;\n sells: number;\n wins: number;\n winRatio: string;\n pnlInUsd: string;\n averagePnlInUsd: string;\n pnlRatio: string;\n profitableDays: number;\n losingDays: number;\n tokens: number;\n resolution: string;\n}\n\nexport interface NewToken {\n tokenAddress: string;\n name: string;\n symbol: string;\n decimals?: number;\n launchFrom?: DexProtocol;\n createdAtMs: number;\n}\n\nexport interface TokenSupply {\n tokenAddress: string;\n supply?: string;\n marketCapInUsd?: string;\n timestamp: number;\n}\n\nexport interface DexPoolBalance {\n poolAddress: string;\n tokenAAddress: string;\n tokenALiquidityInUsd: string;\n tokenBAddress: string;\n tokenBLiquidityInUsd: string;\n}\n\nexport interface TokenLiquidity {\n tokenAddress: string;\n metricType: MetricType;\n value: string;\n timestamp: number;\n}\n\nexport interface DexProtocol {\n programAddress?: string;\n protocolFamily?: string;\n protocolName?: string;\n}\n\nexport interface TokenBondingCurve {\n tokenAddress?: string;\n progressRatio?: string;\n}\n\nexport interface TokenMetadata {\n tokenAddress: string;\n name?: string;\n decimals?: number;\n symbol?: string;\n imageUrl?: string;\n description?: string;\n socialMedia?: socialMedia;\n createdAtMs?: number;\n launchFrom?: DexProtocol;\n migratedTo?: DexProtocol;\n}\n\nexport interface socialMedia {\n twitter?: string;\n telegram?: string;\n website?: string;\n tiktok?: string;\n discord?: string;\n facebook?: string;\n github?: string;\n instagram?: string;\n linkedin?: string;\n medium?: string;\n reddit?: string;\n youtube?: string;\n bitbucket?: string;\n}\n\nexport interface TokenCandle {\n open: string;\n close: string;\n high: string;\n low: string;\n volume: string;\n resolution: Resolution;\n time: number;\n number: number;\n}\n\nexport interface TradeActivity {\n tokenAddress: string;\n timestamp: number;\n kind: string;\n buyAmount: string;\n buyAmountInUsd: string;\n buyTokenAddress: string;\n buyTokenName: string;\n buyTokenSymbol: string;\n buyWalletAddress: string;\n sellAmount: string;\n sellAmountInUsd: string;\n sellTokenAddress: string;\n sellTokenName: string;\n sellTokenSymbol: string;\n sellWalletAddress: string;\n txHash: string;\n}\n\nexport interface WalletTokenPnl {\n walletAddress: string;\n tokenAddress: string;\n tokenPriceInUsd: string;\n timestamp: number;\n opentime: number;\n lasttime: number;\n closetime: number;\n buyAmount: string;\n buyAmountInUsd: string;\n buyCount: number;\n buyCount30d: number;\n buyCount7d: number;\n sellAmount: string;\n sellAmountInUsd: string;\n sellCount: number;\n sellCount30d: number;\n sellCount7d: number;\n heldDurationTimestamp: number;\n averageBuyPriceInUsd: string;\n averageSellPriceInUsd: string;\n unrealizedProfitInUsd: string;\n unrealizedProfitRatio: string;\n realizedProfitInUsd: string;\n realizedProfitRatio: string;\n totalRealizedProfitInUsd: string;\n totalRealizedProfitRatio: string;\n}\n\nexport enum RankingType {\n NEW = \"new\",\n HOT = \"trending\",\n STOCKS = \"stocks\",\n FINALSTRETCH = \"completed\",\n MIGRATED = \"graduated\",\n}\n\nexport enum Dex {\n PUMP_FUN = \"pump_fun\",\n RAYDIUM_LAUNCHPAD = \"raydium_launchpad\",\n METEOR_DYNAMIC_BOUNDING_CURVE = \"meteora_dynamic_bounding_curve\",\n BONK_FUN = \"bonk_fun\",\n BOOP_FUN = \"boop_fun\",\n MOONIT_FUN = \"moonit_fun\",\n}\n\nexport interface RankingTokenList {\n metadata?: TokenMetadata;\n holder?: TokenHolder;\n supply?: TokenSupply;\n stat?: TokenStat;\n bondingCurve?: TokenBondingCurve;\n}"],"mappings":"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","names":["TokenActivityType","ChannelType","MetricType","RankingType","Dex"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@chainstream-io/sdk",
3
- "version": "0.1.10",
3
+ "version": "0.1.12",
4
4
  "description": "API and Stream client for ChainStream",
5
5
  "author": "ChainStream",
6
6
  "repository": {
@@ -15,24 +15,25 @@
15
15
  "defi",
16
16
  "blockchain"
17
17
  ],
18
- "main": "./dist/index.js",
18
+ "type": "module",
19
19
  "types": "./dist/index.d.ts",
20
- "module": "./dist/esm/index.js",
20
+ "main": "./dist/index.cjs",
21
+ "module": "./dist/index.mjs",
21
22
  "exports": {
22
23
  ".": {
23
- "import": "./dist/esm/index.js",
24
- "require": "./dist/index.js",
25
- "types": "./dist/index.d.ts"
24
+ "types": "./dist/index.d.ts",
25
+ "import": "./dist/index.mjs",
26
+ "require": "./dist/index.cjs"
26
27
  },
27
28
  "./openapi": {
28
- "import": "./dist/esm/openapi/index.js",
29
- "require": "./dist/openapi/index.js",
30
- "types": "./dist/openapi/index.d.ts"
29
+ "types": "./dist/openapi/index.d.ts",
30
+ "import": "./dist/openapi/index.mjs",
31
+ "require": "./dist/openapi/index.cjs"
31
32
  },
32
33
  "./stream": {
33
- "import": "./dist/esm/stream/index.js",
34
- "require": "./dist/stream/index.js",
35
- "types": "./dist/stream/index.d.ts"
34
+ "types": "./dist/stream/index.d.ts",
35
+ "import": "./dist/stream/index.mjs",
36
+ "require": "./dist/stream/index.cjs"
36
37
  }
37
38
  },
38
39
  "files": [
@@ -40,7 +41,7 @@
40
41
  ],
41
42
  "sideEffects": false,
42
43
  "scripts": {
43
- "build": "tsc && tsc -p tsconfig.esm.json",
44
+ "build": "tsup",
44
45
  "prepare": "yarn build"
45
46
  },
46
47
  "dependencies": {
@@ -49,6 +50,7 @@
49
50
  },
50
51
  "devDependencies": {
51
52
  "@types/event-source-polyfill": "^1.0.5",
53
+ "tsup": "^8.5.0",
52
54
  "typescript": "^5.0.0"
53
55
  },
54
56
  "publishConfig": {
@@ -1,40 +0,0 @@
1
- import { StreamApi } from "./stream";
2
- import { DexApi, Configuration, TransactionApi, DefiSolanaMoonshotApi, DefiSolanaPumpfunApi, DexPoolApi, TokenApi, RankingApi, TradeApi, WalletApi, RedPacketApi, IpfsApi, WatchlistApi, BlockchainApi, JobsApi } from "./openapi";
3
- export interface TokenProvider {
4
- getToken(): Promise<string> | string;
5
- }
6
- export interface DexRequestContext {
7
- baseUrl: string;
8
- streamUrl: string;
9
- accessToken: string | TokenProvider;
10
- }
11
- export interface DexAggregatorOptions {
12
- debug?: boolean;
13
- serverUrl?: string;
14
- streamUrl?: string;
15
- }
16
- export declare const LIB_VERSION = "0.1.5";
17
- export declare class DexClient {
18
- readonly requestCtx: DexRequestContext;
19
- readonly _configuration: Configuration;
20
- readonly dex: DexApi;
21
- readonly dexpool: DexPoolApi;
22
- readonly token: TokenApi;
23
- readonly wallet: WalletApi;
24
- readonly trade: TradeApi;
25
- readonly ranking: RankingApi;
26
- readonly transaction: TransactionApi;
27
- readonly moonshot: DefiSolanaMoonshotApi;
28
- readonly pumpfun: DefiSolanaPumpfunApi;
29
- readonly stream: StreamApi;
30
- readonly redPacket: RedPacketApi;
31
- readonly ipfs: IpfsApi;
32
- readonly blockchain: BlockchainApi;
33
- readonly watchlist: WatchlistApi;
34
- readonly jobs: JobsApi;
35
- constructor(accessToken: string | TokenProvider, options?: DexAggregatorOptions);
36
- waitForJob<T>(jobId: string, timeout?: number): Promise<T>;
37
- }
38
- export interface PostOptions {
39
- idempotencyKey?: string;
40
- }
package/dist/esm/index.js DELETED
@@ -1,125 +0,0 @@
1
- import { StreamApi } from "./stream";
2
- import { DexApi, Configuration, TransactionApi, DefiSolanaMoonshotApi, DefiSolanaPumpfunApi, DexPoolApi, TokenApi, RankingApi, TradeApi, WalletApi, RedPacketApi, IpfsApi, WatchlistApi, BlockchainApi, JobsApi, } from "./openapi";
3
- import { EventSourcePolyfill } from "event-source-polyfill";
4
- export const LIB_VERSION = "0.1.5";
5
- class UserAgentMiddleware {
6
- async pre(context) {
7
- if (!context.init.headers) {
8
- context.init.headers = {};
9
- }
10
- if (context.init.headers instanceof Headers) {
11
- context.init.headers.set("User-Agent", `dex/${LIB_VERSION}/javascript`);
12
- }
13
- else {
14
- context.init.headers["User-Agent"] = `dex/${LIB_VERSION}/javascript`;
15
- }
16
- }
17
- async post(context) { }
18
- }
19
- export class DexClient {
20
- requestCtx;
21
- _configuration;
22
- dex;
23
- dexpool;
24
- token;
25
- wallet;
26
- trade;
27
- ranking;
28
- transaction;
29
- moonshot;
30
- pumpfun;
31
- stream;
32
- redPacket;
33
- ipfs;
34
- blockchain;
35
- watchlist;
36
- jobs;
37
- constructor(accessToken, options = {}) {
38
- const baseUrl = options.serverUrl ?? "https://api-dex.chainstream.io";
39
- const streamUrl = options.streamUrl ??
40
- "wss://realtime-dex.chainstream.io/connection/websocket";
41
- const tokenProvider = typeof accessToken === "string"
42
- ? {
43
- getToken: () => accessToken,
44
- }
45
- : accessToken;
46
- this.requestCtx = { baseUrl, streamUrl, accessToken };
47
- const config = new Configuration({
48
- basePath: baseUrl,
49
- middleware: [new UserAgentMiddleware()],
50
- accessToken: async () => {
51
- return typeof accessToken === "string"
52
- ? accessToken
53
- : await accessToken.getToken();
54
- },
55
- headers: {
56
- "User-Agent": `dex/${LIB_VERSION}/javascript`,
57
- },
58
- });
59
- this._configuration = config;
60
- this.dex = new DexApi(config);
61
- this.dexpool = new DexPoolApi(config);
62
- this.token = new TokenApi(config);
63
- this.trade = new TradeApi(config);
64
- this.ranking = new RankingApi(config);
65
- this.transaction = new TransactionApi(config);
66
- this.moonshot = new DefiSolanaMoonshotApi(config);
67
- this.pumpfun = new DefiSolanaPumpfunApi(config);
68
- this.stream = new StreamApi(this.requestCtx);
69
- this.wallet = new WalletApi(config);
70
- this.redPacket = new RedPacketApi(config);
71
- this.ipfs = new IpfsApi(config);
72
- this.blockchain = new BlockchainApi(config);
73
- this.watchlist = new WatchlistApi(config);
74
- this.jobs = new JobsApi(config);
75
- this.stream.connect();
76
- }
77
- async waitForJob(jobId, timeout = 60000) {
78
- const accessToken = typeof this.requestCtx.accessToken === "string"
79
- ? this.requestCtx.accessToken
80
- : await this.requestCtx.accessToken.getToken();
81
- return new Promise((resolve, reject) => {
82
- const sse = new EventSourcePolyfill(`${this.requestCtx.baseUrl}/jobs/${jobId}/streaming`, {
83
- headers: {
84
- Authorization: `Bearer ${accessToken}`,
85
- },
86
- });
87
- const timeoutId = setTimeout(() => {
88
- sse.close();
89
- reject(new Error(`Job ${jobId} timed out after ${timeout}ms`));
90
- }, timeout);
91
- sse.onmessage = (event) => {
92
- try {
93
- console.log("event.data: ", event.data);
94
- const data = JSON.parse(event.data);
95
- if (data.status === "error") {
96
- sse.close();
97
- reject(new Error(`Error: ${data.message}`));
98
- }
99
- else if (data.status === "completed") {
100
- clearTimeout(timeoutId);
101
- sse.close();
102
- resolve(data);
103
- }
104
- }
105
- catch (e) {
106
- clearTimeout(timeoutId);
107
- sse.close();
108
- reject(new Error("Error parsing event data"));
109
- }
110
- };
111
- sse.onopen = () => {
112
- console.log("SSE connection opened");
113
- };
114
- sse.onerror = (error) => {
115
- if (error.message?.includes("No activity within")) {
116
- console.log("SSE reconnecting due to inactivity...");
117
- return;
118
- }
119
- clearTimeout(timeoutId);
120
- sse.close();
121
- reject(new Error(`Error in SSE connection: ${error}`));
122
- };
123
- });
124
- }
125
- }
@@ -1,57 +0,0 @@
1
- /**
2
- * Dex Aggregator API
3
- * Dex Aggregator API ⚡️
4
- *
5
- * The version of the OpenAPI document: 1.0
6
- * Contact: ai@sx.ai
7
- *
8
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
- * https://openapi-generator.tech
10
- * Do not edit the class manually.
11
- */
12
- import * as runtime from '../runtime';
13
- import type { BlockchainDTO, BlockchainLatestBlockDTO } from '../models/index';
14
- export interface GetLatestBlockRequest {
15
- chain: GetLatestBlockChainEnum;
16
- }
17
- /**
18
- *
19
- */
20
- export declare class BlockchainApi extends runtime.BaseAPI {
21
- /**
22
- * CONTROLLER.GET_LATEST_BLOCK.DESCRIPTION
23
- * CONTROLLER.GET_LATEST_BLOCK.SUMMARY
24
- */
25
- getLatestBlockRaw(requestParameters: GetLatestBlockRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BlockchainLatestBlockDTO>>;
26
- /**
27
- * CONTROLLER.GET_LATEST_BLOCK.DESCRIPTION
28
- * CONTROLLER.GET_LATEST_BLOCK.SUMMARY
29
- */
30
- getLatestBlock(requestParameters: GetLatestBlockRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BlockchainLatestBlockDTO>;
31
- /**
32
- * CONTROLLER.GET_SUPPORTED_BLOCKCHAINS.DESCRIPTION
33
- * CONTROLLER.GET_SUPPORTED_BLOCKCHAINS.SUMMARY
34
- */
35
- getSupportedBlockchainsRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<BlockchainDTO>>>;
36
- /**
37
- * CONTROLLER.GET_SUPPORTED_BLOCKCHAINS.DESCRIPTION
38
- * CONTROLLER.GET_SUPPORTED_BLOCKCHAINS.SUMMARY
39
- */
40
- getSupportedBlockchains(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<BlockchainDTO>>;
41
- }
42
- /**
43
- * @export
44
- */
45
- export declare const GetLatestBlockChainEnum: {
46
- readonly Sol: "sol";
47
- readonly Base: "base";
48
- readonly Bsc: "bsc";
49
- readonly Polygon: "polygon";
50
- readonly Arbitrum: "arbitrum";
51
- readonly Optimism: "optimism";
52
- readonly Avalanche: "avalanche";
53
- readonly Ethereum: "ethereum";
54
- readonly Zksync: "zksync";
55
- readonly Sui: "sui";
56
- };
57
- export type GetLatestBlockChainEnum = typeof GetLatestBlockChainEnum[keyof typeof GetLatestBlockChainEnum];
@@ -1,101 +0,0 @@
1
- /* tslint:disable */
2
- /* eslint-disable */
3
- /**
4
- * Dex Aggregator API
5
- * Dex Aggregator API ⚡️
6
- *
7
- * The version of the OpenAPI document: 1.0
8
- * Contact: ai@sx.ai
9
- *
10
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
- * https://openapi-generator.tech
12
- * Do not edit the class manually.
13
- */
14
- import * as runtime from '../runtime';
15
- import { BlockchainDTOFromJSON, BlockchainLatestBlockDTOFromJSON, } from '../models/index';
16
- /**
17
- *
18
- */
19
- export class BlockchainApi extends runtime.BaseAPI {
20
- /**
21
- * CONTROLLER.GET_LATEST_BLOCK.DESCRIPTION
22
- * CONTROLLER.GET_LATEST_BLOCK.SUMMARY
23
- */
24
- async getLatestBlockRaw(requestParameters, initOverrides) {
25
- if (requestParameters['chain'] == null) {
26
- throw new runtime.RequiredError('chain', 'Required parameter "chain" was null or undefined when calling getLatestBlock().');
27
- }
28
- const queryParameters = {};
29
- const headerParameters = {};
30
- if (this.configuration && this.configuration.accessToken) {
31
- const token = this.configuration.accessToken;
32
- const tokenString = await token("bearer", []);
33
- if (tokenString) {
34
- headerParameters["Authorization"] = `Bearer ${tokenString}`;
35
- }
36
- }
37
- let urlPath = `/v1/blockchain/{chain}/latest_block`;
38
- urlPath = urlPath.replace(`{${"chain"}}`, encodeURIComponent(String(requestParameters['chain'])));
39
- const response = await this.request({
40
- path: urlPath,
41
- method: 'GET',
42
- headers: headerParameters,
43
- query: queryParameters,
44
- }, initOverrides);
45
- return new runtime.JSONApiResponse(response, (jsonValue) => BlockchainLatestBlockDTOFromJSON(jsonValue));
46
- }
47
- /**
48
- * CONTROLLER.GET_LATEST_BLOCK.DESCRIPTION
49
- * CONTROLLER.GET_LATEST_BLOCK.SUMMARY
50
- */
51
- async getLatestBlock(requestParameters, initOverrides) {
52
- const response = await this.getLatestBlockRaw(requestParameters, initOverrides);
53
- return await response.value();
54
- }
55
- /**
56
- * CONTROLLER.GET_SUPPORTED_BLOCKCHAINS.DESCRIPTION
57
- * CONTROLLER.GET_SUPPORTED_BLOCKCHAINS.SUMMARY
58
- */
59
- async getSupportedBlockchainsRaw(initOverrides) {
60
- const queryParameters = {};
61
- const headerParameters = {};
62
- if (this.configuration && this.configuration.accessToken) {
63
- const token = this.configuration.accessToken;
64
- const tokenString = await token("bearer", []);
65
- if (tokenString) {
66
- headerParameters["Authorization"] = `Bearer ${tokenString}`;
67
- }
68
- }
69
- let urlPath = `/v1/blockchain`;
70
- const response = await this.request({
71
- path: urlPath,
72
- method: 'GET',
73
- headers: headerParameters,
74
- query: queryParameters,
75
- }, initOverrides);
76
- return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(BlockchainDTOFromJSON));
77
- }
78
- /**
79
- * CONTROLLER.GET_SUPPORTED_BLOCKCHAINS.DESCRIPTION
80
- * CONTROLLER.GET_SUPPORTED_BLOCKCHAINS.SUMMARY
81
- */
82
- async getSupportedBlockchains(initOverrides) {
83
- const response = await this.getSupportedBlockchainsRaw(initOverrides);
84
- return await response.value();
85
- }
86
- }
87
- /**
88
- * @export
89
- */
90
- export const GetLatestBlockChainEnum = {
91
- Sol: 'sol',
92
- Base: 'base',
93
- Bsc: 'bsc',
94
- Polygon: 'polygon',
95
- Arbitrum: 'arbitrum',
96
- Optimism: 'optimism',
97
- Avalanche: 'avalanche',
98
- Ethereum: 'ethereum',
99
- Zksync: 'zksync',
100
- Sui: 'sui'
101
- };
@@ -1,44 +0,0 @@
1
- /**
2
- * Dex Aggregator API
3
- * Dex Aggregator API ⚡️
4
- *
5
- * The version of the OpenAPI document: 1.0
6
- * Contact: ai@sx.ai
7
- *
8
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
- * https://openapi-generator.tech
10
- * Do not edit the class manually.
11
- */
12
- import * as runtime from '../runtime';
13
- import type { MoonshotCreateTokenInput, MoonshotCreateTokenReply, MoonshotSubmitCreateToken200Response, MoonshotSubmitCreateTokenInput } from '../models/index';
14
- export interface MoonshotCreateTokenRequest {
15
- moonshotCreateTokenInput: MoonshotCreateTokenInput;
16
- }
17
- export interface MoonshotSubmitCreateTokenRequest {
18
- moonshotSubmitCreateTokenInput: MoonshotSubmitCreateTokenInput;
19
- }
20
- /**
21
- *
22
- */
23
- export declare class DefiSolanaMoonshotApi extends runtime.BaseAPI {
24
- /**
25
- * CONTROLLER.MOONSHOT.CREATE_TOKEN.DESCRIPTION
26
- * CONTROLLER.MOONSHOT.CREATE_TOKEN.SUMMARY
27
- */
28
- moonshotCreateTokenRaw(requestParameters: MoonshotCreateTokenRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<MoonshotCreateTokenReply>>;
29
- /**
30
- * CONTROLLER.MOONSHOT.CREATE_TOKEN.DESCRIPTION
31
- * CONTROLLER.MOONSHOT.CREATE_TOKEN.SUMMARY
32
- */
33
- moonshotCreateToken(requestParameters: MoonshotCreateTokenRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<MoonshotCreateTokenReply>;
34
- /**
35
- * CONTROLLER.MOONSHOT.SUBMIT_CREATE_TOKEN.DESCRIPTION
36
- * CONTROLLER.MOONSHOT.SUBMIT_CREATE_TOKEN.SUMMARY
37
- */
38
- moonshotSubmitCreateTokenRaw(requestParameters: MoonshotSubmitCreateTokenRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<MoonshotSubmitCreateToken200Response>>;
39
- /**
40
- * CONTROLLER.MOONSHOT.SUBMIT_CREATE_TOKEN.DESCRIPTION
41
- * CONTROLLER.MOONSHOT.SUBMIT_CREATE_TOKEN.SUMMARY
42
- */
43
- moonshotSubmitCreateToken(requestParameters: MoonshotSubmitCreateTokenRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<MoonshotSubmitCreateToken200Response>;
44
- }