@shogun-sdk/intents-sdk 1.3.0 → 1.4.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 (670) hide show
  1. package/README.md +15 -22
  2. package/dist/index.cjs +8997 -0
  3. package/dist/index.cjs.map +1 -0
  4. package/dist/index.d.cts +1654 -0
  5. package/dist/index.d.ts +1654 -0
  6. package/dist/index.js +9246 -0
  7. package/dist/index.js.map +1 -0
  8. package/package.json +28 -15
  9. package/src/auth/siwe.ts +8 -3
  10. package/src/chains.ts +6 -0
  11. package/src/constants.ts +67 -13
  12. package/src/core/evm/chain-provider.ts +4 -1
  13. package/src/core/evm/connectors/monad.ts +27 -0
  14. package/src/core/evm/cross-chain-limit-order.ts +14 -14
  15. package/src/core/evm/intent-helpers.ts +153 -19
  16. package/src/core/evm/intent-provider.ts +5 -4
  17. package/src/core/evm/permit2.ts +36 -0
  18. package/src/core/evm/single-chain-dca-order.ts +18 -18
  19. package/src/core/evm/single-chain-limit-order.ts +15 -15
  20. package/src/core/evm/types.ts +4 -4
  21. package/src/core/evm/validator.ts +1 -1
  22. package/src/core/orders/api/fetch.ts +33 -16
  23. package/src/core/orders/api/index.ts +39 -8
  24. package/src/core/orders/common.ts +2 -0
  25. package/src/core/orders/cross-chain.ts +15 -8
  26. package/src/core/orders/single-chain.ts +30 -13
  27. package/src/core/sdk.ts +11 -0
  28. package/src/core/solana/cancel-order.ts +4 -2
  29. package/src/core/solana/client.ts +1 -1
  30. package/src/core/solana/dca/cancel-order.ts +2 -1
  31. package/src/core/solana/dca/single-chain-dca-order.ts +19 -22
  32. package/src/core/solana/dca/single-chain-limit-order.ts +20 -22
  33. package/src/core/solana/generated/cross-chain/accounts/dcaOrder.ts +2 -2
  34. package/src/core/solana/generated/cross-chain/accounts/guard.ts +22 -10
  35. package/src/core/solana/generated/cross-chain/errors/sourceChainGuard.ts +37 -33
  36. package/src/core/solana/generated/cross-chain/instructions/cancelDcaOrder.ts +36 -22
  37. package/src/core/solana/generated/cross-chain/instructions/cancelOrder.ts +32 -18
  38. package/src/core/solana/generated/cross-chain/instructions/claimTokensForDcaInterval.ts +396 -0
  39. package/src/core/solana/generated/cross-chain/instructions/index.ts +5 -0
  40. package/src/core/solana/generated/cross-chain/instructions/preStartDcaOrderExecution.ts +504 -0
  41. package/src/core/solana/generated/cross-chain/instructions/setCancelAuthorities.ts +326 -0
  42. package/src/core/solana/generated/cross-chain/instructions/startDcaOrderExecution.ts +440 -0
  43. package/src/core/solana/generated/cross-chain/instructions/startDcaOrderExecutionAfterSwap.ts +322 -0
  44. package/src/core/solana/generated/cross-chain/programs/sourceChainGuard.ts +80 -0
  45. package/src/core/solana/generated/cross-chain/types/cancelAuthoritiesUpdated.ts +40 -0
  46. package/src/core/solana/generated/cross-chain/types/index.ts +1 -0
  47. package/src/core/solana/generated/single-chain/accounts/guard.ts +22 -10
  48. package/src/core/solana/generated/single-chain/errors/singleChainGuard.ts +24 -20
  49. package/src/core/solana/generated/single-chain/instructions/cancelDcaOrder.ts +28 -14
  50. package/src/core/solana/generated/single-chain/instructions/cancelLimitOrder.ts +28 -14
  51. package/src/core/solana/generated/single-chain/instructions/fulfillDcaOrderInterval.ts +30 -4
  52. package/src/core/solana/generated/single-chain/instructions/fulfillLimitOrder.ts +30 -4
  53. package/src/core/solana/generated/single-chain/instructions/index.ts +1 -0
  54. package/src/core/solana/generated/single-chain/instructions/setCancelAuthorities.ts +326 -0
  55. package/src/core/solana/generated/single-chain/programs/singleChainGuard.ts +17 -1
  56. package/src/core/solana/generated/single-chain/types/cancelAuthoritiesUpdated.ts +40 -0
  57. package/src/core/solana/generated/single-chain/types/index.ts +1 -0
  58. package/src/core/solana/intent-helpers.ts +31 -23
  59. package/src/core/solana/sdk.ts +1 -1
  60. package/src/core/solana/utils.ts +10 -1
  61. package/src/core/sui/cross-chain-limit-order.ts +1 -4
  62. package/src/core/sui/intent-helpers.ts +28 -31
  63. package/src/core/sui/order-transaction.ts +1 -1
  64. package/src/core/sui/single-chain-dca-order.ts +19 -32
  65. package/src/core/sui/single-chain-limit-order.ts +19 -34
  66. package/src/index.ts +8 -2
  67. package/src/types/api.ts +22 -2
  68. package/src/types/intent.ts +40 -4
  69. package/src/types/token-list.ts +2 -2
  70. package/src/utils/base-validator.ts +0 -4
  71. package/src/utils/defillama.ts +2 -0
  72. package/src/utils/generate-execution-details-hash.ts +11 -32
  73. package/src/utils/quote/address.ts +4 -0
  74. package/src/utils/quote/aggregator.ts +266 -106
  75. package/src/utils/quote/liquidswap.ts +42 -13
  76. package/src/utils/quote/paraswap.ts +2 -0
  77. package/src/utils/quote/pricing/constants.ts +33 -0
  78. package/src/utils/quote/pricing/decimals.ts +11 -0
  79. package/src/utils/quote/pricing/estimate-amount-out.ts +36 -0
  80. package/src/utils/quote/pricing/expenses.ts +62 -0
  81. package/src/utils/quote/pricing/gas.ts +28 -0
  82. package/src/utils/quote/pumpfun/estimations.ts +206 -0
  83. package/src/utils/quote/pumpfun/estimations_amm.ts +165 -0
  84. package/src/utils/quote/pumpfun/index.ts +266 -0
  85. package/src/utils/quote/pumpfun/models.ts +163 -0
  86. package/src/utils/quote/pumpfun/utils.ts +343 -0
  87. package/src/utils/quote/raydium.ts +350 -9
  88. package/src/utils/quote/relay.ts +99 -0
  89. package/src/utils/quote/stablecoins-tokens.ts +35 -8
  90. package/src/utils/quote/utils.ts +8 -0
  91. package/dist/esm/auth/siwe.js +0 -26
  92. package/dist/esm/auth/siwe.js.map +0 -1
  93. package/dist/esm/chains.js +0 -62
  94. package/dist/esm/chains.js.map +0 -1
  95. package/dist/esm/config.js +0 -2
  96. package/dist/esm/config.js.map +0 -1
  97. package/dist/esm/constants.js +0 -107
  98. package/dist/esm/constants.js.map +0 -1
  99. package/dist/esm/core/evm/abi/erc20.js +0 -313
  100. package/dist/esm/core/evm/abi/erc20.js.map +0 -1
  101. package/dist/esm/core/evm/abi/permit2.js +0 -395
  102. package/dist/esm/core/evm/abi/permit2.js.map +0 -1
  103. package/dist/esm/core/evm/abi/single-chain-guard-limit.js +0 -768
  104. package/dist/esm/core/evm/abi/single-chain-guard-limit.js.map +0 -1
  105. package/dist/esm/core/evm/abi/source-chain-guard.js +0 -1121
  106. package/dist/esm/core/evm/abi/source-chain-guard.js.map +0 -1
  107. package/dist/esm/core/evm/cancel-order.js +0 -130
  108. package/dist/esm/core/evm/cancel-order.js.map +0 -1
  109. package/dist/esm/core/evm/chain-provider.js +0 -118
  110. package/dist/esm/core/evm/chain-provider.js.map +0 -1
  111. package/dist/esm/core/evm/connectors/hyperevm.js +0 -23
  112. package/dist/esm/core/evm/connectors/hyperevm.js.map +0 -1
  113. package/dist/esm/core/evm/cross-chain-limit-order.js +0 -43
  114. package/dist/esm/core/evm/cross-chain-limit-order.js.map +0 -1
  115. package/dist/esm/core/evm/intent-helpers.js +0 -135
  116. package/dist/esm/core/evm/intent-helpers.js.map +0 -1
  117. package/dist/esm/core/evm/intent-provider.js +0 -162
  118. package/dist/esm/core/evm/intent-provider.js.map +0 -1
  119. package/dist/esm/core/evm/order-signature.js +0 -41
  120. package/dist/esm/core/evm/order-signature.js.map +0 -1
  121. package/dist/esm/core/evm/permit2.js +0 -82
  122. package/dist/esm/core/evm/permit2.js.map +0 -1
  123. package/dist/esm/core/evm/sdk.js +0 -175
  124. package/dist/esm/core/evm/sdk.js.map +0 -1
  125. package/dist/esm/core/evm/single-chain-dca-order.js +0 -49
  126. package/dist/esm/core/evm/single-chain-dca-order.js.map +0 -1
  127. package/dist/esm/core/evm/single-chain-limit-order.js +0 -45
  128. package/dist/esm/core/evm/single-chain-limit-order.js.map +0 -1
  129. package/dist/esm/core/evm/types.js +0 -8
  130. package/dist/esm/core/evm/types.js.map +0 -1
  131. package/dist/esm/core/evm/validator.js +0 -111
  132. package/dist/esm/core/evm/validator.js.map +0 -1
  133. package/dist/esm/core/orders/api/fetch.js +0 -17
  134. package/dist/esm/core/orders/api/fetch.js.map +0 -1
  135. package/dist/esm/core/orders/api/index.js +0 -31
  136. package/dist/esm/core/orders/api/index.js.map +0 -1
  137. package/dist/esm/core/orders/common.js +0 -8
  138. package/dist/esm/core/orders/common.js.map +0 -1
  139. package/dist/esm/core/orders/cross-chain.js +0 -311
  140. package/dist/esm/core/orders/cross-chain.js.map +0 -1
  141. package/dist/esm/core/orders/dca-single-chain.js +0 -172
  142. package/dist/esm/core/orders/dca-single-chain.js.map +0 -1
  143. package/dist/esm/core/orders/single-chain.js +0 -197
  144. package/dist/esm/core/orders/single-chain.js.map +0 -1
  145. package/dist/esm/core/sdk.js +0 -86
  146. package/dist/esm/core/sdk.js.map +0 -1
  147. package/dist/esm/core/solana/cancel-order.js +0 -176
  148. package/dist/esm/core/solana/cancel-order.js.map +0 -1
  149. package/dist/esm/core/solana/client.js +0 -19
  150. package/dist/esm/core/solana/client.js.map +0 -1
  151. package/dist/esm/core/solana/dca/cancel-order.js +0 -61
  152. package/dist/esm/core/solana/dca/cancel-order.js.map +0 -1
  153. package/dist/esm/core/solana/dca/create-order.js +0 -82
  154. package/dist/esm/core/solana/dca/create-order.js.map +0 -1
  155. package/dist/esm/core/solana/dca/single-chain-dca-order.js +0 -23
  156. package/dist/esm/core/solana/dca/single-chain-dca-order.js.map +0 -1
  157. package/dist/esm/core/solana/dca/single-chain-limit-order.js +0 -29
  158. package/dist/esm/core/solana/dca/single-chain-limit-order.js.map +0 -1
  159. package/dist/esm/core/solana/generated/cross-chain/accounts/adminSingleton.js +0 -60
  160. package/dist/esm/core/solana/generated/cross-chain/accounts/adminSingleton.js.map +0 -1
  161. package/dist/esm/core/solana/generated/cross-chain/accounts/dcaOrder.js +0 -90
  162. package/dist/esm/core/solana/generated/cross-chain/accounts/dcaOrder.js.map +0 -1
  163. package/dist/esm/core/solana/generated/cross-chain/accounts/guard.js +0 -64
  164. package/dist/esm/core/solana/generated/cross-chain/accounts/guard.js.map +0 -1
  165. package/dist/esm/core/solana/generated/cross-chain/accounts/index.js +0 -12
  166. package/dist/esm/core/solana/generated/cross-chain/accounts/index.js.map +0 -1
  167. package/dist/esm/core/solana/generated/cross-chain/accounts/order.js +0 -78
  168. package/dist/esm/core/solana/generated/cross-chain/accounts/order.js.map +0 -1
  169. package/dist/esm/core/solana/generated/cross-chain/errors/index.js +0 -9
  170. package/dist/esm/core/solana/generated/cross-chain/errors/index.js.map +0 -1
  171. package/dist/esm/core/solana/generated/cross-chain/errors/sourceChainGuard.js +0 -140
  172. package/dist/esm/core/solana/generated/cross-chain/errors/sourceChainGuard.js.map +0 -1
  173. package/dist/esm/core/solana/generated/cross-chain/index.js +0 -13
  174. package/dist/esm/core/solana/generated/cross-chain/index.js.map +0 -1
  175. package/dist/esm/core/solana/generated/cross-chain/instructions/acceptAdmin.js +0 -88
  176. package/dist/esm/core/solana/generated/cross-chain/instructions/acceptAdmin.js.map +0 -1
  177. package/dist/esm/core/solana/generated/cross-chain/instructions/cancelDcaOrder.js +0 -118
  178. package/dist/esm/core/solana/generated/cross-chain/instructions/cancelDcaOrder.js.map +0 -1
  179. package/dist/esm/core/solana/generated/cross-chain/instructions/cancelOrder.js +0 -107
  180. package/dist/esm/core/solana/generated/cross-chain/instructions/cancelOrder.js.map +0 -1
  181. package/dist/esm/core/solana/generated/cross-chain/instructions/claimTokens.js +0 -127
  182. package/dist/esm/core/solana/generated/cross-chain/instructions/claimTokens.js.map +0 -1
  183. package/dist/esm/core/solana/generated/cross-chain/instructions/collectProtocolFees.js +0 -133
  184. package/dist/esm/core/solana/generated/cross-chain/instructions/collectProtocolFees.js.map +0 -1
  185. package/dist/esm/core/solana/generated/cross-chain/instructions/createDcaOrder.js +0 -170
  186. package/dist/esm/core/solana/generated/cross-chain/instructions/createDcaOrder.js.map +0 -1
  187. package/dist/esm/core/solana/generated/cross-chain/instructions/createGuard.js +0 -188
  188. package/dist/esm/core/solana/generated/cross-chain/instructions/createGuard.js.map +0 -1
  189. package/dist/esm/core/solana/generated/cross-chain/instructions/createOrder.js +0 -166
  190. package/dist/esm/core/solana/generated/cross-chain/instructions/createOrder.js.map +0 -1
  191. package/dist/esm/core/solana/generated/cross-chain/instructions/index.js +0 -22
  192. package/dist/esm/core/solana/generated/cross-chain/instructions/index.js.map +0 -1
  193. package/dist/esm/core/solana/generated/cross-chain/instructions/initialize.js +0 -126
  194. package/dist/esm/core/solana/generated/cross-chain/instructions/initialize.js.map +0 -1
  195. package/dist/esm/core/solana/generated/cross-chain/instructions/preStartOrderExecution.js +0 -110
  196. package/dist/esm/core/solana/generated/cross-chain/instructions/preStartOrderExecution.js.map +0 -1
  197. package/dist/esm/core/solana/generated/cross-chain/instructions/setAdmin.js +0 -98
  198. package/dist/esm/core/solana/generated/cross-chain/instructions/setAdmin.js.map +0 -1
  199. package/dist/esm/core/solana/generated/cross-chain/instructions/setAuctioneerPubKey.js +0 -111
  200. package/dist/esm/core/solana/generated/cross-chain/instructions/setAuctioneerPubKey.js.map +0 -1
  201. package/dist/esm/core/solana/generated/cross-chain/instructions/startOrderExecution.js +0 -98
  202. package/dist/esm/core/solana/generated/cross-chain/instructions/startOrderExecution.js.map +0 -1
  203. package/dist/esm/core/solana/generated/cross-chain/instructions/startOrderExecutionAfterSwap.js +0 -106
  204. package/dist/esm/core/solana/generated/cross-chain/instructions/startOrderExecutionAfterSwap.js.map +0 -1
  205. package/dist/esm/core/solana/generated/cross-chain/programs/index.js +0 -9
  206. package/dist/esm/core/solana/generated/cross-chain/programs/index.js.map +0 -1
  207. package/dist/esm/core/solana/generated/cross-chain/programs/sourceChainGuard.js +0 -98
  208. package/dist/esm/core/solana/generated/cross-chain/programs/sourceChainGuard.js.map +0 -1
  209. package/dist/esm/core/solana/generated/cross-chain/shared/index.js +0 -79
  210. package/dist/esm/core/solana/generated/cross-chain/shared/index.js.map +0 -1
  211. package/dist/esm/core/solana/generated/cross-chain/types/adminUpdateStarted.js +0 -18
  212. package/dist/esm/core/solana/generated/cross-chain/types/adminUpdateStarted.js.map +0 -1
  213. package/dist/esm/core/solana/generated/cross-chain/types/adminUpdated.js +0 -18
  214. package/dist/esm/core/solana/generated/cross-chain/types/adminUpdated.js.map +0 -1
  215. package/dist/esm/core/solana/generated/cross-chain/types/auctioneerPubkeyUpdated.js +0 -24
  216. package/dist/esm/core/solana/generated/cross-chain/types/auctioneerPubkeyUpdated.js.map +0 -1
  217. package/dist/esm/core/solana/generated/cross-chain/types/dcaExecutionStarted.js +0 -32
  218. package/dist/esm/core/solana/generated/cross-chain/types/dcaExecutionStarted.js.map +0 -1
  219. package/dist/esm/core/solana/generated/cross-chain/types/dcaOrderCreated.js +0 -42
  220. package/dist/esm/core/solana/generated/cross-chain/types/dcaOrderCreated.js.map +0 -1
  221. package/dist/esm/core/solana/generated/cross-chain/types/dcaOrderIntervalFulfilled.js +0 -26
  222. package/dist/esm/core/solana/generated/cross-chain/types/dcaOrderIntervalFulfilled.js.map +0 -1
  223. package/dist/esm/core/solana/generated/cross-chain/types/dcaTokenInSwapped.js +0 -28
  224. package/dist/esm/core/solana/generated/cross-chain/types/dcaTokenInSwapped.js.map +0 -1
  225. package/dist/esm/core/solana/generated/cross-chain/types/executionStarted.js +0 -30
  226. package/dist/esm/core/solana/generated/cross-chain/types/executionStarted.js.map +0 -1
  227. package/dist/esm/core/solana/generated/cross-chain/types/failedDcaIntervalExecution.js +0 -26
  228. package/dist/esm/core/solana/generated/cross-chain/types/failedDcaIntervalExecution.js.map +0 -1
  229. package/dist/esm/core/solana/generated/cross-chain/types/guardCreated.js +0 -28
  230. package/dist/esm/core/solana/generated/cross-chain/types/guardCreated.js.map +0 -1
  231. package/dist/esm/core/solana/generated/cross-chain/types/index.js +0 -22
  232. package/dist/esm/core/solana/generated/cross-chain/types/index.js.map +0 -1
  233. package/dist/esm/core/solana/generated/cross-chain/types/orderCancelled.js +0 -18
  234. package/dist/esm/core/solana/generated/cross-chain/types/orderCancelled.js.map +0 -1
  235. package/dist/esm/core/solana/generated/cross-chain/types/orderCreated.js +0 -36
  236. package/dist/esm/core/solana/generated/cross-chain/types/orderCreated.js.map +0 -1
  237. package/dist/esm/core/solana/generated/cross-chain/types/orderFulfilled.js +0 -18
  238. package/dist/esm/core/solana/generated/cross-chain/types/orderFulfilled.js.map +0 -1
  239. package/dist/esm/core/solana/generated/cross-chain/types/tokenInSwapped.js +0 -26
  240. package/dist/esm/core/solana/generated/cross-chain/types/tokenInSwapped.js.map +0 -1
  241. package/dist/esm/core/solana/generated/single-chain/accounts/adminSingleton.js +0 -60
  242. package/dist/esm/core/solana/generated/single-chain/accounts/adminSingleton.js.map +0 -1
  243. package/dist/esm/core/solana/generated/single-chain/accounts/dcaOrder.js +0 -75
  244. package/dist/esm/core/solana/generated/single-chain/accounts/dcaOrder.js.map +0 -1
  245. package/dist/esm/core/solana/generated/single-chain/accounts/guard.js +0 -62
  246. package/dist/esm/core/solana/generated/single-chain/accounts/guard.js.map +0 -1
  247. package/dist/esm/core/solana/generated/single-chain/accounts/index.js +0 -12
  248. package/dist/esm/core/solana/generated/single-chain/accounts/index.js.map +0 -1
  249. package/dist/esm/core/solana/generated/single-chain/accounts/limitOrder.js +0 -65
  250. package/dist/esm/core/solana/generated/single-chain/accounts/limitOrder.js.map +0 -1
  251. package/dist/esm/core/solana/generated/single-chain/errors/index.js +0 -9
  252. package/dist/esm/core/solana/generated/single-chain/errors/index.js.map +0 -1
  253. package/dist/esm/core/solana/generated/single-chain/errors/singleChainGuard.js +0 -101
  254. package/dist/esm/core/solana/generated/single-chain/errors/singleChainGuard.js.map +0 -1
  255. package/dist/esm/core/solana/generated/single-chain/index.js +0 -13
  256. package/dist/esm/core/solana/generated/single-chain/index.js.map +0 -1
  257. package/dist/esm/core/solana/generated/single-chain/instructions/acceptAdmin.js +0 -88
  258. package/dist/esm/core/solana/generated/single-chain/instructions/acceptAdmin.js.map +0 -1
  259. package/dist/esm/core/solana/generated/single-chain/instructions/cancelDcaOrder.js +0 -84
  260. package/dist/esm/core/solana/generated/single-chain/instructions/cancelDcaOrder.js.map +0 -1
  261. package/dist/esm/core/solana/generated/single-chain/instructions/cancelLimitOrder.js +0 -84
  262. package/dist/esm/core/solana/generated/single-chain/instructions/cancelLimitOrder.js.map +0 -1
  263. package/dist/esm/core/solana/generated/single-chain/instructions/collectProtocolFees.js +0 -121
  264. package/dist/esm/core/solana/generated/single-chain/instructions/collectProtocolFees.js.map +0 -1
  265. package/dist/esm/core/solana/generated/single-chain/instructions/createDcaOrder.js +0 -172
  266. package/dist/esm/core/solana/generated/single-chain/instructions/createDcaOrder.js.map +0 -1
  267. package/dist/esm/core/solana/generated/single-chain/instructions/createGuard.js +0 -163
  268. package/dist/esm/core/solana/generated/single-chain/instructions/createGuard.js.map +0 -1
  269. package/dist/esm/core/solana/generated/single-chain/instructions/createLimitOrder.js +0 -168
  270. package/dist/esm/core/solana/generated/single-chain/instructions/createLimitOrder.js.map +0 -1
  271. package/dist/esm/core/solana/generated/single-chain/instructions/fulfillDcaOrderInterval.js +0 -146
  272. package/dist/esm/core/solana/generated/single-chain/instructions/fulfillDcaOrderInterval.js.map +0 -1
  273. package/dist/esm/core/solana/generated/single-chain/instructions/fulfillLimitOrder.js +0 -146
  274. package/dist/esm/core/solana/generated/single-chain/instructions/fulfillLimitOrder.js.map +0 -1
  275. package/dist/esm/core/solana/generated/single-chain/instructions/index.js +0 -20
  276. package/dist/esm/core/solana/generated/single-chain/instructions/index.js.map +0 -1
  277. package/dist/esm/core/solana/generated/single-chain/instructions/initialize.js +0 -126
  278. package/dist/esm/core/solana/generated/single-chain/instructions/initialize.js.map +0 -1
  279. package/dist/esm/core/solana/generated/single-chain/instructions/setAdmin.js +0 -98
  280. package/dist/esm/core/solana/generated/single-chain/instructions/setAdmin.js.map +0 -1
  281. package/dist/esm/core/solana/generated/single-chain/instructions/setAuctioneerPubKey.js +0 -111
  282. package/dist/esm/core/solana/generated/single-chain/instructions/setAuctioneerPubKey.js.map +0 -1
  283. package/dist/esm/core/solana/generated/single-chain/programs/index.js +0 -9
  284. package/dist/esm/core/solana/generated/single-chain/programs/index.js.map +0 -1
  285. package/dist/esm/core/solana/generated/single-chain/programs/singleChainGuard.js +0 -90
  286. package/dist/esm/core/solana/generated/single-chain/programs/singleChainGuard.js.map +0 -1
  287. package/dist/esm/core/solana/generated/single-chain/shared/index.js +0 -79
  288. package/dist/esm/core/solana/generated/single-chain/shared/index.js.map +0 -1
  289. package/dist/esm/core/solana/generated/single-chain/types/adminUpdateStarted.js +0 -18
  290. package/dist/esm/core/solana/generated/single-chain/types/adminUpdateStarted.js.map +0 -1
  291. package/dist/esm/core/solana/generated/single-chain/types/adminUpdated.js +0 -18
  292. package/dist/esm/core/solana/generated/single-chain/types/adminUpdated.js.map +0 -1
  293. package/dist/esm/core/solana/generated/single-chain/types/auctioneerPubkeyUpdated.js +0 -24
  294. package/dist/esm/core/solana/generated/single-chain/types/auctioneerPubkeyUpdated.js.map +0 -1
  295. package/dist/esm/core/solana/generated/single-chain/types/dcaOrderCreated.js +0 -42
  296. package/dist/esm/core/solana/generated/single-chain/types/dcaOrderCreated.js.map +0 -1
  297. package/dist/esm/core/solana/generated/single-chain/types/dcaOrderFulfilled.js +0 -18
  298. package/dist/esm/core/solana/generated/single-chain/types/dcaOrderFulfilled.js.map +0 -1
  299. package/dist/esm/core/solana/generated/single-chain/types/dcaOrderIntervalFulfilled.js +0 -30
  300. package/dist/esm/core/solana/generated/single-chain/types/dcaOrderIntervalFulfilled.js.map +0 -1
  301. package/dist/esm/core/solana/generated/single-chain/types/guardCreated.js +0 -26
  302. package/dist/esm/core/solana/generated/single-chain/types/guardCreated.js.map +0 -1
  303. package/dist/esm/core/solana/generated/single-chain/types/index.js +0 -18
  304. package/dist/esm/core/solana/generated/single-chain/types/index.js.map +0 -1
  305. package/dist/esm/core/solana/generated/single-chain/types/limitOrderCreated.js +0 -36
  306. package/dist/esm/core/solana/generated/single-chain/types/limitOrderCreated.js.map +0 -1
  307. package/dist/esm/core/solana/generated/single-chain/types/limitOrderFulfilled.js +0 -24
  308. package/dist/esm/core/solana/generated/single-chain/types/limitOrderFulfilled.js.map +0 -1
  309. package/dist/esm/core/solana/generated/single-chain/types/orderCancelled.js +0 -18
  310. package/dist/esm/core/solana/generated/single-chain/types/orderCancelled.js.map +0 -1
  311. package/dist/esm/core/solana/inspect.js +0 -43
  312. package/dist/esm/core/solana/inspect.js.map +0 -1
  313. package/dist/esm/core/solana/intent-helpers.js +0 -180
  314. package/dist/esm/core/solana/intent-helpers.js.map +0 -1
  315. package/dist/esm/core/solana/order-instructions.js +0 -163
  316. package/dist/esm/core/solana/order-instructions.js.map +0 -1
  317. package/dist/esm/core/solana/sdk.js +0 -220
  318. package/dist/esm/core/solana/sdk.js.map +0 -1
  319. package/dist/esm/core/solana/utils.js +0 -19
  320. package/dist/esm/core/solana/utils.js.map +0 -1
  321. package/dist/esm/core/solana/validator.js +0 -28
  322. package/dist/esm/core/solana/validator.js.map +0 -1
  323. package/dist/esm/core/sui/cancel.js +0 -36
  324. package/dist/esm/core/sui/cancel.js.map +0 -1
  325. package/dist/esm/core/sui/client.js +0 -3
  326. package/dist/esm/core/sui/client.js.map +0 -1
  327. package/dist/esm/core/sui/cross-chain-limit-order.js +0 -9
  328. package/dist/esm/core/sui/cross-chain-limit-order.js.map +0 -1
  329. package/dist/esm/core/sui/intent-helpers.js +0 -140
  330. package/dist/esm/core/sui/intent-helpers.js.map +0 -1
  331. package/dist/esm/core/sui/order-transaction.js +0 -58
  332. package/dist/esm/core/sui/order-transaction.js.map +0 -1
  333. package/dist/esm/core/sui/sdk.js +0 -119
  334. package/dist/esm/core/sui/sdk.js.map +0 -1
  335. package/dist/esm/core/sui/single-chain-dca-order.js +0 -99
  336. package/dist/esm/core/sui/single-chain-dca-order.js.map +0 -1
  337. package/dist/esm/core/sui/single-chain-limit-order.js +0 -103
  338. package/dist/esm/core/sui/single-chain-limit-order.js.map +0 -1
  339. package/dist/esm/core/sui/validator.js +0 -31
  340. package/dist/esm/core/sui/validator.js.map +0 -1
  341. package/dist/esm/errors/index.js +0 -68
  342. package/dist/esm/errors/index.js.map +0 -1
  343. package/dist/esm/index.js +0 -41
  344. package/dist/esm/index.js.map +0 -1
  345. package/dist/esm/types/api.js +0 -7
  346. package/dist/esm/types/api.js.map +0 -1
  347. package/dist/esm/types/intent.js +0 -2
  348. package/dist/esm/types/intent.js.map +0 -1
  349. package/dist/esm/types/token-list.js +0 -2
  350. package/dist/esm/types/token-list.js.map +0 -1
  351. package/dist/esm/utils/base-validator.js +0 -91
  352. package/dist/esm/utils/base-validator.js.map +0 -1
  353. package/dist/esm/utils/defillama.js +0 -104
  354. package/dist/esm/utils/defillama.js.map +0 -1
  355. package/dist/esm/utils/generate-execution-details-hash.js +0 -15
  356. package/dist/esm/utils/generate-execution-details-hash.js.map +0 -1
  357. package/dist/esm/utils/logger.js +0 -109
  358. package/dist/esm/utils/logger.js.map +0 -1
  359. package/dist/esm/utils/order-validator.js +0 -112
  360. package/dist/esm/utils/order-validator.js.map +0 -1
  361. package/dist/esm/utils/parsers.js +0 -28
  362. package/dist/esm/utils/parsers.js.map +0 -1
  363. package/dist/esm/utils/quote/aftermath.js +0 -15
  364. package/dist/esm/utils/quote/aftermath.js.map +0 -1
  365. package/dist/esm/utils/quote/aggregator.js +0 -329
  366. package/dist/esm/utils/quote/aggregator.js.map +0 -1
  367. package/dist/esm/utils/quote/jupiter.js +0 -31
  368. package/dist/esm/utils/quote/jupiter.js.map +0 -1
  369. package/dist/esm/utils/quote/liquidswap.js +0 -22
  370. package/dist/esm/utils/quote/liquidswap.js.map +0 -1
  371. package/dist/esm/utils/quote/paraswap.js +0 -67
  372. package/dist/esm/utils/quote/paraswap.js.map +0 -1
  373. package/dist/esm/utils/quote/raydium.js +0 -82
  374. package/dist/esm/utils/quote/raydium.js.map +0 -1
  375. package/dist/esm/utils/quote/stablecoins-tokens.js +0 -13
  376. package/dist/esm/utils/quote/stablecoins-tokens.js.map +0 -1
  377. package/dist/esm/utils/tokens/index.js +0 -37
  378. package/dist/esm/utils/tokens/index.js.map +0 -1
  379. package/dist/esm/utils/type-utils.js +0 -2
  380. package/dist/esm/utils/type-utils.js.map +0 -1
  381. package/dist/types/auth/siwe.d.ts +0 -13
  382. package/dist/types/auth/siwe.d.ts.map +0 -1
  383. package/dist/types/chains.d.ts +0 -62
  384. package/dist/types/chains.d.ts.map +0 -1
  385. package/dist/types/config.d.ts +0 -21
  386. package/dist/types/config.d.ts.map +0 -1
  387. package/dist/types/constants.d.ts +0 -44
  388. package/dist/types/constants.d.ts.map +0 -1
  389. package/dist/types/core/evm/abi/erc20.d.ts +0 -240
  390. package/dist/types/core/evm/abi/erc20.d.ts.map +0 -1
  391. package/dist/types/core/evm/abi/permit2.d.ts +0 -304
  392. package/dist/types/core/evm/abi/permit2.d.ts.map +0 -1
  393. package/dist/types/core/evm/abi/single-chain-guard-limit.d.ts +0 -596
  394. package/dist/types/core/evm/abi/single-chain-guard-limit.d.ts.map +0 -1
  395. package/dist/types/core/evm/abi/source-chain-guard.d.ts +0 -877
  396. package/dist/types/core/evm/abi/source-chain-guard.d.ts.map +0 -1
  397. package/dist/types/core/evm/cancel-order.d.ts +0 -28
  398. package/dist/types/core/evm/cancel-order.d.ts.map +0 -1
  399. package/dist/types/core/evm/chain-provider.d.ts +0 -62338
  400. package/dist/types/core/evm/chain-provider.d.ts.map +0 -1
  401. package/dist/types/core/evm/connectors/hyperevm.d.ts +0 -38
  402. package/dist/types/core/evm/connectors/hyperevm.d.ts.map +0 -1
  403. package/dist/types/core/evm/cross-chain-limit-order.d.ts +0 -22
  404. package/dist/types/core/evm/cross-chain-limit-order.d.ts.map +0 -1
  405. package/dist/types/core/evm/intent-helpers.d.ts +0 -105
  406. package/dist/types/core/evm/intent-helpers.d.ts.map +0 -1
  407. package/dist/types/core/evm/intent-provider.d.ts +0 -19
  408. package/dist/types/core/evm/intent-provider.d.ts.map +0 -1
  409. package/dist/types/core/evm/order-signature.d.ts +0 -22
  410. package/dist/types/core/evm/order-signature.d.ts.map +0 -1
  411. package/dist/types/core/evm/permit2.d.ts +0 -261
  412. package/dist/types/core/evm/permit2.d.ts.map +0 -1
  413. package/dist/types/core/evm/sdk.d.ts +0 -63
  414. package/dist/types/core/evm/sdk.d.ts.map +0 -1
  415. package/dist/types/core/evm/single-chain-dca-order.d.ts +0 -26
  416. package/dist/types/core/evm/single-chain-dca-order.d.ts.map +0 -1
  417. package/dist/types/core/evm/single-chain-limit-order.d.ts +0 -23
  418. package/dist/types/core/evm/single-chain-limit-order.d.ts.map +0 -1
  419. package/dist/types/core/evm/types.d.ts +0 -8
  420. package/dist/types/core/evm/types.d.ts.map +0 -1
  421. package/dist/types/core/evm/validator.d.ts +0 -23
  422. package/dist/types/core/evm/validator.d.ts.map +0 -1
  423. package/dist/types/core/orders/api/fetch.d.ts +0 -3
  424. package/dist/types/core/orders/api/fetch.d.ts.map +0 -1
  425. package/dist/types/core/orders/api/index.d.ts +0 -8
  426. package/dist/types/core/orders/api/index.d.ts.map +0 -1
  427. package/dist/types/core/orders/common.d.ts +0 -12
  428. package/dist/types/core/orders/common.d.ts.map +0 -1
  429. package/dist/types/core/orders/cross-chain.d.ts +0 -123
  430. package/dist/types/core/orders/cross-chain.d.ts.map +0 -1
  431. package/dist/types/core/orders/dca-single-chain.d.ts +0 -47
  432. package/dist/types/core/orders/dca-single-chain.d.ts.map +0 -1
  433. package/dist/types/core/orders/single-chain.d.ts +0 -47
  434. package/dist/types/core/orders/single-chain.d.ts.map +0 -1
  435. package/dist/types/core/sdk.d.ts +0 -30
  436. package/dist/types/core/sdk.d.ts.map +0 -1
  437. package/dist/types/core/solana/cancel-order.d.ts +0 -18
  438. package/dist/types/core/solana/cancel-order.d.ts.map +0 -1
  439. package/dist/types/core/solana/client.d.ts +0 -11
  440. package/dist/types/core/solana/client.d.ts.map +0 -1
  441. package/dist/types/core/solana/dca/cancel-order.d.ts +0 -5
  442. package/dist/types/core/solana/dca/cancel-order.d.ts.map +0 -1
  443. package/dist/types/core/solana/dca/create-order.d.ts +0 -8
  444. package/dist/types/core/solana/dca/create-order.d.ts.map +0 -1
  445. package/dist/types/core/solana/dca/single-chain-dca-order.d.ts +0 -14
  446. package/dist/types/core/solana/dca/single-chain-dca-order.d.ts.map +0 -1
  447. package/dist/types/core/solana/dca/single-chain-limit-order.d.ts +0 -19
  448. package/dist/types/core/solana/dca/single-chain-limit-order.d.ts.map +0 -1
  449. package/dist/types/core/solana/generated/cross-chain/accounts/adminSingleton.d.ts +0 -40
  450. package/dist/types/core/solana/generated/cross-chain/accounts/adminSingleton.d.ts.map +0 -1
  451. package/dist/types/core/solana/generated/cross-chain/accounts/dcaOrder.d.ts +0 -110
  452. package/dist/types/core/solana/generated/cross-chain/accounts/dcaOrder.d.ts.map +0 -1
  453. package/dist/types/core/solana/generated/cross-chain/accounts/guard.d.ts +0 -52
  454. package/dist/types/core/solana/generated/cross-chain/accounts/guard.d.ts.map +0 -1
  455. package/dist/types/core/solana/generated/cross-chain/accounts/index.d.ts +0 -12
  456. package/dist/types/core/solana/generated/cross-chain/accounts/index.d.ts.map +0 -1
  457. package/dist/types/core/solana/generated/cross-chain/accounts/order.d.ts +0 -92
  458. package/dist/types/core/solana/generated/cross-chain/accounts/order.d.ts.map +0 -1
  459. package/dist/types/core/solana/generated/cross-chain/errors/index.d.ts +0 -9
  460. package/dist/types/core/solana/generated/cross-chain/errors/index.d.ts.map +0 -1
  461. package/dist/types/core/solana/generated/cross-chain/errors/sourceChainGuard.d.ts +0 -97
  462. package/dist/types/core/solana/generated/cross-chain/errors/sourceChainGuard.d.ts.map +0 -1
  463. package/dist/types/core/solana/generated/cross-chain/index.d.ts +0 -13
  464. package/dist/types/core/solana/generated/cross-chain/index.d.ts.map +0 -1
  465. package/dist/types/core/solana/generated/cross-chain/instructions/acceptAdmin.d.ts +0 -56
  466. package/dist/types/core/solana/generated/cross-chain/instructions/acceptAdmin.d.ts.map +0 -1
  467. package/dist/types/core/solana/generated/cross-chain/instructions/cancelDcaOrder.d.ts +0 -124
  468. package/dist/types/core/solana/generated/cross-chain/instructions/cancelDcaOrder.d.ts.map +0 -1
  469. package/dist/types/core/solana/generated/cross-chain/instructions/cancelOrder.d.ts +0 -108
  470. package/dist/types/core/solana/generated/cross-chain/instructions/cancelOrder.d.ts.map +0 -1
  471. package/dist/types/core/solana/generated/cross-chain/instructions/claimTokens.d.ts +0 -131
  472. package/dist/types/core/solana/generated/cross-chain/instructions/claimTokens.d.ts.map +0 -1
  473. package/dist/types/core/solana/generated/cross-chain/instructions/collectProtocolFees.d.ts +0 -91
  474. package/dist/types/core/solana/generated/cross-chain/instructions/collectProtocolFees.d.ts.map +0 -1
  475. package/dist/types/core/solana/generated/cross-chain/instructions/createDcaOrder.d.ts +0 -130
  476. package/dist/types/core/solana/generated/cross-chain/instructions/createDcaOrder.d.ts.map +0 -1
  477. package/dist/types/core/solana/generated/cross-chain/instructions/createGuard.d.ts +0 -137
  478. package/dist/types/core/solana/generated/cross-chain/instructions/createGuard.d.ts.map +0 -1
  479. package/dist/types/core/solana/generated/cross-chain/instructions/createOrder.d.ts +0 -122
  480. package/dist/types/core/solana/generated/cross-chain/instructions/createOrder.d.ts.map +0 -1
  481. package/dist/types/core/solana/generated/cross-chain/instructions/index.d.ts +0 -22
  482. package/dist/types/core/solana/generated/cross-chain/instructions/index.d.ts.map +0 -1
  483. package/dist/types/core/solana/generated/cross-chain/instructions/initialize.d.ts +0 -86
  484. package/dist/types/core/solana/generated/cross-chain/instructions/initialize.d.ts.map +0 -1
  485. package/dist/types/core/solana/generated/cross-chain/instructions/preStartOrderExecution.d.ts +0 -105
  486. package/dist/types/core/solana/generated/cross-chain/instructions/preStartOrderExecution.d.ts.map +0 -1
  487. package/dist/types/core/solana/generated/cross-chain/instructions/setAdmin.d.ts +0 -61
  488. package/dist/types/core/solana/generated/cross-chain/instructions/setAdmin.d.ts.map +0 -1
  489. package/dist/types/core/solana/generated/cross-chain/instructions/setAuctioneerPubKey.d.ts +0 -68
  490. package/dist/types/core/solana/generated/cross-chain/instructions/setAuctioneerPubKey.d.ts.map +0 -1
  491. package/dist/types/core/solana/generated/cross-chain/instructions/startOrderExecution.d.ts +0 -85
  492. package/dist/types/core/solana/generated/cross-chain/instructions/startOrderExecution.d.ts.map +0 -1
  493. package/dist/types/core/solana/generated/cross-chain/instructions/startOrderExecutionAfterSwap.d.ts +0 -95
  494. package/dist/types/core/solana/generated/cross-chain/instructions/startOrderExecutionAfterSwap.d.ts.map +0 -1
  495. package/dist/types/core/solana/generated/cross-chain/programs/index.d.ts +0 -9
  496. package/dist/types/core/solana/generated/cross-chain/programs/index.d.ts.map +0 -1
  497. package/dist/types/core/solana/generated/cross-chain/programs/sourceChainGuard.d.ts +0 -69
  498. package/dist/types/core/solana/generated/cross-chain/programs/sourceChainGuard.d.ts.map +0 -1
  499. package/dist/types/core/solana/generated/cross-chain/shared/index.d.ts +0 -52
  500. package/dist/types/core/solana/generated/cross-chain/shared/index.d.ts.map +0 -1
  501. package/dist/types/core/solana/generated/cross-chain/types/adminUpdateStarted.d.ts +0 -16
  502. package/dist/types/core/solana/generated/cross-chain/types/adminUpdateStarted.d.ts.map +0 -1
  503. package/dist/types/core/solana/generated/cross-chain/types/adminUpdated.d.ts +0 -16
  504. package/dist/types/core/solana/generated/cross-chain/types/adminUpdated.d.ts.map +0 -1
  505. package/dist/types/core/solana/generated/cross-chain/types/auctioneerPubkeyUpdated.d.ts +0 -17
  506. package/dist/types/core/solana/generated/cross-chain/types/auctioneerPubkeyUpdated.d.ts.map +0 -1
  507. package/dist/types/core/solana/generated/cross-chain/types/dcaExecutionStarted.d.ts +0 -28
  508. package/dist/types/core/solana/generated/cross-chain/types/dcaExecutionStarted.d.ts.map +0 -1
  509. package/dist/types/core/solana/generated/cross-chain/types/dcaOrderCreated.d.ts +0 -38
  510. package/dist/types/core/solana/generated/cross-chain/types/dcaOrderCreated.d.ts.map +0 -1
  511. package/dist/types/core/solana/generated/cross-chain/types/dcaOrderIntervalFulfilled.d.ts +0 -18
  512. package/dist/types/core/solana/generated/cross-chain/types/dcaOrderIntervalFulfilled.d.ts.map +0 -1
  513. package/dist/types/core/solana/generated/cross-chain/types/dcaTokenInSwapped.d.ts +0 -24
  514. package/dist/types/core/solana/generated/cross-chain/types/dcaTokenInSwapped.d.ts.map +0 -1
  515. package/dist/types/core/solana/generated/cross-chain/types/executionStarted.d.ts +0 -26
  516. package/dist/types/core/solana/generated/cross-chain/types/executionStarted.d.ts.map +0 -1
  517. package/dist/types/core/solana/generated/cross-chain/types/failedDcaIntervalExecution.d.ts +0 -18
  518. package/dist/types/core/solana/generated/cross-chain/types/failedDcaIntervalExecution.d.ts.map +0 -1
  519. package/dist/types/core/solana/generated/cross-chain/types/guardCreated.d.ts +0 -19
  520. package/dist/types/core/solana/generated/cross-chain/types/guardCreated.d.ts.map +0 -1
  521. package/dist/types/core/solana/generated/cross-chain/types/index.d.ts +0 -22
  522. package/dist/types/core/solana/generated/cross-chain/types/index.d.ts.map +0 -1
  523. package/dist/types/core/solana/generated/cross-chain/types/orderCancelled.d.ts +0 -16
  524. package/dist/types/core/solana/generated/cross-chain/types/orderCancelled.d.ts.map +0 -1
  525. package/dist/types/core/solana/generated/cross-chain/types/orderCreated.d.ts +0 -32
  526. package/dist/types/core/solana/generated/cross-chain/types/orderCreated.d.ts.map +0 -1
  527. package/dist/types/core/solana/generated/cross-chain/types/orderFulfilled.d.ts +0 -16
  528. package/dist/types/core/solana/generated/cross-chain/types/orderFulfilled.d.ts.map +0 -1
  529. package/dist/types/core/solana/generated/cross-chain/types/tokenInSwapped.d.ts +0 -22
  530. package/dist/types/core/solana/generated/cross-chain/types/tokenInSwapped.d.ts.map +0 -1
  531. package/dist/types/core/solana/generated/single-chain/accounts/adminSingleton.d.ts +0 -40
  532. package/dist/types/core/solana/generated/single-chain/accounts/adminSingleton.d.ts.map +0 -1
  533. package/dist/types/core/solana/generated/single-chain/accounts/dcaOrder.d.ts +0 -99
  534. package/dist/types/core/solana/generated/single-chain/accounts/dcaOrder.d.ts.map +0 -1
  535. package/dist/types/core/solana/generated/single-chain/accounts/guard.d.ts +0 -48
  536. package/dist/types/core/solana/generated/single-chain/accounts/guard.d.ts.map +0 -1
  537. package/dist/types/core/solana/generated/single-chain/accounts/index.d.ts +0 -12
  538. package/dist/types/core/solana/generated/single-chain/accounts/index.d.ts.map +0 -1
  539. package/dist/types/core/solana/generated/single-chain/accounts/limitOrder.d.ts +0 -79
  540. package/dist/types/core/solana/generated/single-chain/accounts/limitOrder.d.ts.map +0 -1
  541. package/dist/types/core/solana/generated/single-chain/errors/index.d.ts +0 -9
  542. package/dist/types/core/solana/generated/single-chain/errors/index.d.ts.map +0 -1
  543. package/dist/types/core/solana/generated/single-chain/errors/singleChainGuard.d.ts +0 -71
  544. package/dist/types/core/solana/generated/single-chain/errors/singleChainGuard.d.ts.map +0 -1
  545. package/dist/types/core/solana/generated/single-chain/index.d.ts +0 -13
  546. package/dist/types/core/solana/generated/single-chain/index.d.ts.map +0 -1
  547. package/dist/types/core/solana/generated/single-chain/instructions/acceptAdmin.d.ts +0 -56
  548. package/dist/types/core/solana/generated/single-chain/instructions/acceptAdmin.d.ts.map +0 -1
  549. package/dist/types/core/solana/generated/single-chain/instructions/cancelDcaOrder.d.ts +0 -72
  550. package/dist/types/core/solana/generated/single-chain/instructions/cancelDcaOrder.d.ts.map +0 -1
  551. package/dist/types/core/solana/generated/single-chain/instructions/cancelLimitOrder.d.ts +0 -72
  552. package/dist/types/core/solana/generated/single-chain/instructions/cancelLimitOrder.d.ts.map +0 -1
  553. package/dist/types/core/solana/generated/single-chain/instructions/collectProtocolFees.d.ts +0 -91
  554. package/dist/types/core/solana/generated/single-chain/instructions/collectProtocolFees.d.ts.map +0 -1
  555. package/dist/types/core/solana/generated/single-chain/instructions/createDcaOrder.d.ts +0 -134
  556. package/dist/types/core/solana/generated/single-chain/instructions/createDcaOrder.d.ts.map +0 -1
  557. package/dist/types/core/solana/generated/single-chain/instructions/createGuard.d.ts +0 -107
  558. package/dist/types/core/solana/generated/single-chain/instructions/createGuard.d.ts.map +0 -1
  559. package/dist/types/core/solana/generated/single-chain/instructions/createLimitOrder.d.ts +0 -126
  560. package/dist/types/core/solana/generated/single-chain/instructions/createLimitOrder.d.ts.map +0 -1
  561. package/dist/types/core/solana/generated/single-chain/instructions/fulfillDcaOrderInterval.d.ts +0 -179
  562. package/dist/types/core/solana/generated/single-chain/instructions/fulfillDcaOrderInterval.d.ts.map +0 -1
  563. package/dist/types/core/solana/generated/single-chain/instructions/fulfillLimitOrder.d.ts +0 -179
  564. package/dist/types/core/solana/generated/single-chain/instructions/fulfillLimitOrder.d.ts.map +0 -1
  565. package/dist/types/core/solana/generated/single-chain/instructions/index.d.ts +0 -20
  566. package/dist/types/core/solana/generated/single-chain/instructions/index.d.ts.map +0 -1
  567. package/dist/types/core/solana/generated/single-chain/instructions/initialize.d.ts +0 -86
  568. package/dist/types/core/solana/generated/single-chain/instructions/initialize.d.ts.map +0 -1
  569. package/dist/types/core/solana/generated/single-chain/instructions/setAdmin.d.ts +0 -61
  570. package/dist/types/core/solana/generated/single-chain/instructions/setAdmin.d.ts.map +0 -1
  571. package/dist/types/core/solana/generated/single-chain/instructions/setAuctioneerPubKey.d.ts +0 -68
  572. package/dist/types/core/solana/generated/single-chain/instructions/setAuctioneerPubKey.d.ts.map +0 -1
  573. package/dist/types/core/solana/generated/single-chain/programs/index.d.ts +0 -9
  574. package/dist/types/core/solana/generated/single-chain/programs/index.d.ts.map +0 -1
  575. package/dist/types/core/solana/generated/single-chain/programs/singleChainGuard.d.ts +0 -63
  576. package/dist/types/core/solana/generated/single-chain/programs/singleChainGuard.d.ts.map +0 -1
  577. package/dist/types/core/solana/generated/single-chain/shared/index.d.ts +0 -52
  578. package/dist/types/core/solana/generated/single-chain/shared/index.d.ts.map +0 -1
  579. package/dist/types/core/solana/generated/single-chain/types/adminUpdateStarted.d.ts +0 -16
  580. package/dist/types/core/solana/generated/single-chain/types/adminUpdateStarted.d.ts.map +0 -1
  581. package/dist/types/core/solana/generated/single-chain/types/adminUpdated.d.ts +0 -16
  582. package/dist/types/core/solana/generated/single-chain/types/adminUpdated.d.ts.map +0 -1
  583. package/dist/types/core/solana/generated/single-chain/types/auctioneerPubkeyUpdated.d.ts +0 -17
  584. package/dist/types/core/solana/generated/single-chain/types/auctioneerPubkeyUpdated.d.ts.map +0 -1
  585. package/dist/types/core/solana/generated/single-chain/types/dcaOrderCreated.d.ts +0 -38
  586. package/dist/types/core/solana/generated/single-chain/types/dcaOrderCreated.d.ts.map +0 -1
  587. package/dist/types/core/solana/generated/single-chain/types/dcaOrderFulfilled.d.ts +0 -16
  588. package/dist/types/core/solana/generated/single-chain/types/dcaOrderFulfilled.d.ts.map +0 -1
  589. package/dist/types/core/solana/generated/single-chain/types/dcaOrderIntervalFulfilled.d.ts +0 -26
  590. package/dist/types/core/solana/generated/single-chain/types/dcaOrderIntervalFulfilled.d.ts.map +0 -1
  591. package/dist/types/core/solana/generated/single-chain/types/guardCreated.d.ts +0 -18
  592. package/dist/types/core/solana/generated/single-chain/types/guardCreated.d.ts.map +0 -1
  593. package/dist/types/core/solana/generated/single-chain/types/index.d.ts +0 -18
  594. package/dist/types/core/solana/generated/single-chain/types/index.d.ts.map +0 -1
  595. package/dist/types/core/solana/generated/single-chain/types/limitOrderCreated.d.ts +0 -32
  596. package/dist/types/core/solana/generated/single-chain/types/limitOrderCreated.d.ts.map +0 -1
  597. package/dist/types/core/solana/generated/single-chain/types/limitOrderFulfilled.d.ts +0 -20
  598. package/dist/types/core/solana/generated/single-chain/types/limitOrderFulfilled.d.ts.map +0 -1
  599. package/dist/types/core/solana/generated/single-chain/types/orderCancelled.d.ts +0 -16
  600. package/dist/types/core/solana/generated/single-chain/types/orderCancelled.d.ts.map +0 -1
  601. package/dist/types/core/solana/inspect.d.ts +0 -14
  602. package/dist/types/core/solana/inspect.d.ts.map +0 -1
  603. package/dist/types/core/solana/intent-helpers.d.ts +0 -120
  604. package/dist/types/core/solana/intent-helpers.d.ts.map +0 -1
  605. package/dist/types/core/solana/order-instructions.d.ts +0 -16
  606. package/dist/types/core/solana/order-instructions.d.ts.map +0 -1
  607. package/dist/types/core/solana/sdk.d.ts +0 -73
  608. package/dist/types/core/solana/sdk.d.ts.map +0 -1
  609. package/dist/types/core/solana/utils.d.ts +0 -7
  610. package/dist/types/core/solana/utils.d.ts.map +0 -1
  611. package/dist/types/core/solana/validator.d.ts +0 -11
  612. package/dist/types/core/solana/validator.d.ts.map +0 -1
  613. package/dist/types/core/sui/cancel.d.ts +0 -3
  614. package/dist/types/core/sui/cancel.d.ts.map +0 -1
  615. package/dist/types/core/sui/client.d.ts +0 -3
  616. package/dist/types/core/sui/client.d.ts.map +0 -1
  617. package/dist/types/core/sui/cross-chain-limit-order.d.ts +0 -5
  618. package/dist/types/core/sui/cross-chain-limit-order.d.ts.map +0 -1
  619. package/dist/types/core/sui/intent-helpers.d.ts +0 -90
  620. package/dist/types/core/sui/intent-helpers.d.ts.map +0 -1
  621. package/dist/types/core/sui/order-transaction.d.ts +0 -11
  622. package/dist/types/core/sui/order-transaction.d.ts.map +0 -1
  623. package/dist/types/core/sui/sdk.d.ts +0 -57
  624. package/dist/types/core/sui/sdk.d.ts.map +0 -1
  625. package/dist/types/core/sui/single-chain-dca-order.d.ts +0 -22
  626. package/dist/types/core/sui/single-chain-dca-order.d.ts.map +0 -1
  627. package/dist/types/core/sui/single-chain-limit-order.d.ts +0 -26
  628. package/dist/types/core/sui/single-chain-limit-order.d.ts.map +0 -1
  629. package/dist/types/core/sui/validator.d.ts +0 -11
  630. package/dist/types/core/sui/validator.d.ts.map +0 -1
  631. package/dist/types/errors/index.d.ts +0 -20
  632. package/dist/types/errors/index.d.ts.map +0 -1
  633. package/dist/types/index.d.ts +0 -43
  634. package/dist/types/index.d.ts.map +0 -1
  635. package/dist/types/types/api.d.ts +0 -65
  636. package/dist/types/types/api.d.ts.map +0 -1
  637. package/dist/types/types/intent.d.ts +0 -136
  638. package/dist/types/types/intent.d.ts.map +0 -1
  639. package/dist/types/types/token-list.d.ts +0 -30
  640. package/dist/types/types/token-list.d.ts.map +0 -1
  641. package/dist/types/utils/base-validator.d.ts +0 -46
  642. package/dist/types/utils/base-validator.d.ts.map +0 -1
  643. package/dist/types/utils/defillama.d.ts +0 -61
  644. package/dist/types/utils/defillama.d.ts.map +0 -1
  645. package/dist/types/utils/generate-execution-details-hash.d.ts +0 -11
  646. package/dist/types/utils/generate-execution-details-hash.d.ts.map +0 -1
  647. package/dist/types/utils/logger.d.ts +0 -35
  648. package/dist/types/utils/logger.d.ts.map +0 -1
  649. package/dist/types/utils/order-validator.d.ts +0 -64
  650. package/dist/types/utils/order-validator.d.ts.map +0 -1
  651. package/dist/types/utils/parsers.d.ts +0 -6
  652. package/dist/types/utils/parsers.d.ts.map +0 -1
  653. package/dist/types/utils/quote/aftermath.d.ts +0 -9
  654. package/dist/types/utils/quote/aftermath.d.ts.map +0 -1
  655. package/dist/types/utils/quote/aggregator.d.ts +0 -80
  656. package/dist/types/utils/quote/aggregator.d.ts.map +0 -1
  657. package/dist/types/utils/quote/jupiter.d.ts +0 -16
  658. package/dist/types/utils/quote/jupiter.d.ts.map +0 -1
  659. package/dist/types/utils/quote/liquidswap.d.ts +0 -16
  660. package/dist/types/utils/quote/liquidswap.d.ts.map +0 -1
  661. package/dist/types/utils/quote/paraswap.d.ts +0 -23
  662. package/dist/types/utils/quote/paraswap.d.ts.map +0 -1
  663. package/dist/types/utils/quote/raydium.d.ts +0 -79
  664. package/dist/types/utils/quote/raydium.d.ts.map +0 -1
  665. package/dist/types/utils/quote/stablecoins-tokens.d.ts +0 -11
  666. package/dist/types/utils/quote/stablecoins-tokens.d.ts.map +0 -1
  667. package/dist/types/utils/tokens/index.d.ts +0 -20
  668. package/dist/types/utils/tokens/index.d.ts.map +0 -1
  669. package/dist/types/utils/type-utils.d.ts +0 -2
  670. package/dist/types/utils/type-utils.d.ts.map +0 -1
