@exponent-labs/klend-idl 0.9.24 → 0.9.26

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 (394) hide show
  1. package/build/accounts/GlobalConfig.d.ts +27 -0
  2. package/build/accounts/GlobalConfig.js +112 -0
  3. package/build/accounts/GlobalConfig.js.map +1 -0
  4. package/build/accounts/LendingMarket.d.ts +93 -9
  5. package/build/accounts/LendingMarket.js +202 -20
  6. package/build/accounts/LendingMarket.js.map +1 -1
  7. package/build/accounts/Obligation.d.ts +33 -9
  8. package/build/accounts/Obligation.js +69 -20
  9. package/build/accounts/Obligation.js.map +1 -1
  10. package/build/accounts/ReferrerState.js +7 -2
  11. package/build/accounts/ReferrerState.js.map +1 -1
  12. package/build/accounts/ReferrerTokenState.js +3 -1
  13. package/build/accounts/ReferrerTokenState.js.map +1 -1
  14. package/build/accounts/Reserve.d.ts +3 -0
  15. package/build/accounts/Reserve.js +8 -2
  16. package/build/accounts/Reserve.js.map +1 -1
  17. package/build/accounts/ShortUrl.js +7 -2
  18. package/build/accounts/ShortUrl.js.map +1 -1
  19. package/build/accounts/UserMetadata.js +3 -1
  20. package/build/accounts/UserMetadata.js.map +1 -1
  21. package/build/accounts/UserState.js +3 -1
  22. package/build/accounts/UserState.js.map +1 -1
  23. package/build/accounts/WithdrawTicket.d.ts +49 -0
  24. package/build/accounts/WithdrawTicket.js +158 -0
  25. package/build/accounts/WithdrawTicket.js.map +1 -0
  26. package/build/accounts/index.d.ts +4 -0
  27. package/build/accounts/index.js +5 -1
  28. package/build/accounts/index.js.map +1 -1
  29. package/build/errors/custom.d.ts +605 -13
  30. package/build/errors/custom.js +1063 -26
  31. package/build/errors/custom.js.map +1 -1
  32. package/build/index.d.ts +2 -3
  33. package/build/index.js +3 -7
  34. package/build/index.js.map +1 -1
  35. package/build/instructions/abortObligationOwnershipTransfer.d.ts +7 -0
  36. package/build/instructions/abortObligationOwnershipTransfer.js +21 -0
  37. package/build/instructions/abortObligationOwnershipTransfer.js.map +1 -0
  38. package/build/instructions/acceptObligationOwnership.d.ts +7 -0
  39. package/build/instructions/acceptObligationOwnership.js +21 -0
  40. package/build/instructions/acceptObligationOwnership.js.map +1 -0
  41. package/build/instructions/approveObligationOwnershipTransfer.d.ts +9 -0
  42. package/build/instructions/approveObligationOwnershipTransfer.js +23 -0
  43. package/build/instructions/approveObligationOwnershipTransfer.js.map +1 -0
  44. package/build/instructions/borrowObligationLiquidity.d.ts +1 -1
  45. package/build/instructions/borrowObligationLiquidity.js +9 -2
  46. package/build/instructions/borrowObligationLiquidity.js.map +1 -1
  47. package/build/instructions/borrowObligationLiquidityV2.js +26 -6
  48. package/build/instructions/borrowObligationLiquidityV2.js.map +1 -1
  49. package/build/instructions/calculateCtokenExchangeRate.d.ts +5 -0
  50. package/build/instructions/calculateCtokenExchangeRate.js +15 -0
  51. package/build/instructions/calculateCtokenExchangeRate.js.map +1 -0
  52. package/build/instructions/cancelWithdrawTicket.d.ts +19 -0
  53. package/build/instructions/cancelWithdrawTicket.js +87 -0
  54. package/build/instructions/cancelWithdrawTicket.js.map +1 -0
  55. package/build/instructions/cloneReserveConfig.d.ts +14 -0
  56. package/build/instructions/cloneReserveConfig.js +70 -0
  57. package/build/instructions/cloneReserveConfig.js.map +1 -0
  58. package/build/instructions/deleteReferrerStateAndShortUrl.js.map +1 -1
  59. package/build/instructions/depositAndWithdraw.d.ts +51 -0
  60. package/build/instructions/depositAndWithdraw.js +202 -0
  61. package/build/instructions/depositAndWithdraw.js.map +1 -0
  62. package/build/instructions/depositObligationCollateral.js.map +1 -1
  63. package/build/instructions/depositObligationCollateralV2.d.ts +25 -0
  64. package/build/instructions/depositObligationCollateralV2.js +109 -0
  65. package/build/instructions/depositObligationCollateralV2.js.map +1 -0
  66. package/build/instructions/depositReserveLiquidity.js +1 -1
  67. package/build/instructions/depositReserveLiquidity.js.map +1 -1
  68. package/build/instructions/depositReserveLiquidityAndObligationCollateral.d.ts +1 -1
  69. package/build/instructions/depositReserveLiquidityAndObligationCollateral.js +9 -6
  70. package/build/instructions/depositReserveLiquidityAndObligationCollateral.js.map +1 -1
  71. package/build/instructions/depositReserveLiquidityAndObligationCollateralV2.js +26 -6
  72. package/build/instructions/depositReserveLiquidityAndObligationCollateralV2.js.map +1 -1
  73. package/build/instructions/enqueueToWithdraw.d.ts +26 -0
  74. package/build/instructions/enqueueToWithdraw.js +113 -0
  75. package/build/instructions/enqueueToWithdraw.js.map +1 -0
  76. package/build/instructions/fillBorrowOrder.d.ts +25 -0
  77. package/build/instructions/fillBorrowOrder.js +82 -0
  78. package/build/instructions/fillBorrowOrder.js.map +1 -0
  79. package/build/instructions/fillBorrowOrderV2.d.ts +29 -0
  80. package/build/instructions/fillBorrowOrderV2.js +122 -0
  81. package/build/instructions/fillBorrowOrderV2.js.map +1 -0
  82. package/build/instructions/flashBorrowReserveLiquidity.d.ts +2 -2
  83. package/build/instructions/flashBorrowReserveLiquidity.js +9 -2
  84. package/build/instructions/flashBorrowReserveLiquidity.js.map +1 -1
  85. package/build/instructions/flashRepayReserveLiquidity.d.ts +2 -2
  86. package/build/instructions/flashRepayReserveLiquidity.js +13 -3
  87. package/build/instructions/flashRepayReserveLiquidity.js.map +1 -1
  88. package/build/instructions/idlMissingTypes.d.ts +3 -2
  89. package/build/instructions/idlMissingTypes.js +7 -3
  90. package/build/instructions/idlMissingTypes.js.map +1 -1
  91. package/build/instructions/index.d.ts +61 -3
  92. package/build/instructions/index.js +62 -3
  93. package/build/instructions/index.js.map +1 -1
  94. package/build/instructions/initFarmsForReserve.d.ts +1 -0
  95. package/build/instructions/initFarmsForReserve.js +6 -1
  96. package/build/instructions/initFarmsForReserve.js.map +1 -1
  97. package/build/instructions/initGlobalConfig.d.ts +10 -0
  98. package/build/instructions/initGlobalConfig.js +24 -0
  99. package/build/instructions/initGlobalConfig.js.map +1 -0
  100. package/build/instructions/initLendingMarket.d.ts +1 -0
  101. package/build/instructions/initLendingMarket.js +8 -1
  102. package/build/instructions/initLendingMarket.js.map +1 -1
  103. package/build/instructions/initObligation.js.map +1 -1
  104. package/build/instructions/initObligationFarmsForReserve.js +1 -1
  105. package/build/instructions/initObligationFarmsForReserve.js.map +1 -1
  106. package/build/instructions/initReferrerStateAndShortUrl.js.map +1 -1
  107. package/build/instructions/initReferrerTokenState.d.ts +2 -5
  108. package/build/instructions/initReferrerTokenState.js +3 -42
  109. package/build/instructions/initReferrerTokenState.js.map +1 -1
  110. package/build/instructions/initReserve.d.ts +3 -1
  111. package/build/instructions/initReserve.js +11 -1
  112. package/build/instructions/initReserve.js.map +1 -1
  113. package/build/instructions/initUserMetadata.d.ts +1 -1
  114. package/build/instructions/initUserMetadata.js +8 -5
  115. package/build/instructions/initUserMetadata.js.map +1 -1
  116. package/build/instructions/initiateObligationOwnershipTransfer.d.ts +11 -0
  117. package/build/instructions/initiateObligationOwnershipTransfer.js +61 -0
  118. package/build/instructions/initiateObligationOwnershipTransfer.js.map +1 -0
  119. package/build/instructions/liquidateObligationAndRedeemReserveCollateral.js +2 -2
  120. package/build/instructions/liquidateObligationAndRedeemReserveCollateral.js.map +1 -1
  121. package/build/instructions/liquidateObligationAndRedeemReserveCollateralV2.d.ts +42 -0
  122. package/build/instructions/liquidateObligationAndRedeemReserveCollateralV2.js +172 -0
  123. package/build/instructions/liquidateObligationAndRedeemReserveCollateralV2.js.map +1 -0
  124. package/build/instructions/markObligationForDeleveraging.d.ts +12 -0
  125. package/build/instructions/markObligationForDeleveraging.js +62 -0
  126. package/build/instructions/markObligationForDeleveraging.js.map +1 -0
  127. package/build/instructions/recoverInvalidTicketCollateral.d.ts +20 -0
  128. package/build/instructions/recoverInvalidTicketCollateral.js +89 -0
  129. package/build/instructions/recoverInvalidTicketCollateral.js.map +1 -0
  130. package/build/instructions/redeemFees.js +1 -1
  131. package/build/instructions/redeemFees.js.map +1 -1
  132. package/build/instructions/redeemReserveCollateral.js +1 -1
  133. package/build/instructions/redeemReserveCollateral.js.map +1 -1
  134. package/build/instructions/refreshObligation.js.map +1 -1
  135. package/build/instructions/refreshObligationFarmsForReserve.d.ts +8 -6
  136. package/build/instructions/refreshObligationFarmsForReserve.js +23 -7
  137. package/build/instructions/refreshObligationFarmsForReserve.js.map +1 -1
  138. package/build/instructions/refreshReserve.d.ts +4 -4
  139. package/build/instructions/refreshReserve.js +11 -12
  140. package/build/instructions/refreshReserve.js.map +1 -1
  141. package/build/instructions/refreshReservesBatch.js.map +1 -1
  142. package/build/instructions/repayAndWithdrawAndRedeem.d.ts +46 -0
  143. package/build/instructions/repayAndWithdrawAndRedeem.js +177 -0
  144. package/build/instructions/repayAndWithdrawAndRedeem.js.map +1 -0
  145. package/build/instructions/repayObligationLiquidity.js +1 -1
  146. package/build/instructions/repayObligationLiquidity.js.map +1 -1
  147. package/build/instructions/repayObligationLiquidityV2.js +31 -7
  148. package/build/instructions/repayObligationLiquidityV2.js.map +1 -1
  149. package/build/instructions/requestElevationGroup.js.map +1 -1
  150. package/build/instructions/rolloverFixedTermBorrow.d.ts +25 -0
  151. package/build/instructions/rolloverFixedTermBorrow.js +76 -0
  152. package/build/instructions/rolloverFixedTermBorrow.js.map +1 -0
  153. package/build/instructions/seedDepositOnInitReserve.d.ts +11 -0
  154. package/build/instructions/seedDepositOnInitReserve.js +37 -0
  155. package/build/instructions/seedDepositOnInitReserve.js.map +1 -0
  156. package/build/instructions/setBorrowOrder.d.ts +20 -0
  157. package/build/instructions/setBorrowOrder.js +76 -0
  158. package/build/instructions/setBorrowOrder.js.map +1 -0
  159. package/build/instructions/setBorrowOrderV2.d.ts +21 -0
  160. package/build/instructions/setBorrowOrderV2.js +78 -0
  161. package/build/instructions/setBorrowOrderV2.js.map +1 -0
  162. package/build/instructions/setObligationOrder.d.ts +13 -0
  163. package/build/instructions/setObligationOrder.js +62 -0
  164. package/build/instructions/setObligationOrder.js.map +1 -0
  165. package/build/instructions/socializeLoss.d.ts +1 -1
  166. package/build/instructions/socializeLoss.js +1 -1
  167. package/build/instructions/socializeLoss.js.map +1 -1
  168. package/build/instructions/socializeLossV2.d.ts +22 -0
  169. package/build/instructions/socializeLossV2.js +94 -0
  170. package/build/instructions/socializeLossV2.js.map +1 -0
  171. package/build/instructions/topupReserveRewards.d.ts +16 -0
  172. package/build/instructions/topupReserveRewards.js +73 -0
  173. package/build/instructions/topupReserveRewards.js.map +1 -0
  174. package/build/instructions/updateGlobalConfig.d.ts +13 -0
  175. package/build/instructions/updateGlobalConfig.js +66 -0
  176. package/build/instructions/updateGlobalConfig.js.map +1 -0
  177. package/build/instructions/updateGlobalConfigAdmin.d.ts +7 -0
  178. package/build/instructions/updateGlobalConfigAdmin.js +21 -0
  179. package/build/instructions/updateGlobalConfigAdmin.js.map +1 -0
  180. package/build/instructions/updateLendingMarket.d.ts +2 -1
  181. package/build/instructions/updateLendingMarket.js +10 -2
  182. package/build/instructions/updateLendingMarket.js.map +1 -1
  183. package/build/instructions/updateLendingMarketOwner.d.ts +1 -0
  184. package/build/instructions/updateLendingMarketOwner.js +5 -0
  185. package/build/instructions/updateLendingMarketOwner.js.map +1 -1
  186. package/build/instructions/updateObligationConfig.d.ts +15 -0
  187. package/build/instructions/updateObligationConfig.js +71 -0
  188. package/build/instructions/updateObligationConfig.js.map +1 -0
  189. package/build/instructions/updateReserveConfig.d.ts +6 -4
  190. package/build/instructions/updateReserveConfig.js +15 -4
  191. package/build/instructions/updateReserveConfig.js.map +1 -1
  192. package/build/instructions/withdrawObligationCollateral.js +1 -1
  193. package/build/instructions/withdrawObligationCollateral.js.map +1 -1
  194. package/build/instructions/withdrawObligationCollateralAndRedeemReserveCollateral.d.ts +1 -1
  195. package/build/instructions/withdrawObligationCollateralAndRedeemReserveCollateral.js +9 -6
  196. package/build/instructions/withdrawObligationCollateralAndRedeemReserveCollateral.js.map +1 -1
  197. package/build/instructions/withdrawObligationCollateralAndRedeemReserveCollateralV2.js +21 -5
  198. package/build/instructions/withdrawObligationCollateralAndRedeemReserveCollateralV2.js.map +1 -1
  199. package/build/instructions/withdrawObligationCollateralV2.d.ts +25 -0
  200. package/build/instructions/withdrawObligationCollateralV2.js +109 -0
  201. package/build/instructions/withdrawObligationCollateralV2.js.map +1 -0
  202. package/build/instructions/withdrawProtocolFee.d.ts +3 -2
  203. package/build/instructions/withdrawProtocolFee.js +6 -5
  204. package/build/instructions/withdrawProtocolFee.js.map +1 -1
  205. package/build/instructions/withdrawQueuedLiquidity.d.ts +23 -0
  206. package/build/instructions/withdrawQueuedLiquidity.js +80 -0
  207. package/build/instructions/withdrawQueuedLiquidity.js.map +1 -0
  208. package/build/instructions/withdrawReferrerFees.js +1 -1
  209. package/build/instructions/withdrawReferrerFees.js.map +1 -1
  210. package/build/kamino_lending.d.ts +5753 -2295
  211. package/build/kamino_lending.js +5 -3936
  212. package/build/kamino_lending.js.map +1 -1
  213. package/build/kamino_lending.json +1856 -645
  214. package/build/types/BigFractionBytes.d.ts +2 -1
  215. package/build/types/BigFractionBytes.js +4 -1
  216. package/build/types/BigFractionBytes.js.map +1 -1
  217. package/build/types/BorrowOrder.d.ts +83 -0
  218. package/build/types/BorrowOrder.js +164 -0
  219. package/build/types/BorrowOrder.js.map +1 -0
  220. package/build/types/BorrowOrderConfigArgs.d.ts +42 -0
  221. package/build/types/BorrowOrderConfigArgs.js +107 -0
  222. package/build/types/BorrowOrderConfigArgs.js.map +1 -0
  223. package/build/types/BorrowRateCurve.js.map +1 -1
  224. package/build/types/CurvePoint.d.ts +2 -1
  225. package/build/types/CurvePoint.js.map +1 -1
  226. package/build/types/ElevationGroup.d.ts +2 -1
  227. package/build/types/ElevationGroup.js.map +1 -1
  228. package/build/types/ExchangeRateWithDecimals.d.ts +27 -0
  229. package/build/types/ExchangeRateWithDecimals.js +82 -0
  230. package/build/types/ExchangeRateWithDecimals.js.map +1 -0
  231. package/build/types/FeeCalculation.js +4 -1
  232. package/build/types/FeeCalculation.js.map +1 -1
  233. package/build/types/FixedTermBorrowRolloverConfig.d.ts +47 -0
  234. package/build/types/FixedTermBorrowRolloverConfig.js +114 -0
  235. package/build/types/FixedTermBorrowRolloverConfig.js.map +1 -0
  236. package/build/types/InitObligationArgs.d.ts +2 -1
  237. package/build/types/InitObligationArgs.js.map +1 -1
  238. package/build/types/LastUpdate.d.ts +12 -6
  239. package/build/types/LastUpdate.js +19 -7
  240. package/build/types/LastUpdate.js.map +1 -1
  241. package/build/types/ObligationLiquidity.d.ts +29 -5
  242. package/build/types/ObligationLiquidity.js +25 -8
  243. package/build/types/ObligationLiquidity.js.map +1 -1
  244. package/build/types/ObligationOrder.d.ts +57 -0
  245. package/build/types/ObligationOrder.js +127 -0
  246. package/build/types/ObligationOrder.js.map +1 -0
  247. package/build/types/ProgressCallbackType.d.ts +31 -0
  248. package/build/types/ProgressCallbackType.js +108 -0
  249. package/build/types/ProgressCallbackType.js.map +1 -0
  250. package/build/types/ReserveConfig.d.ts +87 -32
  251. package/build/types/ReserveConfig.js +122 -44
  252. package/build/types/ReserveConfig.js.map +1 -1
  253. package/build/types/ReserveConfigCustomizationArgs.d.ts +42 -0
  254. package/build/types/ReserveConfigCustomizationArgs.js +106 -0
  255. package/build/types/ReserveConfigCustomizationArgs.js.map +1 -0
  256. package/build/types/ReserveFees.d.ts +5 -5
  257. package/build/types/ReserveFees.js +7 -7
  258. package/build/types/ReserveFees.js.map +1 -1
  259. package/build/types/ReserveLiquidity.d.ts +20 -15
  260. package/build/types/ReserveLiquidity.js +29 -22
  261. package/build/types/ReserveLiquidity.js.map +1 -1
  262. package/build/types/UpdateConfigMode.d.ts +232 -63
  263. package/build/types/UpdateConfigMode.js +413 -100
  264. package/build/types/UpdateConfigMode.js.map +1 -1
  265. package/build/types/UpdateGlobalConfigMode.d.ts +31 -0
  266. package/build/types/UpdateGlobalConfigMode.js +108 -0
  267. package/build/types/UpdateGlobalConfigMode.js.map +1 -0
  268. package/build/types/UpdateLendingMarketConfigValue.d.ts +20 -0
  269. package/build/types/UpdateLendingMarketConfigValue.js +33 -1
  270. package/build/types/UpdateLendingMarketConfigValue.js.map +1 -1
  271. package/build/types/UpdateLendingMarketMode.d.ts +400 -23
  272. package/build/types/UpdateLendingMarketMode.js +732 -36
  273. package/build/types/UpdateLendingMarketMode.js.map +1 -1
  274. package/build/types/UpdateObligationConfigMode.d.ts +83 -0
  275. package/build/types/UpdateObligationConfigMode.js +204 -0
  276. package/build/types/UpdateObligationConfigMode.js.map +1 -0
  277. package/build/types/WithdrawQueue.d.ts +32 -0
  278. package/build/types/WithdrawQueue.js +93 -0
  279. package/build/types/WithdrawQueue.js.map +1 -0
  280. package/build/types/index.d.ts +32 -10
  281. package/build/types/index.js +21 -3
  282. package/build/types/index.js.map +1 -1
  283. package/package.json +3 -2
  284. package/scripts/generate-idl-module.mjs +18 -0
  285. package/scripts/patch-optional-accounts.mjs +98 -0
  286. package/scripts/verify-idl-provenance.mjs +16 -0
  287. package/src/accounts/GlobalConfig.ts +113 -0
  288. package/src/accounts/LendingMarket.ts +300 -29
  289. package/src/accounts/Obligation.ts +111 -26
  290. package/src/accounts/ReferrerState.ts +11 -4
  291. package/src/accounts/ReferrerTokenState.ts +6 -3
  292. package/src/accounts/Reserve.ts +10 -2
  293. package/src/accounts/ShortUrl.ts +15 -4
  294. package/src/accounts/UserMetadata.ts +6 -3
  295. package/src/accounts/UserState.ts +24 -8
  296. package/src/accounts/WithdrawTicket.ts +173 -0
  297. package/src/accounts/index.ts +4 -0
  298. package/src/errors/custom.ts +1177 -24
  299. package/src/index.ts +2 -4
  300. package/src/instructions/abortObligationOwnershipTransfer.ts +30 -0
  301. package/src/instructions/acceptObligationOwnership.ts +30 -0
  302. package/src/instructions/approveObligationOwnershipTransfer.ts +34 -0
  303. package/src/instructions/borrowObligationLiquidity.ts +18 -5
  304. package/src/instructions/borrowObligationLiquidityV2.ts +30 -9
  305. package/src/instructions/calculateCtokenExchangeRate.ts +22 -0
  306. package/src/instructions/cancelWithdrawTicket.ts +77 -0
  307. package/src/instructions/cloneReserveConfig.ts +56 -0
  308. package/src/instructions/deleteReferrerStateAndShortUrl.ts +4 -1
  309. package/src/instructions/depositAndWithdraw.ts +229 -0
  310. package/src/instructions/depositObligationCollateral.ts +3 -2
  311. package/src/instructions/depositObligationCollateralV2.ts +110 -0
  312. package/src/instructions/depositReserveLiquidity.ts +4 -3
  313. package/src/instructions/depositReserveLiquidityAndObligationCollateral.ts +18 -9
  314. package/src/instructions/depositReserveLiquidityAndObligationCollateralV2.ts +31 -14
  315. package/src/instructions/enqueueToWithdraw.ts +113 -0
  316. package/src/instructions/fillBorrowOrder.ts +114 -0
  317. package/src/instructions/fillBorrowOrderV2.ts +128 -0
  318. package/src/instructions/flashBorrowReserveLiquidity.ts +19 -6
  319. package/src/instructions/flashRepayReserveLiquidity.ts +23 -7
  320. package/src/instructions/idlMissingTypes.ts +17 -9
  321. package/src/instructions/index.ts +118 -6
  322. package/src/instructions/initFarmsForReserve.ts +11 -3
  323. package/src/instructions/initGlobalConfig.ts +36 -0
  324. package/src/instructions/initLendingMarket.ts +13 -3
  325. package/src/instructions/initObligation.ts +3 -2
  326. package/src/instructions/initObligationFarmsForReserve.ts +5 -3
  327. package/src/instructions/initReferrerStateAndShortUrl.ts +4 -2
  328. package/src/instructions/initReferrerTokenState.ts +6 -16
  329. package/src/instructions/initReserve.ts +21 -3
  330. package/src/instructions/initUserMetadata.ts +18 -8
  331. package/src/instructions/initiateObligationOwnershipTransfer.ts +44 -0
  332. package/src/instructions/liquidateObligationAndRedeemReserveCollateral.ts +7 -5
  333. package/src/instructions/liquidateObligationAndRedeemReserveCollateralV2.ts +191 -0
  334. package/src/instructions/markObligationForDeleveraging.ts +46 -0
  335. package/src/instructions/recoverInvalidTicketCollateral.ts +80 -0
  336. package/src/instructions/redeemFees.ts +8 -2
  337. package/src/instructions/redeemReserveCollateral.ts +4 -3
  338. package/src/instructions/refreshObligation.ts +7 -1
  339. package/src/instructions/refreshObligationFarmsForReserve.ts +35 -15
  340. package/src/instructions/refreshReserve.ts +27 -17
  341. package/src/instructions/refreshReservesBatch.ts +7 -2
  342. package/src/instructions/repayAndWithdrawAndRedeem.ts +199 -0
  343. package/src/instructions/repayObligationLiquidity.ts +4 -3
  344. package/src/instructions/repayObligationLiquidityV2.ts +35 -10
  345. package/src/instructions/requestElevationGroup.ts +4 -2
  346. package/src/instructions/rolloverFixedTermBorrow.ts +108 -0
  347. package/src/instructions/seedDepositOnInitReserve.ts +50 -0
  348. package/src/instructions/setBorrowOrder.ts +66 -0
  349. package/src/instructions/setBorrowOrderV2.ts +69 -0
  350. package/src/instructions/setObligationOrder.ts +45 -0
  351. package/src/instructions/socializeLoss.ts +5 -4
  352. package/src/instructions/socializeLossV2.ts +92 -0
  353. package/src/instructions/topupReserveRewards.ts +60 -0
  354. package/src/instructions/updateGlobalConfig.ts +53 -0
  355. package/src/instructions/updateGlobalConfigAdmin.ts +30 -0
  356. package/src/instructions/updateLendingMarket.ts +15 -5
  357. package/src/instructions/updateLendingMarketOwner.ts +10 -1
  358. package/src/instructions/updateObligationConfig.ts +65 -0
  359. package/src/instructions/updateReserveConfig.ts +27 -10
  360. package/src/instructions/withdrawObligationCollateral.ts +4 -3
  361. package/src/instructions/withdrawObligationCollateralAndRedeemReserveCollateral.ts +18 -9
  362. package/src/instructions/withdrawObligationCollateralAndRedeemReserveCollateralV2.ts +26 -13
  363. package/src/instructions/withdrawObligationCollateralV2.ts +110 -0
  364. package/src/instructions/withdrawProtocolFee.ts +12 -9
  365. package/src/instructions/withdrawQueuedLiquidity.ts +110 -0
  366. package/src/instructions/withdrawReferrerFees.ts +8 -2
  367. package/src/kamino_lending.json +1856 -645
  368. package/src/kamino_lending.ts +5558 -6034
  369. package/src/types/BigFractionBytes.ts +9 -1
  370. package/src/types/BorrowOrder.ts +168 -0
  371. package/src/types/BorrowOrderConfigArgs.ts +96 -0
  372. package/src/types/BorrowRateCurve.ts +10 -3
  373. package/src/types/CurvePoint.ts +7 -1
  374. package/src/types/ElevationGroup.ts +2 -1
  375. package/src/types/ExchangeRateWithDecimals.ts +64 -0
  376. package/src/types/FeeCalculation.ts +9 -2
  377. package/src/types/FixedTermBorrowRolloverConfig.ts +110 -0
  378. package/src/types/InitObligationArgs.ts +3 -0
  379. package/src/types/LastUpdate.ts +26 -10
  380. package/src/types/ObligationLiquidity.ts +43 -10
  381. package/src/types/ObligationOrder.ts +121 -0
  382. package/src/types/ProgressCallbackType.ts +90 -0
  383. package/src/types/ReserveConfig.ts +169 -62
  384. package/src/types/ReserveConfigCustomizationArgs.ts +96 -0
  385. package/src/types/ReserveFees.ts +9 -9
  386. package/src/types/ReserveLiquidity.ts +38 -28
  387. package/src/types/UpdateConfigMode.ts +507 -117
  388. package/src/types/UpdateGlobalConfigMode.ts +90 -0
  389. package/src/types/UpdateLendingMarketConfigValue.ts +43 -0
  390. package/src/types/UpdateLendingMarketMode.ts +912 -41
  391. package/src/types/UpdateObligationConfigMode.ts +210 -0
  392. package/src/types/WithdrawQueue.ts +85 -0
  393. package/src/types/index.ts +175 -34
  394. package/src/types/AssetTier.ts +0 -116
