@voltr/vault-sdk 1.1.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (503) hide show
  1. package/dist/extensions/batchFetchers.d.ts +7 -0
  2. package/dist/extensions/batchFetchers.d.ts.map +1 -0
  3. package/dist/extensions/batchFetchers.js +63 -0
  4. package/dist/extensions/batchFetchers.js.map +1 -0
  5. package/dist/extensions/decimal.d.ts +11 -0
  6. package/dist/extensions/decimal.d.ts.map +1 -0
  7. package/dist/extensions/decimal.js +19 -0
  8. package/dist/extensions/decimal.js.map +1 -0
  9. package/dist/extensions/fees.d.ts +6 -0
  10. package/dist/extensions/fees.d.ts.map +1 -0
  11. package/dist/extensions/fees.js +23 -0
  12. package/dist/extensions/fees.js.map +1 -0
  13. package/dist/extensions/index.d.ts +10 -0
  14. package/dist/extensions/index.d.ts.map +1 -0
  15. package/dist/extensions/index.js +26 -0
  16. package/dist/extensions/index.js.map +1 -0
  17. package/dist/extensions/lpEconomics.d.ts +27 -0
  18. package/dist/extensions/lpEconomics.d.ts.map +1 -0
  19. package/dist/extensions/lpEconomics.js +140 -0
  20. package/dist/extensions/lpEconomics.js.map +1 -0
  21. package/dist/extensions/math.d.ts +90 -0
  22. package/dist/extensions/math.d.ts.map +1 -0
  23. package/dist/extensions/math.js +182 -0
  24. package/dist/extensions/math.js.map +1 -0
  25. package/dist/extensions/metadataPda.d.ts +18 -0
  26. package/dist/extensions/metadataPda.d.ts.map +1 -0
  27. package/dist/extensions/metadataPda.js +34 -0
  28. package/dist/extensions/metadataPda.js.map +1 -0
  29. package/dist/extensions/position.d.ts +19 -0
  30. package/dist/extensions/position.d.ts.map +1 -0
  31. package/dist/extensions/position.js +28 -0
  32. package/dist/extensions/position.js.map +1 -0
  33. package/dist/extensions/rpc.d.ts +8 -0
  34. package/dist/extensions/rpc.d.ts.map +1 -0
  35. package/dist/{types/voltr_vault.js → extensions/rpc.js} +1 -0
  36. package/dist/extensions/rpc.js.map +1 -0
  37. package/dist/extensions/withdrawals.d.ts +16 -0
  38. package/dist/extensions/withdrawals.d.ts.map +1 -0
  39. package/dist/extensions/withdrawals.js +59 -0
  40. package/dist/extensions/withdrawals.js.map +1 -0
  41. package/dist/generated/accounts/adaptorAddReceipt.d.ts +57 -0
  42. package/dist/generated/accounts/adaptorAddReceipt.d.ts.map +1 -0
  43. package/dist/generated/accounts/adaptorAddReceipt.js +82 -0
  44. package/dist/generated/accounts/adaptorAddReceipt.js.map +1 -0
  45. package/dist/generated/accounts/directWithdrawInitReceipt.d.ts +60 -0
  46. package/dist/generated/accounts/directWithdrawInitReceipt.d.ts.map +1 -0
  47. package/dist/generated/accounts/directWithdrawInitReceipt.js +95 -0
  48. package/dist/generated/accounts/directWithdrawInitReceipt.js.map +1 -0
  49. package/dist/generated/accounts/index.d.ts +14 -0
  50. package/dist/generated/accounts/index.d.ts.map +1 -0
  51. package/dist/generated/accounts/index.js +30 -0
  52. package/dist/generated/accounts/index.js.map +1 -0
  53. package/dist/generated/accounts/protocol.d.ts +57 -0
  54. package/dist/generated/accounts/protocol.d.ts.map +1 -0
  55. package/dist/generated/accounts/protocol.js +82 -0
  56. package/dist/generated/accounts/protocol.js.map +1 -0
  57. package/dist/generated/accounts/requestWithdrawVaultReceipt.d.ts +43 -0
  58. package/dist/generated/accounts/requestWithdrawVaultReceipt.d.ts.map +1 -0
  59. package/dist/generated/accounts/requestWithdrawVaultReceipt.js +85 -0
  60. package/dist/generated/accounts/requestWithdrawVaultReceipt.js.map +1 -0
  61. package/dist/generated/accounts/strategyInitReceipt.d.ts +69 -0
  62. package/dist/generated/accounts/strategyInitReceipt.d.ts.map +1 -0
  63. package/dist/generated/accounts/strategyInitReceipt.js +91 -0
  64. package/dist/generated/accounts/strategyInitReceipt.js.map +1 -0
  65. package/dist/generated/accounts/vault.d.ts +100 -0
  66. package/dist/generated/accounts/vault.d.ts.map +1 -0
  67. package/dist/generated/accounts/vault.js +105 -0
  68. package/dist/generated/accounts/vault.js.map +1 -0
  69. package/dist/generated/errors/index.d.ts +9 -0
  70. package/dist/generated/errors/index.d.ts.map +1 -0
  71. package/dist/{types → generated/errors}/index.js +9 -2
  72. package/dist/generated/errors/index.js.map +1 -0
  73. package/dist/generated/errors/voltrVault.d.ts +52 -0
  74. package/dist/generated/errors/voltrVault.d.ts.map +1 -0
  75. package/dist/generated/errors/voltrVault.js +77 -0
  76. package/dist/generated/errors/voltrVault.js.map +1 -0
  77. package/dist/generated/index.d.ts +14 -0
  78. package/dist/generated/index.d.ts.map +1 -0
  79. package/dist/generated/index.js +30 -0
  80. package/dist/generated/index.js.map +1 -0
  81. package/dist/generated/instructions/acceptProtocolAdmin.d.ts +47 -0
  82. package/dist/generated/instructions/acceptProtocolAdmin.d.ts.map +1 -0
  83. package/dist/generated/instructions/acceptProtocolAdmin.js +103 -0
  84. package/dist/generated/instructions/acceptProtocolAdmin.js.map +1 -0
  85. package/dist/generated/instructions/acceptVaultAdmin.d.ts +40 -0
  86. package/dist/generated/instructions/acceptVaultAdmin.d.ts.map +1 -0
  87. package/dist/generated/instructions/acceptVaultAdmin.js +75 -0
  88. package/dist/generated/instructions/acceptVaultAdmin.js.map +1 -0
  89. package/dist/generated/instructions/addAdaptor.d.ts +67 -0
  90. package/dist/generated/instructions/addAdaptor.d.ts.map +1 -0
  91. package/dist/generated/instructions/addAdaptor.js +149 -0
  92. package/dist/generated/instructions/addAdaptor.js.map +1 -0
  93. package/dist/generated/instructions/calibrateHighWaterMark.d.ts +63 -0
  94. package/dist/generated/instructions/calibrateHighWaterMark.d.ts.map +1 -0
  95. package/dist/generated/instructions/calibrateHighWaterMark.js +150 -0
  96. package/dist/generated/instructions/calibrateHighWaterMark.js.map +1 -0
  97. package/dist/generated/instructions/calibrateHighWaterMarkUnsafe.d.ts +55 -0
  98. package/dist/generated/instructions/calibrateHighWaterMarkUnsafe.d.ts.map +1 -0
  99. package/dist/generated/instructions/calibrateHighWaterMarkUnsafe.js +121 -0
  100. package/dist/generated/instructions/calibrateHighWaterMarkUnsafe.js.map +1 -0
  101. package/dist/generated/instructions/cancelRequestWithdrawVault.d.ts +84 -0
  102. package/dist/generated/instructions/cancelRequestWithdrawVault.d.ts.map +1 -0
  103. package/dist/generated/instructions/cancelRequestWithdrawVault.js +208 -0
  104. package/dist/generated/instructions/cancelRequestWithdrawVault.js.map +1 -0
  105. package/dist/generated/instructions/closeStrategy.d.ts +67 -0
  106. package/dist/generated/instructions/closeStrategy.d.ts.map +1 -0
  107. package/dist/generated/instructions/closeStrategy.js +149 -0
  108. package/dist/generated/instructions/closeStrategy.js.map +1 -0
  109. package/dist/generated/instructions/createLpMetadata.d.ts +88 -0
  110. package/dist/generated/instructions/createLpMetadata.d.ts.map +1 -0
  111. package/dist/generated/instructions/createLpMetadata.js +194 -0
  112. package/dist/generated/instructions/createLpMetadata.js.map +1 -0
  113. package/dist/generated/instructions/depositStrategy.d.ts +111 -0
  114. package/dist/generated/instructions/depositStrategy.d.ts.map +1 -0
  115. package/dist/generated/instructions/depositStrategy.js +277 -0
  116. package/dist/generated/instructions/depositStrategy.js.map +1 -0
  117. package/dist/generated/instructions/depositVault.d.ts +108 -0
  118. package/dist/generated/instructions/depositVault.d.ts.map +1 -0
  119. package/dist/generated/instructions/depositVault.js +258 -0
  120. package/dist/generated/instructions/depositVault.js.map +1 -0
  121. package/dist/generated/instructions/directWithdrawStrategy.d.ts +125 -0
  122. package/dist/generated/instructions/directWithdrawStrategy.d.ts.map +1 -0
  123. package/dist/generated/instructions/directWithdrawStrategy.js +338 -0
  124. package/dist/generated/instructions/directWithdrawStrategy.js.map +1 -0
  125. package/dist/generated/instructions/directWithdrawStrategyWithTolerance.d.ts +129 -0
  126. package/dist/generated/instructions/directWithdrawStrategyWithTolerance.d.ts.map +1 -0
  127. package/dist/generated/instructions/directWithdrawStrategyWithTolerance.js +338 -0
  128. package/dist/generated/instructions/directWithdrawStrategyWithTolerance.js.map +1 -0
  129. package/dist/generated/instructions/harvestFee.d.ts +87 -0
  130. package/dist/generated/instructions/harvestFee.d.ts.map +1 -0
  131. package/dist/generated/instructions/harvestFee.js +220 -0
  132. package/dist/generated/instructions/harvestFee.js.map +1 -0
  133. package/dist/generated/instructions/index.d.ts +35 -0
  134. package/dist/generated/instructions/index.d.ts.map +1 -0
  135. package/dist/generated/instructions/index.js +51 -0
  136. package/dist/generated/instructions/index.js.map +1 -0
  137. package/dist/generated/instructions/initProtocol.d.ts +60 -0
  138. package/dist/generated/instructions/initProtocol.d.ts.map +1 -0
  139. package/dist/generated/instructions/initProtocol.js +130 -0
  140. package/dist/generated/instructions/initProtocol.js.map +1 -0
  141. package/dist/generated/instructions/initializeDirectWithdrawStrategy.d.ts +92 -0
  142. package/dist/generated/instructions/initializeDirectWithdrawStrategy.d.ts.map +1 -0
  143. package/dist/generated/instructions/initializeDirectWithdrawStrategy.js +214 -0
  144. package/dist/generated/instructions/initializeDirectWithdrawStrategy.js.map +1 -0
  145. package/dist/generated/instructions/initializeStrategy.d.ts +88 -0
  146. package/dist/generated/instructions/initializeStrategy.d.ts.map +1 -0
  147. package/dist/generated/instructions/initializeStrategy.js +210 -0
  148. package/dist/generated/instructions/initializeStrategy.js.map +1 -0
  149. package/dist/generated/instructions/initializeVault.d.ts +172 -0
  150. package/dist/generated/instructions/initializeVault.d.ts.map +1 -0
  151. package/dist/generated/instructions/initializeVault.js +289 -0
  152. package/dist/generated/instructions/initializeVault.js.map +1 -0
  153. package/dist/generated/instructions/instantWithdrawStrategy.d.ts +133 -0
  154. package/dist/generated/instructions/instantWithdrawStrategy.d.ts.map +1 -0
  155. package/dist/generated/instructions/instantWithdrawStrategy.js +320 -0
  156. package/dist/generated/instructions/instantWithdrawStrategy.js.map +1 -0
  157. package/dist/generated/instructions/instantWithdrawStrategyWithTolerance.d.ts +137 -0
  158. package/dist/generated/instructions/instantWithdrawStrategyWithTolerance.d.ts.map +1 -0
  159. package/dist/generated/instructions/instantWithdrawStrategyWithTolerance.js +320 -0
  160. package/dist/generated/instructions/instantWithdrawStrategyWithTolerance.js.map +1 -0
  161. package/dist/generated/instructions/instantWithdrawVault.d.ts +112 -0
  162. package/dist/generated/instructions/instantWithdrawVault.d.ts.map +1 -0
  163. package/dist/generated/instructions/instantWithdrawVault.js +249 -0
  164. package/dist/generated/instructions/instantWithdrawVault.js.map +1 -0
  165. package/dist/generated/instructions/removeAdaptor.d.ts +63 -0
  166. package/dist/generated/instructions/removeAdaptor.d.ts.map +1 -0
  167. package/dist/generated/instructions/removeAdaptor.js +144 -0
  168. package/dist/generated/instructions/removeAdaptor.js.map +1 -0
  169. package/dist/generated/instructions/requestWithdrawVault.d.ts +104 -0
  170. package/dist/generated/instructions/requestWithdrawVault.d.ts.map +1 -0
  171. package/dist/generated/instructions/requestWithdrawVault.js +225 -0
  172. package/dist/generated/instructions/requestWithdrawVault.js.map +1 -0
  173. package/dist/generated/instructions/updateProtocol.d.ts +57 -0
  174. package/dist/generated/instructions/updateProtocol.d.ts.map +1 -0
  175. package/dist/generated/instructions/updateProtocol.js +111 -0
  176. package/dist/generated/instructions/updateProtocol.js.map +1 -0
  177. package/dist/generated/instructions/updateVaultConfig.d.ts +65 -0
  178. package/dist/generated/instructions/updateVaultConfig.d.ts.map +1 -0
  179. package/dist/generated/instructions/updateVaultConfig.js +133 -0
  180. package/dist/generated/instructions/updateVaultConfig.js.map +1 -0
  181. package/dist/generated/instructions/updateVaultProtocolFee.d.ts +65 -0
  182. package/dist/generated/instructions/updateVaultProtocolFee.d.ts.map +1 -0
  183. package/dist/generated/instructions/updateVaultProtocolFee.js +132 -0
  184. package/dist/generated/instructions/updateVaultProtocolFee.js.map +1 -0
  185. package/dist/generated/instructions/withdrawStrategy.d.ts +111 -0
  186. package/dist/generated/instructions/withdrawStrategy.d.ts.map +1 -0
  187. package/dist/generated/instructions/withdrawStrategy.js +277 -0
  188. package/dist/generated/instructions/withdrawStrategy.js.map +1 -0
  189. package/dist/generated/instructions/withdrawVault.d.ts +103 -0
  190. package/dist/generated/instructions/withdrawVault.d.ts.map +1 -0
  191. package/dist/generated/instructions/withdrawVault.js +258 -0
  192. package/dist/generated/instructions/withdrawVault.js.map +1 -0
  193. package/dist/generated/pdas/adaptorAddReceipt.d.ts +16 -0
  194. package/dist/generated/pdas/adaptorAddReceipt.d.ts.map +1 -0
  195. package/dist/generated/pdas/adaptorAddReceipt.js +26 -0
  196. package/dist/generated/pdas/adaptorAddReceipt.js.map +1 -0
  197. package/dist/generated/pdas/directWithdrawInitReceipt.d.ts +16 -0
  198. package/dist/generated/pdas/directWithdrawInitReceipt.d.ts.map +1 -0
  199. package/dist/generated/pdas/directWithdrawInitReceipt.js +26 -0
  200. package/dist/generated/pdas/directWithdrawInitReceipt.js.map +1 -0
  201. package/dist/generated/pdas/index.d.ts +17 -0
  202. package/dist/generated/pdas/index.d.ts.map +1 -0
  203. package/dist/generated/pdas/index.js +33 -0
  204. package/dist/generated/pdas/index.js.map +1 -0
  205. package/dist/generated/pdas/protocol.d.ts +12 -0
  206. package/dist/generated/pdas/protocol.d.ts.map +1 -0
  207. package/dist/generated/pdas/protocol.js +21 -0
  208. package/dist/generated/pdas/protocol.js.map +1 -0
  209. package/dist/generated/pdas/requestWithdrawVaultReceipt.d.ts +16 -0
  210. package/dist/generated/pdas/requestWithdrawVaultReceipt.d.ts.map +1 -0
  211. package/dist/generated/pdas/requestWithdrawVaultReceipt.js +27 -0
  212. package/dist/generated/pdas/requestWithdrawVaultReceipt.js.map +1 -0
  213. package/dist/generated/pdas/strategyInitReceipt.d.ts +16 -0
  214. package/dist/generated/pdas/strategyInitReceipt.d.ts.map +1 -0
  215. package/dist/generated/pdas/strategyInitReceipt.js +26 -0
  216. package/dist/generated/pdas/strategyInitReceipt.js.map +1 -0
  217. package/dist/generated/pdas/vaultAssetIdleAuth.d.ts +15 -0
  218. package/dist/generated/pdas/vaultAssetIdleAuth.d.ts.map +1 -0
  219. package/dist/generated/pdas/vaultAssetIdleAuth.js +25 -0
  220. package/dist/generated/pdas/vaultAssetIdleAuth.js.map +1 -0
  221. package/dist/generated/pdas/vaultLpMint.d.ts +15 -0
  222. package/dist/generated/pdas/vaultLpMint.d.ts.map +1 -0
  223. package/dist/generated/pdas/vaultLpMint.js +24 -0
  224. package/dist/generated/pdas/vaultLpMint.js.map +1 -0
  225. package/dist/generated/pdas/vaultLpMintAuth.d.ts +15 -0
  226. package/dist/generated/pdas/vaultLpMintAuth.d.ts.map +1 -0
  227. package/dist/generated/pdas/vaultLpMintAuth.js +25 -0
  228. package/dist/generated/pdas/vaultLpMintAuth.js.map +1 -0
  229. package/dist/generated/pdas/vaultStrategyAuth.d.ts +16 -0
  230. package/dist/generated/pdas/vaultStrategyAuth.d.ts.map +1 -0
  231. package/dist/generated/pdas/vaultStrategyAuth.js +26 -0
  232. package/dist/generated/pdas/vaultStrategyAuth.js.map +1 -0
  233. package/dist/generated/programs/index.d.ts +9 -0
  234. package/dist/generated/programs/index.d.ts.map +1 -0
  235. package/dist/generated/programs/index.js +25 -0
  236. package/dist/generated/programs/index.js.map +1 -0
  237. package/dist/generated/programs/voltrVault.d.ts +172 -0
  238. package/dist/generated/programs/voltrVault.d.ts.map +1 -0
  239. package/dist/generated/programs/voltrVault.js +447 -0
  240. package/dist/generated/programs/voltrVault.js.map +1 -0
  241. package/dist/generated/types/acceptProtocolAdminEvent.d.ts +24 -0
  242. package/dist/generated/types/acceptProtocolAdminEvent.d.ts.map +1 -0
  243. package/dist/generated/types/acceptProtocolAdminEvent.js +33 -0
  244. package/dist/generated/types/acceptProtocolAdminEvent.js.map +1 -0
  245. package/dist/generated/types/acceptVaultAdminEvent.d.ts +24 -0
  246. package/dist/generated/types/acceptVaultAdminEvent.d.ts.map +1 -0
  247. package/dist/generated/types/acceptVaultAdminEvent.js +33 -0
  248. package/dist/generated/types/acceptVaultAdminEvent.js.map +1 -0
  249. package/dist/generated/types/addAdaptorEvent.d.ts +28 -0
  250. package/dist/generated/types/addAdaptorEvent.d.ts.map +1 -0
  251. package/dist/generated/types/addAdaptorEvent.js +37 -0
  252. package/dist/generated/types/addAdaptorEvent.js.map +1 -0
  253. package/dist/generated/types/calibrateHighWaterMarkEvent.d.ts +34 -0
  254. package/dist/generated/types/calibrateHighWaterMarkEvent.d.ts.map +1 -0
  255. package/dist/generated/types/calibrateHighWaterMarkEvent.js +43 -0
  256. package/dist/generated/types/calibrateHighWaterMarkEvent.js.map +1 -0
  257. package/dist/generated/types/calibrateHighWaterMarkUnsafeEvent.d.ts +30 -0
  258. package/dist/generated/types/calibrateHighWaterMarkUnsafeEvent.d.ts.map +1 -0
  259. package/dist/generated/types/calibrateHighWaterMarkUnsafeEvent.js +39 -0
  260. package/dist/generated/types/calibrateHighWaterMarkUnsafeEvent.js.map +1 -0
  261. package/dist/generated/types/cancelRequestWithdrawVaultEvent.d.ts +32 -0
  262. package/dist/generated/types/cancelRequestWithdrawVaultEvent.d.ts.map +1 -0
  263. package/dist/generated/types/cancelRequestWithdrawVaultEvent.js +41 -0
  264. package/dist/generated/types/cancelRequestWithdrawVaultEvent.js.map +1 -0
  265. package/dist/generated/types/closeStrategyEvent.d.ts +26 -0
  266. package/dist/generated/types/closeStrategyEvent.d.ts.map +1 -0
  267. package/dist/generated/types/closeStrategyEvent.js +35 -0
  268. package/dist/generated/types/closeStrategyEvent.js.map +1 -0
  269. package/dist/generated/types/depositStrategyEvent.d.ts +52 -0
  270. package/dist/generated/types/depositStrategyEvent.d.ts.map +1 -0
  271. package/dist/generated/types/depositStrategyEvent.js +61 -0
  272. package/dist/generated/types/depositStrategyEvent.js.map +1 -0
  273. package/dist/generated/types/depositVaultEvent.d.ts +48 -0
  274. package/dist/generated/types/depositVaultEvent.d.ts.map +1 -0
  275. package/dist/generated/types/depositVaultEvent.js +57 -0
  276. package/dist/generated/types/depositVaultEvent.js.map +1 -0
  277. package/dist/generated/types/directWithdrawStrategyEvent.d.ts +62 -0
  278. package/dist/generated/types/directWithdrawStrategyEvent.d.ts.map +1 -0
  279. package/dist/generated/types/directWithdrawStrategyEvent.js +71 -0
  280. package/dist/generated/types/directWithdrawStrategyEvent.js.map +1 -0
  281. package/dist/generated/types/feeConfiguration.d.ts +33 -0
  282. package/dist/generated/types/feeConfiguration.d.ts.map +1 -0
  283. package/dist/generated/types/feeConfiguration.js +43 -0
  284. package/dist/generated/types/feeConfiguration.js.map +1 -0
  285. package/dist/generated/types/feeState.d.ts +32 -0
  286. package/dist/generated/types/feeState.d.ts.map +1 -0
  287. package/dist/generated/types/feeState.js +33 -0
  288. package/dist/generated/types/feeState.js.map +1 -0
  289. package/dist/generated/types/feeUpdate.d.ts +24 -0
  290. package/dist/generated/types/feeUpdate.d.ts.map +1 -0
  291. package/dist/generated/types/feeUpdate.js +29 -0
  292. package/dist/generated/types/feeUpdate.js.map +1 -0
  293. package/dist/generated/types/harvestFeeEvent.d.ts +32 -0
  294. package/dist/generated/types/harvestFeeEvent.d.ts.map +1 -0
  295. package/dist/generated/types/harvestFeeEvent.js +41 -0
  296. package/dist/generated/types/harvestFeeEvent.js.map +1 -0
  297. package/dist/generated/types/highWaterMark.d.ts +28 -0
  298. package/dist/generated/types/highWaterMark.d.ts.map +1 -0
  299. package/dist/generated/types/highWaterMark.js +31 -0
  300. package/dist/generated/types/highWaterMark.js.map +1 -0
  301. package/dist/generated/types/index.d.ts +44 -0
  302. package/dist/generated/types/index.d.ts.map +1 -0
  303. package/dist/generated/types/index.js +60 -0
  304. package/dist/generated/types/index.js.map +1 -0
  305. package/dist/generated/types/initProtocolEvent.d.ts +22 -0
  306. package/dist/generated/types/initProtocolEvent.d.ts.map +1 -0
  307. package/dist/generated/types/initProtocolEvent.js +31 -0
  308. package/dist/generated/types/initProtocolEvent.js.map +1 -0
  309. package/dist/generated/types/initializeDirectWithdrawStrategyEvent.d.ts +34 -0
  310. package/dist/generated/types/initializeDirectWithdrawStrategyEvent.d.ts.map +1 -0
  311. package/dist/generated/types/initializeDirectWithdrawStrategyEvent.js +55 -0
  312. package/dist/generated/types/initializeDirectWithdrawStrategyEvent.js.map +1 -0
  313. package/dist/generated/types/initializeStrategyEvent.d.ts +32 -0
  314. package/dist/generated/types/initializeStrategyEvent.d.ts.map +1 -0
  315. package/dist/generated/types/initializeStrategyEvent.js +41 -0
  316. package/dist/generated/types/initializeStrategyEvent.js.map +1 -0
  317. package/dist/generated/types/initializeVaultEvent.d.ts +56 -0
  318. package/dist/generated/types/initializeVaultEvent.d.ts.map +1 -0
  319. package/dist/generated/types/initializeVaultEvent.js +71 -0
  320. package/dist/generated/types/initializeVaultEvent.js.map +1 -0
  321. package/dist/generated/types/instantWithdrawStrategyEvent.d.ts +68 -0
  322. package/dist/generated/types/instantWithdrawStrategyEvent.d.ts.map +1 -0
  323. package/dist/generated/types/instantWithdrawStrategyEvent.js +77 -0
  324. package/dist/generated/types/instantWithdrawStrategyEvent.js.map +1 -0
  325. package/dist/generated/types/instantWithdrawVaultEvent.d.ts +56 -0
  326. package/dist/generated/types/instantWithdrawVaultEvent.d.ts.map +1 -0
  327. package/dist/generated/types/instantWithdrawVaultEvent.js +65 -0
  328. package/dist/generated/types/instantWithdrawVaultEvent.js.map +1 -0
  329. package/dist/generated/types/lockedProfitState.d.ts +20 -0
  330. package/dist/generated/types/lockedProfitState.d.ts.map +1 -0
  331. package/dist/generated/types/lockedProfitState.js +29 -0
  332. package/dist/generated/types/lockedProfitState.js.map +1 -0
  333. package/dist/generated/types/protocolConfigField.d.ts +17 -0
  334. package/dist/generated/types/protocolConfigField.d.ts.map +1 -0
  335. package/dist/generated/types/protocolConfigField.js +29 -0
  336. package/dist/generated/types/protocolConfigField.js.map +1 -0
  337. package/dist/generated/types/protocolFeeField.d.ts +17 -0
  338. package/dist/generated/types/protocolFeeField.d.ts.map +1 -0
  339. package/dist/generated/types/protocolFeeField.js +29 -0
  340. package/dist/generated/types/protocolFeeField.js.map +1 -0
  341. package/dist/generated/types/removeAdaptorEvent.d.ts +26 -0
  342. package/dist/generated/types/removeAdaptorEvent.d.ts.map +1 -0
  343. package/dist/generated/types/removeAdaptorEvent.js +35 -0
  344. package/dist/generated/types/removeAdaptorEvent.js.map +1 -0
  345. package/dist/generated/types/requestWithdrawVaultEvent.d.ts +44 -0
  346. package/dist/generated/types/requestWithdrawVaultEvent.d.ts.map +1 -0
  347. package/dist/generated/types/requestWithdrawVaultEvent.js +53 -0
  348. package/dist/generated/types/requestWithdrawVaultEvent.js.map +1 -0
  349. package/dist/generated/types/updateProtocolEvent.d.ts +28 -0
  350. package/dist/generated/types/updateProtocolEvent.d.ts.map +1 -0
  351. package/dist/generated/types/updateProtocolEvent.js +37 -0
  352. package/dist/generated/types/updateProtocolEvent.js.map +1 -0
  353. package/dist/generated/types/updateVaultConfigEvent.d.ts +28 -0
  354. package/dist/generated/types/updateVaultConfigEvent.d.ts.map +1 -0
  355. package/dist/generated/types/updateVaultConfigEvent.js +37 -0
  356. package/dist/generated/types/updateVaultConfigEvent.js.map +1 -0
  357. package/dist/generated/types/updateVaultEvent.d.ts +62 -0
  358. package/dist/generated/types/updateVaultEvent.d.ts.map +1 -0
  359. package/dist/generated/types/updateVaultEvent.js +71 -0
  360. package/dist/generated/types/updateVaultEvent.js.map +1 -0
  361. package/dist/generated/types/updateVaultProtocolFeeEvent.d.ts +28 -0
  362. package/dist/generated/types/updateVaultProtocolFeeEvent.d.ts.map +1 -0
  363. package/dist/generated/types/updateVaultProtocolFeeEvent.js +37 -0
  364. package/dist/generated/types/updateVaultProtocolFeeEvent.js.map +1 -0
  365. package/dist/generated/types/vaultAsset.d.ts +36 -0
  366. package/dist/generated/types/vaultAsset.d.ts.map +1 -0
  367. package/dist/generated/types/vaultAsset.js +35 -0
  368. package/dist/generated/types/vaultAsset.js.map +1 -0
  369. package/dist/generated/types/vaultConfigField.d.ts +28 -0
  370. package/dist/generated/types/vaultConfigField.d.ts.map +1 -0
  371. package/dist/generated/types/vaultConfigField.js +40 -0
  372. package/dist/generated/types/vaultConfigField.js.map +1 -0
  373. package/dist/generated/types/vaultConfiguration.d.ts +40 -0
  374. package/dist/generated/types/vaultConfiguration.d.ts.map +1 -0
  375. package/dist/generated/types/vaultConfiguration.js +37 -0
  376. package/dist/generated/types/vaultConfiguration.js.map +1 -0
  377. package/dist/generated/types/vaultLp.d.ts +23 -0
  378. package/dist/generated/types/vaultLp.d.ts.map +1 -0
  379. package/dist/generated/types/vaultLp.js +33 -0
  380. package/dist/generated/types/vaultLp.js.map +1 -0
  381. package/dist/generated/types/withdrawStrategyEvent.d.ts +52 -0
  382. package/dist/generated/types/withdrawStrategyEvent.d.ts.map +1 -0
  383. package/dist/generated/types/withdrawStrategyEvent.js +61 -0
  384. package/dist/generated/types/withdrawStrategyEvent.js.map +1 -0
  385. package/dist/generated/types/withdrawVaultEvent.d.ts +50 -0
  386. package/dist/generated/types/withdrawVaultEvent.d.ts.map +1 -0
  387. package/dist/generated/types/withdrawVaultEvent.js +59 -0
  388. package/dist/generated/types/withdrawVaultEvent.js.map +1 -0
  389. package/dist/index.d.ts +3 -4
  390. package/dist/index.d.ts.map +1 -0
  391. package/dist/index.js +3 -4
  392. package/dist/index.js.map +1 -0
  393. package/package.json +31 -27
  394. package/src/extensions/batchFetchers.ts +121 -0
  395. package/src/extensions/decimal.ts +15 -0
  396. package/src/extensions/fees.ts +36 -0
  397. package/src/extensions/index.ts +9 -0
  398. package/src/extensions/lpEconomics.ts +225 -0
  399. package/src/extensions/math.ts +338 -0
  400. package/src/extensions/metadataPda.ts +47 -0
  401. package/src/extensions/position.ts +54 -0
  402. package/src/extensions/rpc.ts +17 -0
  403. package/src/extensions/withdrawals.ts +113 -0
  404. package/src/generated/accounts/adaptorAddReceipt.ts +194 -0
  405. package/src/generated/accounts/directWithdrawInitReceipt.ts +235 -0
  406. package/src/generated/accounts/index.ts +14 -0
  407. package/src/generated/accounts/protocol.ts +176 -0
  408. package/src/generated/accounts/requestWithdrawVaultReceipt.ts +197 -0
  409. package/src/generated/accounts/strategyInitReceipt.ts +221 -0
  410. package/src/generated/accounts/vault.ts +274 -0
  411. package/src/generated/errors/index.ts +9 -0
  412. package/src/generated/errors/voltrVault.ts +112 -0
  413. package/src/generated/index.ts +14 -0
  414. package/src/generated/instructions/acceptProtocolAdmin.ts +248 -0
  415. package/src/generated/instructions/acceptVaultAdmin.ts +187 -0
  416. package/src/generated/instructions/addAdaptor.ts +391 -0
  417. package/src/generated/instructions/calibrateHighWaterMark.ts +394 -0
  418. package/src/generated/instructions/calibrateHighWaterMarkUnsafe.ts +311 -0
  419. package/src/generated/instructions/cancelRequestWithdrawVault.ts +546 -0
  420. package/src/generated/instructions/closeStrategy.ts +395 -0
  421. package/src/generated/instructions/createLpMetadata.ts +501 -0
  422. package/src/generated/instructions/depositStrategy.ts +737 -0
  423. package/src/generated/instructions/depositVault.ts +686 -0
  424. package/src/generated/instructions/directWithdrawStrategy.ts +903 -0
  425. package/src/generated/instructions/directWithdrawStrategyWithTolerance.ts +913 -0
  426. package/src/generated/instructions/harvestFee.ts +599 -0
  427. package/src/generated/instructions/index.ts +35 -0
  428. package/src/generated/instructions/initProtocol.ts +329 -0
  429. package/src/generated/instructions/initializeDirectWithdrawStrategy.ts +576 -0
  430. package/src/generated/instructions/initializeStrategy.ts +557 -0
  431. package/src/generated/instructions/initializeVault.ts +784 -0
  432. package/src/generated/instructions/instantWithdrawStrategy.ts +870 -0
  433. package/src/generated/instructions/instantWithdrawStrategyWithTolerance.ts +878 -0
  434. package/src/generated/instructions/instantWithdrawVault.ts +670 -0
  435. package/src/generated/instructions/removeAdaptor.ts +371 -0
  436. package/src/generated/instructions/requestWithdrawVault.ts +608 -0
  437. package/src/generated/instructions/updateProtocol.ts +270 -0
  438. package/src/generated/instructions/updateVaultConfig.ts +343 -0
  439. package/src/generated/instructions/updateVaultProtocolFee.ts +344 -0
  440. package/src/generated/instructions/withdrawStrategy.ts +737 -0
  441. package/src/generated/instructions/withdrawVault.ts +685 -0
  442. package/src/generated/pdas/adaptorAddReceipt.ts +42 -0
  443. package/src/generated/pdas/directWithdrawInitReceipt.ts +42 -0
  444. package/src/generated/pdas/index.ts +17 -0
  445. package/src/generated/pdas/protocol.ts +30 -0
  446. package/src/generated/pdas/requestWithdrawVaultReceipt.ts +43 -0
  447. package/src/generated/pdas/strategyInitReceipt.ts +42 -0
  448. package/src/generated/pdas/vaultAssetIdleAuth.ts +40 -0
  449. package/src/generated/pdas/vaultLpMint.ts +39 -0
  450. package/src/generated/pdas/vaultLpMintAuth.ts +40 -0
  451. package/src/generated/pdas/vaultStrategyAuth.ts +42 -0
  452. package/src/generated/programs/index.ts +9 -0
  453. package/src/generated/programs/voltrVault.ts +1261 -0
  454. package/src/generated/types/acceptProtocolAdminEvent.ts +63 -0
  455. package/src/generated/types/acceptVaultAdminEvent.ts +63 -0
  456. package/src/generated/types/addAdaptorEvent.ts +68 -0
  457. package/src/generated/types/calibrateHighWaterMarkEvent.ts +85 -0
  458. package/src/generated/types/calibrateHighWaterMarkUnsafeEvent.ts +77 -0
  459. package/src/generated/types/cancelRequestWithdrawVaultEvent.ts +81 -0
  460. package/src/generated/types/closeStrategyEvent.ts +67 -0
  461. package/src/generated/types/depositStrategyEvent.ts +121 -0
  462. package/src/generated/types/depositVaultEvent.ts +113 -0
  463. package/src/generated/types/directWithdrawStrategyEvent.ts +141 -0
  464. package/src/generated/types/feeConfiguration.ts +84 -0
  465. package/src/generated/types/feeState.ts +67 -0
  466. package/src/generated/types/feeUpdate.ts +50 -0
  467. package/src/generated/types/harvestFeeEvent.ts +76 -0
  468. package/src/generated/types/highWaterMark.ts +66 -0
  469. package/src/generated/types/index.ts +44 -0
  470. package/src/generated/types/initProtocolEvent.ts +61 -0
  471. package/src/generated/types/initializeDirectWithdrawStrategyEvent.ts +104 -0
  472. package/src/generated/types/initializeStrategyEvent.ts +81 -0
  473. package/src/generated/types/initializeVaultEvent.ts +141 -0
  474. package/src/generated/types/instantWithdrawStrategyEvent.ts +155 -0
  475. package/src/generated/types/instantWithdrawVaultEvent.ts +131 -0
  476. package/src/generated/types/lockedProfitState.ts +52 -0
  477. package/src/generated/types/protocolConfigField.ts +41 -0
  478. package/src/generated/types/protocolFeeField.ts +41 -0
  479. package/src/generated/types/removeAdaptorEvent.ts +67 -0
  480. package/src/generated/types/requestWithdrawVaultEvent.ts +107 -0
  481. package/src/generated/types/updateProtocolEvent.ts +77 -0
  482. package/src/generated/types/updateVaultConfigEvent.ts +77 -0
  483. package/src/generated/types/updateVaultEvent.ts +141 -0
  484. package/src/generated/types/updateVaultProtocolFeeEvent.ts +79 -0
  485. package/src/generated/types/vaultAsset.ts +81 -0
  486. package/src/generated/types/vaultConfigField.ts +52 -0
  487. package/src/generated/types/vaultConfiguration.ts +87 -0
  488. package/src/generated/types/vaultLp.ts +61 -0
  489. package/src/generated/types/withdrawStrategyEvent.ts +121 -0
  490. package/src/generated/types/withdrawVaultEvent.ts +117 -0
  491. package/src/index.ts +2 -0
  492. package/README.md +0 -453
  493. package/dist/client.d.ts +0 -1544
  494. package/dist/client.js +0 -1962
  495. package/dist/constants.d.ts +0 -20
  496. package/dist/constants.js +0 -27
  497. package/dist/decimals.d.ts +0 -3
  498. package/dist/decimals.js +0 -10
  499. package/dist/idl/voltr_vault.json +0 -9029
  500. package/dist/types/index.d.ts +0 -2
  501. package/dist/types/vault.d.ts +0 -70
  502. package/dist/types/vault.js +0 -29
  503. package/dist/types/voltr_vault.d.ts +0 -9035
