@shogun-sdk/intents-sdk 1.2.0 → 1.2.2

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 (453) hide show
  1. package/README.md +616 -55
  2. package/dist/esm/constants.js +21 -26
  3. package/dist/esm/constants.js.map +1 -1
  4. package/dist/esm/core/evm/abi/source-chain-guard.js +32 -628
  5. package/dist/esm/core/evm/abi/source-chain-guard.js.map +1 -1
  6. package/dist/esm/core/evm/cross-chain-limit-order.js +43 -0
  7. package/dist/esm/core/evm/cross-chain-limit-order.js.map +1 -0
  8. package/dist/esm/core/evm/intent-helpers.js +130 -0
  9. package/dist/esm/core/evm/intent-helpers.js.map +1 -0
  10. package/dist/esm/core/evm/sdk.js +4 -4
  11. package/dist/esm/core/evm/sdk.js.map +1 -1
  12. package/dist/esm/core/evm/single-chain-dca-order.js +49 -0
  13. package/dist/esm/core/evm/single-chain-dca-order.js.map +1 -0
  14. package/dist/esm/core/evm/single-chain-limit-order.js +45 -0
  15. package/dist/esm/core/evm/single-chain-limit-order.js.map +1 -0
  16. package/dist/esm/core/evm/types.js +8 -0
  17. package/dist/esm/core/evm/types.js.map +1 -0
  18. package/dist/esm/core/orders/common.js +3 -3
  19. package/dist/esm/core/orders/common.js.map +1 -1
  20. package/dist/esm/core/orders/cross-chain.js +3 -3
  21. package/dist/esm/core/orders/cross-chain.js.map +1 -1
  22. package/dist/esm/core/orders/dca-single-chain.js +4 -1
  23. package/dist/esm/core/orders/dca-single-chain.js.map +1 -1
  24. package/dist/esm/core/orders/single-chain.js +10 -2
  25. package/dist/esm/core/orders/single-chain.js.map +1 -1
  26. package/dist/esm/core/solana/cancel-order.js.map +1 -1
  27. package/dist/esm/core/solana/client.js +1 -1
  28. package/dist/esm/core/solana/client.js.map +1 -1
  29. package/dist/esm/core/solana/cross-chain-limit-order.js +18 -0
  30. package/dist/esm/core/solana/cross-chain-limit-order.js.map +1 -0
  31. package/dist/esm/core/solana/dca/cancel-order.js.map +1 -1
  32. package/dist/esm/core/solana/dca/create-order.js.map +1 -1
  33. package/dist/esm/core/solana/dca/single-chain-dca-order.js +23 -0
  34. package/dist/esm/core/solana/dca/single-chain-dca-order.js.map +1 -0
  35. package/dist/esm/core/solana/dca/single-chain-limit-order.js +29 -0
  36. package/dist/esm/core/solana/dca/single-chain-limit-order.js.map +1 -0
  37. package/dist/esm/core/solana/generated/cross-chain/accounts/adminSingleton.js +6 -4
  38. package/dist/esm/core/solana/generated/cross-chain/accounts/adminSingleton.js.map +1 -1
  39. package/dist/esm/core/solana/generated/cross-chain/accounts/dcaOrder.js +90 -0
  40. package/dist/esm/core/solana/generated/cross-chain/accounts/dcaOrder.js.map +1 -0
  41. package/dist/esm/core/solana/generated/cross-chain/accounts/guard.js +6 -4
  42. package/dist/esm/core/solana/generated/cross-chain/accounts/guard.js.map +1 -1
  43. package/dist/esm/core/solana/generated/cross-chain/accounts/index.js +1 -0
  44. package/dist/esm/core/solana/generated/cross-chain/accounts/index.js.map +1 -1
  45. package/dist/esm/core/solana/generated/cross-chain/accounts/order.js +3 -3
  46. package/dist/esm/core/solana/generated/cross-chain/accounts/order.js.map +1 -1
  47. package/dist/esm/core/solana/generated/cross-chain/errors/sourceChainGuard.js +111 -6
  48. package/dist/esm/core/solana/generated/cross-chain/errors/sourceChainGuard.js.map +1 -1
  49. package/dist/esm/core/solana/generated/cross-chain/instructions/acceptAdmin.js +5 -8
  50. package/dist/esm/core/solana/generated/cross-chain/instructions/acceptAdmin.js.map +1 -1
  51. package/dist/esm/core/solana/generated/cross-chain/instructions/cancelDcaOrder.js +118 -0
  52. package/dist/esm/core/solana/generated/cross-chain/instructions/cancelDcaOrder.js.map +1 -0
  53. package/dist/esm/core/solana/generated/cross-chain/instructions/cancelOrder.js +10 -28
  54. package/dist/esm/core/solana/generated/cross-chain/instructions/cancelOrder.js.map +1 -1
  55. package/dist/esm/core/solana/generated/cross-chain/instructions/claimTokens.js +9 -24
  56. package/dist/esm/core/solana/generated/cross-chain/instructions/claimTokens.js.map +1 -1
  57. package/dist/esm/core/solana/generated/cross-chain/instructions/collectProtocolFees.js +12 -25
  58. package/dist/esm/core/solana/generated/cross-chain/instructions/collectProtocolFees.js.map +1 -1
  59. package/dist/esm/core/solana/generated/cross-chain/instructions/createDcaOrder.js +170 -0
  60. package/dist/esm/core/solana/generated/cross-chain/instructions/createDcaOrder.js.map +1 -0
  61. package/dist/esm/core/solana/generated/cross-chain/instructions/createGuard.js +24 -72
  62. package/dist/esm/core/solana/generated/cross-chain/instructions/createGuard.js.map +1 -1
  63. package/dist/esm/core/solana/generated/cross-chain/instructions/createOrder.js +14 -30
  64. package/dist/esm/core/solana/generated/cross-chain/instructions/createOrder.js.map +1 -1
  65. package/dist/esm/core/solana/generated/cross-chain/instructions/index.js +2 -0
  66. package/dist/esm/core/solana/generated/cross-chain/instructions/index.js.map +1 -1
  67. package/dist/esm/core/solana/generated/cross-chain/instructions/initialize.js +11 -12
  68. package/dist/esm/core/solana/generated/cross-chain/instructions/initialize.js.map +1 -1
  69. package/dist/esm/core/solana/generated/cross-chain/instructions/preStartOrderExecution.js +12 -25
  70. package/dist/esm/core/solana/generated/cross-chain/instructions/preStartOrderExecution.js.map +1 -1
  71. package/dist/esm/core/solana/generated/cross-chain/instructions/setAdmin.js +4 -4
  72. package/dist/esm/core/solana/generated/cross-chain/instructions/setAdmin.js.map +1 -1
  73. package/dist/esm/core/solana/generated/cross-chain/instructions/setAuctioneerPubKey.js +18 -11
  74. package/dist/esm/core/solana/generated/cross-chain/instructions/setAuctioneerPubKey.js.map +1 -1
  75. package/dist/esm/core/solana/generated/cross-chain/instructions/startOrderExecution.js +10 -17
  76. package/dist/esm/core/solana/generated/cross-chain/instructions/startOrderExecution.js.map +1 -1
  77. package/dist/esm/core/solana/generated/cross-chain/instructions/startOrderExecutionAfterSwap.js +10 -17
  78. package/dist/esm/core/solana/generated/cross-chain/instructions/startOrderExecutionAfterSwap.js.map +1 -1
  79. package/dist/esm/core/solana/generated/cross-chain/programs/sourceChainGuard.js +28 -16
  80. package/dist/esm/core/solana/generated/cross-chain/programs/sourceChainGuard.js.map +1 -1
  81. package/dist/esm/core/solana/generated/cross-chain/shared/index.js +7 -10
  82. package/dist/esm/core/solana/generated/cross-chain/shared/index.js.map +1 -1
  83. package/dist/esm/core/solana/generated/cross-chain/types/adminUpdateStarted.js.map +1 -1
  84. package/dist/esm/core/solana/generated/cross-chain/types/auctioneerPubkeyUpdated.js.map +1 -1
  85. package/dist/esm/core/solana/generated/cross-chain/types/dcaExecutionStarted.js +32 -0
  86. package/dist/esm/core/solana/generated/cross-chain/types/dcaExecutionStarted.js.map +1 -0
  87. package/dist/esm/core/solana/generated/cross-chain/types/dcaOrderCreated.js +42 -0
  88. package/dist/esm/core/solana/generated/cross-chain/types/dcaOrderCreated.js.map +1 -0
  89. package/dist/esm/core/solana/generated/cross-chain/types/dcaOrderIntervalFulfilled.js +26 -0
  90. package/dist/esm/core/solana/generated/cross-chain/types/dcaOrderIntervalFulfilled.js.map +1 -0
  91. package/dist/esm/core/solana/generated/cross-chain/types/dcaTokenInSwapped.js +28 -0
  92. package/dist/esm/core/solana/generated/cross-chain/types/dcaTokenInSwapped.js.map +1 -0
  93. package/dist/esm/core/solana/generated/cross-chain/types/failedDcaIntervalExecution.js +26 -0
  94. package/dist/esm/core/solana/generated/cross-chain/types/failedDcaIntervalExecution.js.map +1 -0
  95. package/dist/esm/core/solana/generated/cross-chain/types/index.js +5 -0
  96. package/dist/esm/core/solana/generated/cross-chain/types/index.js.map +1 -1
  97. package/dist/esm/core/solana/generated/cross-chain/types/tokenInSwapped.js.map +1 -1
  98. package/dist/esm/core/solana/generated/single-chain/accounts/adminSingleton.js +6 -4
  99. package/dist/esm/core/solana/generated/single-chain/accounts/adminSingleton.js.map +1 -1
  100. package/dist/esm/core/solana/generated/single-chain/accounts/dcaOrder.js +3 -3
  101. package/dist/esm/core/solana/generated/single-chain/accounts/dcaOrder.js.map +1 -1
  102. package/dist/esm/core/solana/generated/single-chain/accounts/guard.js +3 -3
  103. package/dist/esm/core/solana/generated/single-chain/accounts/guard.js.map +1 -1
  104. package/dist/esm/core/solana/generated/single-chain/accounts/limitOrder.js +3 -3
  105. package/dist/esm/core/solana/generated/single-chain/accounts/limitOrder.js.map +1 -1
  106. package/dist/esm/core/solana/generated/single-chain/errors/singleChainGuard.js +3 -3
  107. package/dist/esm/core/solana/generated/single-chain/errors/singleChainGuard.js.map +1 -1
  108. package/dist/esm/core/solana/generated/single-chain/instructions/acceptAdmin.js +5 -8
  109. package/dist/esm/core/solana/generated/single-chain/instructions/acceptAdmin.js.map +1 -1
  110. package/dist/esm/core/solana/generated/single-chain/instructions/cancelDcaOrder.js +10 -17
  111. package/dist/esm/core/solana/generated/single-chain/instructions/cancelDcaOrder.js.map +1 -1
  112. package/dist/esm/core/solana/generated/single-chain/instructions/cancelLimitOrder.js +10 -17
  113. package/dist/esm/core/solana/generated/single-chain/instructions/cancelLimitOrder.js.map +1 -1
  114. package/dist/esm/core/solana/generated/single-chain/instructions/collectProtocolFees.js +14 -33
  115. package/dist/esm/core/solana/generated/single-chain/instructions/collectProtocolFees.js.map +1 -1
  116. package/dist/esm/core/solana/generated/single-chain/instructions/createDcaOrder.js +14 -30
  117. package/dist/esm/core/solana/generated/single-chain/instructions/createDcaOrder.js.map +1 -1
  118. package/dist/esm/core/solana/generated/single-chain/instructions/createGuard.js +12 -22
  119. package/dist/esm/core/solana/generated/single-chain/instructions/createGuard.js.map +1 -1
  120. package/dist/esm/core/solana/generated/single-chain/instructions/createLimitOrder.js +14 -30
  121. package/dist/esm/core/solana/generated/single-chain/instructions/createLimitOrder.js.map +1 -1
  122. package/dist/esm/core/solana/generated/single-chain/instructions/fulfillDcaOrderInterval.js +18 -42
  123. package/dist/esm/core/solana/generated/single-chain/instructions/fulfillDcaOrderInterval.js.map +1 -1
  124. package/dist/esm/core/solana/generated/single-chain/instructions/fulfillLimitOrder.js +17 -38
  125. package/dist/esm/core/solana/generated/single-chain/instructions/fulfillLimitOrder.js.map +1 -1
  126. package/dist/esm/core/solana/generated/single-chain/instructions/initialize.js +9 -10
  127. package/dist/esm/core/solana/generated/single-chain/instructions/initialize.js.map +1 -1
  128. package/dist/esm/core/solana/generated/single-chain/instructions/setAdmin.js +4 -4
  129. package/dist/esm/core/solana/generated/single-chain/instructions/setAdmin.js.map +1 -1
  130. package/dist/esm/core/solana/generated/single-chain/instructions/setAuctioneerPubKey.js +18 -11
  131. package/dist/esm/core/solana/generated/single-chain/instructions/setAuctioneerPubKey.js.map +1 -1
  132. package/dist/esm/core/solana/generated/single-chain/programs/singleChainGuard.js +2 -2
  133. package/dist/esm/core/solana/generated/single-chain/programs/singleChainGuard.js.map +1 -1
  134. package/dist/esm/core/solana/generated/single-chain/shared/index.js +7 -10
  135. package/dist/esm/core/solana/generated/single-chain/shared/index.js.map +1 -1
  136. package/dist/esm/core/solana/generated/single-chain/types/adminUpdateStarted.js.map +1 -1
  137. package/dist/esm/core/solana/generated/single-chain/types/auctioneerPubkeyUpdated.js.map +1 -1
  138. package/dist/esm/core/solana/generated/single-chain/types/dcaOrderFulfilled.js.map +1 -1
  139. package/dist/esm/core/solana/generated/single-chain/types/dcaOrderIntervalFulfilled.js.map +1 -1
  140. package/dist/esm/core/solana/generated/single-chain/types/guardCreated.js.map +1 -1
  141. package/dist/esm/core/solana/generated/single-chain/types/limitOrderCreated.js.map +1 -1
  142. package/dist/esm/core/solana/generated/single-chain/types/limitOrderFulfilled.js.map +1 -1
  143. package/dist/esm/core/solana/inspect.js +1 -1
  144. package/dist/esm/core/solana/intent-helpers.js +177 -0
  145. package/dist/esm/core/solana/intent-helpers.js.map +1 -0
  146. package/dist/esm/core/solana/order-instructions.js.map +1 -1
  147. package/dist/esm/core/solana/sdk.js +4 -1
  148. package/dist/esm/core/solana/sdk.js.map +1 -1
  149. package/dist/esm/core/sui/cancel.js +1 -1
  150. package/dist/esm/core/sui/cancel.js.map +1 -1
  151. package/dist/esm/core/sui/cross-chain-limit-order.js +26 -0
  152. package/dist/esm/core/sui/cross-chain-limit-order.js.map +1 -0
  153. package/dist/esm/core/sui/intent-helpers.js +136 -0
  154. package/dist/esm/core/sui/intent-helpers.js.map +1 -0
  155. package/dist/esm/core/sui/order-transaction.js +5 -4
  156. package/dist/esm/core/sui/order-transaction.js.map +1 -1
  157. package/dist/esm/core/sui/sdk.js +1 -1
  158. package/dist/esm/core/sui/sdk.js.map +1 -1
  159. package/dist/esm/core/sui/single-chain-dca-order.js +99 -0
  160. package/dist/esm/core/sui/single-chain-dca-order.js.map +1 -0
  161. package/dist/esm/core/sui/single-chain-limit-order.js +103 -0
  162. package/dist/esm/core/sui/single-chain-limit-order.js.map +1 -0
  163. package/dist/esm/core/sui/validator.js +1 -2
  164. package/dist/esm/core/sui/validator.js.map +1 -1
  165. package/dist/esm/index.js +15 -0
  166. package/dist/esm/index.js.map +1 -1
  167. package/dist/esm/utils/quote/aggregator.js +2 -2
  168. package/dist/esm/utils/quote/aggregator.js.map +1 -1
  169. package/dist/types/constants.d.ts +3 -4
  170. package/dist/types/constants.d.ts.map +1 -1
  171. package/dist/types/core/evm/abi/source-chain-guard.d.ts +18 -484
  172. package/dist/types/core/evm/abi/source-chain-guard.d.ts.map +1 -1
  173. package/dist/types/core/evm/cross-chain-limit-order.d.ts +22 -0
  174. package/dist/types/core/evm/cross-chain-limit-order.d.ts.map +1 -0
  175. package/dist/types/core/evm/intent-helpers.d.ts +105 -0
  176. package/dist/types/core/evm/intent-helpers.d.ts.map +1 -0
  177. package/dist/types/core/evm/single-chain-dca-order.d.ts +26 -0
  178. package/dist/types/core/evm/single-chain-dca-order.d.ts.map +1 -0
  179. package/dist/types/core/evm/single-chain-limit-order.d.ts +23 -0
  180. package/dist/types/core/evm/single-chain-limit-order.d.ts.map +1 -0
  181. package/dist/types/core/evm/types.d.ts +8 -0
  182. package/dist/types/core/evm/types.d.ts.map +1 -0
  183. package/dist/types/core/orders/common.d.ts +2 -2
  184. package/dist/types/core/orders/common.d.ts.map +1 -1
  185. package/dist/types/core/orders/cross-chain.d.ts +1 -1
  186. package/dist/types/core/orders/cross-chain.d.ts.map +1 -1
  187. package/dist/types/core/orders/dca-single-chain.d.ts.map +1 -1
  188. package/dist/types/core/orders/single-chain.d.ts +1 -0
  189. package/dist/types/core/orders/single-chain.d.ts.map +1 -1
  190. package/dist/types/core/solana/cancel-order.d.ts +3 -3
  191. package/dist/types/core/solana/cancel-order.d.ts.map +1 -1
  192. package/dist/types/core/solana/cross-chain-limit-order.d.ts +9 -0
  193. package/dist/types/core/solana/cross-chain-limit-order.d.ts.map +1 -0
  194. package/dist/types/core/solana/dca/cancel-order.d.ts +2 -2
  195. package/dist/types/core/solana/dca/cancel-order.d.ts.map +1 -1
  196. package/dist/types/core/solana/dca/single-chain-dca-order.d.ts +14 -0
  197. package/dist/types/core/solana/dca/single-chain-dca-order.d.ts.map +1 -0
  198. package/dist/types/core/solana/dca/single-chain-limit-order.d.ts +19 -0
  199. package/dist/types/core/solana/dca/single-chain-limit-order.d.ts.map +1 -0
  200. package/dist/types/core/solana/generated/cross-chain/accounts/adminSingleton.d.ts +6 -6
  201. package/dist/types/core/solana/generated/cross-chain/accounts/adminSingleton.d.ts.map +1 -1
  202. package/dist/types/core/solana/generated/cross-chain/accounts/dcaOrder.d.ts +110 -0
  203. package/dist/types/core/solana/generated/cross-chain/accounts/dcaOrder.d.ts.map +1 -0
  204. package/dist/types/core/solana/generated/cross-chain/accounts/guard.d.ts +10 -6
  205. package/dist/types/core/solana/generated/cross-chain/accounts/guard.d.ts.map +1 -1
  206. package/dist/types/core/solana/generated/cross-chain/accounts/index.d.ts +1 -0
  207. package/dist/types/core/solana/generated/cross-chain/accounts/index.d.ts.map +1 -1
  208. package/dist/types/core/solana/generated/cross-chain/accounts/order.d.ts +6 -6
  209. package/dist/types/core/solana/generated/cross-chain/accounts/order.d.ts.map +1 -1
  210. package/dist/types/core/solana/generated/cross-chain/errors/sourceChainGuard.d.ts +76 -6
  211. package/dist/types/core/solana/generated/cross-chain/errors/sourceChainGuard.d.ts.map +1 -1
  212. package/dist/types/core/solana/generated/cross-chain/instructions/acceptAdmin.d.ts +12 -12
  213. package/dist/types/core/solana/generated/cross-chain/instructions/acceptAdmin.d.ts.map +1 -1
  214. package/dist/types/core/solana/generated/cross-chain/instructions/cancelDcaOrder.d.ts +124 -0
  215. package/dist/types/core/solana/generated/cross-chain/instructions/cancelDcaOrder.d.ts.map +1 -0
  216. package/dist/types/core/solana/generated/cross-chain/instructions/cancelOrder.d.ts +12 -12
  217. package/dist/types/core/solana/generated/cross-chain/instructions/cancelOrder.d.ts.map +1 -1
  218. package/dist/types/core/solana/generated/cross-chain/instructions/claimTokens.d.ts +12 -12
  219. package/dist/types/core/solana/generated/cross-chain/instructions/claimTokens.d.ts.map +1 -1
  220. package/dist/types/core/solana/generated/cross-chain/instructions/collectProtocolFees.d.ts +15 -15
  221. package/dist/types/core/solana/generated/cross-chain/instructions/collectProtocolFees.d.ts.map +1 -1
  222. package/dist/types/core/solana/generated/cross-chain/instructions/createDcaOrder.d.ts +130 -0
  223. package/dist/types/core/solana/generated/cross-chain/instructions/createDcaOrder.d.ts.map +1 -0
  224. package/dist/types/core/solana/generated/cross-chain/instructions/createGuard.d.ts +16 -12
  225. package/dist/types/core/solana/generated/cross-chain/instructions/createGuard.d.ts.map +1 -1
  226. package/dist/types/core/solana/generated/cross-chain/instructions/createOrder.d.ts +12 -12
  227. package/dist/types/core/solana/generated/cross-chain/instructions/createOrder.d.ts.map +1 -1
  228. package/dist/types/core/solana/generated/cross-chain/instructions/index.d.ts +2 -0
  229. package/dist/types/core/solana/generated/cross-chain/instructions/index.d.ts.map +1 -1
  230. package/dist/types/core/solana/generated/cross-chain/instructions/initialize.d.ts +12 -12
  231. package/dist/types/core/solana/generated/cross-chain/instructions/initialize.d.ts.map +1 -1
  232. package/dist/types/core/solana/generated/cross-chain/instructions/preStartOrderExecution.d.ts +12 -12
  233. package/dist/types/core/solana/generated/cross-chain/instructions/preStartOrderExecution.d.ts.map +1 -1
  234. package/dist/types/core/solana/generated/cross-chain/instructions/setAdmin.d.ts +11 -11
  235. package/dist/types/core/solana/generated/cross-chain/instructions/setAdmin.d.ts.map +1 -1
  236. package/dist/types/core/solana/generated/cross-chain/instructions/setAuctioneerPubKey.d.ts +11 -11
  237. package/dist/types/core/solana/generated/cross-chain/instructions/setAuctioneerPubKey.d.ts.map +1 -1
  238. package/dist/types/core/solana/generated/cross-chain/instructions/startOrderExecution.d.ts +12 -12
  239. package/dist/types/core/solana/generated/cross-chain/instructions/startOrderExecution.d.ts.map +1 -1
  240. package/dist/types/core/solana/generated/cross-chain/instructions/startOrderExecutionAfterSwap.d.ts +11 -11
  241. package/dist/types/core/solana/generated/cross-chain/instructions/startOrderExecutionAfterSwap.d.ts.map +1 -1
  242. package/dist/types/core/solana/generated/cross-chain/programs/sourceChainGuard.d.ts +25 -18
  243. package/dist/types/core/solana/generated/cross-chain/programs/sourceChainGuard.d.ts.map +1 -1
  244. package/dist/types/core/solana/generated/cross-chain/shared/index.d.ts +5 -5
  245. package/dist/types/core/solana/generated/cross-chain/shared/index.d.ts.map +1 -1
  246. package/dist/types/core/solana/generated/cross-chain/types/adminUpdateStarted.d.ts +4 -4
  247. package/dist/types/core/solana/generated/cross-chain/types/adminUpdateStarted.d.ts.map +1 -1
  248. package/dist/types/core/solana/generated/cross-chain/types/adminUpdated.d.ts +4 -4
  249. package/dist/types/core/solana/generated/cross-chain/types/adminUpdated.d.ts.map +1 -1
  250. package/dist/types/core/solana/generated/cross-chain/types/auctioneerPubkeyUpdated.d.ts +4 -4
  251. package/dist/types/core/solana/generated/cross-chain/types/auctioneerPubkeyUpdated.d.ts.map +1 -1
  252. package/dist/types/core/solana/generated/cross-chain/types/dcaExecutionStarted.d.ts +28 -0
  253. package/dist/types/core/solana/generated/cross-chain/types/dcaExecutionStarted.d.ts.map +1 -0
  254. package/dist/types/core/solana/generated/cross-chain/types/dcaOrderCreated.d.ts +38 -0
  255. package/dist/types/core/solana/generated/cross-chain/types/dcaOrderCreated.d.ts.map +1 -0
  256. package/dist/types/core/solana/generated/cross-chain/types/dcaOrderIntervalFulfilled.d.ts +18 -0
  257. package/dist/types/core/solana/generated/cross-chain/types/dcaOrderIntervalFulfilled.d.ts.map +1 -0
  258. package/dist/types/core/solana/generated/cross-chain/types/dcaTokenInSwapped.d.ts +24 -0
  259. package/dist/types/core/solana/generated/cross-chain/types/dcaTokenInSwapped.d.ts.map +1 -0
  260. package/dist/types/core/solana/generated/cross-chain/types/executionStarted.d.ts +4 -4
  261. package/dist/types/core/solana/generated/cross-chain/types/executionStarted.d.ts.map +1 -1
  262. package/dist/types/core/solana/generated/cross-chain/types/failedDcaIntervalExecution.d.ts +18 -0
  263. package/dist/types/core/solana/generated/cross-chain/types/failedDcaIntervalExecution.d.ts.map +1 -0
  264. package/dist/types/core/solana/generated/cross-chain/types/guardCreated.d.ts +4 -4
  265. package/dist/types/core/solana/generated/cross-chain/types/guardCreated.d.ts.map +1 -1
  266. package/dist/types/core/solana/generated/cross-chain/types/index.d.ts +5 -0
  267. package/dist/types/core/solana/generated/cross-chain/types/index.d.ts.map +1 -1
  268. package/dist/types/core/solana/generated/cross-chain/types/orderCancelled.d.ts +4 -4
  269. package/dist/types/core/solana/generated/cross-chain/types/orderCancelled.d.ts.map +1 -1
  270. package/dist/types/core/solana/generated/cross-chain/types/orderCreated.d.ts +4 -4
  271. package/dist/types/core/solana/generated/cross-chain/types/orderCreated.d.ts.map +1 -1
  272. package/dist/types/core/solana/generated/cross-chain/types/orderFulfilled.d.ts +4 -4
  273. package/dist/types/core/solana/generated/cross-chain/types/orderFulfilled.d.ts.map +1 -1
  274. package/dist/types/core/solana/generated/cross-chain/types/tokenInSwapped.d.ts +4 -4
  275. package/dist/types/core/solana/generated/cross-chain/types/tokenInSwapped.d.ts.map +1 -1
  276. package/dist/types/core/solana/generated/single-chain/accounts/adminSingleton.d.ts +6 -6
  277. package/dist/types/core/solana/generated/single-chain/accounts/adminSingleton.d.ts.map +1 -1
  278. package/dist/types/core/solana/generated/single-chain/accounts/dcaOrder.d.ts +3 -3
  279. package/dist/types/core/solana/generated/single-chain/accounts/dcaOrder.d.ts.map +1 -1
  280. package/dist/types/core/solana/generated/single-chain/accounts/guard.d.ts +6 -6
  281. package/dist/types/core/solana/generated/single-chain/accounts/guard.d.ts.map +1 -1
  282. package/dist/types/core/solana/generated/single-chain/accounts/limitOrder.d.ts +3 -3
  283. package/dist/types/core/solana/generated/single-chain/accounts/limitOrder.d.ts.map +1 -1
  284. package/dist/types/core/solana/generated/single-chain/errors/singleChainGuard.d.ts +2 -2
  285. package/dist/types/core/solana/generated/single-chain/errors/singleChainGuard.d.ts.map +1 -1
  286. package/dist/types/core/solana/generated/single-chain/instructions/acceptAdmin.d.ts +12 -12
  287. package/dist/types/core/solana/generated/single-chain/instructions/acceptAdmin.d.ts.map +1 -1
  288. package/dist/types/core/solana/generated/single-chain/instructions/cancelDcaOrder.d.ts +12 -12
  289. package/dist/types/core/solana/generated/single-chain/instructions/cancelDcaOrder.d.ts.map +1 -1
  290. package/dist/types/core/solana/generated/single-chain/instructions/cancelLimitOrder.d.ts +12 -12
  291. package/dist/types/core/solana/generated/single-chain/instructions/cancelLimitOrder.d.ts.map +1 -1
  292. package/dist/types/core/solana/generated/single-chain/instructions/collectProtocolFees.d.ts +12 -12
  293. package/dist/types/core/solana/generated/single-chain/instructions/collectProtocolFees.d.ts.map +1 -1
  294. package/dist/types/core/solana/generated/single-chain/instructions/createDcaOrder.d.ts +9 -9
  295. package/dist/types/core/solana/generated/single-chain/instructions/createDcaOrder.d.ts.map +1 -1
  296. package/dist/types/core/solana/generated/single-chain/instructions/createGuard.d.ts +11 -11
  297. package/dist/types/core/solana/generated/single-chain/instructions/createGuard.d.ts.map +1 -1
  298. package/dist/types/core/solana/generated/single-chain/instructions/createLimitOrder.d.ts +9 -9
  299. package/dist/types/core/solana/generated/single-chain/instructions/createLimitOrder.d.ts.map +1 -1
  300. package/dist/types/core/solana/generated/single-chain/instructions/fulfillDcaOrderInterval.d.ts +11 -11
  301. package/dist/types/core/solana/generated/single-chain/instructions/fulfillDcaOrderInterval.d.ts.map +1 -1
  302. package/dist/types/core/solana/generated/single-chain/instructions/fulfillLimitOrder.d.ts +11 -11
  303. package/dist/types/core/solana/generated/single-chain/instructions/fulfillLimitOrder.d.ts.map +1 -1
  304. package/dist/types/core/solana/generated/single-chain/instructions/initialize.d.ts +12 -12
  305. package/dist/types/core/solana/generated/single-chain/instructions/initialize.d.ts.map +1 -1
  306. package/dist/types/core/solana/generated/single-chain/instructions/setAdmin.d.ts +11 -11
  307. package/dist/types/core/solana/generated/single-chain/instructions/setAdmin.d.ts.map +1 -1
  308. package/dist/types/core/solana/generated/single-chain/instructions/setAuctioneerPubKey.d.ts +11 -11
  309. package/dist/types/core/solana/generated/single-chain/instructions/setAuctioneerPubKey.d.ts.map +1 -1
  310. package/dist/types/core/solana/generated/single-chain/programs/singleChainGuard.d.ts +2 -2
  311. package/dist/types/core/solana/generated/single-chain/programs/singleChainGuard.d.ts.map +1 -1
  312. package/dist/types/core/solana/generated/single-chain/shared/index.d.ts +5 -5
  313. package/dist/types/core/solana/generated/single-chain/shared/index.d.ts.map +1 -1
  314. package/dist/types/core/solana/generated/single-chain/types/adminUpdateStarted.d.ts +4 -4
  315. package/dist/types/core/solana/generated/single-chain/types/adminUpdateStarted.d.ts.map +1 -1
  316. package/dist/types/core/solana/generated/single-chain/types/adminUpdated.d.ts +4 -4
  317. package/dist/types/core/solana/generated/single-chain/types/adminUpdated.d.ts.map +1 -1
  318. package/dist/types/core/solana/generated/single-chain/types/auctioneerPubkeyUpdated.d.ts +4 -4
  319. package/dist/types/core/solana/generated/single-chain/types/auctioneerPubkeyUpdated.d.ts.map +1 -1
  320. package/dist/types/core/solana/generated/single-chain/types/dcaOrderCreated.d.ts +4 -4
  321. package/dist/types/core/solana/generated/single-chain/types/dcaOrderCreated.d.ts.map +1 -1
  322. package/dist/types/core/solana/generated/single-chain/types/dcaOrderFulfilled.d.ts +4 -4
  323. package/dist/types/core/solana/generated/single-chain/types/dcaOrderFulfilled.d.ts.map +1 -1
  324. package/dist/types/core/solana/generated/single-chain/types/dcaOrderIntervalFulfilled.d.ts +4 -4
  325. package/dist/types/core/solana/generated/single-chain/types/dcaOrderIntervalFulfilled.d.ts.map +1 -1
  326. package/dist/types/core/solana/generated/single-chain/types/guardCreated.d.ts +4 -4
  327. package/dist/types/core/solana/generated/single-chain/types/guardCreated.d.ts.map +1 -1
  328. package/dist/types/core/solana/generated/single-chain/types/limitOrderCreated.d.ts +4 -4
  329. package/dist/types/core/solana/generated/single-chain/types/limitOrderCreated.d.ts.map +1 -1
  330. package/dist/types/core/solana/generated/single-chain/types/limitOrderFulfilled.d.ts +4 -4
  331. package/dist/types/core/solana/generated/single-chain/types/limitOrderFulfilled.d.ts.map +1 -1
  332. package/dist/types/core/solana/generated/single-chain/types/orderCancelled.d.ts +4 -4
  333. package/dist/types/core/solana/generated/single-chain/types/orderCancelled.d.ts.map +1 -1
  334. package/dist/types/core/solana/intent-helpers.d.ts +120 -0
  335. package/dist/types/core/solana/intent-helpers.d.ts.map +1 -0
  336. package/dist/types/core/solana/sdk.d.ts.map +1 -1
  337. package/dist/types/core/sui/cross-chain-limit-order.d.ts +14 -0
  338. package/dist/types/core/sui/cross-chain-limit-order.d.ts.map +1 -0
  339. package/dist/types/core/sui/intent-helpers.d.ts +89 -0
  340. package/dist/types/core/sui/intent-helpers.d.ts.map +1 -0
  341. package/dist/types/core/sui/order-transaction.d.ts +3 -1
  342. package/dist/types/core/sui/order-transaction.d.ts.map +1 -1
  343. package/dist/types/core/sui/single-chain-dca-order.d.ts +22 -0
  344. package/dist/types/core/sui/single-chain-dca-order.d.ts.map +1 -0
  345. package/dist/types/core/sui/single-chain-limit-order.d.ts +26 -0
  346. package/dist/types/core/sui/single-chain-limit-order.d.ts.map +1 -0
  347. package/dist/types/core/sui/validator.d.ts.map +1 -1
  348. package/dist/types/index.d.ts +13 -0
  349. package/dist/types/index.d.ts.map +1 -1
  350. package/dist/types/types/intent.d.ts +13 -4
  351. package/dist/types/types/intent.d.ts.map +1 -1
  352. package/package.json +19 -9
  353. package/src/constants.ts +17 -23
  354. package/src/core/evm/abi/source-chain-guard.ts +32 -628
  355. package/src/core/evm/cross-chain-limit-order.ts +76 -0
  356. package/src/core/evm/intent-helpers.ts +204 -0
  357. package/src/core/evm/sdk.ts +4 -4
  358. package/src/core/evm/single-chain-dca-order.ts +85 -0
  359. package/src/core/evm/single-chain-limit-order.ts +78 -0
  360. package/src/core/evm/types.ts +15 -0
  361. package/src/core/orders/common.ts +4 -4
  362. package/src/core/orders/cross-chain.ts +3 -3
  363. package/src/core/orders/dca-single-chain.ts +4 -1
  364. package/src/core/orders/single-chain.ts +12 -2
  365. package/src/core/solana/cancel-order.ts +5 -5
  366. package/src/core/solana/client.ts +1 -1
  367. package/src/core/solana/cross-chain-limit-order.ts +24 -0
  368. package/src/core/solana/dca/cancel-order.ts +3 -3
  369. package/src/core/solana/dca/create-order.ts +2 -2
  370. package/src/core/solana/dca/single-chain-dca-order.ts +32 -0
  371. package/src/core/solana/dca/single-chain-limit-order.ts +45 -0
  372. package/src/core/solana/generated/cross-chain/accounts/adminSingleton.ts +20 -18
  373. package/src/core/solana/generated/cross-chain/accounts/dcaOrder.ts +248 -0
  374. package/src/core/solana/generated/cross-chain/accounts/guard.ts +24 -18
  375. package/src/core/solana/generated/cross-chain/accounts/index.ts +1 -0
  376. package/src/core/solana/generated/cross-chain/accounts/order.ts +17 -17
  377. package/src/core/solana/generated/cross-chain/errors/sourceChainGuard.ts +155 -12
  378. package/src/core/solana/generated/cross-chain/instructions/acceptAdmin.ts +44 -34
  379. package/src/core/solana/generated/cross-chain/instructions/cancelDcaOrder.ts +409 -0
  380. package/src/core/solana/generated/cross-chain/instructions/cancelOrder.ts +54 -61
  381. package/src/core/solana/generated/cross-chain/instructions/claimTokens.ts +58 -60
  382. package/src/core/solana/generated/cross-chain/instructions/collectProtocolFees.ts +57 -62
  383. package/src/core/solana/generated/cross-chain/instructions/createDcaOrder.ts +496 -0
  384. package/src/core/solana/generated/cross-chain/instructions/createGuard.ts +86 -110
  385. package/src/core/solana/generated/cross-chain/instructions/createOrder.ts +66 -66
  386. package/src/core/solana/generated/cross-chain/instructions/index.ts +2 -0
  387. package/src/core/solana/generated/cross-chain/instructions/initialize.ts +60 -42
  388. package/src/core/solana/generated/cross-chain/instructions/preStartOrderExecution.ts +60 -64
  389. package/src/core/solana/generated/cross-chain/instructions/setAdmin.ts +49 -34
  390. package/src/core/solana/generated/cross-chain/instructions/setAuctioneerPubKey.ts +89 -46
  391. package/src/core/solana/generated/cross-chain/instructions/startOrderExecution.ts +51 -50
  392. package/src/core/solana/generated/cross-chain/instructions/startOrderExecutionAfterSwap.ts +47 -48
  393. package/src/core/solana/generated/cross-chain/programs/sourceChainGuard.ts +118 -37
  394. package/src/core/solana/generated/cross-chain/shared/index.ts +25 -19
  395. package/src/core/solana/generated/cross-chain/types/adminUpdateStarted.ts +9 -6
  396. package/src/core/solana/generated/cross-chain/types/adminUpdated.ts +6 -6
  397. package/src/core/solana/generated/cross-chain/types/auctioneerPubkeyUpdated.ts +10 -10
  398. package/src/core/solana/generated/cross-chain/types/dcaExecutionStarted.ts +70 -0
  399. package/src/core/solana/generated/cross-chain/types/dcaOrderCreated.ts +92 -0
  400. package/src/core/solana/generated/cross-chain/types/dcaOrderIntervalFulfilled.ts +52 -0
  401. package/src/core/solana/generated/cross-chain/types/dcaTokenInSwapped.ts +62 -0
  402. package/src/core/solana/generated/cross-chain/types/executionStarted.ts +6 -6
  403. package/src/core/solana/generated/cross-chain/types/failedDcaIntervalExecution.ts +55 -0
  404. package/src/core/solana/generated/cross-chain/types/guardCreated.ts +6 -6
  405. package/src/core/solana/generated/cross-chain/types/index.ts +5 -0
  406. package/src/core/solana/generated/cross-chain/types/orderCancelled.ts +6 -6
  407. package/src/core/solana/generated/cross-chain/types/orderCreated.ts +6 -6
  408. package/src/core/solana/generated/cross-chain/types/orderFulfilled.ts +6 -6
  409. package/src/core/solana/generated/cross-chain/types/tokenInSwapped.ts +7 -11
  410. package/src/core/solana/generated/single-chain/accounts/adminSingleton.ts +20 -18
  411. package/src/core/solana/generated/single-chain/accounts/dcaOrder.ts +11 -11
  412. package/src/core/solana/generated/single-chain/accounts/guard.ts +17 -17
  413. package/src/core/solana/generated/single-chain/accounts/limitOrder.ts +11 -11
  414. package/src/core/solana/generated/single-chain/errors/singleChainGuard.ts +11 -8
  415. package/src/core/solana/generated/single-chain/instructions/acceptAdmin.ts +44 -34
  416. package/src/core/solana/generated/single-chain/instructions/cancelDcaOrder.ts +57 -51
  417. package/src/core/solana/generated/single-chain/instructions/cancelLimitOrder.ts +54 -51
  418. package/src/core/solana/generated/single-chain/instructions/collectProtocolFees.ts +62 -69
  419. package/src/core/solana/generated/single-chain/instructions/createDcaOrder.ts +66 -62
  420. package/src/core/solana/generated/single-chain/instructions/createGuard.ts +74 -62
  421. package/src/core/solana/generated/single-chain/instructions/createLimitOrder.ts +63 -62
  422. package/src/core/solana/generated/single-chain/instructions/fulfillDcaOrderInterval.ts +86 -90
  423. package/src/core/solana/generated/single-chain/instructions/fulfillLimitOrder.ts +89 -87
  424. package/src/core/solana/generated/single-chain/instructions/initialize.ts +58 -40
  425. package/src/core/solana/generated/single-chain/instructions/setAdmin.ts +49 -34
  426. package/src/core/solana/generated/single-chain/instructions/setAuctioneerPubKey.ts +89 -46
  427. package/src/core/solana/generated/single-chain/programs/singleChainGuard.ts +76 -37
  428. package/src/core/solana/generated/single-chain/shared/index.ts +25 -19
  429. package/src/core/solana/generated/single-chain/types/adminUpdateStarted.ts +9 -6
  430. package/src/core/solana/generated/single-chain/types/adminUpdated.ts +6 -6
  431. package/src/core/solana/generated/single-chain/types/auctioneerPubkeyUpdated.ts +10 -10
  432. package/src/core/solana/generated/single-chain/types/dcaOrderCreated.ts +6 -6
  433. package/src/core/solana/generated/single-chain/types/dcaOrderFulfilled.ts +9 -6
  434. package/src/core/solana/generated/single-chain/types/dcaOrderIntervalFulfilled.ts +9 -6
  435. package/src/core/solana/generated/single-chain/types/guardCreated.ts +7 -11
  436. package/src/core/solana/generated/single-chain/types/limitOrderCreated.ts +9 -6
  437. package/src/core/solana/generated/single-chain/types/limitOrderFulfilled.ts +10 -10
  438. package/src/core/solana/generated/single-chain/types/orderCancelled.ts +6 -6
  439. package/src/core/solana/inspect.ts +1 -1
  440. package/src/core/solana/intent-helpers.ts +273 -0
  441. package/src/core/solana/order-instructions.ts +3 -3
  442. package/src/core/solana/sdk.ts +13 -4
  443. package/src/core/sui/cancel.ts +1 -1
  444. package/src/core/sui/cross-chain-limit-order.ts +34 -0
  445. package/src/core/sui/intent-helpers.ts +235 -0
  446. package/src/core/sui/order-transaction.ts +8 -4
  447. package/src/core/sui/sdk.ts +1 -1
  448. package/src/core/sui/single-chain-dca-order.ts +139 -0
  449. package/src/core/sui/single-chain-limit-order.ts +143 -0
  450. package/src/core/sui/validator.ts +1 -2
  451. package/src/index.ts +55 -0
  452. package/src/types/intent.ts +15 -4
  453. package/src/utils/quote/aggregator.ts +2 -2