@@ -6,33 +6,39 @@ import * as borsh from "@coral-xyz/borsh"
6
6
  export interface ObligationLiquidityFields {
7
7
  borrowReserve: PublicKey
8
8
  cumulativeBorrowRateBsf: types.BigFractionBytesFields
9
- padding: BN
9
+ lastBorrowedAtTimestamp: BN
10
10
  borrowedAmountSf: BN
11
11
  marketValueSf: BN
12
12
  borrowFactorAdjustedMarketValueSf: BN
13
13
  borrowedAmountOutsideElevationGroups: BN
14
+ fixedTermBorrowRolloverConfig: types.FixedTermBorrowRolloverConfigFields
15
+ borrowedAmountAtExpiration: BN
14
16
  padding2: Array<BN>
15
17
  }
16
18
 
17
19
  export interface ObligationLiquidityJSON {
18
20
  borrowReserve: string
19
21
  cumulativeBorrowRateBsf: types.BigFractionBytesJSON
20
- padding: string
22
+ lastBorrowedAtTimestamp: string
21
23
  borrowedAmountSf: string
22
24
  marketValueSf: string
23
25
  borrowFactorAdjustedMarketValueSf: string
24
26
  borrowedAmountOutsideElevationGroups: string
27
+ fixedTermBorrowRolloverConfig: types.FixedTermBorrowRolloverConfigJSON
28
+ borrowedAmountAtExpiration: string
25
29
  padding2: Array<string>
26
30
  }
