@kamino-finance/klend-sdk 2.10.6

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 (369) hide show
  1. package/README.md +85 -0
  2. package/dist/classes/action.d.ts +154 -0
  3. package/dist/classes/action.js +1505 -0
  4. package/dist/classes/action.js.map +1 -0
  5. package/dist/classes/curve.d.ts +15 -0
  6. package/dist/classes/curve.js +32 -0
  7. package/dist/classes/curve.js.map +1 -0
  8. package/dist/classes/fraction.d.ts +23 -0
  9. package/dist/classes/fraction.js +60 -0
  10. package/dist/classes/fraction.js.map +1 -0
  11. package/dist/classes/index.d.ts +8 -0
  12. package/dist/classes/index.js +25 -0
  13. package/dist/classes/index.js.map +1 -0
  14. package/dist/classes/jupiterPerps.d.ts +2 -0
  15. package/dist/classes/jupiterPerps.js +25 -0
  16. package/dist/classes/jupiterPerps.js.map +1 -0
  17. package/dist/classes/market.d.ts +140 -0
  18. package/dist/classes/market.js +901 -0
  19. package/dist/classes/market.js.map +1 -0
  20. package/dist/classes/obligation.d.ts +170 -0
  21. package/dist/classes/obligation.js +610 -0
  22. package/dist/classes/obligation.js.map +1 -0
  23. package/dist/classes/reserve.d.ts +161 -0
  24. package/dist/classes/reserve.js +474 -0
  25. package/dist/classes/reserve.js.map +1 -0
  26. package/dist/classes/shared.d.ts +41 -0
  27. package/dist/classes/shared.js +10 -0
  28. package/dist/classes/shared.js.map +1 -0
  29. package/dist/classes/utils.d.ts +40 -0
  30. package/dist/classes/utils.js +129 -0
  31. package/dist/classes/utils.js.map +1 -0
  32. package/dist/idl.json +4102 -0
  33. package/dist/idl_codegen/accounts/LendingMarket.d.ts +153 -0
  34. package/dist/idl_codegen/accounts/LendingMarket.js +204 -0
  35. package/dist/idl_codegen/accounts/LendingMarket.js.map +1 -0
  36. package/dist/idl_codegen/accounts/Obligation.d.ts +139 -0
  37. package/dist/idl_codegen/accounts/Obligation.js +193 -0
  38. package/dist/idl_codegen/accounts/Obligation.js.map +1 -0
  39. package/dist/idl_codegen/accounts/ReferrerState.d.ts +22 -0
  40. package/dist/idl_codegen/accounts/ReferrerState.js +101 -0
  41. package/dist/idl_codegen/accounts/ReferrerState.js.map +1 -0
  42. package/dist/idl_codegen/accounts/ReferrerTokenState.d.ts +51 -0
  43. package/dist/idl_codegen/accounts/ReferrerTokenState.js +126 -0
  44. package/dist/idl_codegen/accounts/ReferrerTokenState.js.map +1 -0
  45. package/dist/idl_codegen/accounts/Reserve.d.ts +72 -0
  46. package/dist/idl_codegen/accounts/Reserve.js +156 -0
  47. package/dist/idl_codegen/accounts/Reserve.js.map +1 -0
  48. package/dist/idl_codegen/accounts/ShortUrl.d.ts +22 -0
  49. package/dist/idl_codegen/accounts/ShortUrl.js +101 -0
  50. package/dist/idl_codegen/accounts/ShortUrl.js.map +1 -0
  51. package/dist/idl_codegen/accounts/UserMetadata.d.ts +48 -0
  52. package/dist/idl_codegen/accounts/UserMetadata.js +126 -0
  53. package/dist/idl_codegen/accounts/UserMetadata.js.map +1 -0
  54. package/dist/idl_codegen/accounts/UserState.d.ts +143 -0
  55. package/dist/idl_codegen/accounts/UserState.js +180 -0
  56. package/dist/idl_codegen/accounts/UserState.js.map +1 -0
  57. package/dist/idl_codegen/accounts/index.d.ts +16 -0
  58. package/dist/idl_codegen/accounts/index.js +20 -0
  59. package/dist/idl_codegen/accounts/index.js.map +1 -0
  60. package/dist/idl_codegen/errors/anchor.d.ts +434 -0
  61. package/dist/idl_codegen/errors/anchor.js +713 -0
  62. package/dist/idl_codegen/errors/anchor.js.map +1 -0
  63. package/dist/idl_codegen/errors/custom.d.ts +730 -0
  64. package/dist/idl_codegen/errors/custom.js +1194 -0
  65. package/dist/idl_codegen/errors/custom.js.map +1 -0
  66. package/dist/idl_codegen/errors/index.d.ts +5 -0
  67. package/dist/idl_codegen/errors/index.js +71 -0
  68. package/dist/idl_codegen/errors/index.js.map +1 -0
  69. package/dist/idl_codegen/instructions/borrowObligationLiquidity.d.ts +20 -0
  70. package/dist/idl_codegen/instructions/borrowObligationLiquidity.js +75 -0
  71. package/dist/idl_codegen/instructions/borrowObligationLiquidity.js.map +1 -0
  72. package/dist/idl_codegen/instructions/deleteReferrerStateAndShortUrl.d.ts +9 -0
  73. package/dist/idl_codegen/instructions/deleteReferrerStateAndShortUrl.js +20 -0
  74. package/dist/idl_codegen/instructions/deleteReferrerStateAndShortUrl.js.map +1 -0
  75. package/dist/idl_codegen/instructions/depositObligationCollateral.d.ts +17 -0
  76. package/dist/idl_codegen/instructions/depositObligationCollateral.js +64 -0
  77. package/dist/idl_codegen/instructions/depositObligationCollateral.js.map +1 -0
  78. package/dist/idl_codegen/instructions/depositReserveLiquidity.d.ts +19 -0
  79. package/dist/idl_codegen/instructions/depositReserveLiquidity.js +74 -0
  80. package/dist/idl_codegen/instructions/depositReserveLiquidity.js.map +1 -0
  81. package/dist/idl_codegen/instructions/depositReserveLiquidityAndObligationCollateral.d.ts +21 -0
  82. package/dist/idl_codegen/instructions/depositReserveLiquidityAndObligationCollateral.js +80 -0
  83. package/dist/idl_codegen/instructions/depositReserveLiquidityAndObligationCollateral.js.map +1 -0
  84. package/dist/idl_codegen/instructions/flashBorrowReserveLiquidity.d.ts +20 -0
  85. package/dist/idl_codegen/instructions/flashBorrowReserveLiquidity.js +75 -0
  86. package/dist/idl_codegen/instructions/flashBorrowReserveLiquidity.js.map +1 -0
  87. package/dist/idl_codegen/instructions/flashRepayReserveLiquidity.d.ts +21 -0
  88. package/dist/idl_codegen/instructions/flashRepayReserveLiquidity.js +75 -0
  89. package/dist/idl_codegen/instructions/flashRepayReserveLiquidity.js.map +1 -0
  90. package/dist/idl_codegen/instructions/idlMissingTypes.d.ts +18 -0
  91. package/dist/idl_codegen/instructions/idlMissingTypes.js +62 -0
  92. package/dist/idl_codegen/instructions/idlMissingTypes.js.map +1 -0
  93. package/dist/idl_codegen/instructions/index.d.ts +66 -0
  94. package/dist/idl_codegen/instructions/index.js +70 -0
  95. package/dist/idl_codegen/instructions/index.js.map +1 -0
  96. package/dist/idl_codegen/instructions/initFarmsForReserve.d.ts +19 -0
  97. package/dist/idl_codegen/instructions/initFarmsForReserve.js +63 -0
  98. package/dist/idl_codegen/instructions/initFarmsForReserve.js.map +1 -0
  99. package/dist/idl_codegen/instructions/initLendingMarket.d.ts +13 -0
  100. package/dist/idl_codegen/instructions/initLendingMarket.js +55 -0
  101. package/dist/idl_codegen/instructions/initLendingMarket.js.map +1 -0
  102. package/dist/idl_codegen/instructions/initObligation.d.ts +19 -0
  103. package/dist/idl_codegen/instructions/initObligation.js +55 -0
  104. package/dist/idl_codegen/instructions/initObligation.js.map +1 -0
  105. package/dist/idl_codegen/instructions/initObligationFarmsForReserve.d.ts +20 -0
  106. package/dist/idl_codegen/instructions/initObligationFarmsForReserve.js +60 -0
  107. package/dist/idl_codegen/instructions/initObligationFarmsForReserve.js.map +1 -0
  108. package/dist/idl_codegen/instructions/initReferrerStateAndShortUrl.d.ts +14 -0
  109. package/dist/idl_codegen/instructions/initReferrerStateAndShortUrl.js +54 -0
  110. package/dist/idl_codegen/instructions/initReferrerStateAndShortUrl.js.map +1 -0
  111. package/dist/idl_codegen/instructions/initReferrerTokenState.d.ts +14 -0
  112. package/dist/idl_codegen/instructions/initReferrerTokenState.js +50 -0
  113. package/dist/idl_codegen/instructions/initReferrerTokenState.js.map +1 -0
  114. package/dist/idl_codegen/instructions/initReserve.d.ts +16 -0
  115. package/dist/idl_codegen/instructions/initReserve.js +47 -0
  116. package/dist/idl_codegen/instructions/initReserve.js.map +1 -0
  117. package/dist/idl_codegen/instructions/initUserMetadata.d.ts +14 -0
  118. package/dist/idl_codegen/instructions/initUserMetadata.js +54 -0
  119. package/dist/idl_codegen/instructions/initUserMetadata.js.map +1 -0
  120. package/dist/idl_codegen/instructions/liquidateObligationAndRedeemReserveCollateral.d.ts +27 -0
  121. package/dist/idl_codegen/instructions/liquidateObligationAndRedeemReserveCollateral.js +102 -0
  122. package/dist/idl_codegen/instructions/liquidateObligationAndRedeemReserveCollateral.js.map +1 -0
  123. package/dist/idl_codegen/instructions/redeemFees.d.ts +10 -0
  124. package/dist/idl_codegen/instructions/redeemFees.js +33 -0
  125. package/dist/idl_codegen/instructions/redeemFees.js.map +1 -0
  126. package/dist/idl_codegen/instructions/redeemReserveCollateral.d.ts +19 -0
  127. package/dist/idl_codegen/instructions/redeemReserveCollateral.js +78 -0
  128. package/dist/idl_codegen/instructions/redeemReserveCollateral.js.map +1 -0
  129. package/dist/idl_codegen/instructions/refreshObligation.d.ts +6 -0
  130. package/dist/idl_codegen/instructions/refreshObligation.js +17 -0
  131. package/dist/idl_codegen/instructions/refreshObligation.js.map +1 -0
  132. package/dist/idl_codegen/instructions/refreshObligationFarmsForReserve.d.ts +19 -0
  133. package/dist/idl_codegen/instructions/refreshObligationFarmsForReserve.js +63 -0
  134. package/dist/idl_codegen/instructions/refreshObligationFarmsForReserve.js.map +1 -0
  135. package/dist/idl_codegen/instructions/refreshReserve.d.ts +10 -0
  136. package/dist/idl_codegen/instructions/refreshReserve.js +29 -0
  137. package/dist/idl_codegen/instructions/refreshReserve.js.map +1 -0
  138. package/dist/idl_codegen/instructions/repayObligationLiquidity.d.ts +17 -0
  139. package/dist/idl_codegen/instructions/repayObligationLiquidity.js +60 -0
  140. package/dist/idl_codegen/instructions/repayObligationLiquidity.js.map +1 -0
  141. package/dist/idl_codegen/instructions/requestElevationGroup.d.ts +11 -0
  142. package/dist/idl_codegen/instructions/requestElevationGroup.js +47 -0
  143. package/dist/idl_codegen/instructions/requestElevationGroup.js.map +1 -0
  144. package/dist/idl_codegen/instructions/socializeLoss.d.ts +14 -0
  145. package/dist/idl_codegen/instructions/socializeLoss.js +53 -0
  146. package/dist/idl_codegen/instructions/socializeLoss.js.map +1 -0
  147. package/dist/idl_codegen/instructions/updateEntireReserveConfig.d.ts +13 -0
  148. package/dist/idl_codegen/instructions/updateEntireReserveConfig.js +51 -0
  149. package/dist/idl_codegen/instructions/updateEntireReserveConfig.js.map +1 -0
  150. package/dist/idl_codegen/instructions/updateLendingMarket.d.ts +12 -0
  151. package/dist/idl_codegen/instructions/updateLendingMarket.js +50 -0
  152. package/dist/idl_codegen/instructions/updateLendingMarket.js.map +1 -0
  153. package/dist/idl_codegen/instructions/updateLendingMarketOwner.d.ts +6 -0
  154. package/dist/idl_codegen/instructions/updateLendingMarketOwner.js +21 -0
  155. package/dist/idl_codegen/instructions/updateLendingMarketOwner.js.map +1 -0
  156. package/dist/idl_codegen/instructions/updateReserveConfig.d.ts +13 -0
  157. package/dist/idl_codegen/instructions/updateReserveConfig.js +51 -0
  158. package/dist/idl_codegen/instructions/updateReserveConfig.js.map +1 -0
  159. package/dist/idl_codegen/instructions/updateSingleReserveConfig.d.ts +13 -0
  160. package/dist/idl_codegen/instructions/updateSingleReserveConfig.js +51 -0
  161. package/dist/idl_codegen/instructions/updateSingleReserveConfig.js.map +1 -0
  162. package/dist/idl_codegen/instructions/withdrawObligationCollateral.d.ts +18 -0
  163. package/dist/idl_codegen/instructions/withdrawObligationCollateral.js +69 -0
  164. package/dist/idl_codegen/instructions/withdrawObligationCollateral.js.map +1 -0
  165. package/dist/idl_codegen/instructions/withdrawObligationCollateralAndRedeemReserveCollateral.d.ts +21 -0
  166. package/dist/idl_codegen/instructions/withdrawObligationCollateralAndRedeemReserveCollateral.js +84 -0
  167. package/dist/idl_codegen/instructions/withdrawObligationCollateralAndRedeemReserveCollateral.js.map +1 -0
  168. package/dist/idl_codegen/instructions/withdrawProtocolFee.d.ts +16 -0
  169. package/dist/idl_codegen/instructions/withdrawProtocolFee.js +59 -0
  170. package/dist/idl_codegen/instructions/withdrawProtocolFee.js.map +1 -0
  171. package/dist/idl_codegen/instructions/withdrawReferrerFees.d.ts +12 -0
  172. package/dist/idl_codegen/instructions/withdrawReferrerFees.js +35 -0
  173. package/dist/idl_codegen/instructions/withdrawReferrerFees.js.map +1 -0
  174. package/dist/idl_codegen/programId.d.ts +4 -0
  175. package/dist/idl_codegen/programId.js +13 -0
  176. package/dist/idl_codegen/programId.js.map +1 -0
  177. package/dist/idl_codegen/types/AssetTier.d.ts +44 -0
  178. package/dist/idl_codegen/types/AssetTier.js +128 -0
  179. package/dist/idl_codegen/types/AssetTier.js.map +1 -0
  180. package/dist/idl_codegen/types/BigFractionBytes.d.ts +27 -0
  181. package/dist/idl_codegen/types/BigFractionBytes.js +73 -0
  182. package/dist/idl_codegen/types/BigFractionBytes.js.map +1 -0
  183. package/dist/idl_codegen/types/BorrowRateCurve.d.ts +27 -0
  184. package/dist/idl_codegen/types/BorrowRateCurve.js +62 -0
  185. package/dist/idl_codegen/types/BorrowRateCurve.js.map +1 -0
  186. package/dist/idl_codegen/types/CurvePoint.d.ts +26 -0
  187. package/dist/idl_codegen/types/CurvePoint.js +66 -0
  188. package/dist/idl_codegen/types/CurvePoint.js.map +1 -0
  189. package/dist/idl_codegen/types/ElevationGroup.d.ts +52 -0
  190. package/dist/idl_codegen/types/ElevationGroup.js +103 -0
  191. package/dist/idl_codegen/types/ElevationGroup.js.map +1 -0
  192. package/dist/idl_codegen/types/FeeCalculation.d.ts +31 -0
  193. package/dist/idl_codegen/types/FeeCalculation.js +102 -0
  194. package/dist/idl_codegen/types/FeeCalculation.js.map +1 -0
  195. package/dist/idl_codegen/types/InitObligationArgs.d.ts +26 -0
  196. package/dist/idl_codegen/types/InitObligationArgs.js +66 -0
  197. package/dist/idl_codegen/types/InitObligationArgs.js.map +1 -0
  198. package/dist/idl_codegen/types/LastUpdate.d.ts +47 -0
  199. package/dist/idl_codegen/types/LastUpdate.js +86 -0
  200. package/dist/idl_codegen/types/LastUpdate.js.map +1 -0
  201. package/dist/idl_codegen/types/ObligationCollateral.d.ts +48 -0
  202. package/dist/idl_codegen/types/ObligationCollateral.js +87 -0
  203. package/dist/idl_codegen/types/ObligationCollateral.js.map +1 -0
  204. package/dist/idl_codegen/types/ObligationLiquidity.d.ts +75 -0
  205. package/dist/idl_codegen/types/ObligationLiquidity.js +107 -0
  206. package/dist/idl_codegen/types/ObligationLiquidity.js.map +1 -0
  207. package/dist/idl_codegen/types/PriceHeuristic.d.ts +41 -0
  208. package/dist/idl_codegen/types/PriceHeuristic.js +75 -0
  209. package/dist/idl_codegen/types/PriceHeuristic.js.map +1 -0
  210. package/dist/idl_codegen/types/PythConfiguration.d.ts +25 -0
  211. package/dist/idl_codegen/types/PythConfiguration.js +62 -0
  212. package/dist/idl_codegen/types/PythConfiguration.js.map +1 -0
  213. package/dist/idl_codegen/types/ReserveCollateral.d.ts +53 -0
  214. package/dist/idl_codegen/types/ReserveCollateral.js +93 -0
  215. package/dist/idl_codegen/types/ReserveCollateral.js.map +1 -0
  216. package/dist/idl_codegen/types/ReserveConfig.d.ts +304 -0
  217. package/dist/idl_codegen/types/ReserveConfig.js +209 -0
  218. package/dist/idl_codegen/types/ReserveConfig.js.map +1 -0
  219. package/dist/idl_codegen/types/ReserveFarmKind.d.ts +31 -0
  220. package/dist/idl_codegen/types/ReserveFarmKind.js +102 -0
  221. package/dist/idl_codegen/types/ReserveFarmKind.js.map +1 -0
  222. package/dist/idl_codegen/types/ReserveFees.d.ts +78 -0
  223. package/dist/idl_codegen/types/ReserveFees.js +86 -0
  224. package/dist/idl_codegen/types/ReserveFees.js.map +1 -0
  225. package/dist/idl_codegen/types/ReserveLiquidity.d.ts +173 -0
  226. package/dist/idl_codegen/types/ReserveLiquidity.js +166 -0
  227. package/dist/idl_codegen/types/ReserveLiquidity.js.map +1 -0
  228. package/dist/idl_codegen/types/ReserveStatus.d.ts +44 -0
  229. package/dist/idl_codegen/types/ReserveStatus.js +128 -0
  230. package/dist/idl_codegen/types/ReserveStatus.js.map +1 -0
  231. package/dist/idl_codegen/types/ScopeConfiguration.d.ts +41 -0
  232. package/dist/idl_codegen/types/ScopeConfiguration.js +76 -0
  233. package/dist/idl_codegen/types/ScopeConfiguration.js.map +1 -0
  234. package/dist/idl_codegen/types/SwitchboardConfiguration.d.ts +30 -0
  235. package/dist/idl_codegen/types/SwitchboardConfiguration.js +67 -0
  236. package/dist/idl_codegen/types/SwitchboardConfiguration.js.map +1 -0
  237. package/dist/idl_codegen/types/TokenInfo.d.ts +109 -0
  238. package/dist/idl_codegen/types/TokenInfo.js +116 -0
  239. package/dist/idl_codegen/types/TokenInfo.js.map +1 -0
  240. package/dist/idl_codegen/types/UpdateConfigMode.d.ts +538 -0
  241. package/dist/idl_codegen/types/UpdateConfigMode.js +1116 -0
  242. package/dist/idl_codegen/types/UpdateConfigMode.js.map +1 -0
  243. package/dist/idl_codegen/types/UpdateLendingMarketConfigValue.d.ts +155 -0
  244. package/dist/idl_codegen/types/UpdateLendingMarketConfigValue.js +273 -0
  245. package/dist/idl_codegen/types/UpdateLendingMarketConfigValue.js.map +1 -0
  246. package/dist/idl_codegen/types/UpdateLendingMarketMode.d.ts +200 -0
  247. package/dist/idl_codegen/types/UpdateLendingMarketMode.js +440 -0
  248. package/dist/idl_codegen/types/UpdateLendingMarketMode.js.map +1 -0
  249. package/dist/idl_codegen/types/WithdrawalCaps.d.ts +38 -0
  250. package/dist/idl_codegen/types/WithdrawalCaps.js +86 -0
  251. package/dist/idl_codegen/types/WithdrawalCaps.js.map +1 -0
  252. package/dist/idl_codegen/types/index.d.ts +65 -0
  253. package/dist/idl_codegen/types/index.js +77 -0
  254. package/dist/idl_codegen/types/index.js.map +1 -0
  255. package/dist/idl_codegen/zero_padding/ObligationZP.d.ts +53 -0
  256. package/dist/idl_codegen/zero_padding/ObligationZP.js +140 -0
  257. package/dist/idl_codegen/zero_padding/ObligationZP.js.map +1 -0
  258. package/dist/idl_codegen/zero_padding/index.d.ts +1 -0
  259. package/dist/idl_codegen/zero_padding/index.js +6 -0
  260. package/dist/idl_codegen/zero_padding/index.js.map +1 -0
  261. package/dist/idl_codegen_jupiter_perps/accounts/Pool.d.ts +48 -0
  262. package/dist/idl_codegen_jupiter_perps/accounts/Pool.js +144 -0
  263. package/dist/idl_codegen_jupiter_perps/accounts/Pool.js.map +1 -0
  264. package/dist/idl_codegen_jupiter_perps/accounts/index.d.ts +2 -0
  265. package/dist/idl_codegen_jupiter_perps/accounts/index.js +6 -0
  266. package/dist/idl_codegen_jupiter_perps/accounts/index.js.map +1 -0
  267. package/dist/idl_codegen_jupiter_perps/programId.d.ts +3 -0
  268. package/dist/idl_codegen_jupiter_perps/programId.js +9 -0
  269. package/dist/idl_codegen_jupiter_perps/programId.js.map +1 -0
  270. package/dist/idl_codegen_jupiter_perps/types/Fees.d.ts +62 -0
  271. package/dist/idl_codegen_jupiter_perps/types/Fees.js +115 -0
  272. package/dist/idl_codegen_jupiter_perps/types/Fees.js.map +1 -0
  273. package/dist/idl_codegen_jupiter_perps/types/Limit.d.ts +32 -0
  274. package/dist/idl_codegen_jupiter_perps/types/Limit.js +75 -0
  275. package/dist/idl_codegen_jupiter_perps/types/Limit.js.map +1 -0
  276. package/dist/idl_codegen_jupiter_perps/types/PoolApr.d.ts +32 -0
  277. package/dist/idl_codegen_jupiter_perps/types/PoolApr.js +75 -0
  278. package/dist/idl_codegen_jupiter_perps/types/PoolApr.js.map +1 -0
  279. package/dist/idl_codegen_jupiter_perps/types/index.d.ts +6 -0
  280. package/dist/idl_codegen_jupiter_perps/types/index.js +10 -0
  281. package/dist/idl_codegen_jupiter_perps/types/index.js.map +1 -0
  282. package/dist/index.d.ts +1 -0
  283. package/dist/index.js +18 -0
  284. package/dist/index.js.map +1 -0
  285. package/dist/lending_operations/index.d.ts +2 -0
  286. package/dist/lending_operations/index.js +19 -0
  287. package/dist/lending_operations/index.js.map +1 -0
  288. package/dist/lending_operations/repay_with_collateral_calcs.d.ts +5 -0
  289. package/dist/lending_operations/repay_with_collateral_calcs.js +26 -0
  290. package/dist/lending_operations/repay_with_collateral_calcs.js.map +1 -0
  291. package/dist/lending_operations/repay_with_collateral_operations.d.ts +47 -0
  292. package/dist/lending_operations/repay_with_collateral_operations.js +163 -0
  293. package/dist/lending_operations/repay_with_collateral_operations.js.map +1 -0
  294. package/dist/leverage/calcs.d.ts +132 -0
  295. package/dist/leverage/calcs.js +291 -0
  296. package/dist/leverage/calcs.js.map +1 -0
  297. package/dist/leverage/index.d.ts +4 -0
  298. package/dist/leverage/index.js +21 -0
  299. package/dist/leverage/index.js.map +1 -0
  300. package/dist/leverage/instructions.d.ts +43 -0
  301. package/dist/leverage/instructions.js +103 -0
  302. package/dist/leverage/instructions.js.map +1 -0
  303. package/dist/leverage/operations.d.ts +231 -0
  304. package/dist/leverage/operations.js +1058 -0
  305. package/dist/leverage/operations.js.map +1 -0
  306. package/dist/leverage/utils.d.ts +22 -0
  307. package/dist/leverage/utils.js +144 -0
  308. package/dist/leverage/utils.js.map +1 -0
  309. package/dist/lib.d.ts +9 -0
  310. package/dist/lib.js +26 -0
  311. package/dist/lib.js.map +1 -0
  312. package/dist/referrals/index.d.ts +2 -0
  313. package/dist/referrals/index.js +19 -0
  314. package/dist/referrals/index.js.map +1 -0
  315. package/dist/referrals/instructions.d.ts +16 -0
  316. package/dist/referrals/instructions.js +76 -0
  317. package/dist/referrals/instructions.js.map +1 -0
  318. package/dist/referrals/operations.d.ts +97 -0
  319. package/dist/referrals/operations.js +258 -0
  320. package/dist/referrals/operations.js.map +1 -0
  321. package/dist/utils/ObligationType.d.ts +49 -0
  322. package/dist/utils/ObligationType.js +129 -0
  323. package/dist/utils/ObligationType.js.map +1 -0
  324. package/dist/utils/api.d.ts +6 -0
  325. package/dist/utils/api.js +61 -0
  326. package/dist/utils/api.js.map +1 -0
  327. package/dist/utils/ata.d.ts +25 -0
  328. package/dist/utils/ata.js +155 -0
  329. package/dist/utils/ata.js.map +1 -0
  330. package/dist/utils/constants.d.ts +48 -0
  331. package/dist/utils/constants.js +75 -0
  332. package/dist/utils/constants.js.map +1 -0
  333. package/dist/utils/idl.d.ts +2 -0
  334. package/dist/utils/idl.js +9 -0
  335. package/dist/utils/idl.js.map +1 -0
  336. package/dist/utils/index.d.ts +14 -0
  337. package/dist/utils/index.js +31 -0
  338. package/dist/utils/index.js.map +1 -0
  339. package/dist/utils/instruction.d.ts +22 -0
  340. package/dist/utils/instruction.js +202 -0
  341. package/dist/utils/instruction.js.map +1 -0
  342. package/dist/utils/kamino.d.ts +3 -0
  343. package/dist/utils/kamino.js +45 -0
  344. package/dist/utils/kamino.js.map +1 -0
  345. package/dist/utils/layout.d.ts +13 -0
  346. package/dist/utils/layout.js +123 -0
  347. package/dist/utils/layout.js.map +1 -0
  348. package/dist/utils/lookupTable.d.ts +5 -0
  349. package/dist/utils/lookupTable.js +57 -0
  350. package/dist/utils/lookupTable.js.map +1 -0
  351. package/dist/utils/oracle.d.ts +51 -0
  352. package/dist/utils/oracle.js +295 -0
  353. package/dist/utils/oracle.js.map +1 -0
  354. package/dist/utils/pubkey.d.ts +74 -0
  355. package/dist/utils/pubkey.js +229 -0
  356. package/dist/utils/pubkey.js.map +1 -0
  357. package/dist/utils/seeds.d.ts +122 -0
  358. package/dist/utils/seeds.js +153 -0
  359. package/dist/utils/seeds.js.map +1 -0
  360. package/dist/utils/slots.d.ts +18 -0
  361. package/dist/utils/slots.js +32 -0
  362. package/dist/utils/slots.js.map +1 -0
  363. package/dist/utils/syncNative.d.ts +10 -0
  364. package/dist/utils/syncNative.js +46 -0
  365. package/dist/utils/syncNative.js.map +1 -0
  366. package/dist/utils/userMetadata.d.ts +15 -0
  367. package/dist/utils/userMetadata.js +259 -0
  368. package/dist/utils/userMetadata.js.map +1 -0
  369. package/package.json +94 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReserveConfig.js","sourceRoot":"","sources":["../../../src/idl_codegen/types/ReserveConfig.ts"],"names":[],"mappings":"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","sourcesContent":["import { PublicKey } from \"@solana/web3.js\" // eslint-disable-line @typescript-eslint/no-unused-vars\nimport BN from \"bn.js\" // eslint-disable-line @typescript-eslint/no-unused-vars\nimport * as types from \"../types\" // eslint-disable-line @typescript-eslint/no-unused-vars\nimport * as borsh from \"@coral-xyz/borsh\"\n\nexport interface ReserveConfigFields {\n /** Status of the reserve Active/Obsolete/Hidden */\n status: number\n /** Asset tier -> 0 - regular (collateral & debt), 1 - isolated collateral, 2 - isolated debt */\n assetTier: number\n reserved0: Array<number>\n /** Boost for side (debt or collateral) */\n multiplierSideBoost: Array<number>\n /** Reward points multiplier per obligation type */\n multiplierTagBoost: Array<number>\n /** Protocol take rate is the amount borrowed interest protocol receives, as a percentage */\n protocolTakeRatePct: number\n /** Cut of the liquidation bonus that the protocol receives, as a percentage */\n protocolLiquidationFeePct: number\n /**\n * Target ratio of the value of borrows to deposits, as a percentage\n * 0 if use as collateral is disabled\n */\n loanToValuePct: number\n /** Loan to value ratio at which an obligation can be liquidated, as percentage */\n liquidationThresholdPct: number\n /** Minimum bonus a liquidator receives when repaying part of an unhealthy obligation, as bps */\n minLiquidationBonusBps: number\n /** Maximum bonus a liquidator receives when repaying part of an unhealthy obligation, as bps */\n maxLiquidationBonusBps: number\n /** Bad debt liquidation bonus for an undercollateralized obligation, as bps */\n badDebtLiquidationBonusBps: number\n /** Time in seconds that must pass before redemptions are enabled after the deposit limit is crossed */\n deleveragingMarginCallPeriodSecs: BN\n /**\n * The rate at which the deleveraging threshold decreases in slots per bps\n * e.g. 1 bps per hour would be 7200 slots per bps (assuming 2 slots per second)\n */\n deleveragingThresholdSlotsPerBps: BN\n /** Program owner fees assessed, separate from gains due to interest accrual */\n fees: types.ReserveFeesFields\n /** Borrow rate curve based on utilization */\n borrowRateCurve: types.BorrowRateCurveFields\n /** Borrow factor in percentage - used for risk adjustment */\n borrowFactorPct: BN\n /** Maximum deposit limit of liquidity in native units, u64::MAX for inf */\n depositLimit: BN\n /** Maximum amount borrowed, u64::MAX for inf, 0 to disable borrows (protected deposits) */\n borrowLimit: BN\n /** Token id from TokenInfos struct */\n tokenInfo: types.TokenInfoFields\n /** Deposit withdrawl caps - deposit & redeem */\n depositWithdrawalCap: types.WithdrawalCapsFields\n /** Debt withdrawl caps - borrow & repay */\n debtWithdrawalCap: types.WithdrawalCapsFields\n elevationGroups: Array<number>\n reserved1: Array<number>\n}\n\nexport interface ReserveConfigJSON {\n /** Status of the reserve Active/Obsolete/Hidden */\n status: number\n /** Asset tier -> 0 - regular (collateral & debt), 1 - isolated collateral, 2 - isolated debt */\n assetTier: number\n reserved0: Array<number>\n /** Boost for side (debt or collateral) */\n multiplierSideBoost: Array<number>\n /** Reward points multiplier per obligation type */\n multiplierTagBoost: Array<number>\n /** Protocol take rate is the amount borrowed interest protocol receives, as a percentage */\n protocolTakeRatePct: number\n /** Cut of the liquidation bonus that the protocol receives, as a percentage */\n protocolLiquidationFeePct: number\n /**\n * Target ratio of the value of borrows to deposits, as a percentage\n * 0 if use as collateral is disabled\n */\n loanToValuePct: number\n /** Loan to value ratio at which an obligation can be liquidated, as percentage */\n liquidationThresholdPct: number\n /** Minimum bonus a liquidator receives when repaying part of an unhealthy obligation, as bps */\n minLiquidationBonusBps: number\n /** Maximum bonus a liquidator receives when repaying part of an unhealthy obligation, as bps */\n maxLiquidationBonusBps: number\n /** Bad debt liquidation bonus for an undercollateralized obligation, as bps */\n badDebtLiquidationBonusBps: number\n /** Time in seconds that must pass before redemptions are enabled after the deposit limit is crossed */\n deleveragingMarginCallPeriodSecs: string\n /**\n * The rate at which the deleveraging threshold decreases in slots per bps\n * e.g. 1 bps per hour would be 7200 slots per bps (assuming 2 slots per second)\n */\n deleveragingThresholdSlotsPerBps: string\n /** Program owner fees assessed, separate from gains due to interest accrual */\n fees: types.ReserveFeesJSON\n /** Borrow rate curve based on utilization */\n borrowRateCurve: types.BorrowRateCurveJSON\n /** Borrow factor in percentage - used for risk adjustment */\n borrowFactorPct: string\n /** Maximum deposit limit of liquidity in native units, u64::MAX for inf */\n depositLimit: string\n /** Maximum amount borrowed, u64::MAX for inf, 0 to disable borrows (protected deposits) */\n borrowLimit: string\n /** Token id from TokenInfos struct */\n tokenInfo: types.TokenInfoJSON\n /** Deposit withdrawl caps - deposit & redeem */\n depositWithdrawalCap: types.WithdrawalCapsJSON\n /** Debt withdrawl caps - borrow & repay */\n debtWithdrawalCap: types.WithdrawalCapsJSON\n elevationGroups: Array<number>\n reserved1: Array<number>\n}\n\n/** Reserve configuration values */\nexport class ReserveConfig {\n /** Status of the reserve Active/Obsolete/Hidden */\n readonly status: number\n /** Asset tier -> 0 - regular (collateral & debt), 1 - isolated collateral, 2 - isolated debt */\n readonly assetTier: number\n readonly reserved0: Array<number>\n /** Boost for side (debt or collateral) */\n readonly multiplierSideBoost: Array<number>\n /** Reward points multiplier per obligation type */\n readonly multiplierTagBoost: Array<number>\n /** Protocol take rate is the amount borrowed interest protocol receives, as a percentage */\n readonly protocolTakeRatePct: number\n /** Cut of the liquidation bonus that the protocol receives, as a percentage */\n readonly protocolLiquidationFeePct: number\n /**\n * Target ratio of the value of borrows to deposits, as a percentage\n * 0 if use as collateral is disabled\n */\n readonly loanToValuePct: number\n /** Loan to value ratio at which an obligation can be liquidated, as percentage */\n readonly liquidationThresholdPct: number\n /** Minimum bonus a liquidator receives when repaying part of an unhealthy obligation, as bps */\n readonly minLiquidationBonusBps: number\n /** Maximum bonus a liquidator receives when repaying part of an unhealthy obligation, as bps */\n readonly maxLiquidationBonusBps: number\n /** Bad debt liquidation bonus for an undercollateralized obligation, as bps */\n readonly badDebtLiquidationBonusBps: number\n /** Time in seconds that must pass before redemptions are enabled after the deposit limit is crossed */\n readonly deleveragingMarginCallPeriodSecs: BN\n /**\n * The rate at which the deleveraging threshold decreases in slots per bps\n * e.g. 1 bps per hour would be 7200 slots per bps (assuming 2 slots per second)\n */\n readonly deleveragingThresholdSlotsPerBps: BN\n /** Program owner fees assessed, separate from gains due to interest accrual */\n readonly fees: types.ReserveFees\n /** Borrow rate curve based on utilization */\n readonly borrowRateCurve: types.BorrowRateCurve\n /** Borrow factor in percentage - used for risk adjustment */\n readonly borrowFactorPct: BN\n /** Maximum deposit limit of liquidity in native units, u64::MAX for inf */\n readonly depositLimit: BN\n /** Maximum amount borrowed, u64::MAX for inf, 0 to disable borrows (protected deposits) */\n readonly borrowLimit: BN\n /** Token id from TokenInfos struct */\n readonly tokenInfo: types.TokenInfo\n /** Deposit withdrawl caps - deposit & redeem */\n readonly depositWithdrawalCap: types.WithdrawalCaps\n /** Debt withdrawl caps - borrow & repay */\n readonly debtWithdrawalCap: types.WithdrawalCaps\n readonly elevationGroups: Array<number>\n readonly reserved1: Array<number>\n\n constructor(fields: ReserveConfigFields) {\n this.status = fields.status\n this.assetTier = fields.assetTier\n this.reserved0 = fields.reserved0\n this.multiplierSideBoost = fields.multiplierSideBoost\n this.multiplierTagBoost = fields.multiplierTagBoost\n this.protocolTakeRatePct = fields.protocolTakeRatePct\n this.protocolLiquidationFeePct = fields.protocolLiquidationFeePct\n this.loanToValuePct = fields.loanToValuePct\n this.liquidationThresholdPct = fields.liquidationThresholdPct\n this.minLiquidationBonusBps = fields.minLiquidationBonusBps\n this.maxLiquidationBonusBps = fields.maxLiquidationBonusBps\n this.badDebtLiquidationBonusBps = fields.badDebtLiquidationBonusBps\n this.deleveragingMarginCallPeriodSecs =\n fields.deleveragingMarginCallPeriodSecs\n this.deleveragingThresholdSlotsPerBps =\n fields.deleveragingThresholdSlotsPerBps\n this.fees = new types.ReserveFees({ ...fields.fees })\n this.borrowRateCurve = new types.BorrowRateCurve({\n ...fields.borrowRateCurve,\n })\n this.borrowFactorPct = fields.borrowFactorPct\n this.depositLimit = fields.depositLimit\n this.borrowLimit = fields.borrowLimit\n this.tokenInfo = new types.TokenInfo({ ...fields.tokenInfo })\n this.depositWithdrawalCap = new types.WithdrawalCaps({\n ...fields.depositWithdrawalCap,\n })\n this.debtWithdrawalCap = new types.WithdrawalCaps({\n ...fields.debtWithdrawalCap,\n })\n this.elevationGroups = fields.elevationGroups\n this.reserved1 = fields.reserved1\n }\n\n static layout(property?: string) {\n return borsh.struct(\n [\n borsh.u8(\"status\"),\n borsh.u8(\"assetTier\"),\n borsh.array(borsh.u8(), 2, \"reserved0\"),\n borsh.array(borsh.u8(), 2, \"multiplierSideBoost\"),\n borsh.array(borsh.u8(), 8, \"multiplierTagBoost\"),\n borsh.u8(\"protocolTakeRatePct\"),\n borsh.u8(\"protocolLiquidationFeePct\"),\n borsh.u8(\"loanToValuePct\"),\n borsh.u8(\"liquidationThresholdPct\"),\n borsh.u16(\"minLiquidationBonusBps\"),\n borsh.u16(\"maxLiquidationBonusBps\"),\n borsh.u16(\"badDebtLiquidationBonusBps\"),\n borsh.u64(\"deleveragingMarginCallPeriodSecs\"),\n borsh.u64(\"deleveragingThresholdSlotsPerBps\"),\n types.ReserveFees.layout(\"fees\"),\n types.BorrowRateCurve.layout(\"borrowRateCurve\"),\n borsh.u64(\"borrowFactorPct\"),\n borsh.u64(\"depositLimit\"),\n borsh.u64(\"borrowLimit\"),\n types.TokenInfo.layout(\"tokenInfo\"),\n types.WithdrawalCaps.layout(\"depositWithdrawalCap\"),\n types.WithdrawalCaps.layout(\"debtWithdrawalCap\"),\n borsh.array(borsh.u8(), 20, \"elevationGroups\"),\n borsh.array(borsh.u8(), 4, \"reserved1\"),\n ],\n property\n )\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n static fromDecoded(obj: any) {\n return new ReserveConfig({\n status: obj.status,\n assetTier: obj.assetTier,\n reserved0: obj.reserved0,\n multiplierSideBoost: obj.multiplierSideBoost,\n multiplierTagBoost: obj.multiplierTagBoost,\n protocolTakeRatePct: obj.protocolTakeRatePct,\n protocolLiquidationFeePct: obj.protocolLiquidationFeePct,\n loanToValuePct: obj.loanToValuePct,\n liquidationThresholdPct: obj.liquidationThresholdPct,\n minLiquidationBonusBps: obj.minLiquidationBonusBps,\n maxLiquidationBonusBps: obj.maxLiquidationBonusBps,\n badDebtLiquidationBonusBps: obj.badDebtLiquidationBonusBps,\n deleveragingMarginCallPeriodSecs: obj.deleveragingMarginCallPeriodSecs,\n deleveragingThresholdSlotsPerBps: obj.deleveragingThresholdSlotsPerBps,\n fees: types.ReserveFees.fromDecoded(obj.fees),\n borrowRateCurve: types.BorrowRateCurve.fromDecoded(obj.borrowRateCurve),\n borrowFactorPct: obj.borrowFactorPct,\n depositLimit: obj.depositLimit,\n borrowLimit: obj.borrowLimit,\n tokenInfo: types.TokenInfo.fromDecoded(obj.tokenInfo),\n depositWithdrawalCap: types.WithdrawalCaps.fromDecoded(\n obj.depositWithdrawalCap\n ),\n debtWithdrawalCap: types.WithdrawalCaps.fromDecoded(\n obj.debtWithdrawalCap\n ),\n elevationGroups: obj.elevationGroups,\n reserved1: obj.reserved1,\n })\n }\n\n static toEncodable(fields: ReserveConfigFields) {\n return {\n status: fields.status,\n assetTier: fields.assetTier,\n reserved0: fields.reserved0,\n multiplierSideBoost: fields.multiplierSideBoost,\n multiplierTagBoost: fields.multiplierTagBoost,\n protocolTakeRatePct: fields.protocolTakeRatePct,\n protocolLiquidationFeePct: fields.protocolLiquidationFeePct,\n loanToValuePct: fields.loanToValuePct,\n liquidationThresholdPct: fields.liquidationThresholdPct,\n minLiquidationBonusBps: fields.minLiquidationBonusBps,\n maxLiquidationBonusBps: fields.maxLiquidationBonusBps,\n badDebtLiquidationBonusBps: fields.badDebtLiquidationBonusBps,\n deleveragingMarginCallPeriodSecs: fields.deleveragingMarginCallPeriodSecs,\n deleveragingThresholdSlotsPerBps: fields.deleveragingThresholdSlotsPerBps,\n fees: types.ReserveFees.toEncodable(fields.fees),\n borrowRateCurve: types.BorrowRateCurve.toEncodable(\n fields.borrowRateCurve\n ),\n borrowFactorPct: fields.borrowFactorPct,\n depositLimit: fields.depositLimit,\n borrowLimit: fields.borrowLimit,\n tokenInfo: types.TokenInfo.toEncodable(fields.tokenInfo),\n depositWithdrawalCap: types.WithdrawalCaps.toEncodable(\n fields.depositWithdrawalCap\n ),\n debtWithdrawalCap: types.WithdrawalCaps.toEncodable(\n fields.debtWithdrawalCap\n ),\n elevationGroups: fields.elevationGroups,\n reserved1: fields.reserved1,\n }\n }\n\n toJSON(): ReserveConfigJSON {\n return {\n status: this.status,\n assetTier: this.assetTier,\n reserved0: this.reserved0,\n multiplierSideBoost: this.multiplierSideBoost,\n multiplierTagBoost: this.multiplierTagBoost,\n protocolTakeRatePct: this.protocolTakeRatePct,\n protocolLiquidationFeePct: this.protocolLiquidationFeePct,\n loanToValuePct: this.loanToValuePct,\n liquidationThresholdPct: this.liquidationThresholdPct,\n minLiquidationBonusBps: this.minLiquidationBonusBps,\n maxLiquidationBonusBps: this.maxLiquidationBonusBps,\n badDebtLiquidationBonusBps: this.badDebtLiquidationBonusBps,\n deleveragingMarginCallPeriodSecs:\n this.deleveragingMarginCallPeriodSecs.toString(),\n deleveragingThresholdSlotsPerBps:\n this.deleveragingThresholdSlotsPerBps.toString(),\n fees: this.fees.toJSON(),\n borrowRateCurve: this.borrowRateCurve.toJSON(),\n borrowFactorPct: this.borrowFactorPct.toString(),\n depositLimit: this.depositLimit.toString(),\n borrowLimit: this.borrowLimit.toString(),\n tokenInfo: this.tokenInfo.toJSON(),\n depositWithdrawalCap: this.depositWithdrawalCap.toJSON(),\n debtWithdrawalCap: this.debtWithdrawalCap.toJSON(),\n elevationGroups: this.elevationGroups,\n reserved1: this.reserved1,\n }\n }\n\n static fromJSON(obj: ReserveConfigJSON): ReserveConfig {\n return new ReserveConfig({\n status: obj.status,\n assetTier: obj.assetTier,\n reserved0: obj.reserved0,\n multiplierSideBoost: obj.multiplierSideBoost,\n multiplierTagBoost: obj.multiplierTagBoost,\n protocolTakeRatePct: obj.protocolTakeRatePct,\n protocolLiquidationFeePct: obj.protocolLiquidationFeePct,\n loanToValuePct: obj.loanToValuePct,\n liquidationThresholdPct: obj.liquidationThresholdPct,\n minLiquidationBonusBps: obj.minLiquidationBonusBps,\n maxLiquidationBonusBps: obj.maxLiquidationBonusBps,\n badDebtLiquidationBonusBps: obj.badDebtLiquidationBonusBps,\n deleveragingMarginCallPeriodSecs: new BN(\n obj.deleveragingMarginCallPeriodSecs\n ),\n deleveragingThresholdSlotsPerBps: new BN(\n obj.deleveragingThresholdSlotsPerBps\n ),\n fees: types.ReserveFees.fromJSON(obj.fees),\n borrowRateCurve: types.BorrowRateCurve.fromJSON(obj.borrowRateCurve),\n borrowFactorPct: new BN(obj.borrowFactorPct),\n depositLimit: new BN(obj.depositLimit),\n borrowLimit: new BN(obj.borrowLimit),\n tokenInfo: types.TokenInfo.fromJSON(obj.tokenInfo),\n depositWithdrawalCap: types.WithdrawalCaps.fromJSON(\n obj.depositWithdrawalCap\n ),\n debtWithdrawalCap: types.WithdrawalCaps.fromJSON(obj.debtWithdrawalCap),\n elevationGroups: obj.elevationGroups,\n reserved1: obj.reserved1,\n })\n }\n\n toEncodable() {\n return ReserveConfig.toEncodable(this)\n }\n}\n"]}
