@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
@@ -1,10 +1,27 @@
1
+ import type { Address, Hex, TypedDataDefinition } from 'viem';
1
2
  import type { SupportedEvmChain } from '../../chains.js';
2
- import type { SingleChainUserIntentRequest, CrossChainUserIntentRequest, DcaSingleChainUserIntentRequest } from '../../types/intent.js';
3
+ import type {
4
+ SingleChainUserIntentRequest,
5
+ CrossChainUserIntentRequest,
6
+ DcaSingleChainUserIntentRequest,
7
+ DcaCrossChainUserIntentRequest,
8
+ } from '../../types/intent.js';
3
9
  import type { SingleChainOrder } from '../orders/single-chain.js';
4
10
  import type { CrossChainOrder } from '../orders/cross-chain.js';
5
11
  import type { DcaSingleChainOrder } from '../orders/dca-single-chain.js';
6
- import type { ExtraTransfer } from '../orders/common.js';
7
- import { getEVMCrossChainOrderTypedData, getEVMSingleChainOrderTypedData, getEVMDcaSingleChainOrderTypedData } from './order-signature.js';
12
+ import type { ExtraTransfer, StopLossType } from '../orders/common.js';
13
+ import {
14
+ getEVMCrossChainOrderTypedData,
15
+ getEVMSingleChainOrderTypedData,
16
+ getEVMDcaSingleChainOrderTypedData,
17
+ } from './order-signature.js';
18
+ import {
19
+ CROSS_CHAIN_DCA_PERMIT2_TYPES,
20
+ PERMIT2_DOMAIN,
21
+ type CrossChainDcaPermitTransferFrom,
22
+ } from './permit2.js';
23
+ import { EVMIntentProvider } from './intent-provider.js';
24
+ import { DCA_CROSS_CHAIN_GUARD_ADDRESSES, EVM_ZERO_SIGNATURE } from '../../constants.js';
8
25
  import { generateExecutionDetailsHash } from '../../utils/generate-execution-details-hash.js';
9
26
  import { Parsers } from '../../utils/parsers.js';
10
27
 
@@ -20,8 +37,9 @@ export type CreateEvmSingleChainLimitOrderIntentParams = {
20
37
  deadline: number;
21
38
  nonce?: string;
22
39
  signature?: string;
23
- stopLossMaxOut?: bigint;
24
40
  takeProfitMinOut?: bigint;
41
+ stopLossType?: StopLossType;
42
+ stopLossTriggerPrice?: string;
25
43
  };
26
44
 