27
31
 
28
32
  export class ObligationLiquidity {
29
33
  readonly borrowReserve: PublicKey
30
34
  readonly cumulativeBorrowRateBsf: types.BigFractionBytes
31
- readonly padding: BN
35
+ readonly lastBorrowedAtTimestamp: BN
32
36
  readonly borrowedAmountSf: BN
33
37
  readonly marketValueSf: BN
34
38
  readonly borrowFactorAdjustedMarketValueSf: BN
35
39
  readonly borrowedAmountOutsideElevationGroups: BN
40
+ readonly fixedTermBorrowRolloverConfig: types.FixedTermBorrowRolloverConfig
41
+ readonly borrowedAmountAtExpiration: BN
36
42
  readonly padding2: Array<BN>
37
43
 
38
44
  constructor(fields: ObligationLiquidityFields) {
@@ -40,13 +46,18 @@ export class ObligationLiquidity {
40
46
  this.cumulativeBorrowRateBsf = new types.BigFractionBytes({
41
47
  ...fields.cumulativeBorrowRateBsf,
42
48
  })
43
- this.padding = fields.padding
49
+ this.lastBorrowedAtTimestamp = fields.lastBorrowedAtTimestamp
44
50
  this.borrowedAmountSf = fields.borrowedAmountSf
45
51
  this.marketValueSf = fields.marketValueSf
46
52
  this.borrowFactorAdjustedMarketValueSf =
47
53
  fields.borrowFactorAdjustedMarketValueSf
48
54
  this.borrowedAmountOutsideElevationGroups =
49
55
  fields.borrowedAmountOutsideElevationGroups
56
+ this.fixedTermBorrowRolloverConfig =
57
+ new types.FixedTermBorrowRolloverConfig({
58
+ ...fields.fixedTermBorrowRolloverConfig,
59
+ })
60
+ this.borrowedAmountAtExpiration = fields.borrowedAmountAtExpiration
50
61
  this.padding2 = fields.padding2
51
62
  }
52
63
 
@@ -55,12 +66,16 @@ export class ObligationLiquidity {
55
66
  [
56
67
  borsh.publicKey("borrowReserve"),
57
68
  types.BigFractionBytes.layout("cumulativeBorrowRateBsf"),
58
- borsh.u64("padding"),
69
+ borsh.u64("lastBorrowedAtTimestamp"),
59
70
  borsh.u128("borrowedAmountSf"),
60
71
  borsh.u128("marketValueSf"),
61
72
  borsh.u128("borrowFactorAdjustedMarketValueSf"),
62
73
  borsh.u64("borrowedAmountOutsideElevationGroups"),
63
- borsh.array(borsh.u64(), 7, "padding2"),
74
+ types.FixedTermBorrowRolloverConfig.layout(
75
+ "fixedTermBorrowRolloverConfig"
76
+ ),
77
+ borsh.u64("borrowedAmountAtExpiration"),
78
+ borsh.array(borsh.u64(), 4, "padding2"),
64
79
  ],
65
80
  property
66
81
  )
@@ -73,12 +88,17 @@ export class ObligationLiquidity {
73
88
  cumulativeBorrowRateBsf: types.BigFractionBytes.fromDecoded(
74
89
  obj.cumulativeBorrowRateBsf
75
90
  ),
76
- padding: obj.padding,
91
+ lastBorrowedAtTimestamp: obj.lastBorrowedAtTimestamp,
77
92
  borrowedAmountSf: obj.borrowedAmountSf,
78
93
  marketValueSf: obj.marketValueSf,
79
94
  borrowFactorAdjustedMarketValueSf: obj.borrowFactorAdjustedMarketValueSf,
80
95
  borrowedAmountOutsideElevationGroups:
81
96
  obj.borrowedAmountOutsideElevationGroups,
97
+ fixedTermBorrowRolloverConfig:
98
+ types.FixedTermBorrowRolloverConfig.fromDecoded(
99
+ obj.fixedTermBorrowRolloverConfig
100
+ ),
101
+ borrowedAmountAtExpiration: obj.borrowedAmountAtExpiration,
82
102
  padding2: obj.padding2,
83
103
  })
84
104
  }
