@shogun-sdk/intents-sdk 1.3.0 → 1.4.1

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 +9008 -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 +9257 -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 +24 -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 +41 -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
@@ -10,7 +10,7 @@ import {
10
10
  } from '../../types/intent.js';
11
11
  import { CrossChainOrderValidator } from '../../utils/order-validator.js';
12
12
  import { Parsers } from '../../utils/parsers.js';
13
- import { type ExtraTransfer } from './common.js';
13
+ import { type ExtraTransfer, type StopLossType } from './common.js';
14
14
  import type { ApiResponse } from '../../types/api.js';
15
15
  import { BaseSDK } from '../sdk.js';
16
16
  import { getEVMCrossChainOrderTypedData } from '../evm/order-signature.js';
@@ -40,8 +40,9 @@ export type CreateCrossChainOrderParams = {
40
40
  /** Extra transfers to be made */
41
41
  extraTransfers?: ExtraTransfer[];
42
42
 
43
- /** Stop loss max out */
44
- stopLossMaxOut?: bigint;
43
+ /** Stop loss */
44
+ stopLossType?: StopLossType;
45
+ stopLossTriggerPrice?: string;
45
46
  /** Take profit min out */
46
47
  takeProfitMinOut?: bigint;
47
48
  };
@@ -73,8 +74,9 @@ export class CrossChainOrder {
73
74
  public deadline: number;
74
75
  /** Extra transfers to be made */
75
76
  public extraTransfers?: ExtraTransfer[];
76
- /** Stop loss max out */
77
- public stopLossMaxOut?: bigint;
77
+ /** Stop loss */
78
+ public stopLossType?: StopLossType;
79
+ public stopLossTriggerPrice?: string;
78
80
  /** Take profit min out */
79
81
  public takeProfitMinOut?: bigint;
80
82
 
@@ -90,7 +92,8 @@ export class CrossChainOrder {
90
92
  this.minStablecoinAmount = params.minStablecoinAmount ?? 1n;
91
93
  this.deadline = params.deadline;
92
94
  this.extraTransfers = params.extraTransfers;
93
- this.stopLossMaxOut = params.stopLossMaxOut;
95
+ this.stopLossType = params.stopLossType;
96
+ this.stopLossTriggerPrice = params.stopLossTriggerPrice;
94
97
  this.takeProfitMinOut = params.takeProfitMinOut;
95
98
  }
96
99
 
@@ -154,15 +157,16 @@ export class CrossChainOrder {
154
157
  private static async calculateAmountOutMin(
155
158
  input: CreateCrossChainOrderParams,
156
159
  ): Promise<{ minStablecoinAmount: bigint; destinationTokenMinAmount: bigint }> {
157
- const { destinationTokenMinAmount, stopLossMaxOut, minStablecoinAmount } = input;
160
+ const { destinationTokenMinAmount, stopLossType, stopLossTriggerPrice, minStablecoinAmount } = input;
158
161
 
159
- if (stopLossMaxOut !== undefined) {
162
+ if (stopLossType !== undefined && stopLossTriggerPrice !== undefined) {
160
163
  return {
161
164
  destinationTokenMinAmount: 1n,
162
165
  minStablecoinAmount: 1n,
163
166
  };
164
167
  }
165
168
 
169
+ // TODO: Change this
166
170
  if (!minStablecoinAmount || !destinationTokenMinAmount) {
167
171
  const quote = await QuoteProvider.getQuote({
168
172
  sourceChainId: input.sourceChainId,
@@ -196,6 +200,9 @@ export class CrossChainOrder {
196
200
  destinationAddress: this.destinationAddress,
197
201
  amountOutMin: this.destinationTokenMinAmount,
198
202
  extraTransfers: this.extraTransfers,
203
+ stopLossType: this.stopLossType,
204
+ stopLossTriggerPrice: this.stopLossTriggerPrice,
205
+ takeProfitMinOut: this.takeProfitMinOut,
199
206
  };
200
207
  }
201
208
 
@@ -4,10 +4,13 @@ import type { ApiResponse } from '../../types/api.js';
4
4
  import type { SingleChainPreparedData, SingleChainUserIntentRequest } from '../../types/intent.js';
5
5
  import { SingleChainOrderValidator } from '../../utils/order-validator.js';
6
6
  import { QuoteProvider } from '../../utils/quote/aggregator.js';
7
+ import { estimateAmountOut } from '../../utils/quote/pricing/estimate-amount-out.js';
8
+ import { estimateExpensesInTokenOut } from '../../utils/quote/pricing/expenses.js';
9
+ import { DEFAULT_COMMISSION_BPS, EVM_SINGLE_CHAIN_GAS_LIMIT, SINGLE_CHAIN_COMMISSION_DENOMINATOR } from '../../utils/quote/pricing/constants.js';
7
10
  import { getEVMSingleChainOrderTypedData } from '../evm/order-signature.js';
8
11
  import { BaseSDK } from '../sdk.js';
9
12
  import { getSolanaSingleChainOrderInstructions } from '../solana/order-instructions.js';
10
- import { type ExtraTransfer } from './common.js';
13
+ import { type ExtraTransfer, type StopLossType } from './common.js';
11
14
 
12
15
  export type CreateSingleChainOrderParams = {
13
16
  chainId: SupportedChain;
@@ -19,7 +22,8 @@ export type CreateSingleChainOrderParams = {
19
22
  extraTransfers?: ExtraTransfer[];
20
23
  deadline: number;
21
24
 
22
- stopLossMaxOut?: bigint;
25
+ stopLossType?: StopLossType;
26
+ stopLossTriggerPrice?: string;
23
27
  takeProfitMinOut?: bigint;
24
28
  };
25
29
 
@@ -35,7 +39,8 @@ export class SingleChainOrder {
35
39
  public destinationAddress: string;
36
40
  public extraTransfers?: ExtraTransfer[];
37
41
  public deadline: number;
38
- public stopLossMaxOut?: bigint;
42
+ public stopLossType?: StopLossType;
43
+ public stopLossTriggerPrice?: string;
39
44
  public takeProfitMinOut?: bigint;
40
45
 
41
46
  private constructor(params: CreateSingleChainOrderParams & { user: string }) {
@@ -48,7 +53,8 @@ export class SingleChainOrder {
48
53
  this.destinationAddress = params.destinationAddress;
49
54
  this.extraTransfers = params.extraTransfers;
50
55
  this.deadline = params.deadline;
51
- this.stopLossMaxOut = params.stopLossMaxOut;
56
+ this.stopLossType = params.stopLossType;
57
+ this.stopLossTriggerPrice = params.stopLossTriggerPrice;
52
58
  this.takeProfitMinOut = params.takeProfitMinOut;
53
59
  }
54
60
 
@@ -104,22 +110,33 @@ export class SingleChainOrder {
104
110
  }
105
111
 
106
112
  private static async calculateAmountOutMin(input: CreateSingleChainOrderParams): Promise<bigint> {
107
- const { amountOutMin, stopLossMaxOut } = input;
113
+ const { amountOutMin, stopLossType, stopLossTriggerPrice } = input;
108
114
 
109
115
  const scenario = this.getSingleChainOrderScenario({
110
116
  hasAmountOutMin: !!amountOutMin,
111
- hasStopLoss: !!stopLossMaxOut,
117
+ hasStopLoss: !!stopLossType && !!stopLossTriggerPrice,
112
118
  });
113
119
 
114
120
  switch (scenario) {
115
121
  case 'QUOTE_REQUIRED': {
116
- const quote = await QuoteProvider.getSingleChainQuote({
117
- tokenIn: input.tokenIn,
118
- amount: input.amountIn,
119
- chainId: input.chainId,
120
- tokenOut: input.tokenOut,
121
- });
122
- return (quote.amountOut * 93n) / 100n; // Add 7% reduced fixed amount to cover fees
122
+ const [quote, expenses] = await Promise.all([
123
+ QuoteProvider.getSingleChainQuote({
124
+ tokenIn: input.tokenIn,
125
+ amount: input.amountIn,
126
+ chainId: input.chainId,
127
+ tokenOut: input.tokenOut,
128
+ }),
129
+ estimateExpensesInTokenOut({
130
+ chainId: input.chainId,
131
+ tokenOut: input.tokenOut,
132
+ gasLimit: EVM_SINGLE_CHAIN_GAS_LIMIT,
133
+ getQuote: (p) => QuoteProvider.getSingleChainQuote(p),
134
+ }),
135
+ ]);
136
+
137
+ // Worst-case output already carries provider slippage; never use the nominal amountOut.
138
+ const swapOutput = quote.amountOutMin ?? quote.amountOut;
139
+ return estimateAmountOut(swapOutput, DEFAULT_COMMISSION_BPS, expenses, SINGLE_CHAIN_COMMISSION_DENOMINATOR);
123
140
  }
124
141
 
125
142
  case 'USE_PROVIDED_AMOUNT':
package/src/core/sdk.ts CHANGED
@@ -4,6 +4,7 @@ import type { ApiResponse } from '../types/api.js';
4
4
  import type {
5
5
  CrossChainOrderPrepared,
6
6
  CrossChainUserIntentRequest,
7
+ DcaCrossChainUserIntentRequest,
7
8
  DcaSingleChainOrderPrepared,
8
9
  DcaSingleChainUserIntentRequest,
9
10
  SingleChainOrderPrepared,
@@ -32,6 +33,7 @@ export abstract class BaseSDK {
32
33
  body,
33
34
  });
34
35
 
36
+ console.debug(`url`, url, `body`, body)
35
37
  if (!response.ok) {
36
38
  const errorJson: ApiResponse = await response.json();
37
39
  const mainError = errorJson.error;
@@ -121,4 +123,13 @@ export abstract class BaseSDK {
121
123
  public static async validateDcaSingleChainOrder(intentRequest: DcaSingleChainUserIntentRequest): Promise<void> {
122
124
  return BaseSDK.validateOrder(intentRequest, '/validate_intent/single_chain/dca_order');
123
125
  }
126
+
127
+ public static async validateDcaCrossChainOrder(intentRequest: DcaCrossChainUserIntentRequest): Promise<void> {
128
+ return BaseSDK.validateOrder(intentRequest, '/validate_intent/cross_chain/dca_order');
129
+ }
130
+
131
+ public static async sendDcaCrossChainOrder(intentRequest: DcaCrossChainUserIntentRequest): Promise<ApiResponse> {
132
+ const body = JSON.stringify(intentRequest, Parsers.bigIntReplacer);
133
+ return BaseSDK.makeRequest(`${AUCTIONEER_URL}/user_intent/cross_chain/dca_order`, body);
134
+ }
124
135
  }
@@ -86,13 +86,14 @@ export async function cancelSingleChainOrderInstructions(
86
86
  }
87
87
 
88
88
  const cancelLimitOrderIx = getCancelLimitOrderInstruction({
89
- user: createNoopSigner(orderUserAddress),
90
89
  order: orderId,
91
90
  guard: guardAddress,
92
91
  tokenInMint: chainOrder.data.tokenInMint,
93
92
  userTokenInAccount: userTokenInAccount.address,
94
93
  guardTokenInAccount: guardProgramAccount,
95
94
  tokenInProgram: tokenMintProgram.programAddress,
95
+ signer: createNoopSigner(orderUserAddress),
96
+ user: orderUserAddress
96
97
  });
97
98
 
98
99
  instructions.push(cancelLimitOrderIx);
@@ -245,7 +246,7 @@ export async function cancelCrossChainOrderInstructions(
245
246
 
246
247
  // Create the cancel order instruction
247
248
  const cancelOrderIx = getCancelOrderInstruction({
248
- user: createNoopSigner(orderUserAddress),
249
+ user: orderUserAddress,
249
250
  order: orderId,
250
251
  guard: guardAddress,
251
252
  recoveredTokenMint: recoverTokenMint,
@@ -256,6 +257,7 @@ export async function cancelCrossChainOrderInstructions(
256
257
  userCollateralTokenAccount: userCollateralTokenAccount,
257
258
  guardCollateralTokenAccount: guardCollateralTokenAccount,
258
259
  collateralTokenProgram: collateralTokenMintProgram.programAddress,
260
+ signer: createNoopSigner(orderUserAddress)
259
261
  });
260
262
 
261
263
  instructions.push(cancelOrderIx);
@@ -5,7 +5,7 @@ import {
5
5
  type RpcSubscriptions,
6
6
  type SolanaRpcApiMainnet,
7
7
  type SolanaRpcSubscriptionsApi,
8
- sendAndConfirmTransactionFactory
8
+ sendAndConfirmTransactionFactory,
9
9
  } from '@solana/kit';
10
10
  import type { SolanaConfig } from '../../config.js';
11
11
 
@@ -76,7 +76,8 @@ export async function cancelDcaSingleChainOrderInstructions(
76
76
  }
77
77
 
78
78
  const cancelLimitOrderIx = getCancelDcaOrderInstruction({
79
- user: createNoopSigner(orderUserAddress),
79
+ user: orderUserAddress,
80
+ signer: createNoopSigner(orderUserAddress),
80
81
  order: orderId,
81
82
  guard: guardAddress,
82
83
  tokenInMint: chainOrder.data.tokenInMint,
@@ -1,32 +1,29 @@
1
- import { BN } from "@coral-xyz/anchor";
2
- import { PublicKey } from "@solana/web3.js";
3
- import { keccak256 } from "js-sha3";
4
- import type { ExtraTransfer } from "./single-chain-limit-order.js";
5
-
1
+ import { BN } from 'bn.js';
2
+ import { PublicKey } from '@solana/web3.js';
3
+ import type { ExtraTransfer } from './single-chain-limit-order.js';
4
+ import pkg from 'js-sha3';
5
+ const { keccak256 } = pkg;
6
6
  /**
7
7
  * Generate secret number and prepare secret hash for single chain DCA orders
8
8
  * @param tokenOut Token OUT Pubkey
9
9
  * @param receiver Token OUT receiver Pubkey
10
10
  * @param extraTransfers Requested extra transfers
11
11
  */
12
- export function prepareDcaSecretData(
13
- tokenOut: PublicKey,
14
- receiver: PublicKey,
15
- extraTransfers: ExtraTransfer[],
16
- ) {
12
+ export function prepareDcaSecretData(tokenOut: PublicKey, receiver: PublicKey, extraTransfers: ExtraTransfer[]) {
17
13
  const secretNumber = new BN(crypto.getRandomValues(new Uint8Array(8)));
18
- const secretHash = [...Uint8Array.from(Buffer.from(
19
- keccak256([
20
- ...tokenOut.toBuffer(),
21
- ...receiver.toBuffer(),
22
- ...Buffer.concat(extraTransfers.map(t => Buffer.concat([
23
- t.token.toBuffer(),
24
- t.receiver.toBuffer(),
25
- ]))),
26
- ...secretNumber.toBuffer('le', 8),
27
- ]),
28
- 'hex'
29
- ))];
14
+ const secretHash = [
15
+ ...Uint8Array.from(
16
+ Buffer.from(
17
+ keccak256([
18
+ ...tokenOut.toBuffer(),
19
+ ...receiver.toBuffer(),
20
+ ...Buffer.concat(extraTransfers.map((t) => Buffer.concat([t.token.toBuffer(), t.receiver.toBuffer()]))),
21
+ ...secretNumber.toBuffer('le', 8),
22
+ ]),
23
+ 'hex',
24
+ ),
25
+ ),
26
+ ];
30
27
 
31
28
  return { secretHash, secretNumber };
32
29
  }
@@ -1,6 +1,7 @@
1
- import { BN } from "@coral-xyz/anchor";
2
- import { PublicKey } from "@solana/web3.js";
3
- import { keccak256 } from "js-sha3";
1
+ import { BN } from 'bn.js';
2
+ import { PublicKey } from '@solana/web3.js';
3
+ import pkg from 'js-sha3';
4
+ const { keccak256 } = pkg;
4
5
 
5
6
  export type ExtraTransfer = {
6
7
  token: PublicKey;
@@ -14,31 +15,28 @@ export type ExtraTransfer = {
14
15
  * @param receiver Token OUT receiver Pubkey
15
16
  * @param extraTransfers Requested extra transfers
16
17
  */
17
- export function prepareSecretData(
18
- tokenOut: PublicKey,
19
- receiver: PublicKey,
20
- extraTransfers: ExtraTransfer[],
21
- ) {
18
+ export function prepareSecretData(tokenOut: PublicKey, receiver: PublicKey, extraTransfers: ExtraTransfer[]) {
22
19
  const secretNumber = new BN(crypto.getRandomValues(new Uint8Array(8)));
23
- const secretHash = [...Uint8Array.from(Buffer.from(
24
- keccak256([
25
- ...tokenOut.toBuffer(),
26
- ...receiver.toBuffer(),
27
- ...Buffer.concat(extraTransfers.map(t => Buffer.concat([
28
- t.token.toBuffer(),
29
- t.receiver.toBuffer(),
30
- ]))),
31
- ...secretNumber.toBuffer('le', 8),
32
- ]),
33
- 'hex'
34
- ))];
20
+ const secretHash = [
21
+ ...Uint8Array.from(
22
+ Buffer.from(
23
+ keccak256([
24
+ ...tokenOut.toBuffer(),
25
+ ...receiver.toBuffer(),
26
+ ...Buffer.concat(extraTransfers.map((t) => Buffer.concat([t.token.toBuffer(), t.receiver.toBuffer()]))),
27
+ ...secretNumber.toBuffer('le', 8),
28
+ ]),
29
+ 'hex',
30
+ ),
31
+ ),
32
+ ];
35
33
 
36
34
  return { secretHash, secretNumber };
37
35
  }
38
36
 
39
37
  export function formatTokenPubkey(token: PublicKey) {
40
- if (token.equals(new PublicKey("So11111111111111111111111111111111111111111"))) {
41
- return PublicKey.default
38
+ if (token.equals(new PublicKey('So11111111111111111111111111111111111111111'))) {
39
+ return PublicKey.default;
42
40
  }
43
41
 
44
42
  return token;
@@ -88,7 +88,7 @@ export type DcaOrder = {
88
88
  intervalIndexOfLatestExecutionStart: number;
89
89
  /** Total number of already executed intervals */
90
90
  totalExecutedIntervals: number;
91
- /** INDEX of last executed interval */
91
+ /** INDEX of last successfully fulfilled interval */
92
92
  lastExecutedIntervalIndex: number;
93
93
  };
94
94
 
@@ -132,7 +132,7 @@ export type DcaOrderArgs = {
132
132
  intervalIndexOfLatestExecutionStart: number;
133
133
  /** Total number of already executed intervals */
134
134
  totalExecutedIntervals: number;
135
- /** INDEX of last executed interval */
135
+ /** INDEX of last successfully fulfilled interval */
136
136
  lastExecutedIntervalIndex: number;
137
137
  };
138
138
 
@@ -24,6 +24,8 @@ import {
24
24
  combineCodec,
25
25
  fixDecoderSize,
26
26
  fixEncoderSize,
27
+ getArrayDecoder,
28
+ getArrayEncoder,
27
29
  getBytesDecoder,
28
30
  getBytesEncoder,
29
31
  getStructDecoder,
@@ -33,9 +35,9 @@ import {
33
35
  getU8Decoder,
34
36
  getU8Encoder,
35
37
  transformEncoder,
36
- type FixedSizeCodec,
37
- type FixedSizeDecoder,
38
- type FixedSizeEncoder,
38
+ type Codec,
39
+ type Decoder,
40
+ type Encoder,
39
41
  type ReadonlyUint8Array,
40
42
  } from '@solana/codecs';
41
43
 
@@ -59,6 +61,12 @@ export type Guard = {
59
61
  auctioneerPubKey: Address;
60
62
  /** Amount of collected fees, in collateral tokens */
61
63
  collectedFees: bigint;
64
+ /**
65
+ * List of wallets that can cancel user orders. They will be authorized by Admin
66
+ * and used to enhance UX, allowing to avoid paying gas for order cancellation and
67
+ * tokens recovery
68
+ */
69
+ cancelAuthorities: Array<Address>;
62
70
  };
63
71
 
64
72
  export type GuardArgs = {
@@ -74,9 +82,15 @@ export type GuardArgs = {
74
82
  auctioneerPubKey: Address;
75
83
  /** Amount of collected fees, in collateral tokens */
76
84
  collectedFees: number | bigint;
85
+ /**
86
+ * List of wallets that can cancel user orders. They will be authorized by Admin
87
+ * and used to enhance UX, allowing to avoid paying gas for order cancellation and
88
+ * tokens recovery
89
+ */
90
+ cancelAuthorities: Array<Address>;
77
91
  };
78
92
 
79
- export function getGuardEncoder(): FixedSizeEncoder<GuardArgs> {
93
+ export function getGuardEncoder(): Encoder<GuardArgs> {
80
94
  return transformEncoder(
81
95
  getStructEncoder([
82
96
  ['discriminator', fixEncoderSize(getBytesEncoder(), 8)],
@@ -86,12 +100,13 @@ export function getGuardEncoder(): FixedSizeEncoder<GuardArgs> {
86
100
  ['bump', getU8Encoder()],
87
101
  ['auctioneerPubKey', getAddressEncoder()],
88
102
  ['collectedFees', getU64Encoder()],
103
+ ['cancelAuthorities', getArrayEncoder(getAddressEncoder())],
89
104
  ]),
90
105
  (value) => ({ ...value, discriminator: GUARD_DISCRIMINATOR })
91
106
  );
92
107
  }
93
108
 
94
- export function getGuardDecoder(): FixedSizeDecoder<Guard> {
109
+ export function getGuardDecoder(): Decoder<Guard> {
95
110
  return getStructDecoder([
96
111
  ['discriminator', fixDecoderSize(getBytesDecoder(), 8)],
97
112
  ['collateralToken', getAddressDecoder()],
@@ -100,10 +115,11 @@ export function getGuardDecoder(): FixedSizeDecoder<Guard> {
100
115
  ['bump', getU8Decoder()],
101
116
  ['auctioneerPubKey', getAddressDecoder()],
102
117
  ['collectedFees', getU64Decoder()],
118
+ ['cancelAuthorities', getArrayDecoder(getAddressDecoder())],
103
119
  ]);
104
120
  }
105
121
 
106
- export function getGuardCodec(): FixedSizeCodec<GuardArgs, Guard> {
122
+ export function getGuardCodec(): Codec<GuardArgs, Guard> {
107
123
  return combineCodec(getGuardEncoder(), getGuardDecoder());
108
124
  }
109
125
 
@@ -156,7 +172,3 @@ export async function fetchAllMaybeGuard(
156
172
  const maybeAccounts = await fetchEncodedAccounts(rpc, addresses, config);
157
173
  return maybeAccounts.map((maybeAccount) => decodeGuard(maybeAccount));
158
174
  }
159
-
160
- export function getGuardSize(): number {
161
- return 114;
162
- }
@@ -21,72 +21,74 @@ export const SOURCE_CHAIN_GUARD_ERROR__NOT_PENDING_ADMIN = 0x1772; // 6002
21
21
  export const SOURCE_CHAIN_GUARD_ERROR__NOT_A_SOLVER = 0x1773; // 6003
22
22
  /** NotAUser: Account is not a User */
23
23
  export const SOURCE_CHAIN_GUARD_ERROR__NOT_A_USER = 0x1774; // 6004
24
+ /** NotAUserOrCancelAuthority: Account is not a User or Cancel authority */
25
+ export const SOURCE_CHAIN_GUARD_ERROR__NOT_A_USER_OR_CANCEL_AUTHORITY = 0x1775; // 6005
24
26
  /** ZeroAmount: Amount must not be zero */
25
- export const SOURCE_CHAIN_GUARD_ERROR__ZERO_AMOUNT = 0x1775; // 6005
27
+ export const SOURCE_CHAIN_GUARD_ERROR__ZERO_AMOUNT = 0x1776; // 6006
26
28
  /** ZeroAmountIn: Amount IN must not be zero */
27
- export const SOURCE_CHAIN_GUARD_ERROR__ZERO_AMOUNT_IN = 0x1776; // 6006
29
+ export const SOURCE_CHAIN_GUARD_ERROR__ZERO_AMOUNT_IN = 0x1777; // 6007
28
30
  /** ZeroMinStablecoins: Min stablecoins amount must not be zero */
29
- export const SOURCE_CHAIN_GUARD_ERROR__ZERO_MIN_STABLECOINS = 0x1777; // 6007
31
+ export const SOURCE_CHAIN_GUARD_ERROR__ZERO_MIN_STABLECOINS = 0x1778; // 6008
30
32
  /** WrongOrder: Wrong order */
31
- export const SOURCE_CHAIN_GUARD_ERROR__WRONG_ORDER = 0x1778; // 6008
33
+ export const SOURCE_CHAIN_GUARD_ERROR__WRONG_ORDER = 0x1779; // 6009
32
34
  /** InvalidGuard: Invalid Guard */
33
- export const SOURCE_CHAIN_GUARD_ERROR__INVALID_GUARD = 0x1779; // 6009
35
+ export const SOURCE_CHAIN_GUARD_ERROR__INVALID_GUARD = 0x177a; // 6010
34
36
  /** ExpiredDeadline: Expired deadline */
35
- export const SOURCE_CHAIN_GUARD_ERROR__EXPIRED_DEADLINE = 0x177a; // 6010
37
+ export const SOURCE_CHAIN_GUARD_ERROR__EXPIRED_DEADLINE = 0x177b; // 6011
36
38
  /** InvalidStartPermission: Invalid permission */
37
- export const SOURCE_CHAIN_GUARD_ERROR__INVALID_START_PERMISSION = 0x177b; // 6011
39
+ export const SOURCE_CHAIN_GUARD_ERROR__INVALID_START_PERMISSION = 0x177c; // 6012
38
40
  /** InvalidSuccessConfirmation: Invalid success confirmation */
39
- export const SOURCE_CHAIN_GUARD_ERROR__INVALID_SUCCESS_CONFIRMATION = 0x177c; // 6012
41
+ export const SOURCE_CHAIN_GUARD_ERROR__INVALID_SUCCESS_CONFIRMATION = 0x177d; // 6013
40
42
  /** OrderIsBeingExecuted: Order is being executed */
41
- export const SOURCE_CHAIN_GUARD_ERROR__ORDER_IS_BEING_EXECUTED = 0x177d; // 6013
43
+ export const SOURCE_CHAIN_GUARD_ERROR__ORDER_IS_BEING_EXECUTED = 0x177e; // 6014
42
44
  /** InvalidRecoverToken: Invalid recover token */
43
- export const SOURCE_CHAIN_GUARD_ERROR__INVALID_RECOVER_TOKEN = 0x177e; // 6014
45
+ export const SOURCE_CHAIN_GUARD_ERROR__INVALID_RECOVER_TOKEN = 0x177f; // 6015
44
46
  /** AccountNotProvided: Account not provided */
45
- export const SOURCE_CHAIN_GUARD_ERROR__ACCOUNT_NOT_PROVIDED = 0x177f; // 6015
47
+ export const SOURCE_CHAIN_GUARD_ERROR__ACCOUNT_NOT_PROVIDED = 0x1780; // 6016
46
48
  /** CpiCallNotAllowed: CPI call is not allowed */
47
- export const SOURCE_CHAIN_GUARD_ERROR__CPI_CALL_NOT_ALLOWED = 0x1780; // 6016
49
+ export const SOURCE_CHAIN_GUARD_ERROR__CPI_CALL_NOT_ALLOWED = 0x1781; // 6017
48
50
  /** FeeTransferNotAllowed: Fee transfer not allowed */
49
- export const SOURCE_CHAIN_GUARD_ERROR__FEE_TRANSFER_NOT_ALLOWED = 0x1781; // 6017
51
+ export const SOURCE_CHAIN_GUARD_ERROR__FEE_TRANSFER_NOT_ALLOWED = 0x1782; // 6018
50
52
  /** InvalidIntervalDuration: Invalid interval duration */
51
- export const SOURCE_CHAIN_GUARD_ERROR__INVALID_INTERVAL_DURATION = 0x1782; // 6018
53
+ export const SOURCE_CHAIN_GUARD_ERROR__INVALID_INTERVAL_DURATION = 0x1783; // 6019
52
54
  /** SwapNotAllowed: Swap is not allowed */
53
- export const SOURCE_CHAIN_GUARD_ERROR__SWAP_NOT_ALLOWED = 0x1783; // 6019
55
+ export const SOURCE_CHAIN_GUARD_ERROR__SWAP_NOT_ALLOWED = 0x1784; // 6020
54
56
  /** NoAfterSwapInstructionFound: No _after_swap instruction found */
55
- export const SOURCE_CHAIN_GUARD_ERROR__NO_AFTER_SWAP_INSTRUCTION_FOUND = 0x1784; // 6020
57
+ export const SOURCE_CHAIN_GUARD_ERROR__NO_AFTER_SWAP_INSTRUCTION_FOUND = 0x1785; // 6021
56
58
  /** InvalidAfterSwapInstruction: Invalid _after_swap instruction */
57
- export const SOURCE_CHAIN_GUARD_ERROR__INVALID_AFTER_SWAP_INSTRUCTION = 0x1785; // 6021
59
+ export const SOURCE_CHAIN_GUARD_ERROR__INVALID_AFTER_SWAP_INSTRUCTION = 0x1786; // 6022
58
60
  /** AlreadySwapped: Tokens IN were already swapped */
59
- export const SOURCE_CHAIN_GUARD_ERROR__ALREADY_SWAPPED = 0x1786; // 6022
61
+ export const SOURCE_CHAIN_GUARD_ERROR__ALREADY_SWAPPED = 0x1787; // 6023
60
62
  /** SwapWasNotInitiated: Swap wasn't initiated */
61
- export const SOURCE_CHAIN_GUARD_ERROR__SWAP_WAS_NOT_INITIATED = 0x1787; // 6023
63
+ export const SOURCE_CHAIN_GUARD_ERROR__SWAP_WAS_NOT_INITIATED = 0x1788; // 6024
62
64
  /** BelowMinStablecoinsAmount: Below minimum stablecoins amount */
63
- export const SOURCE_CHAIN_GUARD_ERROR__BELOW_MIN_STABLECOINS_AMOUNT = 0x1788; // 6024
65
+ export const SOURCE_CHAIN_GUARD_ERROR__BELOW_MIN_STABLECOINS_AMOUNT = 0x1789; // 6025
64
66
  /** CollateralTokenAccountsNotProvided: Collateral token accounts not provided */
65
- export const SOURCE_CHAIN_GUARD_ERROR__COLLATERAL_TOKEN_ACCOUNTS_NOT_PROVIDED = 0x1789; // 6025
67
+ export const SOURCE_CHAIN_GUARD_ERROR__COLLATERAL_TOKEN_ACCOUNTS_NOT_PROVIDED = 0x178a; // 6026
66
68
  /** StablecoinAccountsNotProvided: Stablecoin accounts not provided */
67
- export const SOURCE_CHAIN_GUARD_ERROR__STABLECOIN_ACCOUNTS_NOT_PROVIDED = 0x178a; // 6026
69
+ export const SOURCE_CHAIN_GUARD_ERROR__STABLECOIN_ACCOUNTS_NOT_PROVIDED = 0x178b; // 6027
68
70
  /** RecoverTokenAccountsNotProvided: Recover token accounts not provided */
69
- export const SOURCE_CHAIN_GUARD_ERROR__RECOVER_TOKEN_ACCOUNTS_NOT_PROVIDED = 0x178b; // 6027
71
+ export const SOURCE_CHAIN_GUARD_ERROR__RECOVER_TOKEN_ACCOUNTS_NOT_PROVIDED = 0x178c; // 6028
70
72
  /** InvalidDestTokenAccount: Invalid dest token account */
71
- export const SOURCE_CHAIN_GUARD_ERROR__INVALID_DEST_TOKEN_ACCOUNT = 0x178c; // 6028
73
+ export const SOURCE_CHAIN_GUARD_ERROR__INVALID_DEST_TOKEN_ACCOUNT = 0x178d; // 6029
72
74
  /** OrderIsCancelled: Order is cancelled */
73
- export const SOURCE_CHAIN_GUARD_ERROR__ORDER_IS_CANCELLED = 0x178d; // 6029
75
+ export const SOURCE_CHAIN_GUARD_ERROR__ORDER_IS_CANCELLED = 0x178e; // 6030
74
76
  /** OrderIsFulfilled: Order is fulfilled */
75
- export const SOURCE_CHAIN_GUARD_ERROR__ORDER_IS_FULFILLED = 0x178e; // 6030
77
+ export const SOURCE_CHAIN_GUARD_ERROR__ORDER_IS_FULFILLED = 0x178f; // 6031
76
78
  /** InvalidDcaOrder: Invalid DCA order */
77
- export const SOURCE_CHAIN_GUARD_ERROR__INVALID_DCA_ORDER = 0x178f; // 6031
79
+ export const SOURCE_CHAIN_GUARD_ERROR__INVALID_DCA_ORDER = 0x1790; // 6032
78
80
  /** IntervalWasAlreadyClaimed: Interval was already claimed */
79
- export const SOURCE_CHAIN_GUARD_ERROR__INTERVAL_WAS_ALREADY_CLAIMED = 0x1790; // 6032
81
+ export const SOURCE_CHAIN_GUARD_ERROR__INTERVAL_WAS_ALREADY_CLAIMED = 0x1791; // 6033
80
82
  /** CantStartOrderExecutionDuringThisInterval: Cant start order execution during this interval */
81
- export const SOURCE_CHAIN_GUARD_ERROR__CANT_START_ORDER_EXECUTION_DURING_THIS_INTERVAL = 0x1791; // 6033
83
+ export const SOURCE_CHAIN_GUARD_ERROR__CANT_START_ORDER_EXECUTION_DURING_THIS_INTERVAL = 0x1792; // 6034
82
84
  /** PreviousIntervalCollateralTokenAccountNotProvided: Previous interval collateral token account not provided */
83
- export const SOURCE_CHAIN_GUARD_ERROR__PREVIOUS_INTERVAL_COLLATERAL_TOKEN_ACCOUNT_NOT_PROVIDED = 0x1792; // 6034
85
+ export const SOURCE_CHAIN_GUARD_ERROR__PREVIOUS_INTERVAL_COLLATERAL_TOKEN_ACCOUNT_NOT_PROVIDED = 0x1793; // 6035
84
86
  /** InstructionNotFound: Ed25519Program instruction */
85
- export const SOURCE_CHAIN_GUARD_ERROR__INSTRUCTION_NOT_FOUND = 0x1793; // 6035
87
+ export const SOURCE_CHAIN_GUARD_ERROR__INSTRUCTION_NOT_FOUND = 0x1794; // 6036
86
88
  /** SigVerificationFailed: Signature verification failed */
87
- export const SOURCE_CHAIN_GUARD_ERROR__SIG_VERIFICATION_FAILED = 0x1794; // 6036
89
+ export const SOURCE_CHAIN_GUARD_ERROR__SIG_VERIFICATION_FAILED = 0x1795; // 6037
88
90
  /** InvalidSigner: Invalid signer */
89
- export const SOURCE_CHAIN_GUARD_ERROR__INVALID_SIGNER = 0x1795; // 6037
91
+ export const SOURCE_CHAIN_GUARD_ERROR__INVALID_SIGNER = 0x1796; // 6038
90
92
 
91
93
  export type SourceChainGuardError =
92
94
  | typeof SOURCE_CHAIN_GUARD_ERROR__ACCOUNT_NOT_PROVIDED
@@ -112,6 +114,7 @@ export type SourceChainGuardError =
112
114
  | typeof SOURCE_CHAIN_GUARD_ERROR__NOT_ADMIN
113
115
  | typeof SOURCE_CHAIN_GUARD_ERROR__NOT_A_SOLVER
114
116
  | typeof SOURCE_CHAIN_GUARD_ERROR__NOT_A_USER
117
+ | typeof SOURCE_CHAIN_GUARD_ERROR__NOT_A_USER_OR_CANCEL_AUTHORITY
115
118
  | typeof SOURCE_CHAIN_GUARD_ERROR__NOT_PENDING_ADMIN
116
119
  | typeof SOURCE_CHAIN_GUARD_ERROR__NOT_UPGRADE_AUTHORITY
117
120
  | typeof SOURCE_CHAIN_GUARD_ERROR__ORDER_IS_BEING_EXECUTED
@@ -154,6 +157,7 @@ if (process.env.NODE_ENV !== 'production') {
154
157
  [SOURCE_CHAIN_GUARD_ERROR__NOT_ADMIN]: `Account is not Admin`,
155
158
  [SOURCE_CHAIN_GUARD_ERROR__NOT_A_SOLVER]: `Account is not a Solver`,
156
159
  [SOURCE_CHAIN_GUARD_ERROR__NOT_A_USER]: `Account is not a User`,
160
+ [SOURCE_CHAIN_GUARD_ERROR__NOT_A_USER_OR_CANCEL_AUTHORITY]: `Account is not a User or Cancel authority`,
157
161
  [SOURCE_CHAIN_GUARD_ERROR__NOT_PENDING_ADMIN]: `Account is not Pending Admin`,
158
162
  [SOURCE_CHAIN_GUARD_ERROR__NOT_UPGRADE_AUTHORITY]: `Account is not upgrade authority`,
159
163
  [SOURCE_CHAIN_GUARD_ERROR__ORDER_IS_BEING_EXECUTED]: `Order is being executed`,