27
45
  export type CreateEvmSingleChainDcaOrderIntentParams = {
@@ -55,8 +73,9 @@ export type CreateEvmCrossChainOrderIntentParams = {
55
73
  extraTransfers?: ExtraTransfer[];
56
74
  nonce?: string;
57
75
  signature?: string;
58
- stopLossMaxOut?: bigint;
59
76
  takeProfitMinOut?: bigint;
77
+ stopLossType?: StopLossType;
78
+ stopLossTriggerPrice?: string;
60
79
  };
61
80
 
62
81
  /**
@@ -65,7 +84,7 @@ export type CreateEvmCrossChainOrderIntentParams = {
65
84
  * @returns Formatted intent request ready to send to auctioneer
66
85
  */
67
86
  export function createEvmSingleChainLimitOrderIntentRequest(
68
- params: CreateEvmSingleChainLimitOrderIntentParams
87
+ params: CreateEvmSingleChainLimitOrderIntentParams,
69
88
  ): SingleChainUserIntentRequest {
70
89
  const order: SingleChainOrder = {
71
90
  user: params.user,
@@ -77,8 +96,9 @@ export function createEvmSingleChainLimitOrderIntentRequest(
77
96
  destinationAddress: params.destinationAddress,
78
97
  extraTransfers: params.extraTransfers,
79
98
  deadline: params.deadline,
80
- stopLossMaxOut: params.stopLossMaxOut,
81
99
  takeProfitMinOut: params.takeProfitMinOut,
100
+ stopLossType: params.stopLossType,
101
+ stopLossTriggerPrice: params.stopLossTriggerPrice,
82
102
  } as SingleChainOrder;
83
103
 
84
104
  return {
@@ -86,7 +106,7 @@ export function createEvmSingleChainLimitOrderIntentRequest(
86
106
  chainSpecificData: {
87
107
  EVM: {
88
108
  nonce: params.nonce || String(Math.floor(Math.random() * 10000000)),
89
- signature: params.signature || '0x0000000000000000000000000000000000000000000000000000000000000000',
109
+ signature: params.signature || EVM_ZERO_SIGNATURE,
90
110
  },
91
111
  },
92
112
  };
@@ -98,7 +118,7 @@ export function createEvmSingleChainLimitOrderIntentRequest(
98
118
  * @returns Formatted intent request ready to send to auctioneer
99
119
  */
100
120
  export function createEvmSingleChainDcaOrderIntentRequest(
101
- params: CreateEvmSingleChainDcaOrderIntentParams
121
+ params: CreateEvmSingleChainDcaOrderIntentParams,
102
122
  ): DcaSingleChainUserIntentRequest {
103
123
  const order: DcaSingleChainOrder = {
104
124
  user: params.user,
@@ -120,7 +140,7 @@ export function createEvmSingleChainDcaOrderIntentRequest(
120
140
  chainSpecificData: {
121
141
  EVM: {
122
142
  nonce: params.nonce || String(Math.floor(Math.random() * 10000000)),
123
- signature: params.signature || '0x0000000000000000000000000000000000000000000000000000000000000000',
143
+ signature: params.signature || EVM_ZERO_SIGNATURE,
124
144
  },
125
145
  },
126
146
  };
@@ -132,7 +152,7 @@ export function createEvmSingleChainDcaOrderIntentRequest(
132
152
  * @returns Formatted intent request ready to send to auctioneer
133
153
  */
134
154
  export function createEvmCrossChainOrderIntentRequest(
135
- params: CreateEvmCrossChainOrderIntentParams
155
+ params: CreateEvmCrossChainOrderIntentParams,
136
156
  ): CrossChainUserIntentRequest {
137
157
  const executionDetails = {
138
158
  destChainId: params.destinationChainId,
@@ -140,15 +160,14 @@ export function createEvmCrossChainOrderIntentRequest(
140
160
  amountOutMin: params.destinationTokenMinAmount?.toString() || '1',
141
161
  destinationAddress: params.destinationAddress,
142
162
  extraTransfers: params.extraTransfers,
143
- stopLossMaxOut: params.stopLossMaxOut?.toString(),
144
163
  takeProfitMinOut: params.takeProfitMinOut?.toString(),
164
+ stopLossType: params.stopLossType,
165
+ stopLossTriggerPrice: params.stopLossTriggerPrice,
145
166
  };
146
167
  const executionDetailsString = JSON.stringify(executionDetails, Parsers.bigIntReplacer);
147
168
 
148
- // Calculate execution details hash
149
- const executionDetailsHash = generateExecutionDetailsHash(
150
- executionDetails
151
- );
169
+ // Hash the exact string we send; the auctioneer recomputes sha256 over it and rejects on mismatch
170
+ const executionDetailsHash = generateExecutionDetailsHash(executionDetailsString);
152
171
 
153
172
  const genericData = {
154
173
  user: params.user,
@@ -159,8 +178,6 @@ export function createEvmCrossChainOrderIntentRequest(
159
178
  deadline: params.deadline,
160
179
  executionDetailsHash: executionDetailsHash as `0x${string}`,
161
180
  extraTransfers: params.extraTransfers,
162
- stopLossMaxOut: params.stopLossMaxOut,
163
- takeProfitMinOut: params.takeProfitMinOut,
164
181
  };
165
182
 
166
183
  return {
@@ -169,7 +186,7 @@ export function createEvmCrossChainOrderIntentRequest(
169
186
  chainSpecificData: {
170
187
  EVM: {
171
188
  nonce: params.nonce || String(Math.floor(Math.random() * 10000000)),
172
- signature: params.signature || '0x0000000000000000000000000000000000000000000000000000000000000000',
189
+ signature: params.signature || EVM_ZERO_SIGNATURE,
173
190
  },
174
191
  },
175
192
  };
@@ -209,3 +226,120 @@ export async function generateEvmCrossChainOrderTypedData(order: CrossChainOrder
209
226
  export function generateEvmRandomNonce(): string {
210
227
  return String(Math.floor(Math.random() * 10000000));
211
228
  }
229
+
230
+ export type CreateEvmCrossChainDcaOrderIntentParams = {
231
+ user: `0x${string}`;
232
+ sourceChainId: SupportedEvmChain;
233
+ sourceTokenAddress: string;
234
+ destinationChainId: number;
235
+ destinationTokenAddress: string;
236
+ destinationTokenMinAmount?: bigint;
237
+ destinationAddress: string;
238
+ minStablecoinAmount?: bigint;
239
+ deadline: number;
240
+ startTime: number;
241
+ amountInPerInterval: bigint;
242
+ totalIntervals: number;
243
+ intervalDuration: number;
244
+ extraTransfers?: ExtraTransfer[];
245
+ nonce?: string;
246
+ signature?: string;
247
+ };
248
+
249
+ /**
250
+ * Builds the cross-chain DCA execution-details string and its SHA-256 hash.
251
+ * Both the wire payload and the EIP-712 witness must reference the SAME string/hash, so this
252
+ * is the single source of truth — the auctioneer recomputes sha256 over the string it receives.
253
+ */
254
+ function buildCrossChainDcaExecutionDetails(params: CreateEvmCrossChainDcaOrderIntentParams): {
255
+ executionDetailsString: string;
256
+ executionDetailsHash: string;
257
+ } {
258
+ const executionDetails = {
259
+ destChainId: params.destinationChainId,
260
+ tokenOut: params.destinationTokenAddress,
261
+ amountOutMin: params.destinationTokenMinAmount?.toString() || '1',
262
+ destinationAddress: params.destinationAddress,
263
+ extraTransfers: params.extraTransfers,
264
+ };
265
+ const executionDetailsString = JSON.stringify(executionDetails, Parsers.bigIntReplacer);
266
+ return { executionDetailsString, executionDetailsHash: generateExecutionDetailsHash(executionDetailsString) };
267
+ }
268
+
269
+ /**
270
+ * Creates an EVM cross-chain DCA order intent request, ready to POST to
271
+ * `/user_intent/cross_chain/dca_order`. Pass `nonce`/`signature` from
272
+ * {@link getEVMCrossChainDcaOrderTypedData} for an executable order.
273
+ */
274
+ export function createEvmCrossChainDcaOrderIntentRequest(
275
+ params: CreateEvmCrossChainDcaOrderIntentParams,
276
+ ): DcaCrossChainUserIntentRequest {
277
+ const { executionDetailsString, executionDetailsHash } = buildCrossChainDcaExecutionDetails(params);
278
+
279
+ return {
280
+ genericData: {
281
+ user: params.user,
282
+ srcChainId: params.sourceChainId,
283
+ tokenIn: params.sourceTokenAddress,
284
+ minStablecoinsAmount: params.minStablecoinAmount || 1n,
285
+ deadline: params.deadline,
286
+ executionDetailsHash: executionDetailsHash as `0x${string}`,
287
+ startTime: params.startTime,
288
+ amountInPerInterval: params.amountInPerInterval,
289
+ totalIntervals: params.totalIntervals,
290
+ intervalDuration: params.intervalDuration,
291
+ },
292
+ executionDetails: executionDetailsString,
293
+ chainSpecificData: {
294
+ EVM: {
295
+ nonce: params.nonce || generateEvmRandomNonce(),
296
+ signature: params.signature || EVM_ZERO_SIGNATURE,
297
+ },
298
+ },
299
+ };
300
+ }
301
+
302
+ /**
303
+ * Generates the EIP-712 typed data (and nonce) for a cross-chain DCA order's Permit2 witness.
304
+ * Sign `orderTypedData`, then pass the resulting `nonce`/`signature` into
305
+ * {@link createEvmCrossChainDcaOrderIntentRequest} — both share the same execution-details hash.
306
+ */
307
+ export function getEVMCrossChainDcaOrderTypedData(
308
+ params: CreateEvmCrossChainDcaOrderIntentParams,
309
+ providedNonce?: bigint,
310
+ ): { orderTypedData: TypedDataDefinition; nonce: bigint } {
311
+ const { executionDetailsHash } = buildCrossChainDcaExecutionDetails(params);
312
+ const nonce = providedNonce ?? EVMIntentProvider.getRandomNonce();
313
+ const totalAmountIn = params.amountInPerInterval * BigInt(params.totalIntervals);
314
+ const spender = DCA_CROSS_CHAIN_GUARD_ADDRESSES[params.sourceChainId] as Address;
315
+
316
+ const message: CrossChainDcaPermitTransferFrom = {
317
+ permitted: { token: params.sourceTokenAddress as Address, amount: totalAmountIn },
318
+ spender,
319
+ nonce,
320
+ deadline: BigInt(params.deadline),
321
+ witness: {
322
+ user: params.user as Address,
323
+ tokenIn: params.sourceTokenAddress as Address,
324
+ srcChainId: params.sourceChainId,
325
+ startTime: params.startTime,
326
+ deadline: params.deadline,
327
+ totalIntervals: params.totalIntervals,
328
+ intervalDuration: params.intervalDuration,
329
+ amountInPerInterval: params.amountInPerInterval,
330
+ minStablecoinsAmountPerInterval: params.minStablecoinAmount || 1n,
331
+ executionDetailsHash: executionDetailsHash as Hex,
332
+ nonce,
333
+ },
334
+ };
335
+
336
+ return {
337
+ orderTypedData: {
338
+ domain: PERMIT2_DOMAIN(params.sourceChainId),
339
+ types: CROSS_CHAIN_DCA_PERMIT2_TYPES,
340
+ primaryType: 'PermitWitnessTransferFrom',
341
+ message,
342
+ },
343
+ nonce,
344
+ };
345
+ }
@@ -6,6 +6,7 @@ import {
6
6
  CROSS_CHAIN_GUARD_ADDRESSES,
7
7
  MAX_UINT_32,
8
8
  DCA_SINGLE_CHAIN_GUARD_ADDRESSES,
9
+ normalizeNativeEvmTokenForSigning,
9
10
  } from '../../constants.js';
10
11
  import {
11
12
  getEVMCrossChainOrderTypedData,
@@ -103,14 +104,14 @@ export class EVMIntentProvider {
103
104
  const spender = SINGLE_CHAIN_GUARD_ADDRESSES[order.chainId as SupportedEvmChain] as Address;
104
105
 
105
106
  const requestedOutput: TransferData = {
106
- token: order.tokenOut as Address,
107
+ token: normalizeNativeEvmTokenForSigning(order.tokenOut) as Address,
107
108
  receiver: order.destinationAddress as Address,
108
109
  amount: order.amountOutMin,
109
110
  };
110
111
 
111
112
  const extraTransfers: TransferData[] =
112
113
  order.extraTransfers?.map((transfer) => ({
113
- token: transfer.token as Address,
114
+ token: normalizeNativeEvmTokenForSigning(transfer.token) as Address,
114
115
  receiver: transfer.receiver as Address,
115
116
  amount: transfer.amount,
116
117
  })) || [];
@@ -166,14 +167,14 @@ export class EVMIntentProvider {
166
167
  const spender = DCA_SINGLE_CHAIN_GUARD_ADDRESSES[order.chainId as SupportedEvmChain] as Address;
167
168
 
168
169
  const requestedOutput: TransferData = {
169
- token: order.tokenOut as Address,
170
+ token: normalizeNativeEvmTokenForSigning(order.tokenOut) as Address,
170
171
  receiver: order.destinationAddress as Address,
171
172
  amount: BigInt(order.amountOutMin),
172
173
  };
173
174
 
174
175
  const extraTransfers: TransferData[] =
175
176
  order.extraTransfers?.map((transfer) => ({
176
- token: transfer.token as Address,
177
+ token: normalizeNativeEvmTokenForSigning(transfer.token) as Address,
177
178
  receiver: transfer.receiver as Address,
178
179
  amount: transfer.amount,
179
180
  })) || [];
@@ -174,3 +174,39 @@ export const DCA_SINGLE_CHAIN_PERMIT2_TYPES = {
174
174
  { name: 'witness', type: 'SingleChainDcaOrder' },
175
175
  ],
176
176
  } as const;
177
+
178
+ export type CrossChainDcaPermitTransferFrom = {
179
+ permitted: TokenPermissions;
180
+ spender: Address;
181
+ nonce: bigint;
182
+ deadline: bigint;
183
+ witness: DcaOrderInfo;
184
+ };
185
+
186
+ // Cross-chain DCA witness — mirrors the auctioneer's
187
+ // `DcaOrderInfo(address user,address tokenIn,uint32 srcChainId,uint32 startTime,uint32 deadline,
188
+ // uint24 totalIntervals,uint32 intervalDuration,uint128 amountInPerInterval,
189
+ // uint128 minStablecoinsAmountPerInterval,bytes32 executionDetailsHash,uint256 nonce)`.
190
+ export const CROSS_CHAIN_DCA_PERMIT2_TYPES = {
191
+ TokenPermissions: TOKEN_PERMISSIONS_TYPE,
192
+ DcaOrderInfo: [
193
+ { name: 'user', type: 'address' },
194
+ { name: 'tokenIn', type: 'address' },
195
+ { name: 'srcChainId', type: 'uint32' },
196
+ { name: 'startTime', type: 'uint32' },
197
+ { name: 'deadline', type: 'uint32' },
198
+ { name: 'totalIntervals', type: 'uint24' },
199
+ { name: 'intervalDuration', type: 'uint32' },
200
+ { name: 'amountInPerInterval', type: 'uint128' },
201
+ { name: 'minStablecoinsAmountPerInterval', type: 'uint128' },
202
+ { name: 'executionDetailsHash', type: 'bytes32' },
203
+ { name: 'nonce', type: 'uint256' },
204
+ ],
205
+ PermitWitnessTransferFrom: [
206
+ { name: 'permitted', type: 'TokenPermissions' },
207
+ { name: 'spender', type: 'address' },
208
+ { name: 'nonce', type: 'uint256' },
209
+ { name: 'deadline', type: 'uint256' },
210
+ { name: 'witness', type: 'DcaOrderInfo' },
211
+ ],
212
+ } as const;
@@ -1,20 +1,20 @@
1
- import { ethers, type TypedDataField, type AddressLike, type BigNumberish, type BytesLike } from "ethers";
2
- import { SignatureTransfer } from "@uniswap/permit2-sdk";
3
- import { TransferDataType, type TransferDataStruct } from "./types.js";
1
+ import { ethers, type TypedDataField, type AddressLike, type BigNumberish, type BytesLike } from 'ethers';
2
+ import { SignatureTransfer } from '@uniswap/permit2-sdk';
3
+ import { TransferDataType, type TransferDataStruct } from './types.js';
4
4
 
5
5
  export const SingleChainDcaOrderType: Record<string, TypedDataField[]> = {
6
6
  SingleChainDcaOrder: [
7
- { type: "address", name: "user" },
8
- { type: "address", name: "tokenIn" },
9
- { type: "uint32", name: "startTime" },
10
- { type: "uint256", name: "amountInPerInterval" },
11
- { type: "uint24", name: "totalIntervals" },
12
- { type: "uint32", name: "intervalDuration" },
13
- { type: "TransferData", name: "requestedOutput" },
14
- { type: "TransferData[]", name: "extraTransfers" },
15
- { type: "bytes", name: "encodedExternalCallData" },
16
- { type: "uint32", name: "deadline" },
17
- { type: "uint256", name: "nonce" },
7
+ { type: 'address', name: 'user' },
8
+ { type: 'address', name: 'tokenIn' },
9
+ { type: 'uint32', name: 'startTime' },
10
+ { type: 'uint256', name: 'amountInPerInterval' },
11
+ { type: 'uint24', name: 'totalIntervals' },
12
+ { type: 'uint32', name: 'intervalDuration' },
13
+ { type: 'TransferData', name: 'requestedOutput' },
14
+ { type: 'TransferData[]', name: 'extraTransfers' },
15
+ { type: 'bytes', name: 'encodedExternalCallData' },
16
+ { type: 'uint32', name: 'deadline' },
17
+ { type: 'uint256', name: 'nonce' },
18
18
  ],
19
19
  TransferData: TransferDataType.TransferData!,
20
20
  };
@@ -41,7 +41,7 @@ export async function signSingleChainDcaOrder(
41
41
  order: SingleChainDcaOrderStruct,
42
42
  chainId: number,
43
43
  guardAddress: string,
44
- permit2Address: string
44
+ permit2Address: string,
45
45
  ): Promise<{
46
46
  domain: any;
47
47
  types: any;
@@ -63,9 +63,9 @@ export async function signSingleChainDcaOrder(
63
63
  chainId,
64
64
  {
65
65
  witness: order,
66
- witnessTypeName: "SingleChainDcaOrder",
66
+ witnessTypeName: 'SingleChainDcaOrder',
67
67
  witnessType: SingleChainDcaOrderType,
68
- }
68
+ },
69
69
  );
70
70
 
71
71
  return {
@@ -79,7 +79,7 @@ export async function signSingleChainDcaOrder(
79
79
  verifyingContract: permitData.domain.verifyingContract,
80
80
  },
81
81
  permitData.types,
82
- permitData.values
82
+ permitData.values,
83
83
  ),
84
84
  };
85
85
  }
@@ -1,17 +1,17 @@
1
- import { ethers, type TypedDataField, type AddressLike, type BigNumberish, type BytesLike } from "ethers";
2
- import { SignatureTransfer } from "@uniswap/permit2-sdk";
3
- import { TransferDataType, type TransferDataStruct } from "./types.js";
1
+ import { ethers, type TypedDataField, type AddressLike, type BigNumberish, type BytesLike } from 'ethers';
2
+ import { SignatureTransfer } from '@uniswap/permit2-sdk';
3
+ import { TransferDataType, type TransferDataStruct } from './types.js';
4
4
 
5
5
  export const SingleChainLimitOrderType: Record<string, TypedDataField[]> = {
6
6
  SingleChainLimitOrder: [
7
- { type: "address", name: "user" },
8
- { type: "address", name: "tokenIn" },
9
- { type: "uint256", name: "amountIn" },
10
- { type: "TransferData", name: "requestedOutput" },
11
- { type: "TransferData[]", name: "extraTransfers" },
12
- { type: "bytes", name: "encodedExternalCallData" },
13
- { type: "uint32", name: "deadline" },
14
- { type: "uint256", name: "nonce" },
7
+ { type: 'address', name: 'user' },
8
+ { type: 'address', name: 'tokenIn' },
9
+ { type: 'uint256', name: 'amountIn' },
10
+ { type: 'TransferData', name: 'requestedOutput' },
11
+ { type: 'TransferData[]', name: 'extraTransfers' },
12
+ { type: 'bytes', name: 'encodedExternalCallData' },
13
+ { type: 'uint32', name: 'deadline' },
14
+ { type: 'uint256', name: 'nonce' },
15
15
  ],
16
16
  TransferData: TransferDataType.TransferData!,
17
17
  };
@@ -35,7 +35,7 @@ export async function signSingleChainLimitOrder(
35
35
  order: SingleChainLimitOrderStruct,
36
36
  chainId: number,
37
37
  guardAddress: string,
38
- permit2Address: string
38
+ permit2Address: string,
39
39
  ): Promise<{
40
40
  domain: any;
41
41
  types: any;
@@ -56,9 +56,9 @@ export async function signSingleChainLimitOrder(
56
56
  chainId,
57
57
  {
58
58
  witness: order,
59
- witnessTypeName: "SingleChainLimitOrder",
59
+ witnessTypeName: 'SingleChainLimitOrder',
60
60
  witnessType: SingleChainLimitOrderType,
61
- }
61
+ },
62
62
  );
63
63
 
64
64
  return {
@@ -72,7 +72,7 @@ export async function signSingleChainLimitOrder(
72
72
  verifyingContract: permitData.domain.verifyingContract,
73
73
  },
74
74
  permitData.types,
75
- permitData.values
75
+ permitData.values,
76
76
  ),
77
77
  };
78
78
  }
@@ -1,10 +1,10 @@
1
- import type { AddressLike, BigNumberish, TypedDataField } from "ethers";
1
+ import type { AddressLike, BigNumberish, TypedDataField } from 'ethers';
2
2
 
3
3
  export const TransferDataType: Record<string, TypedDataField[]> = {
4
4
  TransferData: [
5
- { type: "address", name: "token" },
6
- { type: "address", name: "receiver" },
7
- { type: "uint256", name: "amount" },
5
+ { type: 'address', name: 'token' },
6
+ { type: 'address', name: 'receiver' },
7
+ { type: 'uint256', name: 'amount' },
8
8
  ],
9
9
  };
10
10
 
@@ -77,7 +77,7 @@ export class EvmValidator extends BaseValidator {
77
77
  ): Promise<void> {
78
78
  const chain = order.chainId as SupportedEvmChain;
79
79
 
80
- const validSingleChainChains = [ChainID.Hyperliquid, ChainID.Base];
80
+ const validSingleChainChains = [ChainID.Hyperliquid, ChainID.Base, ChainID.BSC, ChainID.Arbitrum, ChainID.Optimism, ChainID.MONAD];
81
81
 
82
82
  if (!validSingleChainChains.includes(chain)) {
83
83
  throw new ValidationError(`Chain ${chain} is not supported for single chain orders`);
@@ -1,21 +1,38 @@
1
- import { AUCTIONEER_URL } from '../../../constants.js';
2
- import type { ApiResponse, ApiUserOrders } from '../../../types/api.js';
1
+ import { AuctioneerAPI } from './index.js';
2
+ import type { SupportedChain } from '../../../chains.js';
3
+ import type { ApiUserOrders } from '../../../types/api.js';
3
4
 
4
- export async function fetchUserOrders(jwtToken: string): Promise<ApiUserOrders> {
5
- const url = `${AUCTIONEER_URL}/user_intent`;
6
- const response = await fetch(url, {
7
- method: 'GET',
8
- headers: {
9
- 'Content-Type': 'application/json',
10
- Authorization: `Bearer ${jwtToken}`,
11
- },
12
- });
13
-
14
- const data: ApiResponse<ApiUserOrders> = await response.json();
5
+ /**
6
+ * Parameters for {@link fetchUserOrders}.
7
+ *
8
+ * The auctioneer resolves the wallets to query from the JWT claims and/or the `wallet`
9
+ * address, so at least one of `token`/`wallet` must be provided. `network` optionally
10
+ * restricts the results to a single chain.
11
+ */
12
+ export interface FetchUserOrdersParams {
13
+ /**
14
+ * SIWE-issued JWT. Optional while the auctioneer skips JWT verification — when present,
15
+ * its wallet claims are queried in addition to `wallet`. Obtain it with
16
+ * `EVMSDK.authenticate()` (or the `fetchSiweMessage` + `fetchJWTToken` pair).
17
+ */
18
+ token?: string;
19
+ /** Wallet address to query. Required when no `token` is supplied. */
20
+ wallet?: string;
21
+ /** Restrict results to a single chain; omit to return orders on every network. */
22
+ network?: SupportedChain;
23
+ }
15
24
 
16
- if (!data.success) {
17
- throw new Error(`Failed to fetch user orders: ${data.error}`);
25
+ /**
26
+ * Fetches the orders owned by a wallet (and/or the wallets encoded in a SIWE-issued JWT).
27
+ *
28
+ * ⚠️ The auctioneer currently skips JWT verification, so the queried wallet may be passed
29
+ * directly via `wallet`. Once verification is restored, only wallets proved via SIWE (i.e.
30
+ * carried by a valid `token`) will be readable.
31
+ */
32
+ export async function fetchUserOrders({ token, wallet, network }: FetchUserOrdersParams): Promise<ApiUserOrders> {
33
+ if (!token && !wallet) {
34
+ throw new Error('fetchUserOrders requires a `wallet` address or a SIWE-issued `token` (JWT)');
18
35
  }
19
36
 
20
- return data.data!;
37
+ return new AuctioneerAPI(token).getUserOrders({ wallet, network });
21
38
  }
@@ -1,10 +1,25 @@
1
1
  import { AUCTIONEER_URL } from '../../../constants.js';
2
+ import { chainIdToNetworkName, type SupportedChain } from '../../../chains.js';
2
3
  import type { ApiResponse, ApiUserOrders } from '../../../types/api.js';
3
4
 
5
+ /**
6
+ * Query filters for `GET /user_intent`.
7
+ *
8
+ * The auctioneer resolves the wallets to query from the (currently unvalidated) JWT claims
9
+ * and/or the `wallet` param; at least one source must be present. `network` optionally
10
+ * restricts results to a single chain — omit it to return orders on every network.
11
+ */
12
+ export interface GetUserOrdersParams {
13
+ /** Wallet address to query. Combined with any wallet(s) carried by the JWT claims. */
14
+ wallet?: string;
15
+ /** Restrict results to a single chain. Serialized as the auctioneer's network name (e.g. Base). */
16
+ network?: SupportedChain;
17
+ }
18
+
4
19
  export class AuctioneerAPI {
5
- public aggregatedToken: string;
20
+ public aggregatedToken?: string;
6
21
 
7
- constructor(aggregatedToken: string) {
22
+ constructor(aggregatedToken?: string) {
8
23
  this.aggregatedToken = aggregatedToken;
9
24
  }
10
25
 
@@ -12,14 +27,32 @@ export class AuctioneerAPI {
12
27
  this.aggregatedToken = token;
13
28
  }
14
29
 
15
- public async getUserOrders() {
16
- const url = `${AUCTIONEER_URL}/user_intent`;
30
+ public async getUserOrders(params: GetUserOrdersParams = {}) {
31
+ const query = new URLSearchParams();
32
+ if (params.wallet) {
33
+ query.set('wallet', params.wallet);
34
+ }
35
+ if (params.network !== undefined) {
36
+ // Send the auctioneer's network name: it accepts a name for every chain, but not
37
+ // every numeric id (e.g. Solana's id is rejected numerically).
38
+ query.set('network', chainIdToNetworkName[params.network]);
39
+ }
40
+
41
+ const queryString = query.toString();
42
+ const url = `${AUCTIONEER_URL}/user_intent${queryString ? `?${queryString}` : ''}`;
43
+
44
+ // JWT is optional while the auctioneer skips verification; only send the header when a
45
+ // token is present. Otherwise the wallet is resolved from the `wallet` param alone.
46
+ const headers: Record<string, string> = {
47
+ 'Content-Type': 'application/json',
48
+ };
49
+ if (this.aggregatedToken) {
50
+ headers.Authorization = `Bearer ${this.aggregatedToken}`;
51
+ }
52
+
17
53
  const response = await fetch(url, {
18
54
  method: 'GET',
19
- headers: {
20
- 'Content-Type': 'application/json',
21
- Authorization: `Bearer ${this.aggregatedToken}`,
22
- },
55
+ headers,
23
56
  });
24
57
 
25
58
  const data: ApiResponse<ApiUserOrders> = await response.json();
@@ -1,6 +1,8 @@
1
1
  import { IntentsOrderType } from '../../constants.js';
2
2
  import type { CrossChainOrderPrepared, SingleChainOrderPrepared } from '../../types/intent.js';
3
3
 
4
+ export type StopLossType = 'FIXED' | 'TRAILING_ABSOLUTE' | 'TRAILING_PERCENT';
5
+
4
6
  export type ExtraTransfer = {
5
7
  /** Token address */
6
8
  token: string;