@@ -0,0 +1,1261 @@
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 {
10
+ assertIsInstructionWithAccounts,
11
+ containsBytes,
12
+ fixEncoderSize,
13
+ getBytesEncoder,
14
+ SOLANA_ERROR__PROGRAM_CLIENTS__FAILED_TO_IDENTIFY_ACCOUNT,
15
+ SOLANA_ERROR__PROGRAM_CLIENTS__FAILED_TO_IDENTIFY_INSTRUCTION,
16
+ SOLANA_ERROR__PROGRAM_CLIENTS__UNRECOGNIZED_INSTRUCTION_TYPE,
17
+ SolanaError,
18
+ type Address,
19
+ type ClientWithPayer,
20
+ type ClientWithRpc,
21
+ type ClientWithTransactionPlanning,
22
+ type ClientWithTransactionSending,
23
+ type GetAccountInfoApi,
24
+ type GetMultipleAccountsApi,
25
+ type Instruction,
26
+ type InstructionWithData,
27
+ type ReadonlyUint8Array,
28
+ } from "@solana/kit";
29
+ import {
30
+ addSelfFetchFunctions,
31
+ addSelfPlanAndSendFunctions,
32
+ type SelfFetchFunctions,
33
+ type SelfPlanAndSendFunctions,
34
+ } from "@solana/program-client-core";
35
+ import {
36
+ getAdaptorAddReceiptCodec,
37
+ getDirectWithdrawInitReceiptCodec,
38
+ getProtocolCodec,
39
+ getRequestWithdrawVaultReceiptCodec,
40
+ getStrategyInitReceiptCodec,
41
+ getVaultCodec,
42
+ type AdaptorAddReceipt,
43
+ type AdaptorAddReceiptArgs,
44
+ type DirectWithdrawInitReceipt,
45
+ type DirectWithdrawInitReceiptArgs,
46
+ type Protocol,
47
+ type ProtocolArgs,
48
+ type RequestWithdrawVaultReceipt,
49
+ type RequestWithdrawVaultReceiptArgs,
50
+ type StrategyInitReceipt,
51
+ type StrategyInitReceiptArgs,
52
+ type Vault,
53
+ type VaultArgs,
54
+ } from "../accounts";
55
+ import {
56
+ getAcceptProtocolAdminInstructionAsync,
57
+ getAcceptVaultAdminInstruction,
58
+ getAddAdaptorInstructionAsync,
59
+ getCalibrateHighWaterMarkInstructionAsync,
60
+ getCalibrateHighWaterMarkUnsafeInstructionAsync,
61
+ getCancelRequestWithdrawVaultInstructionAsync,
62
+ getCloseStrategyInstructionAsync,
63
+ getCreateLpMetadataInstructionAsync,
64
+ getDepositStrategyInstructionAsync,
65
+ getDepositVaultInstructionAsync,
66
+ getDirectWithdrawStrategyInstructionAsync,
67
+ getDirectWithdrawStrategyWithToleranceInstructionAsync,
68
+ getHarvestFeeInstructionAsync,
69
+ getInitializeDirectWithdrawStrategyInstructionAsync,
70
+ getInitializeStrategyInstructionAsync,
71
+ getInitializeVaultInstructionAsync,
72
+ getInitProtocolInstructionAsync,
73
+ getInstantWithdrawStrategyInstructionAsync,
74
+ getInstantWithdrawStrategyWithToleranceInstructionAsync,
75
+ getInstantWithdrawVaultInstructionAsync,
76
+ getRemoveAdaptorInstructionAsync,
77
+ getRequestWithdrawVaultInstructionAsync,
78
+ getUpdateProtocolInstructionAsync,
79
+ getUpdateVaultConfigInstructionAsync,
80
+ getUpdateVaultProtocolFeeInstructionAsync,
81
+ getWithdrawStrategyInstructionAsync,
82
+ getWithdrawVaultInstructionAsync,
83
+ parseAcceptProtocolAdminInstruction,
84
+ parseAcceptVaultAdminInstruction,
85
+ parseAddAdaptorInstruction,
86
+ parseCalibrateHighWaterMarkInstruction,
87
+ parseCalibrateHighWaterMarkUnsafeInstruction,
88
+ parseCancelRequestWithdrawVaultInstruction,
89
+ parseCloseStrategyInstruction,
90
+ parseCreateLpMetadataInstruction,
91
+ parseDepositStrategyInstruction,
92
+ parseDepositVaultInstruction,
93
+ parseDirectWithdrawStrategyInstruction,
94
+ parseDirectWithdrawStrategyWithToleranceInstruction,
95
+ parseHarvestFeeInstruction,
96
+ parseInitializeDirectWithdrawStrategyInstruction,
97
+ parseInitializeStrategyInstruction,
98
+ parseInitializeVaultInstruction,
99
+ parseInitProtocolInstruction,
100
+ parseInstantWithdrawStrategyInstruction,
101
+ parseInstantWithdrawStrategyWithToleranceInstruction,
102
+ parseInstantWithdrawVaultInstruction,
103
+ parseRemoveAdaptorInstruction,
104
+ parseRequestWithdrawVaultInstruction,
105
+ parseUpdateProtocolInstruction,
106
+ parseUpdateVaultConfigInstruction,
107
+ parseUpdateVaultProtocolFeeInstruction,
108
+ parseWithdrawStrategyInstruction,
109
+ parseWithdrawVaultInstruction,
110
+ type AcceptProtocolAdminAsyncInput,
111
+ type AcceptVaultAdminInput,
112
+ type AddAdaptorAsyncInput,
113
+ type CalibrateHighWaterMarkAsyncInput,
114
+ type CalibrateHighWaterMarkUnsafeAsyncInput,
115
+ type CancelRequestWithdrawVaultAsyncInput,
116
+ type CloseStrategyAsyncInput,
117
+ type CreateLpMetadataAsyncInput,
118
+ type DepositStrategyAsyncInput,
119
+ type DepositVaultAsyncInput,
120
+ type DirectWithdrawStrategyAsyncInput,
121
+ type DirectWithdrawStrategyWithToleranceAsyncInput,
122
+ type HarvestFeeAsyncInput,
123
+ type InitializeDirectWithdrawStrategyAsyncInput,
124
+ type InitializeStrategyAsyncInput,
125
+ type InitializeVaultAsyncInput,
126
+ type InitProtocolAsyncInput,
127
+ type InstantWithdrawStrategyAsyncInput,
128
+ type InstantWithdrawStrategyWithToleranceAsyncInput,
129
+ type InstantWithdrawVaultAsyncInput,
130
+ type ParsedAcceptProtocolAdminInstruction,
131
+ type ParsedAcceptVaultAdminInstruction,
132
+ type ParsedAddAdaptorInstruction,
133
+ type ParsedCalibrateHighWaterMarkInstruction,
134
+ type ParsedCalibrateHighWaterMarkUnsafeInstruction,
135
+ type ParsedCancelRequestWithdrawVaultInstruction,
136
+ type ParsedCloseStrategyInstruction,
137
+ type ParsedCreateLpMetadataInstruction,
138
+ type ParsedDepositStrategyInstruction,
139
+ type ParsedDepositVaultInstruction,
140
+ type ParsedDirectWithdrawStrategyInstruction,
141
+ type ParsedDirectWithdrawStrategyWithToleranceInstruction,
142
+ type ParsedHarvestFeeInstruction,
143
+ type ParsedInitializeDirectWithdrawStrategyInstruction,
144
+ type ParsedInitializeStrategyInstruction,
145
+ type ParsedInitializeVaultInstruction,
146
+ type ParsedInitProtocolInstruction,
147
+ type ParsedInstantWithdrawStrategyInstruction,
148
+ type ParsedInstantWithdrawStrategyWithToleranceInstruction,
149
+ type ParsedInstantWithdrawVaultInstruction,
150
+ type ParsedRemoveAdaptorInstruction,
151
+ type ParsedRequestWithdrawVaultInstruction,
152
+ type ParsedUpdateProtocolInstruction,
153
+ type ParsedUpdateVaultConfigInstruction,
154
+ type ParsedUpdateVaultProtocolFeeInstruction,
155
+ type ParsedWithdrawStrategyInstruction,
156
+ type ParsedWithdrawVaultInstruction,
157
+ type RemoveAdaptorAsyncInput,
158
+ type RequestWithdrawVaultAsyncInput,
159
+ type UpdateProtocolAsyncInput,
160
+ type UpdateVaultConfigAsyncInput,
161
+ type UpdateVaultProtocolFeeAsyncInput,
162
+ type WithdrawStrategyAsyncInput,
163
+ type WithdrawVaultAsyncInput,
164
+ } from "../instructions";
165
+ import {
166
+ findAdaptorAddReceiptPda,
167
+ findDirectWithdrawInitReceiptPda,
168
+ findProtocolPda,
169
+ findRequestWithdrawVaultReceiptPda,
170
+ findStrategyInitReceiptPda,
171
+ findVaultAssetIdleAuthPda,
172
+ findVaultLpMintAuthPda,
173
+ findVaultLpMintPda,
174
+ findVaultStrategyAuthPda,
175
+ } from "../pdas";
176
+
177
+ export const VOLTR_VAULT_PROGRAM_ADDRESS =
178
+ "vVoLTRjQmtFpiYoegx285Ze4gsLJ8ZxgFKVcuvmG1a8" as Address<"vVoLTRjQmtFpiYoegx285Ze4gsLJ8ZxgFKVcuvmG1a8">;
179
+
180
+ export enum VoltrVaultAccount {
181
+ AdaptorAddReceipt,
182
+ DirectWithdrawInitReceipt,
183
+ Protocol,
184
+ RequestWithdrawVaultReceipt,
185
+ StrategyInitReceipt,
186
+ Vault,
187
+ }
188
+
189
+ export function identifyVoltrVaultAccount(
190
+ account: { data: ReadonlyUint8Array } | ReadonlyUint8Array,
191
+ ): VoltrVaultAccount {
192
+ const data = "data" in account ? account.data : account;
193
+ if (
194
+ containsBytes(
195
+ data,
196
+ fixEncoderSize(getBytesEncoder(), 8).encode(
197
+ new Uint8Array([105, 99, 219, 155, 77, 241, 7, 119]),
198
+ ),
199
+ 0,
200
+ )
201
+ ) {
202
+ return VoltrVaultAccount.AdaptorAddReceipt;
203
+ }
204
+ if (
205
+ containsBytes(
206
+ data,
207
+ fixEncoderSize(getBytesEncoder(), 8).encode(
208
+ new Uint8Array([206, 77, 207, 208, 25, 244, 81, 172]),
209
+ ),
210
+ 0,
211
+ )
212
+ ) {
213
+ return VoltrVaultAccount.DirectWithdrawInitReceipt;
214
+ }
215
+ if (
216
+ containsBytes(
217
+ data,
218
+ fixEncoderSize(getBytesEncoder(), 8).encode(
219
+ new Uint8Array([45, 39, 101, 43, 115, 72, 131, 40]),
220
+ ),
221
+ 0,
222
+ )
223
+ ) {
224
+ return VoltrVaultAccount.Protocol;
225
+ }
226
+ if (
227
+ containsBytes(
228
+ data,
229
+ fixEncoderSize(getBytesEncoder(), 8).encode(
230
+ new Uint8Array([203, 81, 223, 141, 175, 108, 101, 114]),
231
+ ),
232
+ 0,
233
+ )
234
+ ) {
235
+ return VoltrVaultAccount.RequestWithdrawVaultReceipt;
236
+ }
237
+ if (
238
+ containsBytes(
239
+ data,
240
+ fixEncoderSize(getBytesEncoder(), 8).encode(
241
+ new Uint8Array([51, 8, 192, 253, 115, 78, 112, 214]),
242
+ ),
243
+ 0,
244
+ )
245
+ ) {
246
+ return VoltrVaultAccount.StrategyInitReceipt;
247
+ }
248
+ if (
249
+ containsBytes(
250
+ data,
251
+ fixEncoderSize(getBytesEncoder(), 8).encode(
252
+ new Uint8Array([211, 8, 232, 43, 2, 152, 117, 119]),
253
+ ),
254
+ 0,
255
+ )
256
+ ) {
257
+ return VoltrVaultAccount.Vault;
258
+ }
259
+ throw new SolanaError(
260
+ SOLANA_ERROR__PROGRAM_CLIENTS__FAILED_TO_IDENTIFY_ACCOUNT,
261
+ { accountData: data, programName: "voltrVault" },
262
+ );
263
+ }
264
+
265
+ export enum VoltrVaultInstruction {
266
+ AcceptProtocolAdmin,
267
+ AcceptVaultAdmin,
268
+ AddAdaptor,
269
+ CalibrateHighWaterMark,
270
+ CalibrateHighWaterMarkUnsafe,
271
+ CancelRequestWithdrawVault,
272
+ CloseStrategy,
273
+ CreateLpMetadata,
274
+ DepositStrategy,
275
+ DepositVault,
276
+ DirectWithdrawStrategy,
277
+ DirectWithdrawStrategyWithTolerance,
278
+ HarvestFee,
279
+ InitProtocol,
280
+ InitializeDirectWithdrawStrategy,
281
+ InitializeStrategy,
282
+ InitializeVault,
283
+ InstantWithdrawStrategy,
284
+ InstantWithdrawStrategyWithTolerance,
285
+ InstantWithdrawVault,
286
+ RemoveAdaptor,
287
+ RequestWithdrawVault,
288
+ UpdateProtocol,
289
+ UpdateVaultConfig,
290
+ UpdateVaultProtocolFee,
291
+ WithdrawStrategy,
292
+ WithdrawVault,
293
+ }
294
+
295
+ export function identifyVoltrVaultInstruction(
296
+ instruction: { data: ReadonlyUint8Array } | ReadonlyUint8Array,
297
+ ): VoltrVaultInstruction {
298
+ const data = "data" in instruction ? instruction.data : instruction;
299
+ if (
300
+ containsBytes(
301
+ data,
302
+ fixEncoderSize(getBytesEncoder(), 8).encode(
303
+ new Uint8Array([76, 35, 211, 183, 82, 72, 131, 36]),
304
+ ),
305
+ 0,
306
+ )
307
+ ) {
308
+ return VoltrVaultInstruction.AcceptProtocolAdmin;
309
+ }
310
+ if (
311
+ containsBytes(
312
+ data,
313
+ fixEncoderSize(getBytesEncoder(), 8).encode(
314
+ new Uint8Array([214, 137, 204, 56, 78, 214, 90, 125]),
315
+ ),
316
+ 0,
317
+ )
318
+ ) {
319
+ return VoltrVaultInstruction.AcceptVaultAdmin;
320
+ }
321
+ if (
322
+ containsBytes(
323
+ data,
324
+ fixEncoderSize(getBytesEncoder(), 8).encode(
325
+ new Uint8Array([161, 145, 203, 248, 211, 202, 203, 67]),
326
+ ),
327
+ 0,
328
+ )
329
+ ) {
330
+ return VoltrVaultInstruction.AddAdaptor;
331
+ }
332
+ if (
333
+ containsBytes(
334
+ data,
335
+ fixEncoderSize(getBytesEncoder(), 8).encode(
336
+ new Uint8Array([178, 116, 38, 9, 23, 20, 91, 154]),
337
+ ),
338
+ 0,
339
+ )
340
+ ) {
341
+ return VoltrVaultInstruction.CalibrateHighWaterMark;
342
+ }
343
+ if (
344
+ containsBytes(
345
+ data,
346
+ fixEncoderSize(getBytesEncoder(), 8).encode(
347
+ new Uint8Array([162, 16, 96, 202, 178, 8, 187, 235]),
348
+ ),
349
+ 0,
350
+ )
351
+ ) {
352
+ return VoltrVaultInstruction.CalibrateHighWaterMarkUnsafe;
353
+ }
354
+ if (
355
+ containsBytes(
356
+ data,
357
+ fixEncoderSize(getBytesEncoder(), 8).encode(
358
+ new Uint8Array([231, 54, 14, 6, 223, 124, 127, 238]),
359
+ ),
360
+ 0,
361
+ )
362
+ ) {
363
+ return VoltrVaultInstruction.CancelRequestWithdrawVault;
364
+ }
365
+ if (
366
+ containsBytes(
367
+ data,
368
+ fixEncoderSize(getBytesEncoder(), 8).encode(
369
+ new Uint8Array([56, 247, 170, 246, 89, 221, 134, 200]),
370
+ ),
371
+ 0,
372
+ )
373
+ ) {
374
+ return VoltrVaultInstruction.CloseStrategy;
375
+ }
376
+ if (
377
+ containsBytes(
378
+ data,
379
+ fixEncoderSize(getBytesEncoder(), 8).encode(
380
+ new Uint8Array([148, 193, 160, 116, 87, 25, 123, 103]),
381
+ ),
382
+ 0,
383
+ )
384
+ ) {
385
+ return VoltrVaultInstruction.CreateLpMetadata;
386
+ }
387
+ if (
388
+ containsBytes(
389
+ data,
390
+ fixEncoderSize(getBytesEncoder(), 8).encode(
391
+ new Uint8Array([246, 82, 57, 226, 131, 222, 253, 249]),
392
+ ),
393
+ 0,
394
+ )
395
+ ) {
396
+ return VoltrVaultInstruction.DepositStrategy;
397
+ }
398
+ if (
399
+ containsBytes(
400
+ data,
401
+ fixEncoderSize(getBytesEncoder(), 8).encode(
402
+ new Uint8Array([126, 224, 21, 255, 228, 53, 117, 33]),
403
+ ),
404
+ 0,
405
+ )
406
+ ) {
407
+ return VoltrVaultInstruction.DepositVault;
408
+ }
409
+ if (
410
+ containsBytes(
411
+ data,
412
+ fixEncoderSize(getBytesEncoder(), 8).encode(
413
+ new Uint8Array([119, 33, 54, 52, 194, 8, 211, 239]),
414
+ ),
415
+ 0,
416
+ )
417
+ ) {
418
+ return VoltrVaultInstruction.DirectWithdrawStrategy;
419
+ }
420
+ if (
421
+ containsBytes(
422
+ data,
423
+ fixEncoderSize(getBytesEncoder(), 8).encode(
424
+ new Uint8Array([207, 51, 234, 8, 76, 164, 10, 250]),
425
+ ),
426
+ 0,
427
+ )
428
+ ) {
429
+ return VoltrVaultInstruction.DirectWithdrawStrategyWithTolerance;
430
+ }
431
+ if (
432
+ containsBytes(
433
+ data,
434
+ fixEncoderSize(getBytesEncoder(), 8).encode(
435
+ new Uint8Array([32, 59, 42, 128, 246, 73, 255, 47]),
436
+ ),
437
+ 0,
438
+ )
439
+ ) {
440
+ return VoltrVaultInstruction.HarvestFee;
441
+ }
442
+ if (
443
+ containsBytes(
444
+ data,
445
+ fixEncoderSize(getBytesEncoder(), 8).encode(
446
+ new Uint8Array([3, 188, 141, 237, 225, 226, 232, 210]),
447
+ ),
448
+ 0,
449
+ )
450
+ ) {
451
+ return VoltrVaultInstruction.InitProtocol;
452
+ }
453
+ if (
454
+ containsBytes(
455
+ data,
456
+ fixEncoderSize(getBytesEncoder(), 8).encode(
457
+ new Uint8Array([248, 207, 228, 15, 13, 191, 43, 58]),
458
+ ),
459
+ 0,
460
+ )
461
+ ) {
462
+ return VoltrVaultInstruction.InitializeDirectWithdrawStrategy;
463
+ }
464
+ if (
465
+ containsBytes(
466
+ data,
467
+ fixEncoderSize(getBytesEncoder(), 8).encode(
468
+ new Uint8Array([208, 119, 144, 145, 178, 57, 105, 252]),
469
+ ),
470
+ 0,
471
+ )
472
+ ) {
473
+ return VoltrVaultInstruction.InitializeStrategy;
474
+ }
475
+ if (
476
+ containsBytes(
477
+ data,
478
+ fixEncoderSize(getBytesEncoder(), 8).encode(
479
+ new Uint8Array([48, 191, 163, 44, 71, 129, 63, 164]),
480
+ ),
481
+ 0,
482
+ )
483
+ ) {
484
+ return VoltrVaultInstruction.InitializeVault;
485
+ }
486
+ if (
487
+ containsBytes(
488
+ data,
489
+ fixEncoderSize(getBytesEncoder(), 8).encode(
490
+ new Uint8Array([105, 57, 166, 130, 147, 221, 250, 189]),
491
+ ),
492
+ 0,
493
+ )
494
+ ) {
495
+ return VoltrVaultInstruction.InstantWithdrawStrategy;
496
+ }
497
+ if (
498
+ containsBytes(
499
+ data,
500
+ fixEncoderSize(getBytesEncoder(), 8).encode(
501
+ new Uint8Array([91, 21, 70, 163, 84, 67, 106, 181]),
502
+ ),
503
+ 0,
504
+ )
505
+ ) {
506
+ return VoltrVaultInstruction.InstantWithdrawStrategyWithTolerance;
507
+ }
508
+ if (
509
+ containsBytes(
510
+ data,
511
+ fixEncoderSize(getBytesEncoder(), 8).encode(
512
+ new Uint8Array([221, 56, 115, 168, 128, 220, 235, 245]),
513
+ ),
514
+ 0,
515
+ )
516
+ ) {
517
+ return VoltrVaultInstruction.InstantWithdrawVault;
518
+ }
519
+ if (
520
+ containsBytes(
521
+ data,
522
+ fixEncoderSize(getBytesEncoder(), 8).encode(
523
+ new Uint8Array([161, 199, 99, 22, 25, 193, 61, 193]),
524
+ ),
525
+ 0,
526
+ )
527
+ ) {
528
+ return VoltrVaultInstruction.RemoveAdaptor;
529
+ }
530
+ if (
531
+ containsBytes(
532
+ data,
533
+ fixEncoderSize(getBytesEncoder(), 8).encode(
534
+ new Uint8Array([248, 225, 47, 22, 116, 144, 23, 143]),
535
+ ),
536
+ 0,
537
+ )
538
+ ) {
539
+ return VoltrVaultInstruction.RequestWithdrawVault;
540
+ }
541
+ if (
542
+ containsBytes(
543
+ data,
544
+ fixEncoderSize(getBytesEncoder(), 8).encode(
545
+ new Uint8Array([206, 25, 218, 114, 109, 41, 74, 173]),
546
+ ),
547
+ 0,
548
+ )
549
+ ) {
550
+ return VoltrVaultInstruction.UpdateProtocol;
551
+ }
552
+ if (
553
+ containsBytes(
554
+ data,
555
+ fixEncoderSize(getBytesEncoder(), 8).encode(
556
+ new Uint8Array([122, 3, 21, 222, 158, 255, 238, 157]),
557
+ ),
558
+ 0,
559
+ )
560
+ ) {
561
+ return VoltrVaultInstruction.UpdateVaultConfig;
562
+ }
563
+ if (
564
+ containsBytes(
565
+ data,
566
+ fixEncoderSize(getBytesEncoder(), 8).encode(
567
+ new Uint8Array([62, 83, 22, 192, 137, 86, 74, 18]),
568
+ ),
569
+ 0,
570
+ )
571
+ ) {
572
+ return VoltrVaultInstruction.UpdateVaultProtocolFee;
573
+ }
574
+ if (
575
+ containsBytes(
576
+ data,
577
+ fixEncoderSize(getBytesEncoder(), 8).encode(
578
+ new Uint8Array([31, 45, 162, 5, 193, 217, 134, 188]),
579
+ ),
580
+ 0,
581
+ )
582
+ ) {
583
+ return VoltrVaultInstruction.WithdrawStrategy;
584
+ }
585
+ if (
586
+ containsBytes(
587
+ data,
588
+ fixEncoderSize(getBytesEncoder(), 8).encode(
589
+ new Uint8Array([135, 7, 237, 120, 149, 94, 95, 7]),
590
+ ),
591
+ 0,
592
+ )
593
+ ) {
594
+ return VoltrVaultInstruction.WithdrawVault;
595
+ }
596
+ throw new SolanaError(
597
+ SOLANA_ERROR__PROGRAM_CLIENTS__FAILED_TO_IDENTIFY_INSTRUCTION,
598
+ { instructionData: data, programName: "voltrVault" },
599
+ );
600
+ }
601
+
602
+ export type ParsedVoltrVaultInstruction<
603
+ TProgram extends string = "vVoLTRjQmtFpiYoegx285Ze4gsLJ8ZxgFKVcuvmG1a8",
604
+ > =
605
+ | ({
606
+ instructionType: VoltrVaultInstruction.AcceptProtocolAdmin;
607
+ } & ParsedAcceptProtocolAdminInstruction<TProgram>)
608
+ | ({
609
+ instructionType: VoltrVaultInstruction.AcceptVaultAdmin;
610
+ } & ParsedAcceptVaultAdminInstruction<TProgram>)
611
+ | ({
612
+ instructionType: VoltrVaultInstruction.AddAdaptor;
613
+ } & ParsedAddAdaptorInstruction<TProgram>)
614
+ | ({
615
+ instructionType: VoltrVaultInstruction.CalibrateHighWaterMark;
616
+ } & ParsedCalibrateHighWaterMarkInstruction<TProgram>)
617
+ | ({
618
+ instructionType: VoltrVaultInstruction.CalibrateHighWaterMarkUnsafe;
619
+ } & ParsedCalibrateHighWaterMarkUnsafeInstruction<TProgram>)
620
+ | ({
621
+ instructionType: VoltrVaultInstruction.CancelRequestWithdrawVault;
622
+ } & ParsedCancelRequestWithdrawVaultInstruction<TProgram>)
623
+ | ({
624
+ instructionType: VoltrVaultInstruction.CloseStrategy;
625
+ } & ParsedCloseStrategyInstruction<TProgram>)
626
+ | ({
627
+ instructionType: VoltrVaultInstruction.CreateLpMetadata;
628
+ } & ParsedCreateLpMetadataInstruction<TProgram>)
629
+ | ({
630
+ instructionType: VoltrVaultInstruction.DepositStrategy;
631
+ } & ParsedDepositStrategyInstruction<TProgram>)
632
+ | ({
633
+ instructionType: VoltrVaultInstruction.DepositVault;
634
+ } & ParsedDepositVaultInstruction<TProgram>)
635
+ | ({
636
+ instructionType: VoltrVaultInstruction.DirectWithdrawStrategy;
637
+ } & ParsedDirectWithdrawStrategyInstruction<TProgram>)
638
+ | ({
639
+ instructionType: VoltrVaultInstruction.DirectWithdrawStrategyWithTolerance;
640
+ } & ParsedDirectWithdrawStrategyWithToleranceInstruction<TProgram>)
641
+ | ({
642
+ instructionType: VoltrVaultInstruction.HarvestFee;
643
+ } & ParsedHarvestFeeInstruction<TProgram>)
644
+ | ({
645
+ instructionType: VoltrVaultInstruction.InitProtocol;
646
+ } & ParsedInitProtocolInstruction<TProgram>)
647
+ | ({
648
+ instructionType: VoltrVaultInstruction.InitializeDirectWithdrawStrategy;
649
+ } & ParsedInitializeDirectWithdrawStrategyInstruction<TProgram>)
650
+ | ({
651
+ instructionType: VoltrVaultInstruction.InitializeStrategy;
652
+ } & ParsedInitializeStrategyInstruction<TProgram>)
653
+ | ({
654
+ instructionType: VoltrVaultInstruction.InitializeVault;
655
+ } & ParsedInitializeVaultInstruction<TProgram>)
656
+ | ({
657
+ instructionType: VoltrVaultInstruction.InstantWithdrawStrategy;
658
+ } & ParsedInstantWithdrawStrategyInstruction<TProgram>)
659
+ | ({
660
+ instructionType: VoltrVaultInstruction.InstantWithdrawStrategyWithTolerance;
661
+ } & ParsedInstantWithdrawStrategyWithToleranceInstruction<TProgram>)
662
+ | ({
663
+ instructionType: VoltrVaultInstruction.InstantWithdrawVault;
664
+ } & ParsedInstantWithdrawVaultInstruction<TProgram>)
665
+ | ({
666
+ instructionType: VoltrVaultInstruction.RemoveAdaptor;
667
+ } & ParsedRemoveAdaptorInstruction<TProgram>)
668
+ | ({
669
+ instructionType: VoltrVaultInstruction.RequestWithdrawVault;
670
+ } & ParsedRequestWithdrawVaultInstruction<TProgram>)
671
+ | ({
672
+ instructionType: VoltrVaultInstruction.UpdateProtocol;
673
+ } & ParsedUpdateProtocolInstruction<TProgram>)
674
+ | ({
675
+ instructionType: VoltrVaultInstruction.UpdateVaultConfig;
676
+ } & ParsedUpdateVaultConfigInstruction<TProgram>)
677
+ | ({
678
+ instructionType: VoltrVaultInstruction.UpdateVaultProtocolFee;
679
+ } & ParsedUpdateVaultProtocolFeeInstruction<TProgram>)
680
+ | ({
681
+ instructionType: VoltrVaultInstruction.WithdrawStrategy;
682
+ } & ParsedWithdrawStrategyInstruction<TProgram>)
683
+ | ({
684
+ instructionType: VoltrVaultInstruction.WithdrawVault;
685
+ } & ParsedWithdrawVaultInstruction<TProgram>);
686
+
687
+ export function parseVoltrVaultInstruction<TProgram extends string>(
688
+ instruction: Instruction<TProgram> & InstructionWithData<ReadonlyUint8Array>,
689
+ ): ParsedVoltrVaultInstruction<TProgram> {
690
+ const instructionType = identifyVoltrVaultInstruction(instruction);
691
+ switch (instructionType) {
692
+ case VoltrVaultInstruction.AcceptProtocolAdmin: {
693
+ assertIsInstructionWithAccounts(instruction);
694
+ return {
695
+ instructionType: VoltrVaultInstruction.AcceptProtocolAdmin,
696
+ ...parseAcceptProtocolAdminInstruction(instruction),
697
+ };
698
+ }
699
+ case VoltrVaultInstruction.AcceptVaultAdmin: {
700
+ assertIsInstructionWithAccounts(instruction);
701
+ return {
702
+ instructionType: VoltrVaultInstruction.AcceptVaultAdmin,
703
+ ...parseAcceptVaultAdminInstruction(instruction),
704
+ };
705
+ }
706
+ case VoltrVaultInstruction.AddAdaptor: {
707
+ assertIsInstructionWithAccounts(instruction);
708
+ return {
709
+ instructionType: VoltrVaultInstruction.AddAdaptor,
710
+ ...parseAddAdaptorInstruction(instruction),
711
+ };
712
+ }
713
+ case VoltrVaultInstruction.CalibrateHighWaterMark: {
714
+ assertIsInstructionWithAccounts(instruction);
715
+ return {
716
+ instructionType: VoltrVaultInstruction.CalibrateHighWaterMark,
717
+ ...parseCalibrateHighWaterMarkInstruction(instruction),
718
+ };
719
+ }
720
+ case VoltrVaultInstruction.CalibrateHighWaterMarkUnsafe: {
721
+ assertIsInstructionWithAccounts(instruction);
722
+ return {
723
+ instructionType: VoltrVaultInstruction.CalibrateHighWaterMarkUnsafe,
724
+ ...parseCalibrateHighWaterMarkUnsafeInstruction(instruction),
725
+ };
726
+ }
727
+ case VoltrVaultInstruction.CancelRequestWithdrawVault: {
728
+ assertIsInstructionWithAccounts(instruction);
729
+ return {
730
+ instructionType: VoltrVaultInstruction.CancelRequestWithdrawVault,
731
+ ...parseCancelRequestWithdrawVaultInstruction(instruction),
732
+ };
733
+ }
734
+ case VoltrVaultInstruction.CloseStrategy: {
735
+ assertIsInstructionWithAccounts(instruction);
736
+ return {
737
+ instructionType: VoltrVaultInstruction.CloseStrategy,
738
+ ...parseCloseStrategyInstruction(instruction),
739
+ };
740
+ }
741
+ case VoltrVaultInstruction.CreateLpMetadata: {
742
+ assertIsInstructionWithAccounts(instruction);
743
+ return {
744
+ instructionType: VoltrVaultInstruction.CreateLpMetadata,
745
+ ...parseCreateLpMetadataInstruction(instruction),
746
+ };
747
+ }
748
+ case VoltrVaultInstruction.DepositStrategy: {
749
+ assertIsInstructionWithAccounts(instruction);
750
+ return {
751
+ instructionType: VoltrVaultInstruction.DepositStrategy,
752
+ ...parseDepositStrategyInstruction(instruction),
753
+ };
754
+ }
755
+ case VoltrVaultInstruction.DepositVault: {
756
+ assertIsInstructionWithAccounts(instruction);
757
+ return {
758
+ instructionType: VoltrVaultInstruction.DepositVault,
759
+ ...parseDepositVaultInstruction(instruction),
760
+ };
761
+ }
762
+ case VoltrVaultInstruction.DirectWithdrawStrategy: {
763
+ assertIsInstructionWithAccounts(instruction);
764
+ return {
765
+ instructionType: VoltrVaultInstruction.DirectWithdrawStrategy,
766
+ ...parseDirectWithdrawStrategyInstruction(instruction),
767
+ };
768
+ }
769
+ case VoltrVaultInstruction.DirectWithdrawStrategyWithTolerance: {
770
+ assertIsInstructionWithAccounts(instruction);
771
+ return {
772
+ instructionType:
773
+ VoltrVaultInstruction.DirectWithdrawStrategyWithTolerance,
774
+ ...parseDirectWithdrawStrategyWithToleranceInstruction(instruction),
775
+ };
776
+ }
777
+ case VoltrVaultInstruction.HarvestFee: {
778
+ assertIsInstructionWithAccounts(instruction);
779
+ return {
780
+ instructionType: VoltrVaultInstruction.HarvestFee,
781
+ ...parseHarvestFeeInstruction(instruction),
782
+ };
783
+ }
784
+ case VoltrVaultInstruction.InitProtocol: {
785
+ assertIsInstructionWithAccounts(instruction);
786
+ return {
787
+ instructionType: VoltrVaultInstruction.InitProtocol,
788
+ ...parseInitProtocolInstruction(instruction),
789
+ };
790
+ }
791
+ case VoltrVaultInstruction.InitializeDirectWithdrawStrategy: {
792
+ assertIsInstructionWithAccounts(instruction);
793
+ return {
794
+ instructionType: VoltrVaultInstruction.InitializeDirectWithdrawStrategy,
795
+ ...parseInitializeDirectWithdrawStrategyInstruction(instruction),
796
+ };
797
+ }
798
+ case VoltrVaultInstruction.InitializeStrategy: {
799
+ assertIsInstructionWithAccounts(instruction);
800
+ return {
801
+ instructionType: VoltrVaultInstruction.InitializeStrategy,
802
+ ...parseInitializeStrategyInstruction(instruction),
803
+ };
804
+ }
805
+ case VoltrVaultInstruction.InitializeVault: {
806
+ assertIsInstructionWithAccounts(instruction);
807
+ return {
808
+ instructionType: VoltrVaultInstruction.InitializeVault,
809
+ ...parseInitializeVaultInstruction(instruction),
810
+ };
811
+ }
812
+ case VoltrVaultInstruction.InstantWithdrawStrategy: {
813
+ assertIsInstructionWithAccounts(instruction);
814
+ return {
815
+ instructionType: VoltrVaultInstruction.InstantWithdrawStrategy,
816
+ ...parseInstantWithdrawStrategyInstruction(instruction),
817
+ };
818
+ }
819
+ case VoltrVaultInstruction.InstantWithdrawStrategyWithTolerance: {
820
+ assertIsInstructionWithAccounts(instruction);
821
+ return {
822
+ instructionType:
823
+ VoltrVaultInstruction.InstantWithdrawStrategyWithTolerance,
824
+ ...parseInstantWithdrawStrategyWithToleranceInstruction(instruction),
825
+ };
826
+ }
827
+ case VoltrVaultInstruction.InstantWithdrawVault: {
828
+ assertIsInstructionWithAccounts(instruction);
829
+ return {
830
+ instructionType: VoltrVaultInstruction.InstantWithdrawVault,
831
+ ...parseInstantWithdrawVaultInstruction(instruction),
832
+ };
833
+ }
834
+ case VoltrVaultInstruction.RemoveAdaptor: {
835
+ assertIsInstructionWithAccounts(instruction);
836
+ return {
837
+ instructionType: VoltrVaultInstruction.RemoveAdaptor,
838
+ ...parseRemoveAdaptorInstruction(instruction),
839
+ };
840
+ }
841
+ case VoltrVaultInstruction.RequestWithdrawVault: {
842
+ assertIsInstructionWithAccounts(instruction);
843
+ return {
844
+ instructionType: VoltrVaultInstruction.RequestWithdrawVault,
845
+ ...parseRequestWithdrawVaultInstruction(instruction),
846
+ };
847
+ }
848
+ case VoltrVaultInstruction.UpdateProtocol: {
849
+ assertIsInstructionWithAccounts(instruction);
850
+ return {
851
+ instructionType: VoltrVaultInstruction.UpdateProtocol,
852
+ ...parseUpdateProtocolInstruction(instruction),
853
+ };
854
+ }
855
+ case VoltrVaultInstruction.UpdateVaultConfig: {
856
+ assertIsInstructionWithAccounts(instruction);
857
+ return {
858
+ instructionType: VoltrVaultInstruction.UpdateVaultConfig,
859
+ ...parseUpdateVaultConfigInstruction(instruction),
860
+ };
861
+ }
862
+ case VoltrVaultInstruction.UpdateVaultProtocolFee: {
863
+ assertIsInstructionWithAccounts(instruction);
864
+ return {
865
+ instructionType: VoltrVaultInstruction.UpdateVaultProtocolFee,
866
+ ...parseUpdateVaultProtocolFeeInstruction(instruction),
867
+ };
868
+ }
869
+ case VoltrVaultInstruction.WithdrawStrategy: {
870
+ assertIsInstructionWithAccounts(instruction);
871
+ return {
872
+ instructionType: VoltrVaultInstruction.WithdrawStrategy,
873
+ ...parseWithdrawStrategyInstruction(instruction),
874
+ };
875
+ }
876
+ case VoltrVaultInstruction.WithdrawVault: {
877
+ assertIsInstructionWithAccounts(instruction);
878
+ return {
879
+ instructionType: VoltrVaultInstruction.WithdrawVault,
880
+ ...parseWithdrawVaultInstruction(instruction),
881
+ };
882
+ }
883
+ default:
884
+ throw new SolanaError(
885
+ SOLANA_ERROR__PROGRAM_CLIENTS__UNRECOGNIZED_INSTRUCTION_TYPE,
886
+ {
887
+ instructionType: instructionType as string,
888
+ programName: "voltrVault",
889
+ },
890
+ );
891
+ }
892
+ }
893
+
894
+ export type VoltrVaultPlugin = {
895
+ accounts: VoltrVaultPluginAccounts;
896
+ instructions: VoltrVaultPluginInstructions;
897
+ pdas: VoltrVaultPluginPdas;
898
+ };
899
+
900
+ export type VoltrVaultPluginAccounts = {
901
+ adaptorAddReceipt: ReturnType<typeof getAdaptorAddReceiptCodec> &
902
+ SelfFetchFunctions<AdaptorAddReceiptArgs, AdaptorAddReceipt>;
903
+ directWithdrawInitReceipt: ReturnType<
904
+ typeof getDirectWithdrawInitReceiptCodec
905
+ > &
906
+ SelfFetchFunctions<
907
+ DirectWithdrawInitReceiptArgs,
908
+ DirectWithdrawInitReceipt
909
+ >;
910
+ protocol: ReturnType<typeof getProtocolCodec> &
911
+ SelfFetchFunctions<ProtocolArgs, Protocol>;
912
+ requestWithdrawVaultReceipt: ReturnType<
913
+ typeof getRequestWithdrawVaultReceiptCodec
914
+ > &
915
+ SelfFetchFunctions<
916
+ RequestWithdrawVaultReceiptArgs,
917
+ RequestWithdrawVaultReceipt
918
+ >;
919
+ strategyInitReceipt: ReturnType<typeof getStrategyInitReceiptCodec> &
920
+ SelfFetchFunctions<StrategyInitReceiptArgs, StrategyInitReceipt>;
921
+ vault: ReturnType<typeof getVaultCodec> &
922
+ SelfFetchFunctions<VaultArgs, Vault>;
923
+ };
924
+
925
+ export type VoltrVaultPluginInstructions = {
926
+ acceptProtocolAdmin: (
927
+ input: AcceptProtocolAdminAsyncInput,
928
+ ) => ReturnType<typeof getAcceptProtocolAdminInstructionAsync> &
929
+ SelfPlanAndSendFunctions;
930
+ acceptVaultAdmin: (
931
+ input: AcceptVaultAdminInput,
932
+ ) => ReturnType<typeof getAcceptVaultAdminInstruction> &
933
+ SelfPlanAndSendFunctions;
934
+ addAdaptor: (
935
+ input: MakeOptional<AddAdaptorAsyncInput, "payer">,
936
+ ) => ReturnType<typeof getAddAdaptorInstructionAsync> &
937
+ SelfPlanAndSendFunctions;
938
+ calibrateHighWaterMark: (
939
+ input: CalibrateHighWaterMarkAsyncInput,
940
+ ) => ReturnType<typeof getCalibrateHighWaterMarkInstructionAsync> &
941
+ SelfPlanAndSendFunctions;
942
+ calibrateHighWaterMarkUnsafe: (
943
+ input: CalibrateHighWaterMarkUnsafeAsyncInput,
944
+ ) => ReturnType<typeof getCalibrateHighWaterMarkUnsafeInstructionAsync> &
945
+ SelfPlanAndSendFunctions;
946
+ cancelRequestWithdrawVault: (
947
+ input: CancelRequestWithdrawVaultAsyncInput,
948
+ ) => ReturnType<typeof getCancelRequestWithdrawVaultInstructionAsync> &
949
+ SelfPlanAndSendFunctions;
950
+ closeStrategy: (
951
+ input: MakeOptional<CloseStrategyAsyncInput, "payer">,
952
+ ) => ReturnType<typeof getCloseStrategyInstructionAsync> &
953
+ SelfPlanAndSendFunctions;
954
+ createLpMetadata: (
955
+ input: MakeOptional<CreateLpMetadataAsyncInput, "payer">,
956
+ ) => ReturnType<typeof getCreateLpMetadataInstructionAsync> &
957
+ SelfPlanAndSendFunctions;
958
+ depositStrategy: (
959
+ input: DepositStrategyAsyncInput,
960
+ ) => ReturnType<typeof getDepositStrategyInstructionAsync> &
961
+ SelfPlanAndSendFunctions;
962
+ depositVault: (
963
+ input: DepositVaultAsyncInput,
964
+ ) => ReturnType<typeof getDepositVaultInstructionAsync> &
965
+ SelfPlanAndSendFunctions;
966
+ directWithdrawStrategy: (
967
+ input: DirectWithdrawStrategyAsyncInput,
968
+ ) => ReturnType<typeof getDirectWithdrawStrategyInstructionAsync> &
969
+ SelfPlanAndSendFunctions;
970
+ directWithdrawStrategyWithTolerance: (
971
+ input: DirectWithdrawStrategyWithToleranceAsyncInput,
972
+ ) => ReturnType<
973
+ typeof getDirectWithdrawStrategyWithToleranceInstructionAsync
974
+ > &
975
+ SelfPlanAndSendFunctions;
976
+ harvestFee: (
977
+ input: HarvestFeeAsyncInput,
978
+ ) => ReturnType<typeof getHarvestFeeInstructionAsync> &
979
+ SelfPlanAndSendFunctions;
980
+ initProtocol: (
981
+ input: MakeOptional<InitProtocolAsyncInput, "payer">,
982
+ ) => ReturnType<typeof getInitProtocolInstructionAsync> &
983
+ SelfPlanAndSendFunctions;
984
+ initializeDirectWithdrawStrategy: (
985
+ input: MakeOptional<InitializeDirectWithdrawStrategyAsyncInput, "payer">,
986
+ ) => ReturnType<typeof getInitializeDirectWithdrawStrategyInstructionAsync> &
987
+ SelfPlanAndSendFunctions;
988
+ initializeStrategy: (
989
+ input: MakeOptional<InitializeStrategyAsyncInput, "payer">,
990
+ ) => ReturnType<typeof getInitializeStrategyInstructionAsync> &
991
+ SelfPlanAndSendFunctions;
992
+ initializeVault: (
993
+ input: MakeOptional<InitializeVaultAsyncInput, "payer">,
994
+ ) => ReturnType<typeof getInitializeVaultInstructionAsync> &
995
+ SelfPlanAndSendFunctions;
996
+ instantWithdrawStrategy: (
997
+ input: InstantWithdrawStrategyAsyncInput,
998
+ ) => ReturnType<typeof getInstantWithdrawStrategyInstructionAsync> &
999
+ SelfPlanAndSendFunctions;
1000
+ instantWithdrawStrategyWithTolerance: (
1001
+ input: InstantWithdrawStrategyWithToleranceAsyncInput,
1002
+ ) => ReturnType<
1003
+ typeof getInstantWithdrawStrategyWithToleranceInstructionAsync
1004
+ > &
1005
+ SelfPlanAndSendFunctions;
1006
+ instantWithdrawVault: (
1007
+ input: InstantWithdrawVaultAsyncInput,
1008
+ ) => ReturnType<typeof getInstantWithdrawVaultInstructionAsync> &
1009
+ SelfPlanAndSendFunctions;
1010
+ removeAdaptor: (
1011
+ input: RemoveAdaptorAsyncInput,
1012
+ ) => ReturnType<typeof getRemoveAdaptorInstructionAsync> &
1013
+ SelfPlanAndSendFunctions;
1014
+ requestWithdrawVault: (
1015
+ input: MakeOptional<RequestWithdrawVaultAsyncInput, "payer">,
1016
+ ) => ReturnType<typeof getRequestWithdrawVaultInstructionAsync> &
1017
+ SelfPlanAndSendFunctions;
1018
+ updateProtocol: (
1019
+ input: UpdateProtocolAsyncInput,
1020
+ ) => ReturnType<typeof getUpdateProtocolInstructionAsync> &
1021
+ SelfPlanAndSendFunctions;
1022
+ updateVaultConfig: (
1023
+ input: UpdateVaultConfigAsyncInput,
1024
+ ) => ReturnType<typeof getUpdateVaultConfigInstructionAsync> &
1025
+ SelfPlanAndSendFunctions;
1026
+ updateVaultProtocolFee: (
1027
+ input: UpdateVaultProtocolFeeAsyncInput,
1028
+ ) => ReturnType<typeof getUpdateVaultProtocolFeeInstructionAsync> &
1029
+ SelfPlanAndSendFunctions;
1030
+ withdrawStrategy: (
1031
+ input: WithdrawStrategyAsyncInput,
1032
+ ) => ReturnType<typeof getWithdrawStrategyInstructionAsync> &
1033
+ SelfPlanAndSendFunctions;
1034
+ withdrawVault: (
1035
+ input: WithdrawVaultAsyncInput,
1036
+ ) => ReturnType<typeof getWithdrawVaultInstructionAsync> &
1037
+ SelfPlanAndSendFunctions;
1038
+ };
1039
+
1040
+ export type VoltrVaultPluginPdas = {
1041
+ protocol: typeof findProtocolPda;
1042
+ adaptorAddReceipt: typeof findAdaptorAddReceiptPda;
1043
+ vaultLpMint: typeof findVaultLpMintPda;
1044
+ requestWithdrawVaultReceipt: typeof findRequestWithdrawVaultReceiptPda;
1045
+ strategyInitReceipt: typeof findStrategyInitReceiptPda;
1046
+ vaultLpMintAuth: typeof findVaultLpMintAuthPda;
1047
+ vaultAssetIdleAuth: typeof findVaultAssetIdleAuthPda;
1048
+ vaultStrategyAuth: typeof findVaultStrategyAuthPda;
1049
+ directWithdrawInitReceipt: typeof findDirectWithdrawInitReceiptPda;
1050
+ };
1051
+
1052
+ export type VoltrVaultPluginRequirements = ClientWithRpc<
1053
+ GetAccountInfoApi & GetMultipleAccountsApi
1054
+ > &
1055
+ ClientWithPayer &
1056
+ ClientWithTransactionPlanning &
1057
+ ClientWithTransactionSending;
1058
+
1059
+ export function voltrVaultProgram() {
1060
+ return <T extends VoltrVaultPluginRequirements>(client: T) => {
1061
+ return {
1062
+ ...client,
1063
+ voltrVault: <VoltrVaultPlugin>{
1064
+ accounts: {
1065
+ adaptorAddReceipt: addSelfFetchFunctions(
1066
+ client,
1067
+ getAdaptorAddReceiptCodec(),
1068
+ ),
1069
+ directWithdrawInitReceipt: addSelfFetchFunctions(
1070
+ client,
1071
+ getDirectWithdrawInitReceiptCodec(),
1072
+ ),
1073
+ protocol: addSelfFetchFunctions(client, getProtocolCodec()),
1074
+ requestWithdrawVaultReceipt: addSelfFetchFunctions(
1075
+ client,
1076
+ getRequestWithdrawVaultReceiptCodec(),
1077
+ ),
1078
+ strategyInitReceipt: addSelfFetchFunctions(
1079
+ client,
1080
+ getStrategyInitReceiptCodec(),
1081
+ ),
1082
+ vault: addSelfFetchFunctions(client, getVaultCodec()),
1083
+ },
1084
+ instructions: {
1085
+ acceptProtocolAdmin: (input) =>
1086
+ addSelfPlanAndSendFunctions(
1087
+ client,
1088
+ getAcceptProtocolAdminInstructionAsync(input),
1089
+ ),
1090
+ acceptVaultAdmin: (input) =>
1091
+ addSelfPlanAndSendFunctions(
1092
+ client,
1093
+ getAcceptVaultAdminInstruction(input),
1094
+ ),
1095
+ addAdaptor: (input) =>
1096
+ addSelfPlanAndSendFunctions(
1097
+ client,
1098
+ getAddAdaptorInstructionAsync({
1099
+ ...input,
1100
+ payer: input.payer ?? client.payer,
1101
+ }),
1102
+ ),
1103
+ calibrateHighWaterMark: (input) =>
1104
+ addSelfPlanAndSendFunctions(
1105
+ client,
1106
+ getCalibrateHighWaterMarkInstructionAsync(input),
1107
+ ),
1108
+ calibrateHighWaterMarkUnsafe: (input) =>
1109
+ addSelfPlanAndSendFunctions(
1110
+ client,
1111
+ getCalibrateHighWaterMarkUnsafeInstructionAsync(input),
1112
+ ),
1113
+ cancelRequestWithdrawVault: (input) =>
1114
+ addSelfPlanAndSendFunctions(
1115
+ client,
1116
+ getCancelRequestWithdrawVaultInstructionAsync(input),
1117
+ ),
1118
+ closeStrategy: (input) =>
1119
+ addSelfPlanAndSendFunctions(
1120
+ client,
1121
+ getCloseStrategyInstructionAsync({
1122
+ ...input,
1123
+ payer: input.payer ?? client.payer,
1124
+ }),
1125
+ ),
1126
+ createLpMetadata: (input) =>
1127
+ addSelfPlanAndSendFunctions(
1128
+ client,
1129
+ getCreateLpMetadataInstructionAsync({
1130
+ ...input,
1131
+ payer: input.payer ?? client.payer,
1132
+ }),
1133
+ ),
1134
+ depositStrategy: (input) =>
1135
+ addSelfPlanAndSendFunctions(
1136
+ client,
1137
+ getDepositStrategyInstructionAsync(input),
1138
+ ),
1139
+ depositVault: (input) =>
1140
+ addSelfPlanAndSendFunctions(
1141
+ client,
1142
+ getDepositVaultInstructionAsync(input),
1143
+ ),
1144
+ directWithdrawStrategy: (input) =>
1145
+ addSelfPlanAndSendFunctions(
1146
+ client,
1147
+ getDirectWithdrawStrategyInstructionAsync(input),
1148
+ ),
1149
+ directWithdrawStrategyWithTolerance: (input) =>
1150
+ addSelfPlanAndSendFunctions(
1151
+ client,
1152
+ getDirectWithdrawStrategyWithToleranceInstructionAsync(input),
1153
+ ),
1154
+ harvestFee: (input) =>
1155
+ addSelfPlanAndSendFunctions(
1156
+ client,
1157
+ getHarvestFeeInstructionAsync(input),
1158
+ ),
1159
+ initProtocol: (input) =>
1160
+ addSelfPlanAndSendFunctions(
1161
+ client,
1162
+ getInitProtocolInstructionAsync({
1163
+ ...input,
1164
+ payer: input.payer ?? client.payer,
1165
+ }),
1166
+ ),
1167
+ initializeDirectWithdrawStrategy: (input) =>
1168
+ addSelfPlanAndSendFunctions(
1169
+ client,
1170
+ getInitializeDirectWithdrawStrategyInstructionAsync({
1171
+ ...input,
1172
+ payer: input.payer ?? client.payer,
1173
+ }),
1174
+ ),
1175
+ initializeStrategy: (input) =>
1176
+ addSelfPlanAndSendFunctions(
1177
+ client,
1178
+ getInitializeStrategyInstructionAsync({
1179
+ ...input,
1180
+ payer: input.payer ?? client.payer,
1181
+ }),
1182
+ ),
1183
+ initializeVault: (input) =>
1184
+ addSelfPlanAndSendFunctions(
1185
+ client,
1186
+ getInitializeVaultInstructionAsync({
1187
+ ...input,
1188
+ payer: input.payer ?? client.payer,
1189
+ }),
1190
+ ),
1191
+ instantWithdrawStrategy: (input) =>
1192
+ addSelfPlanAndSendFunctions(
1193
+ client,
1194
+ getInstantWithdrawStrategyInstructionAsync(input),
1195
+ ),
1196
+ instantWithdrawStrategyWithTolerance: (input) =>
1197
+ addSelfPlanAndSendFunctions(
1198
+ client,
1199
+ getInstantWithdrawStrategyWithToleranceInstructionAsync(input),
1200
+ ),
1201
+ instantWithdrawVault: (input) =>
1202
+ addSelfPlanAndSendFunctions(
1203
+ client,
1204
+ getInstantWithdrawVaultInstructionAsync(input),
1205
+ ),
1206
+ removeAdaptor: (input) =>
1207
+ addSelfPlanAndSendFunctions(
1208
+ client,
1209
+ getRemoveAdaptorInstructionAsync(input),
1210
+ ),
1211
+ requestWithdrawVault: (input) =>
1212
+ addSelfPlanAndSendFunctions(
1213
+ client,
1214
+ getRequestWithdrawVaultInstructionAsync({
1215
+ ...input,
1216
+ payer: input.payer ?? client.payer,
1217
+ }),
1218
+ ),
1219
+ updateProtocol: (input) =>
1220
+ addSelfPlanAndSendFunctions(
1221
+ client,
1222
+ getUpdateProtocolInstructionAsync(input),
1223
+ ),
1224
+ updateVaultConfig: (input) =>
1225
+ addSelfPlanAndSendFunctions(
1226
+ client,
1227
+ getUpdateVaultConfigInstructionAsync(input),
1228
+ ),
1229
+ updateVaultProtocolFee: (input) =>
1230
+ addSelfPlanAndSendFunctions(
1231
+ client,
1232
+ getUpdateVaultProtocolFeeInstructionAsync(input),
1233
+ ),
1234
+ withdrawStrategy: (input) =>
1235
+ addSelfPlanAndSendFunctions(
1236
+ client,
1237
+ getWithdrawStrategyInstructionAsync(input),
1238
+ ),
1239
+ withdrawVault: (input) =>
1240
+ addSelfPlanAndSendFunctions(
1241
+ client,
1242
+ getWithdrawVaultInstructionAsync(input),
1243
+ ),
1244
+ },
1245
+ pdas: {
1246
+ protocol: findProtocolPda,
1247
+ adaptorAddReceipt: findAdaptorAddReceiptPda,
1248
+ vaultLpMint: findVaultLpMintPda,
1249
+ requestWithdrawVaultReceipt: findRequestWithdrawVaultReceiptPda,
1250
+ strategyInitReceipt: findStrategyInitReceiptPda,
1251
+ vaultLpMintAuth: findVaultLpMintAuthPda,
1252
+ vaultAssetIdleAuth: findVaultAssetIdleAuthPda,
1253
+ vaultStrategyAuth: findVaultStrategyAuthPda,
1254
+ directWithdrawInitReceipt: findDirectWithdrawInitReceiptPda,
1255
+ },
1256
+ },
1257
+ };
1258
+ };
1259
+ }
1260
+
1261
+ type MakeOptional<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;