@@ -0,0 +1,409 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the codama library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun codama to update it.
5
+ *
6
+ * @see https://github.com/codama-idl/codama
7
+ */
8
+
9
+ import { type Address } from '@solana/addresses';
10
+ import {
11
+ combineCodec,
12
+ fixDecoderSize,
13
+ fixEncoderSize,
14
+ getBytesDecoder,
15
+ getBytesEncoder,
16
+ getStructDecoder,
17
+ getStructEncoder,
18
+ transformEncoder,
19
+ type FixedSizeCodec,
20
+ type FixedSizeDecoder,
21
+ type FixedSizeEncoder,
22
+ type ReadonlyUint8Array,
23
+ } from '@solana/codecs';
24
+ import {
25
+ type AccountMeta,
26
+ type Instruction,
27
+ type InstructionWithAccounts,
28
+ type InstructionWithData,
29
+ type ReadonlyAccount,
30
+ type WritableAccount,
31
+ type WritableSignerAccount,
32
+ } from '@solana/instructions';
33
+ import { type AccountSignerMeta, type TransactionSigner } from '@solana/signers';
34
+ import { SOURCE_CHAIN_GUARD_PROGRAM_ADDRESS } from '../programs/index.js';
35
+ import { getAccountMetaFactory, type ResolvedAccount } from '../shared/index.js';
36
+
37
+ export const CANCEL_DCA_ORDER_DISCRIMINATOR = new Uint8Array([
38
+ 60, 161, 130, 157, 181, 55, 218, 163,
39
+ ]);
40
+
41
+ export function getCancelDcaOrderDiscriminatorBytes() {
42
+ return fixEncoderSize(getBytesEncoder(), 8).encode(CANCEL_DCA_ORDER_DISCRIMINATOR);
43
+ }
44
+
45
+ export type CancelDcaOrderInstruction<
46
+ TProgram extends string = typeof SOURCE_CHAIN_GUARD_PROGRAM_ADDRESS,
47
+ TAccountUser extends string | AccountMeta<string> = string,
48
+ TAccountOrder extends string | AccountMeta<string> = string,
49
+ TAccountGuard extends string | AccountMeta<string> = string,
50
+ TAccountTokenInMint extends string | AccountMeta<string> = string,
51
+ TAccountUserTokenInAccount extends string | AccountMeta<string> = string,
52
+ TAccountGuardTokenInAccount extends string | AccountMeta<string> = string,
53
+ TAccountTokenInProgram extends string | AccountMeta<string> = string,
54
+ TAccountStablecoinMint extends string | AccountMeta<string> = string,
55
+ TAccountUserStablecoinAccount extends string | AccountMeta<string> = string,
56
+ TAccountGuardStablecoinAccount extends string | AccountMeta<string> = string,
57
+ TAccountStablecoinProgram extends string | AccountMeta<string> = string,
58
+ TAccountCollateralTokenMint extends string | AccountMeta<string> = string,
59
+ TAccountUserCollateralTokenAccount extends string | AccountMeta<string> = string,
60
+ TAccountGuardCollateralTokenAccount extends string | AccountMeta<string> = string,
61
+ TAccountCollateralTokenProgram extends string | AccountMeta<string> = string,
62
+ TRemainingAccounts extends readonly AccountMeta<string>[] = [],
63
+ > = Instruction<TProgram> &
64
+ InstructionWithData<ReadonlyUint8Array> &
65
+ InstructionWithAccounts<
66
+ [
67
+ TAccountUser extends string
68
+ ? WritableSignerAccount<TAccountUser> & AccountSignerMeta<TAccountUser>
69
+ : TAccountUser,
70
+ TAccountOrder extends string ? WritableAccount<TAccountOrder> : TAccountOrder,
71
+ TAccountGuard extends string ? ReadonlyAccount<TAccountGuard> : TAccountGuard,
72
+ TAccountTokenInMint extends string
73
+ ? ReadonlyAccount<TAccountTokenInMint>
74
+ : TAccountTokenInMint,
75
+ TAccountUserTokenInAccount extends string
76
+ ? WritableAccount<TAccountUserTokenInAccount>
77
+ : TAccountUserTokenInAccount,
78
+ TAccountGuardTokenInAccount extends string
79
+ ? WritableAccount<TAccountGuardTokenInAccount>
80
+ : TAccountGuardTokenInAccount,
81
+ TAccountTokenInProgram extends string
82
+ ? ReadonlyAccount<TAccountTokenInProgram>
83
+ : TAccountTokenInProgram,
84
+ TAccountStablecoinMint extends string
85
+ ? ReadonlyAccount<TAccountStablecoinMint>
86
+ : TAccountStablecoinMint,
87
+ TAccountUserStablecoinAccount extends string
88
+ ? WritableAccount<TAccountUserStablecoinAccount>
89
+ : TAccountUserStablecoinAccount,
90
+ TAccountGuardStablecoinAccount extends string
91
+ ? WritableAccount<TAccountGuardStablecoinAccount>
92
+ : TAccountGuardStablecoinAccount,
93
+ TAccountStablecoinProgram extends string
94
+ ? ReadonlyAccount<TAccountStablecoinProgram>
95
+ : TAccountStablecoinProgram,
96
+ TAccountCollateralTokenMint extends string
97
+ ? ReadonlyAccount<TAccountCollateralTokenMint>
98
+ : TAccountCollateralTokenMint,
99
+ TAccountUserCollateralTokenAccount extends string
100
+ ? WritableAccount<TAccountUserCollateralTokenAccount>
101
+ : TAccountUserCollateralTokenAccount,
102
+ TAccountGuardCollateralTokenAccount extends string
103
+ ? WritableAccount<TAccountGuardCollateralTokenAccount>
104
+ : TAccountGuardCollateralTokenAccount,
105
+ TAccountCollateralTokenProgram extends string
106
+ ? ReadonlyAccount<TAccountCollateralTokenProgram>
107
+ : TAccountCollateralTokenProgram,
108
+ ...TRemainingAccounts,
109
+ ]
110
+ >;
111
+
112
+ export type CancelDcaOrderInstructionData = { discriminator: ReadonlyUint8Array };
113
+
114
+ export type CancelDcaOrderInstructionDataArgs = Object;
115
+
116
+ export function getCancelDcaOrderInstructionDataEncoder(): FixedSizeEncoder<CancelDcaOrderInstructionDataArgs> {
117
+ return transformEncoder(
118
+ getStructEncoder([['discriminator', fixEncoderSize(getBytesEncoder(), 8)]]),
119
+ (value) => ({ ...value, discriminator: CANCEL_DCA_ORDER_DISCRIMINATOR })
120
+ );
121
+ }
122
+
123
+ export function getCancelDcaOrderInstructionDataDecoder(): FixedSizeDecoder<CancelDcaOrderInstructionData> {
124
+ return getStructDecoder([['discriminator', fixDecoderSize(getBytesDecoder(), 8)]]);
125
+ }
126
+
127
+ export function getCancelDcaOrderInstructionDataCodec(): FixedSizeCodec<
128
+ CancelDcaOrderInstructionDataArgs,
129
+ CancelDcaOrderInstructionData
130
+ > {
131
+ return combineCodec(
132
+ getCancelDcaOrderInstructionDataEncoder(),
133
+ getCancelDcaOrderInstructionDataDecoder()
134
+ );
135
+ }
136
+
137
+ export type CancelDcaOrderInput<
138
+ TAccountUser extends string = string,
139
+ TAccountOrder extends string = string,
140
+ TAccountGuard extends string = string,
141
+ TAccountTokenInMint extends string = string,
142
+ TAccountUserTokenInAccount extends string = string,
143
+ TAccountGuardTokenInAccount extends string = string,
144
+ TAccountTokenInProgram extends string = string,
145
+ TAccountStablecoinMint extends string = string,
146
+ TAccountUserStablecoinAccount extends string = string,
147
+ TAccountGuardStablecoinAccount extends string = string,
148
+ TAccountStablecoinProgram extends string = string,
149
+ TAccountCollateralTokenMint extends string = string,
150
+ TAccountUserCollateralTokenAccount extends string = string,
151
+ TAccountGuardCollateralTokenAccount extends string = string,
152
+ TAccountCollateralTokenProgram extends string = string,
153
+ > = {
154
+ /** User that is order creator which wants to cancel the order */
155
+ user: TransactionSigner<TAccountUser>;
156
+ /** DCA order data */
157
+ order: Address<TAccountOrder>;
158
+ /** Guard address, that protects this DCA order execution */
159
+ guard: Address<TAccountGuard>;
160
+ /** Token IN mint */
161
+ tokenInMint: Address<TAccountTokenInMint>;
162
+ /** User token IN account to which remaining tokens IN will be sent. */
163
+ userTokenInAccount: Address<TAccountUserTokenInAccount>;
164
+ /** Guard token IN account from which remaining tokens IN will be sent to the user */
165
+ guardTokenInAccount: Address<TAccountGuardTokenInAccount>;
166
+ /** Token IN program */
167
+ tokenInProgram: Address<TAccountTokenInProgram>;
168
+ /** Stablecoin mint */
169
+ stablecoinMint?: Address<TAccountStablecoinMint>;
170
+ /**
171
+ * User stablecoin account to which remaining stablecoins (if tokens IN were swapped)
172
+ * will be sent.
173
+ */
174
+ userStablecoinAccount?: Address<TAccountUserStablecoinAccount>;
175
+ /**
176
+ * Guard stablecoins account from which stablecoins (if tokens IN were swapped)
177
+ * will be sent.
178
+ */
179
+ guardStablecoinAccount?: Address<TAccountGuardStablecoinAccount>;
180
+ /** Stablecoin program */
181
+ stablecoinProgram?: Address<TAccountStablecoinProgram>;
182
+ /** Collateral token mint */
183
+ collateralTokenMint?: Address<TAccountCollateralTokenMint>;
184
+ /** User collateral token account to which collateral tokens (if any) will be sent. */
185
+ userCollateralTokenAccount?: Address<TAccountUserCollateralTokenAccount>;
186
+ /** Guard collateral token account from which collateral tokens (if any) will be sent. */
187
+ guardCollateralTokenAccount?: Address<TAccountGuardCollateralTokenAccount>;
188
+ /** Solana token program */
189
+ collateralTokenProgram?: Address<TAccountCollateralTokenProgram>;
190
+ };
191
+
192
+ export function getCancelDcaOrderInstruction<
193
+ TAccountUser extends string,
194
+ TAccountOrder extends string,
195
+ TAccountGuard extends string,
196
+ TAccountTokenInMint extends string,
197
+ TAccountUserTokenInAccount extends string,
198
+ TAccountGuardTokenInAccount extends string,
199
+ TAccountTokenInProgram extends string,
200
+ TAccountStablecoinMint extends string,
201
+ TAccountUserStablecoinAccount extends string,
202
+ TAccountGuardStablecoinAccount extends string,
203
+ TAccountStablecoinProgram extends string,
204
+ TAccountCollateralTokenMint extends string,
205
+ TAccountUserCollateralTokenAccount extends string,
206
+ TAccountGuardCollateralTokenAccount extends string,
207
+ TAccountCollateralTokenProgram extends string,
208
+ TProgramAddress extends Address = typeof SOURCE_CHAIN_GUARD_PROGRAM_ADDRESS,
209
+ >(
210
+ input: CancelDcaOrderInput<
211
+ TAccountUser,
212
+ TAccountOrder,
213
+ TAccountGuard,
214
+ TAccountTokenInMint,
215
+ TAccountUserTokenInAccount,
216
+ TAccountGuardTokenInAccount,
217
+ TAccountTokenInProgram,
218
+ TAccountStablecoinMint,
219
+ TAccountUserStablecoinAccount,
220
+ TAccountGuardStablecoinAccount,
221
+ TAccountStablecoinProgram,
222
+ TAccountCollateralTokenMint,
223
+ TAccountUserCollateralTokenAccount,
224
+ TAccountGuardCollateralTokenAccount,
225
+ TAccountCollateralTokenProgram
226
+ >,
227
+ config?: { programAddress?: TProgramAddress }
228
+ ): CancelDcaOrderInstruction<
229
+ TProgramAddress,
230
+ TAccountUser,
231
+ TAccountOrder,
232
+ TAccountGuard,
233
+ TAccountTokenInMint,
234
+ TAccountUserTokenInAccount,
235
+ TAccountGuardTokenInAccount,
236
+ TAccountTokenInProgram,
237
+ TAccountStablecoinMint,
238
+ TAccountUserStablecoinAccount,
239
+ TAccountGuardStablecoinAccount,
240
+ TAccountStablecoinProgram,
241
+ TAccountCollateralTokenMint,
242
+ TAccountUserCollateralTokenAccount,
243
+ TAccountGuardCollateralTokenAccount,
244
+ TAccountCollateralTokenProgram
245
+ > {
246
+ // Program address.
247
+ const programAddress = config?.programAddress ?? SOURCE_CHAIN_GUARD_PROGRAM_ADDRESS;
248
+
249
+ // Original accounts.
250
+ const originalAccounts = {
251
+ user: { value: input.user ?? null, isWritable: true },
252
+ order: { value: input.order ?? null, isWritable: true },
253
+ guard: { value: input.guard ?? null, isWritable: false },
254
+ tokenInMint: { value: input.tokenInMint ?? null, isWritable: false },
255
+ userTokenInAccount: { value: input.userTokenInAccount ?? null, isWritable: true },
256
+ guardTokenInAccount: { value: input.guardTokenInAccount ?? null, isWritable: true },
257
+ tokenInProgram: { value: input.tokenInProgram ?? null, isWritable: false },
258
+ stablecoinMint: { value: input.stablecoinMint ?? null, isWritable: false },
259
+ userStablecoinAccount: { value: input.userStablecoinAccount ?? null, isWritable: true },
260
+ guardStablecoinAccount: { value: input.guardStablecoinAccount ?? null, isWritable: true },
261
+ stablecoinProgram: { value: input.stablecoinProgram ?? null, isWritable: false },
262
+ collateralTokenMint: { value: input.collateralTokenMint ?? null, isWritable: false },
263
+ userCollateralTokenAccount: {
264
+ value: input.userCollateralTokenAccount ?? null,
265
+ isWritable: true,
266
+ },
267
+ guardCollateralTokenAccount: {
268
+ value: input.guardCollateralTokenAccount ?? null,
269
+ isWritable: true,
270
+ },
271
+ collateralTokenProgram: { value: input.collateralTokenProgram ?? null, isWritable: false },
272
+ };
273
+ const accounts = originalAccounts as Record<keyof typeof originalAccounts, ResolvedAccount>;
274
+
275
+ const getAccountMeta = getAccountMetaFactory(programAddress, 'programId');
276
+ const instruction = {
277
+ accounts: [
278
+ getAccountMeta(accounts.user),
279
+ getAccountMeta(accounts.order),
280
+ getAccountMeta(accounts.guard),
281
+ getAccountMeta(accounts.tokenInMint),
282
+ getAccountMeta(accounts.userTokenInAccount),
283
+ getAccountMeta(accounts.guardTokenInAccount),
284
+ getAccountMeta(accounts.tokenInProgram),
285
+ getAccountMeta(accounts.stablecoinMint),
286
+ getAccountMeta(accounts.userStablecoinAccount),
287
+ getAccountMeta(accounts.guardStablecoinAccount),
288
+ getAccountMeta(accounts.stablecoinProgram),
289
+ getAccountMeta(accounts.collateralTokenMint),
290
+ getAccountMeta(accounts.userCollateralTokenAccount),
291
+ getAccountMeta(accounts.guardCollateralTokenAccount),
292
+ getAccountMeta(accounts.collateralTokenProgram),
293
+ ],
294
+ programAddress,
295
+ data: getCancelDcaOrderInstructionDataEncoder().encode({}),
296
+ } as CancelDcaOrderInstruction<
297
+ TProgramAddress,
298
+ TAccountUser,
299
+ TAccountOrder,
300
+ TAccountGuard,
301
+ TAccountTokenInMint,
302
+ TAccountUserTokenInAccount,
303
+ TAccountGuardTokenInAccount,
304
+ TAccountTokenInProgram,
305
+ TAccountStablecoinMint,
306
+ TAccountUserStablecoinAccount,
307
+ TAccountGuardStablecoinAccount,
308
+ TAccountStablecoinProgram,
309
+ TAccountCollateralTokenMint,
310
+ TAccountUserCollateralTokenAccount,
311
+ TAccountGuardCollateralTokenAccount,
312
+ TAccountCollateralTokenProgram
313
+ >;
314
+
315
+ return instruction;
316
+ }
317
+
318
+ export type ParsedCancelDcaOrderInstruction<
319
+ TProgram extends string = typeof SOURCE_CHAIN_GUARD_PROGRAM_ADDRESS,
320
+ TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[],
321
+ > = {
322
+ programAddress: Address<TProgram>;
323
+ accounts: {
324
+ /** User that is order creator which wants to cancel the order */
325
+ user: TAccountMetas[0];
326
+ /** DCA order data */
327
+ order: TAccountMetas[1];
328
+ /** Guard address, that protects this DCA order execution */
329
+ guard: TAccountMetas[2];
330
+ /** Token IN mint */
331
+ tokenInMint: TAccountMetas[3];
332
+ /** User token IN account to which remaining tokens IN will be sent. */
333
+ userTokenInAccount: TAccountMetas[4];
334
+ /** Guard token IN account from which remaining tokens IN will be sent to the user */
335
+ guardTokenInAccount: TAccountMetas[5];
336
+ /** Token IN program */
337
+ tokenInProgram: TAccountMetas[6];
338
+ /** Stablecoin mint */
339
+ stablecoinMint?: TAccountMetas[7] | undefined;
340
+ /**
341
+ * User stablecoin account to which remaining stablecoins (if tokens IN were swapped)
342
+ * will be sent.
343
+ */
344
+
345
+ userStablecoinAccount?: TAccountMetas[8] | undefined;
346
+ /**
347
+ * Guard stablecoins account from which stablecoins (if tokens IN were swapped)
348
+ * will be sent.
349
+ */
350
+
351
+ guardStablecoinAccount?: TAccountMetas[9] | undefined;
352
+ /** Stablecoin program */
353
+ stablecoinProgram?: TAccountMetas[10] | undefined;
354
+ /** Collateral token mint */
355
+ collateralTokenMint?: TAccountMetas[11] | undefined;
356
+ /** User collateral token account to which collateral tokens (if any) will be sent. */
357
+ userCollateralTokenAccount?: TAccountMetas[12] | undefined;
358
+ /** Guard collateral token account from which collateral tokens (if any) will be sent. */
359
+ guardCollateralTokenAccount?: TAccountMetas[13] | undefined;
360
+ /** Solana token program */
361
+ collateralTokenProgram?: TAccountMetas[14] | undefined;
362
+ };
363
+ data: CancelDcaOrderInstructionData;
364
+ };
365
+
366
+ export function parseCancelDcaOrderInstruction<
367
+ TProgram extends string,
368
+ TAccountMetas extends readonly AccountMeta[],
369
+ >(
370
+ instruction: Instruction<TProgram> &
371
+ InstructionWithAccounts<TAccountMetas> &
372
+ InstructionWithData<ReadonlyUint8Array>
373
+ ): ParsedCancelDcaOrderInstruction<TProgram, TAccountMetas> {
374
+ if (instruction.accounts.length < 15) {
375
+ // TODO: Coded error.
376
+ throw new Error('Not enough accounts');
377
+ }
378
+ let accountIndex = 0;
379
+ const getNextAccount = () => {
380
+ const accountMeta = (instruction.accounts as TAccountMetas)[accountIndex]!;
381
+ accountIndex += 1;
382
+ return accountMeta;
383
+ };
384
+ const getNextOptionalAccount = () => {
385
+ const accountMeta = getNextAccount();
386
+ return accountMeta.address === SOURCE_CHAIN_GUARD_PROGRAM_ADDRESS ? undefined : accountMeta;
387
+ };
388
+ return {
389
+ programAddress: instruction.programAddress,
390
+ accounts: {
391
+ user: getNextAccount(),
392
+ order: getNextAccount(),
393
+ guard: getNextAccount(),
394
+ tokenInMint: getNextAccount(),
395
+ userTokenInAccount: getNextAccount(),
396
+ guardTokenInAccount: getNextAccount(),
397
+ tokenInProgram: getNextAccount(),
398
+ stablecoinMint: getNextOptionalAccount(),
399
+ userStablecoinAccount: getNextOptionalAccount(),
400
+ guardStablecoinAccount: getNextOptionalAccount(),
401
+ stablecoinProgram: getNextOptionalAccount(),
402
+ collateralTokenMint: getNextOptionalAccount(),
403
+ userCollateralTokenAccount: getNextOptionalAccount(),
404
+ guardCollateralTokenAccount: getNextOptionalAccount(),
405
+ collateralTokenProgram: getNextOptionalAccount(),
406
+ },
407
+ data: getCancelDcaOrderInstructionDataDecoder().decode(instruction.data),
408
+ };
409
+ }
@@ -6,7 +6,7 @@
6
6
  * @see https://github.com/codama-idl/codama