@@ -89,13 +109,18 @@ export class ObligationLiquidity {
89
109
  cumulativeBorrowRateBsf: types.BigFractionBytes.toEncodable(
90
110
  fields.cumulativeBorrowRateBsf
91
111
  ),
92
- padding: fields.padding,
112
+ lastBorrowedAtTimestamp: fields.lastBorrowedAtTimestamp,
93
113
  borrowedAmountSf: fields.borrowedAmountSf,
94
114
  marketValueSf: fields.marketValueSf,
95
115
  borrowFactorAdjustedMarketValueSf:
96
116
  fields.borrowFactorAdjustedMarketValueSf,
97
117
  borrowedAmountOutsideElevationGroups:
98
118
  fields.borrowedAmountOutsideElevationGroups,
119
+ fixedTermBorrowRolloverConfig:
120
+ types.FixedTermBorrowRolloverConfig.toEncodable(
121
+ fields.fixedTermBorrowRolloverConfig
122
+ ),
123
+ borrowedAmountAtExpiration: fields.borrowedAmountAtExpiration,
99
124
  padding2: fields.padding2,
100
125
  }
101
126
  }
@@ -104,13 +129,16 @@ export class ObligationLiquidity {
104
129
  return {
105
130
  borrowReserve: this.borrowReserve.toString(),
106
131
  cumulativeBorrowRateBsf: this.cumulativeBorrowRateBsf.toJSON(),
107
- padding: this.padding.toString(),
132
+ lastBorrowedAtTimestamp: this.lastBorrowedAtTimestamp.toString(),
108
133
  borrowedAmountSf: this.borrowedAmountSf.toString(),
109
134
  marketValueSf: this.marketValueSf.toString(),
110
135
  borrowFactorAdjustedMarketValueSf:
111
136
  this.borrowFactorAdjustedMarketValueSf.toString(),
112
137
  borrowedAmountOutsideElevationGroups:
113
138
  this.borrowedAmountOutsideElevationGroups.toString(),
139
+ fixedTermBorrowRolloverConfig:
140
+ this.fixedTermBorrowRolloverConfig.toJSON(),
141
+ borrowedAmountAtExpiration: this.borrowedAmountAtExpiration.toString(),
114
142
  padding2: this.padding2.map((item) => item.toString()),
115
143
  }
116
144
  }