@@ -1,12 +1,69 @@
1
1
  import { NATIVE_SOLANA_TOKEN_ADDRESS, WRAPPED_SOL_MINT_ADDRESS } from '../../constants.js';
2
- import { API_URLS } from '@raydium-io/raydium-sdk-v2';
2
+ import {
3
+ API_URLS,
4
+ getPdaLaunchpadPoolId,
5
+ Raydium,
6
+ LAUNCHPAD_PROGRAM,
7
+ PlatformConfig,
8
+ Curve,
9
+ type LaunchpadConfigInfo,
10
+ type LaunchpadPoolInfo,
11
+ } from '@raydium-io/raydium-sdk-v2';
12
+ import { type SimpleQuote } from './aggregator.js';
13
+ import { Connection, clusterApiUrl, PublicKey } from '@solana/web3.js'; // Used this package for raydium-sdk-v2 compatibility
14
+ import BN from 'bn.js';
15
+ import { Decimal } from 'decimal.js';
16
+ import { JupiterQuoteProvider, type JupiterQuoteParams } from './jupiter.js';
17
+ import { TWO_SECONDS_MS, TEN_MINUTES_MS } from './utils.js';
18
+
19
+ const launchpadPoolCache = new Map<
20
+ string,
21
+ {
22
+ data: [
23
+ LaunchpadPoolInfo & {
24
+ programId: PublicKey;
25
+ configInfo: LaunchpadConfigInfo;
26
+ },
27
+ PublicKey,
28
+ ];
29
+ expiresAt: number;
30
+ }
31
+ >();
32
+
33
+ const launchpadPoolInfoCache = new Map<
34
+ string,
35
+ {
36
+ data: LaunchpadPoolInfo & {
37
+ programId: PublicKey;
38
+ configInfo: LaunchpadConfigInfo;
39
+ };
40
+ expiresAt: number;
41
+ }
42
+ >();
43
+
44
+ const platformConfigCache = new Map<
45
+ string,
46
+ {
47
+ data: ReturnType<typeof PlatformConfig.decode>;
48
+ expiresAt: number;
49
+ }
50
+ >();
51
+
52
+ const mintInfoCache = new Map<string, Awaited<ReturnType<Raydium['token']['getTokenInfo']>>>();
3
53
 
