@kamino-finance/klend-sdk 7.1.2 → 7.1.4-beta.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 (255) hide show
  1. package/dist/@codegen/klend/accounts/LendingMarket.d.ts +144 -3
  2. package/dist/@codegen/klend/accounts/LendingMarket.d.ts.map +1 -1
  3. package/dist/@codegen/klend/accounts/LendingMarket.js +105 -3
  4. package/dist/@codegen/klend/accounts/LendingMarket.js.map +1 -1
  5. package/dist/@codegen/klend/accounts/Obligation.d.ts +30 -15
  6. package/dist/@codegen/klend/accounts/Obligation.d.ts.map +1 -1
  7. package/dist/@codegen/klend/accounts/Obligation.js +31 -21
  8. package/dist/@codegen/klend/accounts/Obligation.js.map +1 -1
  9. package/dist/@codegen/klend/accounts/PoolState.d.ts +53 -0
  10. package/dist/@codegen/klend/accounts/PoolState.d.ts.map +1 -0
  11. package/dist/@codegen/klend/accounts/PoolState.js +167 -0
  12. package/dist/@codegen/klend/accounts/PoolState.js.map +1 -0
  13. package/dist/@codegen/klend/accounts/Reserve.d.ts +6 -0
  14. package/dist/@codegen/klend/accounts/Reserve.d.ts.map +1 -1
  15. package/dist/@codegen/klend/accounts/Reserve.js +9 -2
  16. package/dist/@codegen/klend/accounts/Reserve.js.map +1 -1
  17. package/dist/@codegen/klend/accounts/UnstakeTicket.d.ts +41 -0
  18. package/dist/@codegen/klend/accounts/UnstakeTicket.d.ts.map +1 -0
  19. package/dist/@codegen/klend/accounts/UnstakeTicket.js +143 -0
  20. package/dist/@codegen/klend/accounts/UnstakeTicket.js.map +1 -0
  21. package/dist/@codegen/klend/accounts/UserState.d.ts +0 -75
  22. package/dist/@codegen/klend/accounts/UserState.d.ts.map +1 -1
  23. package/dist/@codegen/klend/accounts/UserState.js +0 -25
  24. package/dist/@codegen/klend/accounts/UserState.js.map +1 -1
  25. package/dist/@codegen/klend/accounts/WithdrawTicket.d.ts +132 -0
  26. package/dist/@codegen/klend/accounts/WithdrawTicket.d.ts.map +1 -0
  27. package/dist/@codegen/klend/accounts/WithdrawTicket.js +191 -0
  28. package/dist/@codegen/klend/accounts/WithdrawTicket.js.map +1 -0
  29. package/dist/@codegen/klend/accounts/index.d.ts +6 -0
  30. package/dist/@codegen/klend/accounts/index.d.ts.map +1 -1
  31. package/dist/@codegen/klend/accounts/index.js +7 -1
  32. package/dist/@codegen/klend/accounts/index.js.map +1 -1
  33. package/dist/@codegen/klend/errors/custom.d.ts +226 -2
  34. package/dist/@codegen/klend/errors/custom.d.ts.map +1 -1
  35. package/dist/@codegen/klend/errors/custom.js +396 -3
  36. package/dist/@codegen/klend/errors/custom.js.map +1 -1
  37. package/dist/@codegen/klend/instructions/enqueueToWithdraw.d.ts +39 -0
  38. package/dist/@codegen/klend/instructions/enqueueToWithdraw.d.ts.map +1 -0
  39. package/dist/@codegen/klend/instructions/enqueueToWithdraw.js +67 -0
  40. package/dist/@codegen/klend/instructions/enqueueToWithdraw.js.map +1 -0
  41. package/dist/@codegen/klend/instructions/fillBorrowOrder.d.ts +36 -0
  42. package/dist/@codegen/klend/instructions/fillBorrowOrder.d.ts.map +1 -0
  43. package/dist/@codegen/klend/instructions/fillBorrowOrder.js +49 -0
  44. package/dist/@codegen/klend/instructions/fillBorrowOrder.js.map +1 -0
  45. package/dist/@codegen/klend/instructions/idlMissingTypes.d.ts +1 -2
  46. package/dist/@codegen/klend/instructions/idlMissingTypes.d.ts.map +1 -1
  47. package/dist/@codegen/klend/instructions/idlMissingTypes.js +6 -2
  48. package/dist/@codegen/klend/instructions/idlMissingTypes.js.map +1 -1
  49. package/dist/@codegen/klend/instructions/index.d.ts +16 -0
  50. package/dist/@codegen/klend/instructions/index.d.ts.map +1 -1
  51. package/dist/@codegen/klend/instructions/index.js +18 -1
  52. package/dist/@codegen/klend/instructions/index.js.map +1 -1
  53. package/dist/@codegen/klend/instructions/initReserve.d.ts +1 -1
  54. package/dist/@codegen/klend/instructions/initReserve.d.ts.map +1 -1
  55. package/dist/@codegen/klend/instructions/initReserve.js +1 -5
  56. package/dist/@codegen/klend/instructions/initReserve.js.map +1 -1
  57. package/dist/@codegen/klend/instructions/liquidateObligationAndRedeemReserveCollateral.js +1 -1
  58. package/dist/@codegen/klend/instructions/recoverInvalidTicketCollateral.d.ts +47 -0
  59. package/dist/@codegen/klend/instructions/recoverInvalidTicketCollateral.d.ts.map +1 -0
  60. package/dist/@codegen/klend/instructions/recoverInvalidTicketCollateral.js +66 -0
  61. package/dist/@codegen/klend/instructions/recoverInvalidTicketCollateral.js.map +1 -0
  62. package/dist/@codegen/klend/instructions/setBorrowOrder.d.ts +31 -0
  63. package/dist/@codegen/klend/instructions/setBorrowOrder.d.ts.map +1 -0
  64. package/dist/@codegen/klend/instructions/setBorrowOrder.js +64 -0
  65. package/dist/@codegen/klend/instructions/setBorrowOrder.js.map +1 -0
  66. package/dist/@codegen/klend/instructions/unstakeLstCollateralEnd.d.ts +53 -0
  67. package/dist/@codegen/klend/instructions/unstakeLstCollateralEnd.d.ts.map +1 -0
  68. package/dist/@codegen/klend/instructions/unstakeLstCollateralEnd.js +190 -0
  69. package/dist/@codegen/klend/instructions/unstakeLstCollateralEnd.js.map +1 -0
  70. package/dist/@codegen/klend/instructions/unstakeLstCollateralStart.d.ts +70 -0
  71. package/dist/@codegen/klend/instructions/unstakeLstCollateralStart.d.ts.map +1 -0
  72. package/dist/@codegen/klend/instructions/unstakeLstCollateralStart.js +261 -0
  73. package/dist/@codegen/klend/instructions/unstakeLstCollateralStart.js.map +1 -0
  74. package/dist/@codegen/klend/instructions/updateGlobalConfig.d.ts +1 -1
  75. package/dist/@codegen/klend/instructions/updateGlobalConfig.d.ts.map +1 -1
  76. package/dist/@codegen/klend/instructions/updateGlobalConfig.js +1 -0
  77. package/dist/@codegen/klend/instructions/updateGlobalConfig.js.map +1 -1
  78. package/dist/@codegen/klend/instructions/updateReserveConfig.d.ts +1 -1
  79. package/dist/@codegen/klend/instructions/updateReserveConfig.d.ts.map +1 -1
  80. package/dist/@codegen/klend/instructions/updateReserveConfig.js +1 -0
  81. package/dist/@codegen/klend/instructions/updateReserveConfig.js.map +1 -1
  82. package/dist/@codegen/klend/instructions/withdrawObligationCollateral.js +1 -1
  83. package/dist/@codegen/klend/instructions/withdrawObligationCollateralV2.js +1 -1
  84. package/dist/@codegen/klend/instructions/withdrawObligationUsol.d.ts +41 -0
  85. package/dist/@codegen/klend/instructions/withdrawObligationUsol.d.ts.map +1 -0
  86. package/dist/@codegen/klend/instructions/withdrawObligationUsol.js +135 -0
  87. package/dist/@codegen/klend/instructions/withdrawObligationUsol.js.map +1 -0
  88. package/dist/@codegen/klend/instructions/withdrawQueuedLiquidity.d.ts +51 -0
  89. package/dist/@codegen/klend/instructions/withdrawQueuedLiquidity.d.ts.map +1 -0
  90. package/dist/@codegen/klend/instructions/withdrawQueuedLiquidity.js +28 -0
  91. package/dist/@codegen/klend/instructions/withdrawQueuedLiquidity.js.map +1 -0
  92. package/dist/@codegen/klend/types/BorrowOrder.d.ts +192 -0
  93. package/dist/@codegen/klend/types/BorrowOrder.d.ts.map +1 -0
  94. package/dist/@codegen/klend/types/BorrowOrder.js +194 -0
  95. package/dist/@codegen/klend/types/BorrowOrder.js.map +1 -0
  96. package/dist/@codegen/klend/types/BorrowOrderConfigArgs.d.ts +39 -0
  97. package/dist/@codegen/klend/types/BorrowOrderConfigArgs.d.ts.map +1 -0
  98. package/dist/@codegen/klend/types/BorrowOrderConfigArgs.js +100 -0
  99. package/dist/@codegen/klend/types/BorrowOrderConfigArgs.js.map +1 -0
  100. package/dist/@codegen/klend/types/ObligationLiquidity.d.ts +35 -5
  101. package/dist/@codegen/klend/types/ObligationLiquidity.d.ts.map +1 -1
  102. package/dist/@codegen/klend/types/ObligationLiquidity.js +17 -7
  103. package/dist/@codegen/klend/types/ObligationLiquidity.js.map +1 -1
  104. package/dist/@codegen/klend/types/ObligationOrder.d.ts +4 -4
  105. package/dist/@codegen/klend/types/ObligationOrder.js +2 -2
  106. package/dist/@codegen/klend/types/ReserveConfig.d.ts +141 -29
  107. package/dist/@codegen/klend/types/ReserveConfig.d.ts.map +1 -1
  108. package/dist/@codegen/klend/types/ReserveConfig.js +89 -25
  109. package/dist/@codegen/klend/types/ReserveConfig.js.map +1 -1
  110. package/dist/@codegen/klend/types/ReserveFees.d.ts +8 -8
  111. package/dist/@codegen/klend/types/ReserveFees.d.ts.map +1 -1
  112. package/dist/@codegen/klend/types/ReserveFees.js +8 -8
  113. package/dist/@codegen/klend/types/ReserveFees.js.map +1 -1
  114. package/dist/@codegen/klend/types/ReserveLiquidity.d.ts +26 -8
  115. package/dist/@codegen/klend/types/ReserveLiquidity.d.ts.map +1 -1
  116. package/dist/@codegen/klend/types/ReserveLiquidity.js +14 -8
  117. package/dist/@codegen/klend/types/ReserveLiquidity.js.map +1 -1
  118. package/dist/@codegen/klend/types/UpdateConfigMode.d.ts +92 -14
  119. package/dist/@codegen/klend/types/UpdateConfigMode.d.ts.map +1 -1
  120. package/dist/@codegen/klend/types/UpdateConfigMode.js +168 -23
  121. package/dist/@codegen/klend/types/UpdateConfigMode.js.map +1 -1
  122. package/dist/@codegen/klend/types/UpdateLendingMarketMode.d.ts +130 -0
  123. package/dist/@codegen/klend/types/UpdateLendingMarketMode.d.ts.map +1 -1
  124. package/dist/@codegen/klend/types/UpdateLendingMarketMode.js +241 -1
  125. package/dist/@codegen/klend/types/UpdateLendingMarketMode.js.map +1 -1
  126. package/dist/@codegen/klend/types/WithdrawQueue.d.ts +64 -0
  127. package/dist/@codegen/klend/types/WithdrawQueue.d.ts.map +1 -0
  128. package/dist/@codegen/klend/types/WithdrawQueue.js +104 -0
  129. package/dist/@codegen/klend/types/WithdrawQueue.js.map +1 -0
  130. package/dist/@codegen/klend/types/index.d.ts +10 -8
  131. package/dist/@codegen/klend/types/index.d.ts.map +1 -1
  132. package/dist/@codegen/klend/types/index.js +7 -3
  133. package/dist/@codegen/klend/types/index.js.map +1 -1
  134. package/dist/@codegen/klend/zero_padding/ObligationZP.d.ts +9 -4
  135. package/dist/@codegen/klend/zero_padding/ObligationZP.d.ts.map +1 -1
  136. package/dist/@codegen/klend/zero_padding/ObligationZP.js +22 -13
  137. package/dist/@codegen/klend/zero_padding/ObligationZP.js.map +1 -1
  138. package/dist/classes/action.d.ts +30 -3
  139. package/dist/classes/action.d.ts.map +1 -1
  140. package/dist/classes/action.js +364 -10
  141. package/dist/classes/action.js.map +1 -1
  142. package/dist/classes/manager.d.ts.map +1 -1
  143. package/dist/classes/manager.js +10 -0
  144. package/dist/classes/manager.js.map +1 -1
  145. package/dist/classes/market.d.ts +6 -2
  146. package/dist/classes/market.d.ts.map +1 -1
  147. package/dist/classes/market.js +26 -6
  148. package/dist/classes/market.js.map +1 -1
  149. package/dist/classes/obligation.js +1 -1
  150. package/dist/classes/obligation.js.map +1 -1
  151. package/dist/classes/reserve.d.ts.map +1 -1
  152. package/dist/classes/reserve.js +13 -7
  153. package/dist/classes/reserve.js.map +1 -1
  154. package/dist/classes/unstakingPool.d.ts +20 -3
  155. package/dist/classes/unstakingPool.d.ts.map +1 -1
  156. package/dist/classes/unstakingPool.js +62 -8
  157. package/dist/classes/unstakingPool.js.map +1 -1
  158. package/dist/idl/klend.json +2125 -232
  159. package/dist/lending_operations/index.d.ts +1 -0
  160. package/dist/lending_operations/index.d.ts.map +1 -1
  161. package/dist/lending_operations/index.js +1 -0
  162. package/dist/lending_operations/index.js.map +1 -1
  163. package/dist/lending_operations/repay_with_collateral_operations.d.ts.map +1 -1
  164. package/dist/lending_operations/repay_with_collateral_operations.js +0 -2
  165. package/dist/lending_operations/repay_with_collateral_operations.js.map +1 -1
  166. package/dist/lending_operations/swap_collateral_operations.js +0 -1
  167. package/dist/lending_operations/swap_collateral_operations.js.map +1 -1
  168. package/dist/lending_operations/unstake_lst_collateral.d.ts +12 -0
  169. package/dist/lending_operations/unstake_lst_collateral.d.ts.map +1 -0
  170. package/dist/lending_operations/unstake_lst_collateral.js +104 -0
  171. package/dist/lending_operations/unstake_lst_collateral.js.map +1 -0
  172. package/dist/leverage/calcs.d.ts +2 -27
  173. package/dist/leverage/calcs.d.ts.map +1 -1
  174. package/dist/leverage/calcs.js +6 -136
  175. package/dist/leverage/calcs.js.map +1 -1
  176. package/dist/leverage/operations.d.ts +8 -9
  177. package/dist/leverage/operations.d.ts.map +1 -1
  178. package/dist/leverage/operations.js +72 -228
  179. package/dist/leverage/operations.js.map +1 -1
  180. package/dist/leverage/types.d.ts +0 -19
  181. package/dist/leverage/types.d.ts.map +1 -1
  182. package/dist/leverage/utils.d.ts +2 -19
  183. package/dist/leverage/utils.d.ts.map +1 -1
  184. package/dist/leverage/utils.js +0 -164
  185. package/dist/leverage/utils.js.map +1 -1
  186. package/dist/manager/client_kamino_manager.js +11 -8
  187. package/dist/manager/client_kamino_manager.js.map +1 -1
  188. package/dist/utils/managerTypes.d.ts.map +1 -1
  189. package/dist/utils/managerTypes.js +9 -4
  190. package/dist/utils/managerTypes.js.map +1 -1
  191. package/dist/utils/seeds.d.ts +10 -14
  192. package/dist/utils/seeds.d.ts.map +1 -1
  193. package/dist/utils/seeds.js +25 -22
  194. package/dist/utils/seeds.js.map +1 -1
  195. package/package.json +2 -2
  196. package/src/@codegen/klend/accounts/LendingMarket.ts +210 -5
  197. package/src/@codegen/klend/accounts/Obligation.ts +53 -31
  198. package/src/@codegen/klend/accounts/PoolState.ts +192 -0
  199. package/src/@codegen/klend/accounts/Reserve.ts +13 -2
  200. package/src/@codegen/klend/accounts/UnstakeTicket.ts +160 -0
  201. package/src/@codegen/klend/accounts/UserState.ts +0 -75
  202. package/src/@codegen/klend/accounts/WithdrawTicket.ts +256 -0
  203. package/src/@codegen/klend/accounts/index.ts +6 -0
  204. package/src/@codegen/klend/errors/custom.ts +427 -2
  205. package/src/@codegen/klend/instructions/enqueueToWithdraw.ts +89 -0
  206. package/src/@codegen/klend/instructions/fillBorrowOrder.ts +96 -0
  207. package/src/@codegen/klend/instructions/idlMissingTypes.ts +7 -4
  208. package/src/@codegen/klend/instructions/index.ts +34 -0
  209. package/src/@codegen/klend/instructions/initReserve.ts +2 -6
  210. package/src/@codegen/klend/instructions/liquidateObligationAndRedeemReserveCollateral.ts +1 -1
  211. package/src/@codegen/klend/instructions/recoverInvalidTicketCollateral.ts +96 -0
  212. package/src/@codegen/klend/instructions/setBorrowOrder.ts +77 -0
  213. package/src/@codegen/klend/instructions/unstakeLstCollateralEnd.ts +251 -0
  214. package/src/@codegen/klend/instructions/unstakeLstCollateralStart.ts +353 -0
  215. package/src/@codegen/klend/instructions/updateGlobalConfig.ts +2 -1
  216. package/src/@codegen/klend/instructions/updateReserveConfig.ts +2 -1
  217. package/src/@codegen/klend/instructions/withdrawObligationCollateral.ts +1 -1
  218. package/src/@codegen/klend/instructions/withdrawObligationCollateralV2.ts +1 -1
  219. package/src/@codegen/klend/instructions/withdrawObligationUsol.ts +168 -0
  220. package/src/@codegen/klend/instructions/withdrawQueuedLiquidity.ts +92 -0
  221. package/src/@codegen/klend/types/BorrowOrder.ts +267 -0
  222. package/src/@codegen/klend/types/BorrowOrderConfigArgs.ts +87 -0
  223. package/src/@codegen/klend/types/ObligationLiquidity.ts +39 -9
  224. package/src/@codegen/klend/types/ObligationOrder.ts +4 -4
  225. package/src/@codegen/klend/types/ReserveConfig.ts +171 -39
  226. package/src/@codegen/klend/types/ReserveFees.ts +12 -12
  227. package/src/@codegen/klend/types/ReserveLiquidity.ts +30 -12
  228. package/src/@codegen/klend/types/UpdateConfigMode.ts +206 -26
  229. package/src/@codegen/klend/types/UpdateLendingMarketMode.ts +300 -0
  230. package/src/@codegen/klend/types/WithdrawQueue.ts +117 -0
  231. package/src/@codegen/klend/types/index.ts +45 -16
  232. package/src/@codegen/klend/zero_padding/ObligationZP.ts +22 -13
  233. package/src/classes/action.ts +577 -8
  234. package/src/classes/manager.ts +11 -0
  235. package/src/classes/market.ts +36 -5
  236. package/src/classes/obligation.ts +1 -1
  237. package/src/classes/reserve.ts +13 -8
  238. package/src/classes/unstakingPool.ts +83 -6
  239. package/src/idl/klend.json +2126 -233
  240. package/src/lending_operations/index.ts +1 -0
  241. package/src/lending_operations/repay_with_collateral_operations.ts +0 -2
  242. package/src/lending_operations/swap_collateral_operations.ts +0 -1
  243. package/src/lending_operations/unstake_lst_collateral.ts +174 -0
  244. package/src/leverage/calcs.ts +2 -201
  245. package/src/leverage/operations.ts +45 -377
  246. package/src/leverage/types.ts +0 -20
  247. package/src/leverage/utils.ts +3 -320
  248. package/src/manager/client_kamino_manager.ts +11 -8
  249. package/src/utils/managerTypes.ts +9 -4
  250. package/src/utils/seeds.ts +28 -26
  251. package/dist/@codegen/klend/types/AssetTier.d.ts +0 -45
  252. package/dist/@codegen/klend/types/AssetTier.d.ts.map +0 -1
  253. package/dist/@codegen/klend/types/AssetTier.js +0 -132
  254. package/dist/@codegen/klend/types/AssetTier.js.map +0 -1
  255. package/src/@codegen/klend/types/AssetTier.ts +0 -119