7
7
  */
8
8
 
9
- import { type Address } from '@solana/kit';
9
+ import { type Address } from '@solana/addresses';
10
10
  import {
11
11
  combineCodec,
12
12
  fixDecoderSize,
@@ -16,21 +16,21 @@ import {
16
16
  getStructDecoder,
17
17
  getStructEncoder,
18
18
  transformEncoder,
19
- type Codec,
20
- type Decoder,
21
- type Encoder,
19
+ type FixedSizeCodec,
20
+ type FixedSizeDecoder,
21
+ type FixedSizeEncoder,
22
22
  type ReadonlyUint8Array,
23
- } from '@solana/kit';
23
+ } from '@solana/codecs';
24
24
  import {
25
- type IAccountMeta,
26
- type IInstruction,
27
- type IInstructionWithAccounts,
28
- type IInstructionWithData,
25
+ type AccountMeta,
26
+ type Instruction,
27
+ type InstructionWithAccounts,
28
+ type InstructionWithData,
29
29
  type ReadonlyAccount,
30
30
  type WritableAccount,
31
31
  type WritableSignerAccount,
32
- } from '@solana/kit';
33
- import { type IAccountSignerMeta, type TransactionSigner } from '@solana/kit';
32
+ } from '@solana/instructions';
33
+ import { type AccountSignerMeta, type TransactionSigner } from '@solana/signers';
34
34
  import { SOURCE_CHAIN_GUARD_PROGRAM_ADDRESS } from '../programs/index.js';