4
54
  // Local implementation of compareAddresses function
5
55
  const compareAddresses = (firstAddress?: string, secondAddress?: string): boolean => {
6
56
  return !!firstAddress && !!secondAddress && firstAddress.toLowerCase() === secondAddress.toLowerCase();
7
57
  };
8
58
 
9
- type RaydiumQuoteParams = {
59
+ const LAUNCHPAD_WHITELISTED_QUOTE_TOKENS = [
60
+ new PublicKey('So11111111111111111111111111111111111111112'), // WSOL
61
+ new PublicKey('EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v'), // USDC
62
+ new PublicKey('Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB'), // USDT
63
+ new PublicKey('USD1ttGY1N17NEEHLmELoaybftRBUSErhqYiQzvEmuB'), // USD1
64
+ ];
65
+
66
+ export type RaydiumPumpQuoteParams = {
10
67
  inputMint: string;
11
68
  outputMint: string;
12
69
  amount: string;
@@ -51,6 +108,17 @@ export type RaydiumQuoteResponse = {
51
108
  };
52
109
  };
53
110
 
111
+ let raydium: Raydium | undefined;
112
+ export const initSdk = async (): Promise<Raydium> => {
113
+ if (raydium) return raydium;
114
+ raydium = await Raydium.load({
115
+ connection: new Connection(clusterApiUrl('mainnet-beta')),
116
+ disableFeatureCheck: true,
117
+ disableLoadToken: true,
118
+ });
119
+ return raydium;
120
+ };
121
+
54
122
  // Using API_URLS from Raydium SDK v2
55
123
 
56
124
  export class RaydiumQuoteProvider {
@@ -60,18 +128,18 @@ export class RaydiumQuoteProvider {
60
128
  */
61
129
  public async getPriorityFee(): Promise<{
62
130
  vh: number; // very high
63
- h: number; // high
64
- m: number; // medium
131
+ h: number; // high
132
+ m: number; // medium
65
133
  }> {
66
134
  const url = new URL(API_URLS.PRIORITY_FEE, API_URLS.BASE_HOST);
67
135
  const response = await fetch(url);
68
-
136
+
69
137
  if (!response.ok) {
70
138
  throw new Error(`Failed to fetch priority fee from Raydium API: ${response.status} ${response.statusText}`);
71
139
  }
72
140
 
73
141
  const data = await response.json();
74
-
142
+
75
143
  if (!data.success) {
76
144
  throw new Error('Raydium API returned unsuccessful response for priority fee');
77
145
  }
@@ -79,7 +147,7 @@ export class RaydiumQuoteProvider {
79
147
  return data.data.default;
80
148
  }
81
149
 
82
- public async getQuote(raydiumParams: RaydiumQuoteParams): Promise<RaydiumQuoteResponse> {
150
+ public async getQuote(raydiumParams: RaydiumPumpQuoteParams): Promise<RaydiumQuoteResponse> {
83
151
  const params = { ...raydiumParams };
84
152
 
85
153
  // Handle native SOL token mapping for Solana
@@ -96,7 +164,8 @@ export class RaydiumQuoteProvider {
96
164
  url.searchParams.set('outputMint', params.outputMint);
97
165
  url.searchParams.set('amount', params.amount);
98
166
  url.searchParams.set('slippageBps', params.slippageBps.toString());
99
-
167
+ url.searchParams.set('txVersion', 'V0');
168
+
100
169
  const response = await fetch(url);
101
170
 
102
171
  if (!response.ok) {
@@ -155,11 +224,283 @@ export class RaydiumQuoteProvider {
155
224
  }
156
225
 
157
226
  const data = await response.json();
158
-
227
+
159
228
  if (!data.success) {
160
229
  throw new Error('Raydium API returned unsuccessful response for swap transaction');
161
230
  }
162
231
 
163
232
  return data;
164
233
  }
234
+
235
+ public async getQuotePrebonded(raydiumParams: RaydiumPumpQuoteParams): Promise<SimpleQuote> {
236
+ // First, get the Raydium quote token
237
+ let raydiumSdk = await initSdk();
238
+ let inputMintPk = new PublicKey(raydiumParams.inputMint);
239
+ let outputMintPk = new PublicKey(raydiumParams.outputMint);
240
+
241
+ // Check if either input or output mint is in the launchpad whitelisted tokens
242
+ let poolInfo, inputPoolInfo, outputPoolInfo, quoteToken, isInputPrebonded, inputQuoteToken, outputQuoteToken;
243
+ try {
244
+ [inputPoolInfo, inputQuoteToken] = await this.checkPreboundedTokensSwapLaunchpad(raydiumSdk, inputMintPk);
245
+ if (inputPoolInfo && inputQuoteToken) {
246
+ isInputPrebonded = true;
247
+ poolInfo = inputPoolInfo;
248
+ quoteToken = inputQuoteToken;
249
+ }
250
+ } catch (e) {}
251
+ try {
252
+ [outputPoolInfo, outputQuoteToken] = await this.checkPreboundedTokensSwapLaunchpad(raydiumSdk, outputMintPk);
253
+ if (outputPoolInfo && outputQuoteToken) {
254
+ isInputPrebonded = false;
255
+ poolInfo = outputPoolInfo;
256
+ quoteToken = outputQuoteToken;
257
+ }
258
+ } catch (e) {}
259
+
260
+ if (inputPoolInfo && outputPoolInfo) {
261
+ // Both input and output are prebonded, which is not supported
262
+ throw new Error('Both input and output tokens are prebonded, which is not supported');
263
+ } else if (!quoteToken || !poolInfo) {
264
+ // Neither input nor output is prebonded, fallback to regular Raydium quote
265
+ throw new Error('Neither input nor output tokens are prebonded');
266
+ }
267
+
268
+ let quoteIsInput = quoteToken.equals(inputMintPk);
269
+ let quoteIsOutput = quoteToken.equals(outputMintPk);
270
+
271
+ if (isInputPrebonded) {
272
+ // We have to estimate prebonded first and then swap from quote token to output token (if needed)
273
+ let { expectedAmountOut, minimumAmountOut } = await this.estimatePrebondedToQuote(
274
+ raydiumSdk,
275
+ inputMintPk,
276
+ poolInfo,
277
+ 'sell',
278
+ new BN(raydiumParams.amount),
279
+ new BN(raydiumParams.slippageBps), // Use full slippage for simplicity
280
+ );
281
+
282
+ // Then, if output token is not quote token, we have to swap from quote token to output token
283
+ if (!quoteIsOutput) {
284
+ let jupiterQuoteRequest: JupiterQuoteParams = {
285
+ amount: BigInt(expectedAmountOut.toString()),
286
+ tokenIn: quoteToken.toString(),
287
+ tokenOut: raydiumParams.outputMint,
288
+ swapMode: 'ExactIn',
289
+ slippageBps: raydiumParams.slippageBps, // Use full slippage for simplicity
290
+ };
291
+ const jupiterQuoter = new JupiterQuoteProvider();
292
+ const jupiterQuote = await jupiterQuoter.getQuote(jupiterQuoteRequest);
293
+ if (!jupiterQuote.quote) {
294
+ throw new Error('Jupiter quote failed');
295
+ }
296
+
297
+ return {
298
+ amountIn: BigInt(raydiumParams.amount),
299
+ amountOut: BigInt(jupiterQuote.quote.outAmount),
300
+ amountOutMin: BigInt(jupiterQuote.quote.otherAmountThreshold),
301
+ slippage: raydiumParams.slippageBps / 100,
302
+ };
303
+ } else {
304
+ return {
305
+ amountIn: BigInt(raydiumParams.amount),
306
+ amountOut: BigInt(expectedAmountOut.toString()),
307
+ amountOutMin: BigInt(minimumAmountOut.toString()),
308
+ slippage: raydiumParams.slippageBps / 100,
309
+ };
310
+ }
311
+ } else {
312
+ // We have to swap from input token to quote token and then estimate prebonded
313
+ let amountOutFromInput = new BN(raydiumParams.amount);
314
+ if (!quoteIsInput) {
315
+ let jupiterQuoteRequest: JupiterQuoteParams = {
316
+ amount: BigInt(raydiumParams.amount),
317
+ tokenIn: raydiumParams.inputMint,
318
+ tokenOut: quoteToken.toString(),
319
+ swapMode: 'ExactIn',
320
+ slippageBps: raydiumParams.slippageBps, // Use full slippage for simplicity
321
+ };
322
+ const jupiterQuoter = new JupiterQuoteProvider();
323
+ const jupiterQuote = await jupiterQuoter.getQuote(jupiterQuoteRequest);
324
+ if (!jupiterQuote.quote) {
325
+ throw new Error('Jupiter quote failed');
326
+ }
327
+
328
+ // Calculate minimum amount with slippage applied
329
+ amountOutFromInput = new BN(jupiterQuote.quote.outAmount);
330
+ }
331
+ // Now estimate prebonded
332
+ let { expectedAmountOut, minimumAmountOut } = await this.estimatePrebondedToQuote(
333
+ raydiumSdk,
334
+ outputMintPk,
335
+ poolInfo,
336
+ 'buy',
337
+ amountOutFromInput,
338
+ new BN(raydiumParams.slippageBps),
339
+ );
340
+ return {
341
+ amountIn: BigInt(raydiumParams.amount),
342
+ amountOut: BigInt(expectedAmountOut.toString()),
343
+ amountOutMin: BigInt(minimumAmountOut.toString()),
344
+ slippage: raydiumParams.slippageBps / 100,
345
+ };
346
+ }
347
+ }
348
+
349
+ async checkPreboundedTokensSwapLaunchpad(
350
+ raydiumSdk: Raydium,
351
+ raydiumMint: PublicKey,
352
+ ): Promise<
353
+ [
354
+ LaunchpadPoolInfo & {
355
+ programId: PublicKey;
356
+ configInfo: LaunchpadConfigInfo;
357
+ },
358
+ PublicKey,
359
+ ]
360
+ > {
361
+ // Try cache first
362
+ const cacheKey = raydiumMint.toBase58();
363
+ const cached = launchpadPoolCache.get(cacheKey);
364
+ if (cached && Date.now() < cached.expiresAt) {
365
+ return cached.data;
366
+ }
367
+
368
+ // Check if either input or output mint is in the launchpad whitelisted tokens
369
+ // Check for input mint
370
+ for (const quoteToken of LAUNCHPAD_WHITELISTED_QUOTE_TOKENS) {
371
+ try {
372
+ const poolId = getPdaLaunchpadPoolId(LAUNCHPAD_PROGRAM, raydiumMint, quoteToken).publicKey;
373
+ const poolCacheKey = poolId.toBase58();
374
+ const cachedPoolInfo = launchpadPoolInfoCache.get(poolCacheKey);
375
+ const poolInfo =
376
+ cachedPoolInfo && Date.now() < cachedPoolInfo.expiresAt
377
+ ? cachedPoolInfo.data
378
+ : await raydiumSdk.launchpad.getRpcPoolInfo({ poolId });
379
+
380
+ launchpadPoolInfoCache.set(poolCacheKey, {
381
+ data: poolInfo,
382
+ expiresAt: Date.now() + TWO_SECONDS_MS,
383
+ });
384
+ // Cache positive result for a short period
385
+ launchpadPoolCache.set(cacheKey, {
386
+ data: [poolInfo, quoteToken],
387
+ expiresAt: Date.now() + TWO_SECONDS_MS,
388
+ });
389
+ return [poolInfo, quoteToken];
390
+ } catch (e) {
391
+ // Ignore and continue trying with next quote token
392
+ }
393
+ }
394
+ throw new Error('No launchpad pool found for the given token pair');
395
+ }
396
+
397
+ async estimatePrebondedToQuote(
398
+ raydiumSdk: Raydium,
399
+ raydiumMint: PublicKey,
400
+ poolInfo: LaunchpadPoolInfo & {
401
+ programId: PublicKey;
402
+ configInfo: LaunchpadConfigInfo;
403
+ },
404
+ trade_type: 'buy' | 'sell',
405
+ amount: BN,
406
+ slippage: BN,
407
+ ): Promise<{ expectedAmountOut: BN; minimumAmountOut: BN }> {
408
+ const epochInfo = await raydiumSdk.connection.getEpochInfo();
409
+ const slot = await raydiumSdk.connection.getSlot();
410
+ const platformCacheKey = poolInfo.platformId.toBase58();
411
+ let platformInfoEntry = platformConfigCache.get(platformCacheKey);
412
+ if (!platformInfoEntry || Date.now() > platformInfoEntry.expiresAt) {
413
+ const accountInfo = await raydiumSdk.connection.getAccountInfo(poolInfo.platformId);
414
+ if (!accountInfo) {
415
+ throw new Error('Platform account not found');
416
+ }
417
+ platformInfoEntry = {
418
+ data: PlatformConfig.decode(accountInfo.data),
419
+ expiresAt: Date.now() + TEN_MINUTES_MS,
420
+ };
421
+ platformConfigCache.set(platformCacheKey, platformInfoEntry);
422
+ }
423
+ const platformInfo = platformInfoEntry.data;
424
+
425
+ const mintCacheKey = raydiumMint.toBase58();
426
+ let mintInfo = mintInfoCache.get(mintCacheKey);
427
+ if (!mintInfo) {
428
+ mintInfo = await raydiumSdk.token.getTokenInfo(raydiumMint);
429
+ mintInfoCache.set(mintCacheKey, mintInfo);
430
+ }
431
+ const shareFeeRate = new BN(0);
432
+
433
+ let expectedAmountOut;
434
+ let minimumAmountOut;
435
+ if (trade_type === 'buy') {
436
+ const res = Curve.buyExactIn({
437
+ poolInfo,
438
+ amountB: amount,
439
+ protocolFeeRate: poolInfo.configInfo.tradeFeeRate,
440
+ platformFeeRate: platformInfo.feeRate,
441
+ curveType: poolInfo.configInfo.curveType,
442
+ shareFeeRate,
443
+ creatorFeeRate: platformInfo.creatorFeeRate,
444
+ transferFeeConfigA: mintInfo.extensions.feeConfig
445
+ ? {
446
+ transferFeeConfigAuthority: PublicKey.default,
447
+ withdrawWithheldAuthority: PublicKey.default,
448
+ withheldAmount: BigInt(0),
449
+ olderTransferFee: {
450
+ epoch: BigInt(mintInfo.extensions.feeConfig.olderTransferFee.epoch ?? epochInfo?.epoch ?? 0),
451
+ maximumFee: BigInt(mintInfo.extensions.feeConfig.olderTransferFee.maximumFee),
452
+ transferFeeBasisPoints: mintInfo.extensions.feeConfig.olderTransferFee.transferFeeBasisPoints,
453
+ },
454
+ newerTransferFee: {
455
+ epoch: BigInt(mintInfo.extensions.feeConfig.newerTransferFee.epoch ?? epochInfo?.epoch ?? 0),
456
+ maximumFee: BigInt(mintInfo.extensions.feeConfig.newerTransferFee.maximumFee),
457
+ transferFeeBasisPoints: mintInfo.extensions.feeConfig.newerTransferFee.transferFeeBasisPoints,
458
+ },
459
+ }
460
+ : undefined,
461
+ slot,
462
+ });
463
+ expectedAmountOut = new BN(res.amountA.amount.sub(res.amountA.fee ?? new BN(0)).toString());
464
+ minimumAmountOut = new BN(
465
+ new Decimal(res.amountA.amount.sub(res.amountA.fee ?? new BN(0)).toString())
466
+ .mul((10000 - slippage.toNumber()) / 10000)
467
+ .toFixed(0),
468
+ );
469
+ } else if (trade_type === 'sell') {
470
+ const res = Curve.sellExactIn({
471
+ poolInfo,
472
+ amountA: amount,
473
+ protocolFeeRate: poolInfo.configInfo.tradeFeeRate,
474
+ platformFeeRate: platformInfo.feeRate,
475
+ curveType: poolInfo.configInfo.curveType,
476
+ shareFeeRate,
477
+ creatorFeeRate: platformInfo.creatorFeeRate,
478
+ slot,
479
+ transferFeeConfigA: mintInfo.extensions.feeConfig
480
+ ? {
481
+ transferFeeConfigAuthority: PublicKey.default,
482
+ withdrawWithheldAuthority: PublicKey.default,
483
+ withheldAmount: BigInt(0),
484
+ olderTransferFee: {
485
+ epoch: BigInt(mintInfo.extensions.feeConfig.olderTransferFee.epoch ?? epochInfo?.epoch ?? 0),
486
+ maximumFee: BigInt(mintInfo.extensions.feeConfig.olderTransferFee.maximumFee),
487
+ transferFeeBasisPoints: mintInfo.extensions.feeConfig.olderTransferFee.transferFeeBasisPoints,
488
+ },
489
+ newerTransferFee: {
490
+ epoch: BigInt(mintInfo.extensions.feeConfig.newerTransferFee.epoch ?? epochInfo?.epoch ?? 0),
491
+ maximumFee: BigInt(mintInfo.extensions.feeConfig.newerTransferFee.maximumFee),
492
+ transferFeeBasisPoints: mintInfo.extensions.feeConfig.newerTransferFee.transferFeeBasisPoints,
493
+ },
494
+ }
495
+ : undefined,
496
+ });
497
+ expectedAmountOut = new BN(res.amountB);
498
+ minimumAmountOut = new BN(
499
+ new Decimal(res.amountB.toString()).mul((10000 - slippage.toNumber()) / 10000).toFixed(0),
500
+ );
501
+ } else {
502
+ throw new Error('Invalid trade type. Must be "buy" or "sell".');
503
+ }
504
+ return { expectedAmountOut, minimumAmountOut };
505
+ }
165
506
  }
@@ -0,0 +1,99 @@
1
+ import { type SupportedEvmChain } from "../../chains.js";
2
+ import { isNativeEvmToken, WRAPPED_ETH_ADDRESSES } from "../../constants.js";
3
+
4
+ const RELAY_BASE_URL = "https://api.relay.link/quote";
5
+
6
+ export type RelayQuoteRequestParams = {
7
+ srcToken: string;
8
+ destToken: string;
9
+ amount: bigint;
10
+ user?: string;
11
+ recipient?: string;
12
+ };
13
+
14
+ export type RelayQuoteResult = {
15
+ amountOut: bigint;
16
+ amountIn: bigint;
17
+ amountOutUsd: number;
18
+ amountInUsd: number;
19
+ slippage: number;
20
+ priceImpact: number;
21
+ quote: any;
22
+ };
23
+
24
+ export class RelayQuoteProvider {
25
+ protected chainId: SupportedEvmChain;
26
+
27
+ constructor(chainId: SupportedEvmChain) {
28
+ this.chainId = chainId;
29
+ }
30
+
31
+ private async postRelayQuote(params: RelayQuoteRequestParams) {
32
+ const user = params.user ?? "0x000000000000000000000000000000000000dead";
33
+
34
+ const srcToken = isNativeEvmToken(params.srcToken)
35
+ ? WRAPPED_ETH_ADDRESSES[this.chainId]
36
+ : params.srcToken;
37
+
38
+ const destToken = isNativeEvmToken(params.destToken)
39
+ ? WRAPPED_ETH_ADDRESSES[this.chainId]
40
+ : params.destToken;
41
+
42
+ const body = {
43
+ user,
44
+ recipient: params.recipient ?? user,
45
+ originChainId: this.chainId,
46
+ destinationChainId: this.chainId,
47
+ originCurrency: srcToken,
48
+ destinationCurrency: destToken,
49
+ amount: params.amount.toString(),
50
+ tradeType: "EXACT_INPUT",
51
+ };
52
+
53
+ const res = await fetch(RELAY_BASE_URL, {
54
+ method: "POST",
55
+ headers: {
56
+ "Content-Type": "application/json",
57
+ },
58
+ body: JSON.stringify(body),
59
+ });
60
+
61
+ if (!res.ok) {
62
+ throw new Error(`Relay POST /quote failed: ${await res.text()}`);
63
+ }
64
+
65
+ return res.json();
66
+ }
67
+
68
+ public async getSwapEstimation(
69
+ params: RelayQuoteRequestParams
70
+ ): Promise<RelayQuoteResult> {
71
+ const relayQuote = await this.postRelayQuote(params);
72
+
73
+ const details = relayQuote.details;
74
+
75
+ const amountIn = BigInt(details.currencyIn.amount);
76
+ const amountOut = BigInt(details.currencyOut.amount);
77
+
78
+ const amountInUsd = Number(details.currencyIn.amountUsd ?? 0);
79
+ const amountOutUsd = Number(details.currencyOut.amountUsd ?? 0);
80
+
81
+ const priceImpact = details.totalImpact?.percent
82
+ ? Number(details.totalImpact.percent)
83
+ : 0;
84
+
85
+ const slippage = details.slippageTolerance?.origin?.percent
86
+ ? Number(details.slippageTolerance.origin.percent)
87
+ : 0;
88
+
89
+ return {
90
+ amountIn,
91
+ amountOut,
92
+ amountInUsd,
93
+ amountOutUsd,
94
+ slippage,
95
+ priceImpact,
96
+ quote: relayQuote,
97
+ };
98
+ }
99
+ }
@@ -9,14 +9,41 @@ export type QuoteParams = {
9
9
  slippageBps?: number;
10
10
  };
11
11
 
12
- export const CROSS_CHAIN_TOKENS: Record<string, Record<ChainID, string>> = {
12
+ export const CROSS_CHAIN_STABLES: Record<string, Partial<Record<ChainID, { address: string; decimals: number }>>> = {
13
13
  USDC: {
14
- [ChainID.Solana]: 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v', // USDC on Solana
15
- [ChainID.Base]: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913', // USDC on Base
16
- [ChainID.Arbitrum]: '0xaf88d065e77c8cC2239327C5EDb3A432268e5831', // USDC on Arbitrum
17
- [ChainID.Hyperliquid]: '0xb8ce59fc3717ada4c02eadf9682a9e934f625ebb', // USDT on Hyperliquid (No USDC on Hyperliquid)
18
- [ChainID.Sui]: '0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC', // USDC on Sui
19
- [ChainID.Optimism]: '0x7F5c764cBc14f9669B88837ca1490cCa17c31607', // USDC on Optimism
14
+ [ChainID.Solana]: {
15
+ address: 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v',
16
+ decimals: 6,
17
+ },
18
+ [ChainID.Base]: {
19
+ address: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913',
20
+ decimals: 6,
21
+ },
22
+ [ChainID.Arbitrum]: {
23
+ address: '0xaf88d065e77c8cC2239327C5EDb3A432268e5831',
24
+ decimals: 6,
25
+ },
26
+ [ChainID.Optimism]: {
27
+ address: '0x7F5c764cBc14f9669B88837ca1490cCa17c31607',
28
+ decimals: 6,
29
+ },
30
+ [ChainID.Sui]: {
31
+ address: '0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC',
32
+ decimals: 6,
33
+ },
34
+ [ChainID.MONAD]: {
35
+ address: '0x754704Bc059F8C67012fEd69BC8A327a5aafb603',
36
+ decimals: 6,
37
+ },
38
+ },
39
+ USDT: {
40
+ [ChainID.Hyperliquid]: {
41
+ address: '0xb8ce59fc3717ada4c02eadf9682a9e934f625ebb',
42
+ decimals: 6,
43
+ },
44
+ [ChainID.BSC]: {
45
+ address: '0x55d398326f99059ff775485246999027b3197955',
46
+ decimals: 18,
47
+ },
20
48
  },
21
- // Add more tokens as needed
22
49
  };
@@ -0,0 +1,8 @@
1
+ export const TEN_MINUTES_MS = 10 * 60 * 1000;
2
+ export const TWO_SECONDS_MS = 2 * 1000;
3
+ export const ONE_DAY_MS = 24 * 60 * 60 * 1000;
4
+
5
+ export function applySlippage(amount: bigint, slippageBps = 0): bigint {
6
+ const multiplier = BigInt(10000 - slippageBps);
7
+ return (amount * multiplier) / 10000n;
8
+ }
@@ -1,26 +0,0 @@
1
- import { AUCTIONEER_URL } from '../constants.js';
2
- export async function fetchSiweMessage(params) {
3
- const url = `${AUCTIONEER_URL}/siwe?wallet=${params.wallet}&chainId=${params.chainId}`;
4
- const response = await fetch(url);
5
- if (!response.ok) {
6
- throw new Error(`Failed to fetch SIWE message: ${response.status} ${response.statusText}`);
7
- }
8
- const data = await response.json();
9
- return data;
10
- }
11
- export async function fetchJWTToken(params, token) {
12
- const url = `${AUCTIONEER_URL}/siwe`;
13
- const response = await fetch(url, {
14
- method: 'POST',
15
- body: JSON.stringify(params),
16
- headers: {
17
- Authorization: `Bearer ${token}`,
18
- },
19
- });
20
- if (!response.ok) {
21
- throw new Error(`Failed to fetch JWT token: ${response.status} ${response.statusText}`);
22
- }
23
- const data = await response.json();
24
- return data;
25
- }
26
- //# sourceMappingURL=siwe.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"siwe.js","sourceRoot":"","sources":["../../../src/auth/siwe.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAajD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,MAA8B;IACnE,MAAM,GAAG,GAAG,GAAG,cAAc,gBAAgB,MAAM,CAAC,MAAM,YAAY,MAAM,CAAC,OAAO,EAAE,CAAC;IACvF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;IAClC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,iCAAiC,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;IAC7F,CAAC;IACD,MAAM,IAAI,GAAwB,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IACxD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,MAAsB,EAAE,KAAc;IACxE,MAAM,GAAG,GAAG,GAAG,cAAc,OAAO,CAAC;IACrC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAChC,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;QAC5B,OAAO,EAAE;YACP,aAAa,EAAE,UAAU,KAAK,EAAE;SACjC;KACF,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,8BAA8B,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;IAC1F,CAAC;IAED,MAAM,IAAI,GAAwB,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IACxD,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -1,62 +0,0 @@
1
- /**
2
- * Represents the blockchain platform type
3
- * Used to distinguish between different blockchain ecosystems
4
- */
5
- export var ChainType;
6
- (function (ChainType) {
7
- ChainType["EVM"] = "EVM";
8
- ChainType["Solana"] = "Solana";
9
- ChainType["Sui"] = "Sui";
10
- })(ChainType || (ChainType = {}));
11
- /**
12
- * Enum of chain IDs for supported blockchains
13
- * EVM chains use their standard chain IDs
14
- * Non-EVM chains use custom assigned IDs
15
- */
16
- export var ChainID;
17
- (function (ChainID) {
18
- ChainID[ChainID["Arbitrum"] = 42161] = "Arbitrum";
19
- ChainID[ChainID["Optimism"] = 10] = "Optimism";
20
- ChainID[ChainID["Base"] = 8453] = "Base";
21
- ChainID[ChainID["Hyperliquid"] = 999] = "Hyperliquid";
22
- ChainID[ChainID["Solana"] = 7565164] = "Solana";
23
- ChainID[ChainID["Sui"] = 101] = "Sui";
24
- })(ChainID || (ChainID = {}));
25
- /**
26
- * Array of chain IDs that are supported by the SDK
27
- * Used as a source of truth for type generation
28
- */
29
- export const SupportedChains = [
30
- ChainID.Arbitrum,
31
- ChainID.Base,
32
- ChainID.Optimism,
33
- ChainID.Hyperliquid,
34
- ChainID.Solana,
35
- ChainID.Sui,
36
- ];
37
- export function isEvmChain(chainId) {
38
- return chainId !== ChainID.Solana && chainId !== ChainID.Sui;
39
- }
40
- /**
41
- * Type guard that checks if a chain ID is among the supported chains
42
- * @param chain - The chain ID to check
43
- * @returns Boolean indicating if the chain is supported
44
- */
45
- export const isSupportedChain = (chain) => {
46
- if (typeof chain !== 'number')
47
- return false;
48
- return SupportedChains.includes(chain);
49
- };
50
- /**
51
- * Maps chain IDs to their corresponding chain types
52
- * Used to determine which SDK implementation to use for a given chain
53
- */
54
- export const chainIdToChainTypeMap = {
55
- [ChainID.Arbitrum]: ChainType.EVM,
56
- [ChainID.Base]: ChainType.EVM,
57
- [ChainID.Optimism]: ChainType.EVM,
58
- [ChainID.Hyperliquid]: ChainType.EVM,
59
- [ChainID.Solana]: ChainType.Solana,
60
- [ChainID.Sui]: ChainType.Sui,
61
- };
62
- //# sourceMappingURL=chains.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chains.js","sourceRoot":"","sources":["../../src/chains.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,CAAN,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,wBAAW,CAAA;IACX,8BAAiB,CAAA;IACjB,wBAAW,CAAA;AACb,CAAC,EAJW,SAAS,KAAT,SAAS,QAIpB;AAED;;;;GAIG;AACH,MAAM,CAAN,IAAY,OAOX;AAPD,WAAY,OAAO;IACjB,iDAAgB,CAAA;IAChB,8CAAa,CAAA;IACb,wCAAW,CAAA;IACX,qDAAiB,CAAA;IACjB,+CAAgB,CAAA;IAChB,qCAAS,CAAA;AACX,CAAC,EAPW,OAAO,KAAP,OAAO,QAOlB;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,IAAI;IACZ,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,GAAG;CACH,CAAC;AAkBX,MAAM,UAAU,UAAU,CAAC,OAAgB;IACzC,OAAO,OAAO,KAAK,OAAO,CAAC,MAAM,IAAI,OAAO,KAAK,OAAO,CAAC,GAAG,CAAC;AAC/D,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAAc,EAA2B,EAAE;IAC1E,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,OAAQ,eAAqC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAChE,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,GAAG;IACjC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,GAAG;IAC7B,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,GAAG;IACjC,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,SAAS,CAAC,GAAG;IACpC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC,MAAM;IAClC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC,GAAG;CACpB,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":""}