@@ -122,6 +122,11 @@ export type {
122
122
  DepositAndWithdrawArgs,
123
123
  DepositAndWithdrawAccounts,
124
124
  } from "./depositAndWithdraw"
125
+ export { unstakeLstCollateralStart } from "./unstakeLstCollateralStart"
126
+ export type {
127
+ UnstakeLstCollateralStartArgs,
128
+ UnstakeLstCollateralStartAccounts,
129
+ } from "./unstakeLstCollateralStart"
125
130
  export { depositReserveLiquidityAndObligationCollateral } from "./depositReserveLiquidityAndObligationCollateral"
126
131
  export type {
127
132
  DepositReserveLiquidityAndObligationCollateralArgs,
@@ -142,6 +147,11 @@ export type {
142
147
  WithdrawObligationCollateralAndRedeemReserveCollateralV2Args,
143
148
  WithdrawObligationCollateralAndRedeemReserveCollateralV2Accounts,
144
149
  } from "./withdrawObligationCollateralAndRedeemReserveCollateralV2"
150
+ export { withdrawObligationUsol } from "./withdrawObligationUsol"
151
+ export type {
152
+ WithdrawObligationUsolArgs,
153
+ WithdrawObligationUsolAccounts,
154
+ } from "./withdrawObligationUsol"
145
155
  export { liquidateObligationAndRedeemReserveCollateral } from "./liquidateObligationAndRedeemReserveCollateral"
146
156
  export type {
147
157
  LiquidateObligationAndRedeemReserveCollateralArgs,
@@ -152,6 +162,11 @@ export type {
152
162
  LiquidateObligationAndRedeemReserveCollateralV2Args,
153
163
  LiquidateObligationAndRedeemReserveCollateralV2Accounts,
154
164
  } from "./liquidateObligationAndRedeemReserveCollateralV2"
165
+ export { unstakeLstCollateralEnd } from "./unstakeLstCollateralEnd"
166
+ export type {
167
+ UnstakeLstCollateralEndArgs,
168
+ UnstakeLstCollateralEndAccounts,
169
+ } from "./unstakeLstCollateralEnd"
155
170
  export { flashRepayReserveLiquidity } from "./flashRepayReserveLiquidity"
156
171
  export type {
157
172
  FlashRepayReserveLiquidityArgs,
@@ -188,6 +203,25 @@ export type {
188
203
  SetObligationOrderArgs,
189
204
  SetObligationOrderAccounts,
190
205
  } from "./setObligationOrder"
206
+ export { setBorrowOrder } from "./setBorrowOrder"
207
+ export type {
208
+ SetBorrowOrderArgs,
209
+ SetBorrowOrderAccounts,
210
+ } from "./setBorrowOrder"
211
+ export { fillBorrowOrder } from "./fillBorrowOrder"
212
+ export type { FillBorrowOrderAccounts } from "./fillBorrowOrder"
213
+ export { enqueueToWithdraw } from "./enqueueToWithdraw"
214
+ export type {
215
+ EnqueueToWithdrawArgs,
216
+ EnqueueToWithdrawAccounts,
217
+ } from "./enqueueToWithdraw"
218
+ export { withdrawQueuedLiquidity } from "./withdrawQueuedLiquidity"
219
+ export type { WithdrawQueuedLiquidityAccounts } from "./withdrawQueuedLiquidity"
220
+ export { recoverInvalidTicketCollateral } from "./recoverInvalidTicketCollateral"
221
+ export type {
222
+ RecoverInvalidTicketCollateralArgs,
223
+ RecoverInvalidTicketCollateralAccounts,
224
+ } from "./recoverInvalidTicketCollateral"
191
225
  export { initGlobalConfig } from "./initGlobalConfig"
192
226
  export type { InitGlobalConfigAccounts } from "./initGlobalConfig"
193
227
  export { updateGlobalConfig } from "./updateGlobalConfig"
@@ -18,7 +18,7 @@ import { PROGRAM_ID } from "../programId"
18
18
  export const DISCRIMINATOR = Buffer.from([138, 245, 71, 225, 153, 4, 3, 43])
19
19
 
20
20
  export interface InitReserveAccounts {
21
- lendingMarketOwner: TransactionSigner
21
+ signer: TransactionSigner
22
22
  lendingMarket: Address
23
23
  lendingMarketAuthority: Address
24
24
  reserve: Address
@@ -40,11 +40,7 @@ export function initReserve(
40
40
  programAddress: Address = PROGRAM_ID
41
41
  ) {
42
42
  const keys: Array<AccountMeta | AccountSignerMeta> = [
43
- {
44
- address: accounts.lendingMarketOwner.address,
45
- role: 3,
46
- signer: accounts.lendingMarketOwner,
47
- },
43
+ { address: accounts.signer.address, role: 3, signer: accounts.signer },
48
44
  { address: accounts.lendingMarket, role: 0 },
49
45
  { address: accounts.lendingMarketAuthority, role: 0 },
50
46
  { address: accounts.reserve, role: 1 },
@@ -67,7 +67,7 @@ export function liquidateObligationAndRedeemReserveCollateral(
67
67
  },
68
68
  { address: accounts.obligation, role: 1 },
69
69
  { address: accounts.lendingMarket, role: 0 },
70
- { address: accounts.lendingMarketAuthority, role: 0 },
70
+ { address: accounts.lendingMarketAuthority, role: 1 },
71
71
  { address: accounts.repayReserve, role: 1 },
72
72
  { address: accounts.repayReserveLiquidityMint, role: 0 },
73
73
  { address: accounts.repayReserveLiquiditySupply, role: 1 },
@@ -0,0 +1,96 @@
1
+ /* eslint-disable @typescript-eslint/no-unused-vars */
2
+ import {
3
+ Address,
4
+ isSome,
5
+ AccountMeta,
6
+ AccountSignerMeta,
7
+ Instruction,
8
+ Option,
9
+ TransactionSigner,
10
+ } from "@solana/kit"
11
+ /* eslint-enable @typescript-eslint/no-unused-vars */
12
+ import BN from "bn.js" // eslint-disable-line @typescript-eslint/no-unused-vars
13
+ import * as borsh from "@coral-xyz/borsh" // eslint-disable-line @typescript-eslint/no-unused-vars
14
+ import { borshAddress } from "../utils" // eslint-disable-line @typescript-eslint/no-unused-vars
15
+ import * as types from "../types" // eslint-disable-line @typescript-eslint/no-unused-vars
16
+ import { PROGRAM_ID } from "../programId"
17
+
18
+ export const DISCRIMINATOR = Buffer.from([28, 48, 176, 102, 159, 206, 210, 246])
19
+
20
+ export interface RecoverInvalidTicketCollateralArgs {
21
+ ticketSequenceNumber: BN
22
+ }
23
+
24
+ export interface RecoverInvalidTicketCollateralAccounts {
25
+ /**
26
+ * The executor of the permissionless tx (not necessarily the ticket owner).
27
+ *
28
+ * Note: `mut` is only needed for closing the [Self::withdraw_ticket].
29
+ */
30
+ payer: TransactionSigner
31
+ /** The lending market. */
32
+ lendingMarket: Address
33
+ /**
34
+ * The market's authority, needed for transferring the collateral (from
35
+ * [Self::owner_queued_collateral_vault]).
36
+ */
37
+ lendingMarketAuthority: Address
38
+ /** The reserve, needed only to validate the other accounts. */
39
+ reserve: Address
40
+ /** The collateral mint, needed to invoke the transfer. */
41
+ reserveCollateralMint: Address
42
+ /**
43
+ * The per-owner "this reserve's queued collateral" vault (from which the collateral will be
44
+ * recovered).
45
+ */
46
+ ownerQueuedCollateralVault: Address
47
+ /** The ticket's owner token account to which the ticket-locked collateral should be returned. */
48
+ userSourceCollateral: Address
49
+ /** The program of [Self::reserve_collateral_mint], needed for transfer. */
50
+ collateralTokenProgram: Address
51
+ /**
52
+ * The ticket's account, necessarily marked as [WithdrawTicket::invalid] first (by the
53
+ * `handler_withdraw_queued_liquidity`).
54
+ */
55
+ withdrawTicket: Address
56
+ /**
57
+ * The owner of the [Self::withdraw_ticket]; needed only to return the rent of the
58
+ * [WithdrawTicket] account.
59
+ */
60
+ withdrawTicketOwner: Address
61
+ }
62
+
63
+ export const layout = borsh.struct<RecoverInvalidTicketCollateralArgs>([
64
+ borsh.u64("ticketSequenceNumber"),
65
+ ])
66
+
67
+ export function recoverInvalidTicketCollateral(
68
+ args: RecoverInvalidTicketCollateralArgs,
69
+ accounts: RecoverInvalidTicketCollateralAccounts,
70
+ remainingAccounts: Array<AccountMeta | AccountSignerMeta> = [],
71
+ programAddress: Address = PROGRAM_ID
72
+ ) {
73
+ const keys: Array<AccountMeta | AccountSignerMeta> = [
74
+ { address: accounts.payer.address, role: 3, signer: accounts.payer },
75
+ { address: accounts.lendingMarket, role: 0 },
76
+ { address: accounts.lendingMarketAuthority, role: 0 },
77
+ { address: accounts.reserve, role: 0 },
78
+ { address: accounts.reserveCollateralMint, role: 0 },
79
+ { address: accounts.ownerQueuedCollateralVault, role: 1 },
80
+ { address: accounts.userSourceCollateral, role: 1 },
81
+ { address: accounts.collateralTokenProgram, role: 0 },
82
+ { address: accounts.withdrawTicket, role: 1 },
83
+ { address: accounts.withdrawTicketOwner, role: 1 },
84
+ ...remainingAccounts,
85
+ ]
86
+ const buffer = Buffer.alloc(1000)
87
+ const len = layout.encode(
88
+ {
89
+ ticketSequenceNumber: args.ticketSequenceNumber,
90
+ },
91
+ buffer
92
+ )
93
+ const data = Buffer.concat([DISCRIMINATOR, buffer]).slice(0, 8 + len)
94
+ const ix: Instruction = { accounts: keys, programAddress, data }
95
+ return ix
96
+ }
@@ -0,0 +1,77 @@
1
+ /* eslint-disable @typescript-eslint/no-unused-vars */
2
+ import {
3
+ Address,
4
+ isSome,
5
+ AccountMeta,
6
+ AccountSignerMeta,
7
+ Instruction,
8
+ Option,
9
+ TransactionSigner,
10
+ } from "@solana/kit"
11
+ /* eslint-enable @typescript-eslint/no-unused-vars */
12
+ import BN from "bn.js" // eslint-disable-line @typescript-eslint/no-unused-vars
13
+ import * as borsh from "@coral-xyz/borsh" // eslint-disable-line @typescript-eslint/no-unused-vars
14
+ import { borshAddress } from "../utils" // eslint-disable-line @typescript-eslint/no-unused-vars
15
+ import * as types from "../types" // eslint-disable-line @typescript-eslint/no-unused-vars
16
+ import { PROGRAM_ID } from "../programId"
17
+
18
+ export const DISCRIMINATOR = Buffer.from([177, 186, 45, 61, 235, 91, 68, 139])
19
+
20
+ export interface SetBorrowOrderArgs {
21
+ orderConfig: types.BorrowOrderConfigArgsFields
22
+ }
23
+
24
+ export interface SetBorrowOrderAccounts {
25
+ /** The [Self::obligation]'s owner. */
26
+ owner: TransactionSigner
27
+ /** The obligation to set the [BorrowOrder] on. */
28
+ obligation: Address
29
+ /** The [Self::obligation]'s market - needed only to validate the borrow orders' feature flag. */
30
+ lendingMarket: Address
31
+ /**
32
+ * The [BorrowOrder::filled_debt_destination] to set.
33
+ * Can be freely changed throughout the order's lifetime - of course, affects the future fills
34
+ * only.
35
+ * Ignored when cancelling the order.
36
+ */
37
+ filledDebtDestination: Address
38
+ /**
39
+ * The [BorrowOrder::debt_liquidity_mint] to set.
40
+ * Ignored when cancelling the order.
41
+ */
42
+ debtLiquidityMint: Address
43
+ eventAuthority: Address
44
+ program: Address
45
+ }
46
+
47
+ export const layout = borsh.struct<SetBorrowOrderArgs>([
48
+ types.BorrowOrderConfigArgs.layout("orderConfig"),
49
+ ])
50
+
51
+ export function setBorrowOrder(
52
+ args: SetBorrowOrderArgs,
53
+ accounts: SetBorrowOrderAccounts,
54
+ remainingAccounts: Array<AccountMeta | AccountSignerMeta> = [],
55
+ programAddress: Address = PROGRAM_ID
56
+ ) {
57
+ const keys: Array<AccountMeta | AccountSignerMeta> = [
58
+ { address: accounts.owner.address, role: 2, signer: accounts.owner },
59
+ { address: accounts.obligation, role: 1 },
60
+ { address: accounts.lendingMarket, role: 0 },
61
+ { address: accounts.filledDebtDestination, role: 0 },
62
+ { address: accounts.debtLiquidityMint, role: 0 },
63
+ { address: accounts.eventAuthority, role: 0 },
64
+ { address: accounts.program, role: 0 },
65
+ ...remainingAccounts,
66
+ ]
67
+ const buffer = Buffer.alloc(1000)
68
+ const len = layout.encode(
69
+ {
70
+ orderConfig: types.BorrowOrderConfigArgs.toEncodable(args.orderConfig),
71
+ },
72
+ buffer
73
+ )
74
+ const data = Buffer.concat([DISCRIMINATOR, buffer]).slice(0, 8 + len)
75
+ const ix: Instruction = { accounts: keys, programAddress, data }
76
+ return ix
77
+ }
@@ -0,0 +1,251 @@
1
+ /* eslint-disable @typescript-eslint/no-unused-vars */
2
+ import {
3
+ Address,
4
+ isSome,
5
+ AccountMeta,
6
+ AccountSignerMeta,
7
+ Instruction,
8
+ Option,
9
+ TransactionSigner,
10
+ } from "@solana/kit"
11
+ /* eslint-enable @typescript-eslint/no-unused-vars */
12
+ import BN from "bn.js" // eslint-disable-line @typescript-eslint/no-unused-vars
13
+ import * as borsh from "@coral-xyz/borsh" // eslint-disable-line @typescript-eslint/no-unused-vars
14
+ import { borshAddress } from "../utils" // eslint-disable-line @typescript-eslint/no-unused-vars
15
+ import * as types from "../types" // eslint-disable-line @typescript-eslint/no-unused-vars
16
+ import { PROGRAM_ID } from "../programId"
17
+
18
+ export const DISCRIMINATOR = Buffer.from([180, 9, 191, 33, 249, 52, 144, 134])
19
+
20
+ export interface UnstakeLstCollateralEndArgs {
21
+ liquidityAmount: BN
22
+ minAcceptableReceivedLiquidityAmount: BN
23
+ maxAllowedLtvOverridePercent: BN
24
+ }
25
+
26
+ export interface UnstakeLstCollateralEndAccounts {
27
+ liquidationAccounts: {
28
+ liquidationAccounts: {
29
+ liquidator: TransactionSigner
30
+ obligation: Address
31
+ lendingMarket: Address
32
+ lendingMarketAuthority: Address
33
+ repayReserve: Address
34
+ repayReserveLiquidityMint: Address
35
+ repayReserveLiquiditySupply: Address
36
+ withdrawReserve: Address
37
+ withdrawReserveLiquidityMint: Address
38
+ withdrawReserveCollateralMint: Address
39
+ withdrawReserveCollateralSupply: Address
40
+ withdrawReserveLiquiditySupply: Address
41
+ withdrawReserveLiquidityFeeReceiver: Address
42
+ userSourceLiquidity: Address
43
+ userDestinationCollateral: Address
44
+ userDestinationLiquidity: Address
45
+ collateralTokenProgram: Address
46
+ repayLiquidityTokenProgram: Address
47
+ withdrawLiquidityTokenProgram: Address
48
+ instructionSysvarAccount: Address
49
+ }
50
+ collateralFarmsAccounts: {
51
+ obligationFarmUserState: Option<Address>
52
+ reserveFarmState: Option<Address>
53
+ }
54
+ debtFarmsAccounts: {
55
+ obligationFarmUserState: Option<Address>
56
+ reserveFarmState: Option<Address>
57
+ }
58
+ farmsProgram: Address
59
+ }
60
+ extraAccounts: {
61
+ unstakeTicket: Address
62
+ emptyUnstakeTicket: Address
63
+ unstakingPoolAuthority: Address
64
+ unstakingPoolProgram: Address
65
+ systemProgram: Address
66
+ }
67
+ }
68
+
69
+ export const layout = borsh.struct<UnstakeLstCollateralEndArgs>([
70
+ borsh.u64("liquidityAmount"),
71
+ borsh.u64("minAcceptableReceivedLiquidityAmount"),
72
+ borsh.u64("maxAllowedLtvOverridePercent"),
73
+ ])
74
+
75
+ export function unstakeLstCollateralEnd(
76
+ args: UnstakeLstCollateralEndArgs,
77
+ accounts: UnstakeLstCollateralEndAccounts,
78
+ remainingAccounts: Array<AccountMeta | AccountSignerMeta> = [],
79
+ programAddress: Address = PROGRAM_ID
80
+ ) {
81
+ const keys: Array<AccountMeta | AccountSignerMeta> = [
82
+ {
83
+ address:
84
+ accounts.liquidationAccounts.liquidationAccounts.liquidator.address,
85
+ role: 2,
86
+ signer: accounts.liquidationAccounts.liquidationAccounts.liquidator,
87
+ },
88
+ {
89
+ address: accounts.liquidationAccounts.liquidationAccounts.obligation,
90
+ role: 1,
91
+ },
92
+ {
93
+ address: accounts.liquidationAccounts.liquidationAccounts.lendingMarket,
94
+ role: 0,
95
+ },
96
+ {
97
+ address:
98
+ accounts.liquidationAccounts.liquidationAccounts.lendingMarketAuthority,
99
+ role: 1,
100
+ },
101
+ {
102
+ address: accounts.liquidationAccounts.liquidationAccounts.repayReserve,
103
+ role: 1,
104
+ },
105
+ {
106
+ address:
107
+ accounts.liquidationAccounts.liquidationAccounts
108
+ .repayReserveLiquidityMint,
109
+ role: 0,
110
+ },
111
+ {
112
+ address:
113
+ accounts.liquidationAccounts.liquidationAccounts
114
+ .repayReserveLiquiditySupply,
115
+ role: 1,
116
+ },
117
+ {
118
+ address: accounts.liquidationAccounts.liquidationAccounts.withdrawReserve,
119
+ role: 1,
120
+ },
121
+ {
122
+ address:
123
+ accounts.liquidationAccounts.liquidationAccounts
124
+ .withdrawReserveLiquidityMint,
125
+ role: 0,
126
+ },
127
+ {
128
+ address:
129
+ accounts.liquidationAccounts.liquidationAccounts
130
+ .withdrawReserveCollateralMint,
131
+ role: 1,
132
+ },
133
+ {
134
+ address:
135
+ accounts.liquidationAccounts.liquidationAccounts
136
+ .withdrawReserveCollateralSupply,
137
+ role: 1,
138
+ },
139
+ {
140
+ address:
141
+ accounts.liquidationAccounts.liquidationAccounts
142
+ .withdrawReserveLiquiditySupply,
143
+ role: 1,
144
+ },
145
+ {
146
+ address:
147
+ accounts.liquidationAccounts.liquidationAccounts
148
+ .withdrawReserveLiquidityFeeReceiver,
149
+ role: 1,
150
+ },
151
+ {
152
+ address:
153
+ accounts.liquidationAccounts.liquidationAccounts.userSourceLiquidity,
154
+ role: 1,
155
+ },
156
+ {
157
+ address:
158
+ accounts.liquidationAccounts.liquidationAccounts
159
+ .userDestinationCollateral,
160
+ role: 1,
161
+ },
162
+ {
163
+ address:
164
+ accounts.liquidationAccounts.liquidationAccounts
165
+ .userDestinationLiquidity,
166
+ role: 1,
167
+ },
168
+ {
169
+ address:
170
+ accounts.liquidationAccounts.liquidationAccounts.collateralTokenProgram,
171
+ role: 0,
172
+ },
173
+ {
174
+ address:
175
+ accounts.liquidationAccounts.liquidationAccounts
176
+ .repayLiquidityTokenProgram,
177
+ role: 0,
178
+ },
179
+ {
180
+ address:
181
+ accounts.liquidationAccounts.liquidationAccounts
182
+ .withdrawLiquidityTokenProgram,
183
+ role: 0,
184
+ },
185
+ {
186
+ address:
187
+ accounts.liquidationAccounts.liquidationAccounts
188
+ .instructionSysvarAccount,
189
+ role: 0,
190
+ },
191
+ isSome(
192
+ accounts.liquidationAccounts.collateralFarmsAccounts
193
+ .obligationFarmUserState
194
+ )
195
+ ? {
196
+ address:
197
+ accounts.liquidationAccounts.collateralFarmsAccounts
198
+ .obligationFarmUserState.value,
199
+ role: 1,
200
+ }
201
+ : { address: programAddress, role: 0 },
202
+ isSome(
203
+ accounts.liquidationAccounts.collateralFarmsAccounts.reserveFarmState
204
+ )
205
+ ? {
206
+ address:
207
+ accounts.liquidationAccounts.collateralFarmsAccounts
208
+ .reserveFarmState.value,
209
+ role: 1,
210
+ }
211
+ : { address: programAddress, role: 0 },
212
+ isSome(
213
+ accounts.liquidationAccounts.debtFarmsAccounts.obligationFarmUserState
214
+ )
215
+ ? {
216
+ address:
217
+ accounts.liquidationAccounts.debtFarmsAccounts
218
+ .obligationFarmUserState.value,
219
+ role: 1,
220
+ }
221
+ : { address: programAddress, role: 0 },
222
+ isSome(accounts.liquidationAccounts.debtFarmsAccounts.reserveFarmState)
223
+ ? {
224
+ address:
225
+ accounts.liquidationAccounts.debtFarmsAccounts.reserveFarmState
226
+ .value,
227
+ role: 1,
228
+ }
229
+ : { address: programAddress, role: 0 },
230
+ { address: accounts.liquidationAccounts.farmsProgram, role: 0 },
231
+ { address: accounts.extraAccounts.unstakeTicket, role: 1 },
232
+ { address: accounts.extraAccounts.emptyUnstakeTicket, role: 1 },
233
+ { address: accounts.extraAccounts.unstakingPoolAuthority, role: 1 },
234
+ { address: accounts.extraAccounts.unstakingPoolProgram, role: 0 },
235
+ { address: accounts.extraAccounts.systemProgram, role: 0 },
236
+ ...remainingAccounts,
237
+ ]
238
+ const buffer = Buffer.alloc(1000)
239
+ const len = layout.encode(
240
+ {
241
+ liquidityAmount: args.liquidityAmount,
242
+ minAcceptableReceivedLiquidityAmount:
243
+ args.minAcceptableReceivedLiquidityAmount,
244
+ maxAllowedLtvOverridePercent: args.maxAllowedLtvOverridePercent,
245
+ },
246
+ buffer
247
+ )
248
+ const data = Buffer.concat([DISCRIMINATOR, buffer]).slice(0, 8 + len)
249
+ const ix: Instruction = { accounts: keys, programAddress, data }
250
+ return ix
251
+ }