@@ -0,0 +1,31 @@
1
+ import * as types from "../types";
2
+ import * as borsh from "@coral-xyz/borsh";
3
+ export interface CollateralJSON {
4
+ kind: "Collateral";
5
+ }
6
+ export declare class Collateral {
7
+ static readonly discriminator = 0;
8
+ static readonly kind = "Collateral";
9
+ readonly discriminator = 0;
10
+ readonly kind = "Collateral";
11
+ toJSON(): CollateralJSON;
12
+ toEncodable(): {
13
+ Collateral: {};
14
+ };
15
+ }
16
+ export interface DebtJSON {
17
+ kind: "Debt";
18
+ }
19
+ export declare class Debt {
20
+ static readonly discriminator = 1;
21
+ static readonly kind = "Debt";
22
+ readonly discriminator = 1;
23
+ readonly kind = "Debt";
24
+ toJSON(): DebtJSON;
25
+ toEncodable(): {
26
+ Debt: {};
27
+ };
28
+ }
29
+ export declare function fromDecoded(obj: any): types.ReserveFarmKindKind;
30
+ export declare function fromJSON(obj: types.ReserveFarmKindJSON): types.ReserveFarmKindKind;
31
+ export declare function layout(property?: string): borsh.EnumLayout<unknown>;
@@ -0,0 +1,102 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.layout = exports.fromJSON = exports.fromDecoded = exports.Debt = exports.Collateral = void 0;
27
+ const borsh = __importStar(require("@coral-xyz/borsh"));
28
+ class Collateral {
29
+ constructor() {
30
+ this.discriminator = 0;
31
+ this.kind = "Collateral";
32
+ }
33
+ toJSON() {
34
+ return {
35
+ kind: "Collateral",
36
+ };
37
+ }
38
+ toEncodable() {
39
+ return {
40
+ Collateral: {},
41
+ };
42
+ }
43
+ }
44
+ exports.Collateral = Collateral;
45
+ Collateral.discriminator = 0;
46
+ Collateral.kind = "Collateral";
47
+ class Debt {
48
+ constructor() {
49
+ this.discriminator = 1;
50
+ this.kind = "Debt";
51
+ }
52
+ toJSON() {
53
+ return {
54
+ kind: "Debt",
55
+ };
56
+ }
57
+ toEncodable() {
58
+ return {
59
+ Debt: {},
60
+ };
61
+ }
62
+ }
63
+ exports.Debt = Debt;
64
+ Debt.discriminator = 1;
65
+ Debt.kind = "Debt";
66
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
67
+ function fromDecoded(obj) {
68
+ if (typeof obj !== "object") {
69
+ throw new Error("Invalid enum object");
70
+ }
71
+ if ("Collateral" in obj) {
72
+ return new Collateral();
73
+ }
74
+ if ("Debt" in obj) {
75
+ return new Debt();
76
+ }
77
+ throw new Error("Invalid enum object");
78
+ }
79
+ exports.fromDecoded = fromDecoded;
80
+ function fromJSON(obj) {
81
+ switch (obj.kind) {
82
+ case "Collateral": {
83
+ return new Collateral();
84
+ }
85
+ case "Debt": {
86
+ return new Debt();
87
+ }
88
+ }
89
+ }
90
+ exports.fromJSON = fromJSON;
91
+ function layout(property) {
92
+ const ret = borsh.rustEnum([
93
+ borsh.struct([], "Collateral"),
94
+ borsh.struct([], "Debt"),
95
+ ]);
96
+ if (property !== undefined) {
97
+ return ret.replicate(property);
98
+ }
99
+ return ret;
100
+ }
101
+ exports.layout = layout;
102
+ //# sourceMappingURL=ReserveFarmKind.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReserveFarmKind.js","sourceRoot":"","sources":["../../../src/idl_codegen/types/ReserveFarmKind.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,wDAAyC;AAMzC,MAAa,UAAU;IAAvB;QAGW,kBAAa,GAAG,CAAC,CAAA;QACjB,SAAI,GAAG,YAAY,CAAA;IAa9B,CAAC;IAXC,MAAM;QACJ,OAAO;YACL,IAAI,EAAE,YAAY;SACnB,CAAA;IACH,CAAC;IAED,WAAW;QACT,OAAO;YACL,UAAU,EAAE,EAAE;SACf,CAAA;IACH,CAAC;;AAhBH,gCAiBC;AAhBiB,wBAAa,GAAG,CAAC,CAAA;AACjB,eAAI,GAAG,YAAY,CAAA;AAqBrC,MAAa,IAAI;IAAjB;QAGW,kBAAa,GAAG,CAAC,CAAA;QACjB,SAAI,GAAG,MAAM,CAAA;IAaxB,CAAC;IAXC,MAAM;QACJ,OAAO;YACL,IAAI,EAAE,MAAM;SACb,CAAA;IACH,CAAC;IAED,WAAW;QACT,OAAO;YACL,IAAI,EAAE,EAAE;SACT,CAAA;IACH,CAAC;;AAhBH,oBAiBC;AAhBiB,kBAAa,GAAG,CAAC,CAAA;AACjB,SAAI,GAAG,MAAM,CAAA;AAiB/B,8DAA8D;AAC9D,SAAgB,WAAW,CAAC,GAAQ;IAClC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;QAC3B,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;KACvC;IAED,IAAI,YAAY,IAAI,GAAG,EAAE;QACvB,OAAO,IAAI,UAAU,EAAE,CAAA;KACxB;IACD,IAAI,MAAM,IAAI,GAAG,EAAE;QACjB,OAAO,IAAI,IAAI,EAAE,CAAA;KAClB;IAED,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;AACxC,CAAC;AAbD,kCAaC;AAED,SAAgB,QAAQ,CACtB,GAA8B;IAE9B,QAAQ,GAAG,CAAC,IAAI,EAAE;QAChB,KAAK,YAAY,CAAC,CAAC;YACjB,OAAO,IAAI,UAAU,EAAE,CAAA;SACxB;QACD,KAAK,MAAM,CAAC,CAAC;YACX,OAAO,IAAI,IAAI,EAAE,CAAA;SAClB;KACF;AACH,CAAC;AAXD,4BAWC;AAED,SAAgB,MAAM,CAAC,QAAiB;IACtC,MAAM,GAAG,GAAG,KAAK,CAAC,QAAQ,CAAC;QACzB,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,YAAY,CAAC;QAC9B,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC;KACzB,CAAC,CAAA;IACF,IAAI,QAAQ,KAAK,SAAS,EAAE;QAC1B,OAAO,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;KAC/B;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AATD,wBASC","sourcesContent":["import { PublicKey } from \"@solana/web3.js\" // eslint-disable-line @typescript-eslint/no-unused-vars\nimport BN from \"bn.js\" // eslint-disable-line @typescript-eslint/no-unused-vars\nimport * as types from \"../types\" // eslint-disable-line @typescript-eslint/no-unused-vars\nimport * as borsh from \"@coral-xyz/borsh\"\n\nexport interface CollateralJSON {\n kind: \"Collateral\"\n}\n\nexport class Collateral {\n static readonly discriminator = 0\n static readonly kind = \"Collateral\"\n readonly discriminator = 0\n readonly kind = \"Collateral\"\n\n toJSON(): CollateralJSON {\n return {\n kind: \"Collateral\",\n }\n }\n\n toEncodable() {\n return {\n Collateral: {},\n }\n }\n}\n\nexport interface DebtJSON {\n kind: \"Debt\"\n}\n\nexport class Debt {\n static readonly discriminator = 1\n static readonly kind = \"Debt\"\n readonly discriminator = 1\n readonly kind = \"Debt\"\n\n toJSON(): DebtJSON {\n return {\n kind: \"Debt\",\n }\n }\n\n toEncodable() {\n return {\n Debt: {},\n }\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function fromDecoded(obj: any): types.ReserveFarmKindKind {\n if (typeof obj !== \"object\") {\n throw new Error(\"Invalid enum object\")\n }\n\n if (\"Collateral\" in obj) {\n return new Collateral()\n }\n if (\"Debt\" in obj) {\n return new Debt()\n }\n\n throw new Error(\"Invalid enum object\")\n}\n\nexport function fromJSON(\n obj: types.ReserveFarmKindJSON\n): types.ReserveFarmKindKind {\n switch (obj.kind) {\n case \"Collateral\": {\n return new Collateral()\n }\n case \"Debt\": {\n return new Debt()\n }\n }\n}\n\nexport function layout(property?: string) {\n const ret = borsh.rustEnum([\n borsh.struct([], \"Collateral\"),\n borsh.struct([], \"Debt\"),\n ])\n if (property !== undefined) {\n return ret.replicate(property)\n }\n return ret\n}\n"]}
@@ -0,0 +1,78 @@
1
+ import BN from "bn.js";
2
+ import * as types from "../types";
3
+ export interface ReserveFeesFields {
4
+ /**
5
+ * Fee assessed on `BorrowObligationLiquidity`, as scaled fraction (60 bits fractional part)
6
+ * Must be between `0` and `2^60`, such that `2^60 = 1`. A few examples for
7
+ * clarity:
8
+ * 1% = (1 << 60) / 100 = 11529215046068470
9
+ * 0.01% (1 basis point) = 115292150460685
10
+ * 0.00001% (Aave borrow fee) = 115292150461
11
+ */
12
+ borrowFeeSf: BN;
13
+ /**
14
+ * Fee for flash loan, expressed as scaled fraction.
15
+ * 0.3% (Aave flash loan fee) = 0.003 * 2^60 = 3458764513820541
16
+ */
17
+ flashLoanFeeSf: BN;
18
+ /** Used for allignment */
19
+ padding: Array<number>;
20
+ }
21
+ export interface ReserveFeesJSON {
22
+ /**
23
+ * Fee assessed on `BorrowObligationLiquidity`, as scaled fraction (60 bits fractional part)
24
+ * Must be between `0` and `2^60`, such that `2^60 = 1`. A few examples for
25
+ * clarity:
26
+ * 1% = (1 << 60) / 100 = 11529215046068470
27
+ * 0.01% (1 basis point) = 115292150460685
28
+ * 0.00001% (Aave borrow fee) = 115292150461
29
+ */
30
+ borrowFeeSf: string;
31
+ /**
32
+ * Fee for flash loan, expressed as scaled fraction.
33
+ * 0.3% (Aave flash loan fee) = 0.003 * 2^60 = 3458764513820541
34
+ */
35
+ flashLoanFeeSf: string;
36
+ /** Used for allignment */
37
+ padding: Array<number>;
38
+ }
39
+ /**
40
+ * Additional fee information on a reserve
41
+ *
42
+ * These exist separately from interest accrual fees, and are specifically for the program owner
43
+ * and referral fee. The fees are paid out as a percentage of liquidity token amounts during
44
+ * repayments and liquidations.
45
+ */
46
+ export declare class ReserveFees {
47
+ /**
48
+ * Fee assessed on `BorrowObligationLiquidity`, as scaled fraction (60 bits fractional part)
49
+ * Must be between `0` and `2^60`, such that `2^60 = 1`. A few examples for
50
+ * clarity:
51
+ * 1% = (1 << 60) / 100 = 11529215046068470
52
+ * 0.01% (1 basis point) = 115292150460685
53
+ * 0.00001% (Aave borrow fee) = 115292150461
54
+ */
55
+ readonly borrowFeeSf: BN;
56
+ /**
57
+ * Fee for flash loan, expressed as scaled fraction.
58
+ * 0.3% (Aave flash loan fee) = 0.003 * 2^60 = 3458764513820541
59
+ */
60
+ readonly flashLoanFeeSf: BN;
61
+ /** Used for allignment */
62
+ readonly padding: Array<number>;
63
+ constructor(fields: ReserveFeesFields);
64
+ static layout(property?: string): any;
65
+ static fromDecoded(obj: any): types.ReserveFees;
66
+ static toEncodable(fields: ReserveFeesFields): {
67
+ borrowFeeSf: BN;
68
+ flashLoanFeeSf: BN;
69
+ padding: number[];
70
+ };
71
+ toJSON(): ReserveFeesJSON;
72
+ static fromJSON(obj: ReserveFeesJSON): ReserveFees;
73
+ toEncodable(): {
74
+ borrowFeeSf: BN;
75
+ flashLoanFeeSf: BN;
76
+ padding: number[];
77
+ };
78
+ }
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.ReserveFees = void 0;
30
+ const bn_js_1 = __importDefault(require("bn.js")); // eslint-disable-line @typescript-eslint/no-unused-vars
31
+ const borsh = __importStar(require("@coral-xyz/borsh"));
32
+ /**
33
+ * Additional fee information on a reserve
34
+ *
35
+ * These exist separately from interest accrual fees, and are specifically for the program owner
36
+ * and referral fee. The fees are paid out as a percentage of liquidity token amounts during
37
+ * repayments and liquidations.
38
+ */
39
+ class ReserveFees {
40
+ constructor(fields) {
41
+ this.borrowFeeSf = fields.borrowFeeSf;
42
+ this.flashLoanFeeSf = fields.flashLoanFeeSf;
43
+ this.padding = fields.padding;
44
+ }
45
+ static layout(property) {
46
+ return borsh.struct([
47
+ borsh.u64("borrowFeeSf"),
48
+ borsh.u64("flashLoanFeeSf"),
49
+ borsh.array(borsh.u8(), 8, "padding"),
50
+ ], property);
51
+ }
52
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
53
+ static fromDecoded(obj) {
54
+ return new ReserveFees({
55
+ borrowFeeSf: obj.borrowFeeSf,
56
+ flashLoanFeeSf: obj.flashLoanFeeSf,
57
+ padding: obj.padding,
58
+ });
59
+ }
60
+ static toEncodable(fields) {
61
+ return {
62
+ borrowFeeSf: fields.borrowFeeSf,
63
+ flashLoanFeeSf: fields.flashLoanFeeSf,
64
+ padding: fields.padding,
65
+ };
66
+ }
67
+ toJSON() {
68
+ return {
69
+ borrowFeeSf: this.borrowFeeSf.toString(),
70
+ flashLoanFeeSf: this.flashLoanFeeSf.toString(),
71
+ padding: this.padding,
72
+ };
73
+ }
74
+ static fromJSON(obj) {
75
+ return new ReserveFees({
76
+ borrowFeeSf: new bn_js_1.default(obj.borrowFeeSf),
77
+ flashLoanFeeSf: new bn_js_1.default(obj.flashLoanFeeSf),
78
+ padding: obj.padding,
79
+ });
80
+ }
81
+ toEncodable() {
82
+ return ReserveFees.toEncodable(this);
83
+ }
84
+ }
85
+ exports.ReserveFees = ReserveFees;
86
+ //# sourceMappingURL=ReserveFees.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReserveFees.js","sourceRoot":"","sources":["../../../src/idl_codegen/types/ReserveFees.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,kDAAsB,CAAC,wDAAwD;AAE/E,wDAAyC;AAwCzC;;;;;;GAMG;AACH,MAAa,WAAW;IAkBtB,YAAY,MAAyB;QACnC,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAA;QACrC,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAA;QAC3C,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAA;IAC/B,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,QAAiB;QAC7B,OAAO,KAAK,CAAC,MAAM,CACjB;YACE,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC;YACxB,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC;YAC3B,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,SAAS,CAAC;SACtC,EACD,QAAQ,CACT,CAAA;IACH,CAAC;IAED,8DAA8D;IAC9D,MAAM,CAAC,WAAW,CAAC,GAAQ;QACzB,OAAO,IAAI,WAAW,CAAC;YACrB,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,cAAc,EAAE,GAAG,CAAC,cAAc;YAClC,OAAO,EAAE,GAAG,CAAC,OAAO;SACrB,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,MAAyB;QAC1C,OAAO;YACL,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,cAAc,EAAE,MAAM,CAAC,cAAc;YACrC,OAAO,EAAE,MAAM,CAAC,OAAO;SACxB,CAAA;IACH,CAAC;IAED,MAAM;QACJ,OAAO;YACL,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE;YACxC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE;YAC9C,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAA;IACH,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,GAAoB;QAClC,OAAO,IAAI,WAAW,CAAC;YACrB,WAAW,EAAE,IAAI,eAAE,CAAC,GAAG,CAAC,WAAW,CAAC;YACpC,cAAc,EAAE,IAAI,eAAE,CAAC,GAAG,CAAC,cAAc,CAAC;YAC1C,OAAO,EAAE,GAAG,CAAC,OAAO;SACrB,CAAC,CAAA;IACJ,CAAC;IAED,WAAW;QACT,OAAO,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;IACtC,CAAC;CACF;AAvED,kCAuEC","sourcesContent":["import { PublicKey } from \"@solana/web3.js\" // eslint-disable-line @typescript-eslint/no-unused-vars\nimport BN from \"bn.js\" // eslint-disable-line @typescript-eslint/no-unused-vars\nimport * as types from \"../types\" // eslint-disable-line @typescript-eslint/no-unused-vars\nimport * as borsh from \"@coral-xyz/borsh\"\n\nexport interface ReserveFeesFields {\n /**\n * Fee assessed on `BorrowObligationLiquidity`, as scaled fraction (60 bits fractional part)\n * Must be between `0` and `2^60`, such that `2^60 = 1`. A few examples for\n * clarity:\n * 1% = (1 << 60) / 100 = 11529215046068470\n * 0.01% (1 basis point) = 115292150460685\n * 0.00001% (Aave borrow fee) = 115292150461\n */\n borrowFeeSf: BN\n /**\n * Fee for flash loan, expressed as scaled fraction.\n * 0.3% (Aave flash loan fee) = 0.003 * 2^60 = 3458764513820541\n */\n flashLoanFeeSf: BN\n /** Used for allignment */\n padding: Array<number>\n}\n\nexport interface ReserveFeesJSON {\n /**\n * Fee assessed on `BorrowObligationLiquidity`, as scaled fraction (60 bits fractional part)\n * Must be between `0` and `2^60`, such that `2^60 = 1`. A few examples for\n * clarity:\n * 1% = (1 << 60) / 100 = 11529215046068470\n * 0.01% (1 basis point) = 115292150460685\n * 0.00001% (Aave borrow fee) = 115292150461\n */\n borrowFeeSf: string\n /**\n * Fee for flash loan, expressed as scaled fraction.\n * 0.3% (Aave flash loan fee) = 0.003 * 2^60 = 3458764513820541\n */\n flashLoanFeeSf: string\n /** Used for allignment */\n padding: Array<number>\n}\n\n/**\n * Additional fee information on a reserve\n *\n * These exist separately from interest accrual fees, and are specifically for the program owner\n * and referral fee. The fees are paid out as a percentage of liquidity token amounts during\n * repayments and liquidations.\n */\nexport class ReserveFees {\n /**\n * Fee assessed on `BorrowObligationLiquidity`, as scaled fraction (60 bits fractional part)\n * Must be between `0` and `2^60`, such that `2^60 = 1`. A few examples for\n * clarity:\n * 1% = (1 << 60) / 100 = 11529215046068470\n * 0.01% (1 basis point) = 115292150460685\n * 0.00001% (Aave borrow fee) = 115292150461\n */\n readonly borrowFeeSf: BN\n /**\n * Fee for flash loan, expressed as scaled fraction.\n * 0.3% (Aave flash loan fee) = 0.003 * 2^60 = 3458764513820541\n */\n readonly flashLoanFeeSf: BN\n /** Used for allignment */\n readonly padding: Array<number>\n\n constructor(fields: ReserveFeesFields) {\n this.borrowFeeSf = fields.borrowFeeSf\n this.flashLoanFeeSf = fields.flashLoanFeeSf\n this.padding = fields.padding\n }\n\n static layout(property?: string) {\n return borsh.struct(\n [\n borsh.u64(\"borrowFeeSf\"),\n borsh.u64(\"flashLoanFeeSf\"),\n borsh.array(borsh.u8(), 8, \"padding\"),\n ],\n property\n )\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n static fromDecoded(obj: any) {\n return new ReserveFees({\n borrowFeeSf: obj.borrowFeeSf,\n flashLoanFeeSf: obj.flashLoanFeeSf,\n padding: obj.padding,\n })\n }\n\n static toEncodable(fields: ReserveFeesFields) {\n return {\n borrowFeeSf: fields.borrowFeeSf,\n flashLoanFeeSf: fields.flashLoanFeeSf,\n padding: fields.padding,\n }\n }\n\n toJSON(): ReserveFeesJSON {\n return {\n borrowFeeSf: this.borrowFeeSf.toString(),\n flashLoanFeeSf: this.flashLoanFeeSf.toString(),\n padding: this.padding,\n }\n }\n\n static fromJSON(obj: ReserveFeesJSON): ReserveFees {\n return new ReserveFees({\n borrowFeeSf: new BN(obj.borrowFeeSf),\n flashLoanFeeSf: new BN(obj.flashLoanFeeSf),\n padding: obj.padding,\n })\n }\n\n toEncodable() {\n return ReserveFees.toEncodable(this)\n }\n}\n"]}
@@ -0,0 +1,173 @@
1
+ import { PublicKey } from "@solana/web3.js";
2
+ import BN from "bn.js";
3
+ import * as types from "../types";
4
+ export interface ReserveLiquidityFields {
5
+ /** Reserve liquidity mint address */
6
+ mintPubkey: PublicKey;
7
+ /** Reserve liquidity supply address */
8
+ supplyVault: PublicKey;
9
+ /** Reserve liquidity fee collection address */
10
+ feeVault: PublicKey;
11
+ /** Reserve liquidity available */
12
+ availableAmount: BN;
13
+ /** Reserve liquidity borrowed (scaled fraction) */
14
+ borrowedAmountSf: BN;
15
+ /** Reserve liquidity market price in quote currency (scaled fraction) */
16
+ marketPriceSf: BN;
17
+ /** Unix timestamp of the market price (from the oracle) */
18
+ marketPriceLastUpdatedTs: BN;
19
+ /** Reserve liquidity mint decimals */
20
+ mintDecimals: BN;
21
+ /**
22
+ * Timestamp in slots when the last refresh reserve detected that the liquidity amount is above the deposit cap. When this threshold is crossed, then redemptions (auto-deleverage) are enabled.
23
+ * If the threshold is not crossed, then the timestamp is set to 0
24
+ */
25
+ depositLimitCrossedSlot: BN;
26
+ /**
27
+ * Timestamp in slots when the last refresh reserve detected that the borrowed amount is above the borrow cap. When this threshold is crossed, then redemptions (auto-deleverage) are enabled.
28
+ * If the threshold is not crossed, then the timestamp is set to 0
29
+ */
30
+ borrowLimitCrossedSlot: BN;
31
+ /** Reserve liquidity cumulative borrow rate (scaled fraction) */
32
+ cumulativeBorrowRateBsf: types.BigFractionBytesFields;
33
+ /** Reserve cumulative protocol fees (scaled fraction) */
34
+ accumulatedProtocolFeesSf: BN;
35
+ /** Reserve cumulative referrer fees (scaled fraction) */
36
+ accumulatedReferrerFeesSf: BN;
37
+ /** Reserve pending referrer fees, to be claimed in refresh_obligation by referrer or protocol (scaled fraction) */
38
+ pendingReferrerFeesSf: BN;
39
+ /** Reserve referrer fee absolute rate calculated at each refresh_reserve operation (scaled fraction) */
40
+ absoluteReferralRateSf: BN;
41
+ padding2: Array<BN>;
42
+ padding3: Array<BN>;
43
+ }
44
+ export interface ReserveLiquidityJSON {
45
+ /** Reserve liquidity mint address */
46
+ mintPubkey: string;
47
+ /** Reserve liquidity supply address */
48
+ supplyVault: string;
49
+ /** Reserve liquidity fee collection address */
50
+ feeVault: string;
51
+ /** Reserve liquidity available */
52
+ availableAmount: string;
53
+ /** Reserve liquidity borrowed (scaled fraction) */
54
+ borrowedAmountSf: string;
55
+ /** Reserve liquidity market price in quote currency (scaled fraction) */
56
+ marketPriceSf: string;
57
+ /** Unix timestamp of the market price (from the oracle) */
58
+ marketPriceLastUpdatedTs: string;
59
+ /** Reserve liquidity mint decimals */
60
+ mintDecimals: string;
61
+ /**
62
+ * Timestamp in slots when the last refresh reserve detected that the liquidity amount is above the deposit cap. When this threshold is crossed, then redemptions (auto-deleverage) are enabled.
63
+ * If the threshold is not crossed, then the timestamp is set to 0
64
+ */
65
+ depositLimitCrossedSlot: string;
66
+ /**
67
+ * Timestamp in slots when the last refresh reserve detected that the borrowed amount is above the borrow cap. When this threshold is crossed, then redemptions (auto-deleverage) are enabled.
68
+ * If the threshold is not crossed, then the timestamp is set to 0
69
+ */
70
+ borrowLimitCrossedSlot: string;
71
+ /** Reserve liquidity cumulative borrow rate (scaled fraction) */
72
+ cumulativeBorrowRateBsf: types.BigFractionBytesJSON;
73
+ /** Reserve cumulative protocol fees (scaled fraction) */
74
+ accumulatedProtocolFeesSf: string;
75
+ /** Reserve cumulative referrer fees (scaled fraction) */
76
+ accumulatedReferrerFeesSf: string;
77
+ /** Reserve pending referrer fees, to be claimed in refresh_obligation by referrer or protocol (scaled fraction) */
78
+ pendingReferrerFeesSf: string;
79
+ /** Reserve referrer fee absolute rate calculated at each refresh_reserve operation (scaled fraction) */
80
+ absoluteReferralRateSf: string;
81
+ padding2: Array<string>;
82
+ padding3: Array<string>;
83
+ }
84
+ /** Reserve liquidity */
85
+ export declare class ReserveLiquidity {
86
+ /** Reserve liquidity mint address */
87
+ readonly mintPubkey: PublicKey;
88
+ /** Reserve liquidity supply address */
89
+ readonly supplyVault: PublicKey;
90
+ /** Reserve liquidity fee collection address */
91
+ readonly feeVault: PublicKey;
92
+ /** Reserve liquidity available */
93
+ readonly availableAmount: BN;
94
+ /** Reserve liquidity borrowed (scaled fraction) */
95
+ readonly borrowedAmountSf: BN;
96
+ /** Reserve liquidity market price in quote currency (scaled fraction) */
97
+ readonly marketPriceSf: BN;
98
+ /** Unix timestamp of the market price (from the oracle) */
99
+ readonly marketPriceLastUpdatedTs: BN;
100
+ /** Reserve liquidity mint decimals */
101
+ readonly mintDecimals: BN;
102
+ /**
103
+ * Timestamp in slots when the last refresh reserve detected that the liquidity amount is above the deposit cap. When this threshold is crossed, then redemptions (auto-deleverage) are enabled.
104
+ * If the threshold is not crossed, then the timestamp is set to 0
105
+ */
106
+ readonly depositLimitCrossedSlot: BN;
107
+ /**
108
+ * Timestamp in slots when the last refresh reserve detected that the borrowed amount is above the borrow cap. When this threshold is crossed, then redemptions (auto-deleverage) are enabled.
109
+ * If the threshold is not crossed, then the timestamp is set to 0
110
+ */
111
+ readonly borrowLimitCrossedSlot: BN;
112
+ /** Reserve liquidity cumulative borrow rate (scaled fraction) */
113
+ readonly cumulativeBorrowRateBsf: types.BigFractionBytes;
114
+ /** Reserve cumulative protocol fees (scaled fraction) */
115
+ readonly accumulatedProtocolFeesSf: BN;
116
+ /** Reserve cumulative referrer fees (scaled fraction) */
117
+ readonly accumulatedReferrerFeesSf: BN;
118
+ /** Reserve pending referrer fees, to be claimed in refresh_obligation by referrer or protocol (scaled fraction) */
119
+ readonly pendingReferrerFeesSf: BN;
120
+ /** Reserve referrer fee absolute rate calculated at each refresh_reserve operation (scaled fraction) */
121
+ readonly absoluteReferralRateSf: BN;
122
+ readonly padding2: Array<BN>;
123
+ readonly padding3: Array<BN>;
124
+ constructor(fields: ReserveLiquidityFields);
125
+ static layout(property?: string): any;
126
+ static fromDecoded(obj: any): types.ReserveLiquidity;
127
+ static toEncodable(fields: ReserveLiquidityFields): {
128
+ mintPubkey: PublicKey;
129
+ supplyVault: PublicKey;
130
+ feeVault: PublicKey;
131
+ availableAmount: BN;
132
+ borrowedAmountSf: BN;
133
+ marketPriceSf: BN;
134
+ marketPriceLastUpdatedTs: BN;
135
+ mintDecimals: BN;
136
+ depositLimitCrossedSlot: BN;
137
+ borrowLimitCrossedSlot: BN;
138
+ cumulativeBorrowRateBsf: {
139
+ value: BN[];
140
+ padding: BN[];
141
+ };
142
+ accumulatedProtocolFeesSf: BN;
143
+ accumulatedReferrerFeesSf: BN;
144
+ pendingReferrerFeesSf: BN;
145
+ absoluteReferralRateSf: BN;
146
+ padding2: BN[];
147
+ padding3: BN[];
148
+ };
149
+ toJSON(): ReserveLiquidityJSON;
150
+ static fromJSON(obj: ReserveLiquidityJSON): ReserveLiquidity;
151
+ toEncodable(): {
152
+ mintPubkey: PublicKey;
153
+ supplyVault: PublicKey;
154
+ feeVault: PublicKey;
155
+ availableAmount: BN;
156
+ borrowedAmountSf: BN;
157
+ marketPriceSf: BN;
158
+ marketPriceLastUpdatedTs: BN;
159
+ mintDecimals: BN;
160
+ depositLimitCrossedSlot: BN;
161
+ borrowLimitCrossedSlot: BN;
162
+ cumulativeBorrowRateBsf: {
163
+ value: BN[];
164
+ padding: BN[];
165
+ };
166
+ accumulatedProtocolFeesSf: BN;
167
+ accumulatedReferrerFeesSf: BN;
168
+ pendingReferrerFeesSf: BN;
169
+ absoluteReferralRateSf: BN;
170
+ padding2: BN[];
171
+ padding3: BN[];
172
+ };
173
+ }