35
35
  import { getAccountMetaFactory, type ResolvedAccount } from '../shared/index.js';
36
36
 
@@ -42,24 +42,24 @@ export function getCancelOrderDiscriminatorBytes() {
42
42
 
43
43
  export type CancelOrderInstruction<
44
44
  TProgram extends string = typeof SOURCE_CHAIN_GUARD_PROGRAM_ADDRESS,
45
- TAccountUser extends string | IAccountMeta<string> = string,
46
- TAccountOrder extends string | IAccountMeta<string> = string,
47
- TAccountGuard extends string | IAccountMeta<string> = string,
48
- TAccountRecoveredTokenMint extends string | IAccountMeta<string> = string,
49
- TAccountUserRecoveredTokenAccount extends string | IAccountMeta<string> = string,
50
- TAccountGuardRecoveredTokenAccount extends string | IAccountMeta<string> = string,
51
- TAccountRecoveredTokenProgram extends string | IAccountMeta<string> = string,
52
- TAccountCollateralTokenMint extends string | IAccountMeta<string> = string,
53
- TAccountUserCollateralTokenAccount extends string | IAccountMeta<string> = string,
54
- TAccountGuardCollateralTokenAccount extends string | IAccountMeta<string> = string,
55
- TAccountCollateralTokenProgram extends string | IAccountMeta<string> = string,
56
- TRemainingAccounts extends readonly IAccountMeta<string>[] = [],
57
- > = IInstruction<TProgram> &
58
- IInstructionWithData<Uint8Array> &
59
- IInstructionWithAccounts<
45
+ TAccountUser extends string | AccountMeta<string> = string,
46
+ TAccountOrder extends string | AccountMeta<string> = string,
47
+ TAccountGuard extends string | AccountMeta<string> = string,
48
+ TAccountRecoveredTokenMint extends string | AccountMeta<string> = string,
49
+ TAccountUserRecoveredTokenAccount extends string | AccountMeta<string> = string,
50
+ TAccountGuardRecoveredTokenAccount extends string | AccountMeta<string> = string,
51
+ TAccountRecoveredTokenProgram extends string | AccountMeta<string> = string,
52
+ TAccountCollateralTokenMint extends string | AccountMeta<string> = string,
53
+ TAccountUserCollateralTokenAccount extends string | AccountMeta<string> = string,
54
+ TAccountGuardCollateralTokenAccount extends string | AccountMeta<string> = string,
55
+ TAccountCollateralTokenProgram extends string | AccountMeta<string> = string,
56
+ TRemainingAccounts extends readonly AccountMeta<string>[] = [],
57
+ > = Instruction<TProgram> &
58
+ InstructionWithData<ReadonlyUint8Array> &
59
+ InstructionWithAccounts<
60
60
  [
61
61
  TAccountUser extends string
62
- ? WritableSignerAccount<TAccountUser> & IAccountSignerMeta<TAccountUser>
62
+ ? WritableSignerAccount<TAccountUser> & AccountSignerMeta<TAccountUser>
63
63
  : TAccountUser,
64
64
  TAccountOrder extends string ? WritableAccount<TAccountOrder> : TAccountOrder,
65
65
  TAccountGuard extends string ? ReadonlyAccount<TAccountGuard> : TAccountGuard,
@@ -93,24 +93,27 @@ export type CancelOrderInstruction<
93
93
 
94
94
  export type CancelOrderInstructionData = { discriminator: ReadonlyUint8Array };
95
95
 
96
- export type CancelOrderInstructionDataArgs = {};
96
+ export type CancelOrderInstructionDataArgs = Object;
97
97
 
98
- export function getCancelOrderInstructionDataEncoder(): Encoder<CancelOrderInstructionDataArgs> {
99
- return transformEncoder(getStructEncoder([['discriminator', fixEncoderSize(getBytesEncoder(), 8)]]), (value) => ({
100
- ...value,
101
- discriminator: CANCEL_ORDER_DISCRIMINATOR,
102
- }));
98
+ export function getCancelOrderInstructionDataEncoder(): FixedSizeEncoder<CancelOrderInstructionDataArgs> {
99
+ return transformEncoder(
100
+ getStructEncoder([['discriminator', fixEncoderSize(getBytesEncoder(), 8)]]),
101
+ (value) => ({ ...value, discriminator: CANCEL_ORDER_DISCRIMINATOR })
102
+ );
103
103
  }
104
104
 
105
- export function getCancelOrderInstructionDataDecoder(): Decoder<CancelOrderInstructionData> {
105
+ export function getCancelOrderInstructionDataDecoder(): FixedSizeDecoder<CancelOrderInstructionData> {
106
106
  return getStructDecoder([['discriminator', fixDecoderSize(getBytesDecoder(), 8)]]);
107
107
  }
108
108
 
109
- export function getCancelOrderInstructionDataCodec(): Codec<
109
+ export function getCancelOrderInstructionDataCodec(): FixedSizeCodec<
110
110
  CancelOrderInstructionDataArgs,
111
111
  CancelOrderInstructionData
112
112
  > {
113
- return combineCodec(getCancelOrderInstructionDataEncoder(), getCancelOrderInstructionDataDecoder());
113
+ return combineCodec(
114
+ getCancelOrderInstructionDataEncoder(),
115
+ getCancelOrderInstructionDataDecoder()
116
+ );
114
117
  }
115
118
 
116
119
  export type CancelOrderInput<
@@ -185,7 +188,7 @@ export function getCancelOrderInstruction<
185
188
  TAccountGuardCollateralTokenAccount,
186
189
  TAccountCollateralTokenProgram
187
190
  >,
188
- config?: { programAddress?: TProgramAddress },
191
+ config?: { programAddress?: TProgramAddress }
189
192
  ): CancelOrderInstruction<
190
193
  TProgramAddress,
191
194
  TAccountUser,
@@ -208,26 +211,14 @@ export function getCancelOrderInstruction<
208
211
  user: { value: input.user ?? null, isWritable: true },
209
212
  order: { value: input.order ?? null, isWritable: true },
210
213
  guard: { value: input.guard ?? null, isWritable: false },
211
- recoveredTokenMint: {
212
- value: input.recoveredTokenMint ?? null,
213
- isWritable: false,
214
- },
215
- userRecoveredTokenAccount: {
216
- value: input.userRecoveredTokenAccount ?? null,
217
- isWritable: true,
218
- },
214
+ recoveredTokenMint: { value: input.recoveredTokenMint ?? null, isWritable: false },
215
+ userRecoveredTokenAccount: { value: input.userRecoveredTokenAccount ?? null, isWritable: true },
219
216
  guardRecoveredTokenAccount: {
220
217
  value: input.guardRecoveredTokenAccount ?? null,
221
218
  isWritable: true,
222
219
  },
223
- recoveredTokenProgram: {
224
- value: input.recoveredTokenProgram ?? null,
225
- isWritable: false,
226
- },
227
- collateralTokenMint: {
228
- value: input.collateralTokenMint ?? null,
229
- isWritable: false,
230
- },
220
+ recoveredTokenProgram: { value: input.recoveredTokenProgram ?? null, isWritable: false },
221
+ collateralTokenMint: { value: input.collateralTokenMint ?? null, isWritable: false },
231
222
  userCollateralTokenAccount: {
232
223
  value: input.userCollateralTokenAccount ?? null,
233
224
  isWritable: true,
@@ -236,10 +227,7 @@ export function getCancelOrderInstruction<
236
227
  value: input.guardCollateralTokenAccount ?? null,
237
228
  isWritable: true,
238
229
  },
239
- collateralTokenProgram: {
240
- value: input.collateralTokenProgram ?? null,
241
- isWritable: false,
242
- },
230
+ collateralTokenProgram: { value: input.collateralTokenProgram ?? null, isWritable: false },
243
231
  };
244
232
  const accounts = originalAccounts as Record<keyof typeof originalAccounts, ResolvedAccount>;
245
233
 
@@ -280,7 +268,7 @@ export function getCancelOrderInstruction<
280
268
 
281
269
  export type ParsedCancelOrderInstruction<
282
270
  TProgram extends string = typeof SOURCE_CHAIN_GUARD_PROGRAM_ADDRESS,
283
- TAccountMetas extends readonly IAccountMeta[] = readonly IAccountMeta[],
271
+ TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[],
284
272
  > = {
285
273
  programAddress: Address<TProgram>;
286
274
  accounts: {
@@ -320,8 +308,13 @@ export type ParsedCancelOrderInstruction<
320
308
  data: CancelOrderInstructionData;
321
309
  };
322
310
 
323
- export function parseCancelOrderInstruction<TProgram extends string, TAccountMetas extends readonly IAccountMeta[]>(
324
- instruction: IInstruction<TProgram> & IInstructionWithAccounts<TAccountMetas> & IInstructionWithData<Uint8Array>,
311
+ export function parseCancelOrderInstruction<
312
+ TProgram extends string,
313
+ TAccountMetas extends readonly AccountMeta[],
314
+ >(
315
+ instruction: Instruction<TProgram> &
316
+ InstructionWithAccounts<TAccountMetas> &
317
+ InstructionWithData<ReadonlyUint8Array>
325
318
  ): ParsedCancelOrderInstruction<TProgram, TAccountMetas> {
326
319
  if (instruction.accounts.length < 11) {
327
320
  // TODO: Coded error.
@@ -329,7 +322,7 @@ export function parseCancelOrderInstruction<TProgram extends string, TAccountMet
329
322
  }
330
323
  let accountIndex = 0;
331
324
  const getNextAccount = () => {
332
- const accountMeta = instruction.accounts![accountIndex]!;
325
+ const accountMeta = (instruction.accounts as TAccountMetas)[accountIndex]!;
333
326
  accountIndex += 1;
334
327
  return accountMeta;
335
328
  };