@@ -121,7 +149,7 @@ export class ObligationLiquidity {
121
149
  cumulativeBorrowRateBsf: types.BigFractionBytes.fromJSON(
122
150
  obj.cumulativeBorrowRateBsf
123
151
  ),
124
- padding: new BN(obj.padding),
152
+ lastBorrowedAtTimestamp: new BN(obj.lastBorrowedAtTimestamp),
125
153
  borrowedAmountSf: new BN(obj.borrowedAmountSf),
126
154
  marketValueSf: new BN(obj.marketValueSf),
127
155
  borrowFactorAdjustedMarketValueSf: new BN(
@@ -130,6 +158,11 @@ export class ObligationLiquidity {
130
158
  borrowedAmountOutsideElevationGroups: new BN(
131
159
  obj.borrowedAmountOutsideElevationGroups
132
160
  ),
161
+ fixedTermBorrowRolloverConfig:
162
+ types.FixedTermBorrowRolloverConfig.fromJSON(
163
+ obj.fixedTermBorrowRolloverConfig
164
+ ),
165
+ borrowedAmountAtExpiration: new BN(obj.borrowedAmountAtExpiration),
133
166
  padding2: obj.padding2.map((item) => new BN(item)),
134
167
  })
135
168
  }
@@ -0,0 +1,121 @@
1
+ import { PublicKey } from "@solana/web3.js" // eslint-disable-line @typescript-eslint/no-unused-vars
2
+ import BN from "bn.js" // eslint-disable-line @typescript-eslint/no-unused-vars
3
+ import * as types from "../types" // eslint-disable-line @typescript-eslint/no-unused-vars
4
+ import * as borsh from "@coral-xyz/borsh"
5
+
6
+ export interface ObligationOrderFields {
7
+ conditionThresholdSf: BN
8
+ opportunityParameterSf: BN
9
+ minExecutionBonusBps: number
10
+ maxExecutionBonusBps: number
11
+ conditionType: number
12
+ opportunityType: number
13
+ padding1: Array<number>
14
+ padding2: Array<BN>
15
+ }
16
+
17
+ export interface ObligationOrderJSON {
18
+ conditionThresholdSf: string
19
+ opportunityParameterSf: string
20
+ minExecutionBonusBps: number
21
+ maxExecutionBonusBps: number
22
+ conditionType: number
23
+ opportunityType: number
24
+ padding1: Array<number>
25
+ padding2: Array<string>
26
+ }
27
+
28
+ export class ObligationOrder {
29
+ readonly conditionThresholdSf: BN
30
+ readonly opportunityParameterSf: BN
31
+ readonly minExecutionBonusBps: number
32
+ readonly maxExecutionBonusBps: number
33
+ readonly conditionType: number
34
+ readonly opportunityType: number
35
+ readonly padding1: Array<number>
36
+ readonly padding2: Array<BN>
37
+
38
+ constructor(fields: ObligationOrderFields) {
39
+ this.conditionThresholdSf = fields.conditionThresholdSf
40
+ this.opportunityParameterSf = fields.opportunityParameterSf
41
+ this.minExecutionBonusBps = fields.minExecutionBonusBps
42
+ this.maxExecutionBonusBps = fields.maxExecutionBonusBps
43
+ this.conditionType = fields.conditionType
44
+ this.opportunityType = fields.opportunityType
45
+ this.padding1 = fields.padding1
46
+ this.padding2 = fields.padding2
47
+ }
48
+
49
+ static layout(property?: string) {
50
+ return borsh.struct(
51
+ [
52
+ borsh.u128("conditionThresholdSf"),
53
+ borsh.u128("opportunityParameterSf"),
54
+ borsh.u16("minExecutionBonusBps"),
55
+ borsh.u16("maxExecutionBonusBps"),
56
+ borsh.u8("conditionType"),
57
+ borsh.u8("opportunityType"),
58
+ borsh.array(borsh.u8(), 10, "padding1"),
59
+ borsh.array(borsh.u128(), 5, "padding2"),
60
+ ],
61
+ property
62
+ )
63
+ }
64
+
65
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
66
+ static fromDecoded(obj: any) {
67
+ return new ObligationOrder({
68
+ conditionThresholdSf: obj.conditionThresholdSf,
69
+ opportunityParameterSf: obj.opportunityParameterSf,
70
+ minExecutionBonusBps: obj.minExecutionBonusBps,
71
+ maxExecutionBonusBps: obj.maxExecutionBonusBps,
72
+ conditionType: obj.conditionType,
73
+ opportunityType: obj.opportunityType,
74
+ padding1: obj.padding1,
75
+ padding2: obj.padding2,
76
+ })
77
+ }
78
+
79
+ static toEncodable(fields: ObligationOrderFields) {
80
+ return {
81
+ conditionThresholdSf: fields.conditionThresholdSf,
82
+ opportunityParameterSf: fields.opportunityParameterSf,
83
+ minExecutionBonusBps: fields.minExecutionBonusBps,
84
+ maxExecutionBonusBps: fields.maxExecutionBonusBps,
85
+ conditionType: fields.conditionType,
86
+ opportunityType: fields.opportunityType,
87
+ padding1: fields.padding1,
88
+ padding2: fields.padding2,
89
+ }
90
+ }
91
+
92
+ toJSON(): ObligationOrderJSON {
93
+ return {
94
+ conditionThresholdSf: this.conditionThresholdSf.toString(),
95
+ opportunityParameterSf: this.opportunityParameterSf.toString(),
96
+ minExecutionBonusBps: this.minExecutionBonusBps,
97
+ maxExecutionBonusBps: this.maxExecutionBonusBps,
98
+ conditionType: this.conditionType,
99
+ opportunityType: this.opportunityType,
100
+ padding1: this.padding1,
101
+ padding2: this.padding2.map((item) => item.toString()),
102
+ }
103
+ }
104
+
105
+ static fromJSON(obj: ObligationOrderJSON): ObligationOrder {
106
+ return new ObligationOrder({
107
+ conditionThresholdSf: new BN(obj.conditionThresholdSf),
108
+ opportunityParameterSf: new BN(obj.opportunityParameterSf),
109
+ minExecutionBonusBps: obj.minExecutionBonusBps,
110
+ maxExecutionBonusBps: obj.maxExecutionBonusBps,
111
+ conditionType: obj.conditionType,
112
+ opportunityType: obj.opportunityType,
113
+ padding1: obj.padding1,
114
+ padding2: obj.padding2.map((item) => new BN(item)),
115
+ })
116
+ }
117
+
118
+ toEncodable() {
119
+ return ObligationOrder.toEncodable(this)
120
+ }
121
+ }
@@ -0,0 +1,90 @@
1
+ import { PublicKey } from "@solana/web3.js" // eslint-disable-line @typescript-eslint/no-unused-vars
2
+ import BN from "bn.js" // eslint-disable-line @typescript-eslint/no-unused-vars
3
+ import * as types from "../types" // eslint-disable-line @typescript-eslint/no-unused-vars
4
+ import * as borsh from "@coral-xyz/borsh"
5
+
6
+ export interface NoneJSON {
7
+ kind: "None"
8
+ }
9
+
10
+ export class None {
11
+ static readonly discriminator = 0
12
+ static readonly kind = "None"
13
+ readonly discriminator = 0
14
+ readonly kind = "None"
15
+
16
+ toJSON(): NoneJSON {
17
+ return {
18
+ kind: "None",
19
+ }
20
+ }
21
+
22
+ toEncodable() {
23
+ return {
24
+ None: {},
25
+ }
26
+ }
27
+ }
28
+
29
+ export interface KlendQueueAccountingHandlerOnKvaultJSON {
30
+ kind: "KlendQueueAccountingHandlerOnKvault"
31
+ }
32
+
33
+ export class KlendQueueAccountingHandlerOnKvault {
34
+ static readonly discriminator = 1
35
+ static readonly kind = "KlendQueueAccountingHandlerOnKvault"
36
+ readonly discriminator = 1
37
+ readonly kind = "KlendQueueAccountingHandlerOnKvault"
38
+
39
+ toJSON(): KlendQueueAccountingHandlerOnKvaultJSON {
40
+ return {
41
+ kind: "KlendQueueAccountingHandlerOnKvault",
42
+ }
43
+ }
44
+
45
+ toEncodable() {
46
+ return {
47
+ KlendQueueAccountingHandlerOnKvault: {},
48
+ }
49
+ }
50
+ }
51
+
52
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
53
+ export function fromDecoded(obj: any): types.ProgressCallbackTypeKind {
54
+ if (typeof obj !== "object") {
55
+ throw new Error("Invalid enum object")
56
+ }
57
+
58
+ if ("None" in obj) {
59
+ return new None()
60
+ }
61
+ if ("KlendQueueAccountingHandlerOnKvault" in obj) {
62
+ return new KlendQueueAccountingHandlerOnKvault()
63
+ }
64
+
65
+ throw new Error("Invalid enum object")
66
+ }
67
+
68
+ export function fromJSON(
69
+ obj: types.ProgressCallbackTypeJSON
70
+ ): types.ProgressCallbackTypeKind {
71
+ switch (obj.kind) {
72
+ case "None": {
73
+ return new None()
74
+ }
75
+ case "KlendQueueAccountingHandlerOnKvault": {
76
+ return new KlendQueueAccountingHandlerOnKvault()
77
+ }
78
+ }
79
+ }
80
+
81
+ export function layout(property?: string) {
82
+ const ret = borsh.rustEnum([
83
+ borsh.struct([], "None"),
84
+ borsh.struct([], "KlendQueueAccountingHandlerOnKvault"),
85
+ ])
86
+ if (property !== undefined) {
87
+ return ret.replicate(property)
88
+ }
89
+ return ret
90
+ }