@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,122 @@
1
+ import { PublicKey } from '@solana/web3.js';
2
+ /**
3
+ * Lending market authority seed
4
+ */
5
+ export declare const LENDING_MARKET_AUTH_SEED = "lma";
6
+ /**
7
+ * Reserve liquidity supply seed
8
+ */
9
+ export declare const RESERVE_LIQ_SUPPLY_SEED = "reserve_liq_supply";
10
+ /**
11
+ * Reserve fee vault seed
12
+ */
13
+ export declare const FEE_RECEIVER_SEED = "fee_receiver";
14
+ /**
15
+ * Reserve collateral mint seed
16
+ */
17
+ export declare const RESERVE_COLL_MINT_SEED = "reserve_coll_mint";
18
+ /**
19
+ * Reserve collateral supply seed
20
+ */
21
+ export declare const RESERVE_COLL_SUPPLY_SEED = "reserve_coll_supply";
22
+ /**
23
+ * User metadata seed
24
+ */
25
+ export declare const BASE_SEED_USER_METADATA = "user_meta";
26
+ /**
27
+ * Referrer token state seed
28
+ */
29
+ export declare const BASE_SEED_REFERRER_TOKEN_STATE = "referrer_acc";
30
+ /**
31
+ * Referrer state seed
32
+ */
33
+ export declare const BASE_SEED_REFERRER_STATE = "ref_state";
34
+ /**
35
+ * Short url seed
36
+ */
37
+ export declare const BASE_SEED_SHORT_URL = "short_url";
38
+ /**
39
+ * Encapsulates all the PDAs for a given reserve
40
+ */
41
+ export interface ReservePdas {
42
+ liquiditySupplyVault: PublicKey;
43
+ collateralMint: PublicKey;
44
+ collateralSupplyVault: PublicKey;
45
+ feeVault: PublicKey;
46
+ }
47
+ /**
48
+ * Returns all the PDAs for the given reserve
49
+ * @param programId
50
+ * @param market
51
+ * @param mint
52
+ * @returns ReservePdas
53
+ */
54
+ export declare function reservePdas(programId: PublicKey, market: PublicKey, mint: PublicKey): ReservePdas;
55
+ /**
56
+ * Returns the PDA and bump for the lending market authority
57
+ * @param lendingMarket
58
+ * @param programId
59
+ * @returns [authority, bump]
60
+ */
61
+ export declare function lendingMarketAuthPda(lendingMarket: PublicKey, programId?: PublicKey): [PublicKey, number];
62
+ /**
63
+ * Returns the PDA and bump for the reserve liquidity supply
64
+ * @param lendingMarket
65
+ * @param mint
66
+ * @param programId
67
+ * @returns [pda, bump]
68
+ */
69
+ export declare function reserveLiqSupplyPda(lendingMarket: PublicKey, mint: PublicKey, programId?: PublicKey): [PublicKey, number];
70
+ /**
71
+ * Returns the PDA and bump for the reserve fee vault
72
+ * @param lendingMarket
73
+ * @param mint
74
+ * @param programId
75
+ * @returns [vaultPda, bump]
76
+ */
77
+ export declare function reserveFeeVaultPda(lendingMarket: PublicKey, mint: PublicKey, programId?: PublicKey): [PublicKey, number];
78
+ /**
79
+ * Returns the PDA and bump for the reserve collateral mint
80
+ * @param lendingMarket
81
+ * @param mint
82
+ * @param programId
83
+ * @returns [mintPda, bump]
84
+ */
85
+ export declare function reserveCollateralMintPda(lendingMarket: PublicKey, mint: PublicKey, programId?: PublicKey): [PublicKey, number];
86
+ /**
87
+ * Returns the PDA and bump for the reserve collateral supply
88
+ * @param lendingMarket
89
+ * @param mint
90
+ * @param programId
91
+ * @returns [pda, bump]
92
+ */
93
+ export declare function reserveCollateralSupplyPda(lendingMarket: PublicKey, mint: PublicKey, programId?: PublicKey): [PublicKey, number];
94
+ /**
95
+ * Returns the PDA and bump for the user metadata state
96
+ * @param user
97
+ * @param programId
98
+ * @returns [pda, bump]
99
+ */
100
+ export declare function userMetadataPda(user: PublicKey, programId?: PublicKey): [PublicKey, number];
101
+ /**
102
+ * Returns the PDA and bump for the referrer account for a mint
103
+ * @param referrer
104
+ * @param mint
105
+ * @param programId
106
+ * @returns [pda, bump]
107
+ */
108
+ export declare function referrerTokenStatePda(referrer: PublicKey, reserve: PublicKey, programId?: PublicKey): [PublicKey, number];
109
+ /**
110
+ * Returns the PDA and bump for the referrer state
111
+ * @param referrer
112
+ * @param programId
113
+ * @returns [pda, bump]
114
+ */
115
+ export declare function referrerStatePda(referrer: PublicKey, programId?: PublicKey): [PublicKey, number];
116
+ /**
117
+ * Returns the PDA and bump for the short url
118
+ * @param shortUrl
119
+ * @param programId
120
+ * @returns [pda, bump]
121
+ */
122
+ export declare function shortUrlPda(shortUrl: string, programId?: PublicKey): [PublicKey, number];
@@ -0,0 +1,153 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.shortUrlPda = exports.referrerStatePda = exports.referrerTokenStatePda = exports.userMetadataPda = exports.reserveCollateralSupplyPda = exports.reserveCollateralMintPda = exports.reserveFeeVaultPda = exports.reserveLiqSupplyPda = exports.lendingMarketAuthPda = exports.reservePdas = exports.BASE_SEED_SHORT_URL = exports.BASE_SEED_REFERRER_STATE = exports.BASE_SEED_REFERRER_TOKEN_STATE = exports.BASE_SEED_USER_METADATA = exports.RESERVE_COLL_SUPPLY_SEED = exports.RESERVE_COLL_MINT_SEED = exports.FEE_RECEIVER_SEED = exports.RESERVE_LIQ_SUPPLY_SEED = exports.LENDING_MARKET_AUTH_SEED = void 0;
4
+ const web3_js_1 = require("@solana/web3.js");
5
+ const programId_1 = require("../idl_codegen/programId");
6
+ /**
7
+ * Lending market authority seed
8
+ */
9
+ exports.LENDING_MARKET_AUTH_SEED = 'lma';
10
+ /**
11
+ * Reserve liquidity supply seed
12
+ */
13
+ exports.RESERVE_LIQ_SUPPLY_SEED = 'reserve_liq_supply';
14
+ /**
15
+ * Reserve fee vault seed
16
+ */
17
+ exports.FEE_RECEIVER_SEED = 'fee_receiver';
18
+ /**
19
+ * Reserve collateral mint seed
20
+ */
21
+ exports.RESERVE_COLL_MINT_SEED = 'reserve_coll_mint';
22
+ /**
23
+ * Reserve collateral supply seed
24
+ */
25
+ exports.RESERVE_COLL_SUPPLY_SEED = 'reserve_coll_supply';
26
+ /**
27
+ * User metadata seed
28
+ */
29
+ exports.BASE_SEED_USER_METADATA = 'user_meta';
30
+ /**
31
+ * Referrer token state seed
32
+ */
33
+ exports.BASE_SEED_REFERRER_TOKEN_STATE = 'referrer_acc';
34
+ /**
35
+ * Referrer state seed
36
+ */
37
+ exports.BASE_SEED_REFERRER_STATE = 'ref_state';
38
+ /**
39
+ * Short url seed
40
+ */
41
+ exports.BASE_SEED_SHORT_URL = 'short_url';
42
+ /**
43
+ * Returns all the PDAs for the given reserve
44
+ * @param programId
45
+ * @param market
46
+ * @param mint
47
+ * @returns ReservePdas
48
+ */
49
+ function reservePdas(programId, market, mint) {
50
+ return {
51
+ liquiditySupplyVault: reserveLiqSupplyPda(market, mint, programId)[0],
52
+ collateralMint: reserveCollateralMintPda(market, mint, programId)[0],
53
+ collateralSupplyVault: reserveCollateralSupplyPda(market, mint, programId)[0],
54
+ feeVault: reserveFeeVaultPda(market, mint, programId)[0],
55
+ };
56
+ }
57
+ exports.reservePdas = reservePdas;
58
+ /**
59
+ * Returns the PDA and bump for the lending market authority
60
+ * @param lendingMarket
61
+ * @param programId
62
+ * @returns [authority, bump]
63
+ */
64
+ function lendingMarketAuthPda(lendingMarket, programId = programId_1.PROGRAM_ID) {
65
+ return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(exports.LENDING_MARKET_AUTH_SEED), lendingMarket.toBuffer()], programId);
66
+ }
67
+ exports.lendingMarketAuthPda = lendingMarketAuthPda;
68
+ /**
69
+ * Returns the PDA and bump for the reserve liquidity supply
70
+ * @param lendingMarket
71
+ * @param mint
72
+ * @param programId
73
+ * @returns [pda, bump]
74
+ */
75
+ function reserveLiqSupplyPda(lendingMarket, mint, programId = programId_1.PROGRAM_ID) {
76
+ return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(exports.RESERVE_LIQ_SUPPLY_SEED), lendingMarket.toBuffer(), mint.toBuffer()], programId);
77
+ }
78
+ exports.reserveLiqSupplyPda = reserveLiqSupplyPda;
79
+ /**
80
+ * Returns the PDA and bump for the reserve fee vault
81
+ * @param lendingMarket
82
+ * @param mint
83
+ * @param programId
84
+ * @returns [vaultPda, bump]
85
+ */
86
+ function reserveFeeVaultPda(lendingMarket, mint, programId = programId_1.PROGRAM_ID) {
87
+ return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(exports.FEE_RECEIVER_SEED), lendingMarket.toBuffer(), mint.toBuffer()], programId);
88
+ }
89
+ exports.reserveFeeVaultPda = reserveFeeVaultPda;
90
+ /**
91
+ * Returns the PDA and bump for the reserve collateral mint
92
+ * @param lendingMarket
93
+ * @param mint
94
+ * @param programId
95
+ * @returns [mintPda, bump]
96
+ */
97
+ function reserveCollateralMintPda(lendingMarket, mint, programId = programId_1.PROGRAM_ID) {
98
+ return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(exports.RESERVE_COLL_MINT_SEED), lendingMarket.toBuffer(), mint.toBuffer()], programId);
99
+ }
100
+ exports.reserveCollateralMintPda = reserveCollateralMintPda;
101
+ /**
102
+ * Returns the PDA and bump for the reserve collateral supply
103
+ * @param lendingMarket
104
+ * @param mint
105
+ * @param programId
106
+ * @returns [pda, bump]
107
+ */
108
+ function reserveCollateralSupplyPda(lendingMarket, mint, programId = programId_1.PROGRAM_ID) {
109
+ return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(exports.RESERVE_COLL_SUPPLY_SEED), lendingMarket.toBuffer(), mint.toBuffer()], programId);
110
+ }
111
+ exports.reserveCollateralSupplyPda = reserveCollateralSupplyPda;
112
+ /**
113
+ * Returns the PDA and bump for the user metadata state
114
+ * @param user
115
+ * @param programId
116
+ * @returns [pda, bump]
117
+ */
118
+ function userMetadataPda(user, programId = programId_1.PROGRAM_ID) {
119
+ return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(exports.BASE_SEED_USER_METADATA), user.toBuffer()], programId);
120
+ }
121
+ exports.userMetadataPda = userMetadataPda;
122
+ /**
123
+ * Returns the PDA and bump for the referrer account for a mint
124
+ * @param referrer
125
+ * @param mint
126
+ * @param programId
127
+ * @returns [pda, bump]
128
+ */
129
+ function referrerTokenStatePda(referrer, reserve, programId = programId_1.PROGRAM_ID) {
130
+ return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(exports.BASE_SEED_REFERRER_TOKEN_STATE), referrer.toBuffer(), reserve.toBuffer()], programId);
131
+ }
132
+ exports.referrerTokenStatePda = referrerTokenStatePda;
133
+ /**
134
+ * Returns the PDA and bump for the referrer state
135
+ * @param referrer
136
+ * @param programId
137
+ * @returns [pda, bump]
138
+ */
139
+ function referrerStatePda(referrer, programId = programId_1.PROGRAM_ID) {
140
+ return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(exports.BASE_SEED_REFERRER_STATE), referrer.toBuffer()], programId);
141
+ }
142
+ exports.referrerStatePda = referrerStatePda;
143
+ /**
144
+ * Returns the PDA and bump for the short url
145
+ * @param shortUrl
146
+ * @param programId
147
+ * @returns [pda, bump]
148
+ */
149
+ function shortUrlPda(shortUrl, programId = programId_1.PROGRAM_ID) {
150
+ return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(exports.BASE_SEED_SHORT_URL), Buffer.from(shortUrl)], programId);
151
+ }
152
+ exports.shortUrlPda = shortUrlPda;
153
+ //# sourceMappingURL=seeds.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"seeds.js","sourceRoot":"","sources":["../../src/utils/seeds.ts"],"names":[],"mappings":"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","sourcesContent":["import { PublicKey } from '@solana/web3.js';\nimport { PROGRAM_ID } from '../idl_codegen/programId';\n\n/**\n * Lending market authority seed\n */\nexport const LENDING_MARKET_AUTH_SEED = 'lma';\n/**\n * Reserve liquidity supply seed\n */\nexport const RESERVE_LIQ_SUPPLY_SEED = 'reserve_liq_supply';\n/**\n * Reserve fee vault seed\n */\nexport const FEE_RECEIVER_SEED = 'fee_receiver';\n/**\n * Reserve collateral mint seed\n */\nexport const RESERVE_COLL_MINT_SEED = 'reserve_coll_mint';\n/**\n * Reserve collateral supply seed\n */\nexport const RESERVE_COLL_SUPPLY_SEED = 'reserve_coll_supply';\n/**\n * User metadata seed\n */\nexport const BASE_SEED_USER_METADATA = 'user_meta';\n/**\n * Referrer token state seed\n */\nexport const BASE_SEED_REFERRER_TOKEN_STATE = 'referrer_acc';\n/**\n * Referrer state seed\n */\nexport const BASE_SEED_REFERRER_STATE = 'ref_state';\n/**\n * Short url seed\n */\nexport const BASE_SEED_SHORT_URL = 'short_url';\n\n/**\n * Encapsulates all the PDAs for a given reserve\n */\nexport interface ReservePdas {\n liquiditySupplyVault: PublicKey;\n collateralMint: PublicKey;\n collateralSupplyVault: PublicKey;\n feeVault: PublicKey;\n}\n\n/**\n * Returns all the PDAs for the given reserve\n * @param programId\n * @param market\n * @param mint\n * @returns ReservePdas\n */\nexport function reservePdas(programId: PublicKey, market: PublicKey, mint: PublicKey): ReservePdas {\n return {\n liquiditySupplyVault: reserveLiqSupplyPda(market, mint, programId)[0],\n collateralMint: reserveCollateralMintPda(market, mint, programId)[0],\n collateralSupplyVault: reserveCollateralSupplyPda(market, mint, programId)[0],\n feeVault: reserveFeeVaultPda(market, mint, programId)[0],\n };\n}\n\n/**\n * Returns the PDA and bump for the lending market authority\n * @param lendingMarket\n * @param programId\n * @returns [authority, bump]\n */\nexport function lendingMarketAuthPda(lendingMarket: PublicKey, programId: PublicKey = PROGRAM_ID) {\n return PublicKey.findProgramAddressSync([Buffer.from(LENDING_MARKET_AUTH_SEED), lendingMarket.toBuffer()], programId);\n}\n\n/**\n * Returns the PDA and bump for the reserve liquidity supply\n * @param lendingMarket\n * @param mint\n * @param programId\n * @returns [pda, bump]\n */\nexport function reserveLiqSupplyPda(lendingMarket: PublicKey, mint: PublicKey, programId: PublicKey = PROGRAM_ID) {\n return PublicKey.findProgramAddressSync(\n [Buffer.from(RESERVE_LIQ_SUPPLY_SEED), lendingMarket.toBuffer(), mint.toBuffer()],\n programId\n );\n}\n\n/**\n * Returns the PDA and bump for the reserve fee vault\n * @param lendingMarket\n * @param mint\n * @param programId\n * @returns [vaultPda, bump]\n */\nexport function reserveFeeVaultPda(lendingMarket: PublicKey, mint: PublicKey, programId: PublicKey = PROGRAM_ID) {\n return PublicKey.findProgramAddressSync(\n [Buffer.from(FEE_RECEIVER_SEED), lendingMarket.toBuffer(), mint.toBuffer()],\n programId\n );\n}\n\n/**\n * Returns the PDA and bump for the reserve collateral mint\n * @param lendingMarket\n * @param mint\n * @param programId\n * @returns [mintPda, bump]\n */\nexport function reserveCollateralMintPda(lendingMarket: PublicKey, mint: PublicKey, programId: PublicKey = PROGRAM_ID) {\n return PublicKey.findProgramAddressSync(\n [Buffer.from(RESERVE_COLL_MINT_SEED), lendingMarket.toBuffer(), mint.toBuffer()],\n programId\n );\n}\n\n/**\n * Returns the PDA and bump for the reserve collateral supply\n * @param lendingMarket\n * @param mint\n * @param programId\n * @returns [pda, bump]\n */\nexport function reserveCollateralSupplyPda(\n lendingMarket: PublicKey,\n mint: PublicKey,\n programId: PublicKey = PROGRAM_ID\n) {\n return PublicKey.findProgramAddressSync(\n [Buffer.from(RESERVE_COLL_SUPPLY_SEED), lendingMarket.toBuffer(), mint.toBuffer()],\n programId\n );\n}\n\n/**\n * Returns the PDA and bump for the user metadata state\n * @param user\n * @param programId\n * @returns [pda, bump]\n */\nexport function userMetadataPda(user: PublicKey, programId: PublicKey = PROGRAM_ID) {\n return PublicKey.findProgramAddressSync([Buffer.from(BASE_SEED_USER_METADATA), user.toBuffer()], programId);\n}\n\n/**\n * Returns the PDA and bump for the referrer account for a mint\n * @param referrer\n * @param mint\n * @param programId\n * @returns [pda, bump]\n */\nexport function referrerTokenStatePda(referrer: PublicKey, reserve: PublicKey, programId: PublicKey = PROGRAM_ID) {\n return PublicKey.findProgramAddressSync(\n [Buffer.from(BASE_SEED_REFERRER_TOKEN_STATE), referrer.toBuffer(), reserve.toBuffer()],\n programId\n );\n}\n\n/**\n * Returns the PDA and bump for the referrer state\n * @param referrer\n * @param programId\n * @returns [pda, bump]\n */\nexport function referrerStatePda(referrer: PublicKey, programId: PublicKey = PROGRAM_ID) {\n return PublicKey.findProgramAddressSync([Buffer.from(BASE_SEED_REFERRER_STATE), referrer.toBuffer()], programId);\n}\n\n/**\n * Returns the PDA and bump for the short url\n * @param shortUrl\n * @param programId\n * @returns [pda, bump]\n */\nexport function shortUrlPda(shortUrl: string, programId: PublicKey = PROGRAM_ID) {\n return PublicKey.findProgramAddressSync([Buffer.from(BASE_SEED_SHORT_URL), Buffer.from(shortUrl)], programId);\n}\n"]}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Convert slots to seconds
3
+ * @param slots
4
+ * @return seconds
5
+ */
6
+ export declare function toSeconds(slots: number): number;
7
+ /**
8
+ * Convert slots to hours
9
+ * @param slots
10
+ * @return hours
11
+ */
12
+ export declare function toHours(slots: number): number;
13
+ /**
14
+ * Convert slots to days
15
+ * @param slots
16
+ * @return days
17
+ */
18
+ export declare function toDays(slots: number): number;
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toDays = exports.toHours = exports.toSeconds = void 0;
4
+ const constants_1 = require("./constants");
5
+ /**
6
+ * Convert slots to seconds
7
+ * @param slots
8
+ * @return seconds
9
+ */
10
+ function toSeconds(slots) {
11
+ return Math.trunc(slots / constants_1.SLOTS_PER_SECOND);
12
+ }
13
+ exports.toSeconds = toSeconds;
14
+ /**
15
+ * Convert slots to hours
16
+ * @param slots
17
+ * @return hours
18
+ */
19
+ function toHours(slots) {
20
+ return Math.trunc(slots / constants_1.SLOTS_PER_HOUR);
21
+ }
22
+ exports.toHours = toHours;
23
+ /**
24
+ * Convert slots to days
25
+ * @param slots
26
+ * @return days
27
+ */
28
+ function toDays(slots) {
29
+ return Math.trunc(slots / constants_1.SLOTS_PER_DAY);
30
+ }
31
+ exports.toDays = toDays;
32
+ //# sourceMappingURL=slots.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slots.js","sourceRoot":"","sources":["../../src/utils/slots.ts"],"names":[],"mappings":";;;AAAA,2CAA8E;AAE9E;;;;GAIG;AACH,SAAgB,SAAS,CAAC,KAAa;IACrC,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,4BAAgB,CAAC,CAAC;AAC9C,CAAC;AAFD,8BAEC;AAED;;;;GAIG;AACH,SAAgB,OAAO,CAAC,KAAa;IACnC,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,0BAAc,CAAC,CAAC;AAC5C,CAAC;AAFD,0BAEC;AAED;;;;GAIG;AACH,SAAgB,MAAM,CAAC,KAAa;IAClC,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,yBAAa,CAAC,CAAC;AAC3C,CAAC;AAFD,wBAEC","sourcesContent":["import { SLOTS_PER_DAY, SLOTS_PER_HOUR, SLOTS_PER_SECOND } from './constants';\n\n/**\n * Convert slots to seconds\n * @param slots\n * @return seconds\n */\nexport function toSeconds(slots: number): number {\n return Math.trunc(slots / SLOTS_PER_SECOND);\n}\n\n/**\n * Convert slots to hours\n * @param slots\n * @return hours\n */\nexport function toHours(slots: number): number {\n return Math.trunc(slots / SLOTS_PER_HOUR);\n}\n\n/**\n * Convert slots to days\n * @param slots\n * @return days\n */\nexport function toDays(slots: number): number {\n return Math.trunc(slots / SLOTS_PER_DAY);\n}\n"]}
@@ -0,0 +1,10 @@
1
+ import { PublicKey, TransactionInstruction } from '@solana/web3.js';
2
+ /**
3
+ * Construct a SyncNative instruction
4
+ *
5
+ * @param account Native account to sync lamports from
6
+ * @param programId SPL Token program account
7
+ *
8
+ * @return Instruction to add to a transaction
9
+ */
10
+ export declare function syncNative(account: PublicKey, programId?: PublicKey): TransactionInstruction;
@@ -0,0 +1,46 @@
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.syncNative = void 0;
27
+ const BufferLayout = __importStar(require("buffer-layout"));
28
+ const web3_js_1 = require("@solana/web3.js");
29
+ const spl_token_1 = require("@solana/spl-token");
30
+ const dataLayout = BufferLayout.struct([BufferLayout.u8('instruction')]);
31
+ /**
32
+ * Construct a SyncNative instruction
33
+ *
34
+ * @param account Native account to sync lamports from
35
+ * @param programId SPL Token program account
36
+ *
37
+ * @return Instruction to add to a transaction
38
+ */
39
+ function syncNative(account, programId = spl_token_1.TOKEN_PROGRAM_ID) {
40
+ const keys = [{ pubkey: account, isSigner: false, isWritable: true }];
41
+ const data = Buffer.alloc(dataLayout.span);
42
+ dataLayout.encode({ instruction: 17 }, data);
43
+ return new web3_js_1.TransactionInstruction({ keys, programId, data });
44
+ }
45
+ exports.syncNative = syncNative;
46
+ //# sourceMappingURL=syncNative.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"syncNative.js","sourceRoot":"","sources":["../../src/utils/syncNative.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4DAA8C;AAC9C,6CAAoE;AACpE,iDAAqD;AAErD,MAAM,UAAU,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;AAEzE;;;;;;;GAOG;AACH,SAAgB,UAAU,CAAC,OAAkB,EAAE,SAAS,GAAG,4BAAgB;IACzE,MAAM,IAAI,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;IAEtE,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC3C,UAAU,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;IAE7C,OAAO,IAAI,gCAAsB,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AAC/D,CAAC;AAPD,gCAOC","sourcesContent":["import * as BufferLayout from 'buffer-layout';\nimport { PublicKey, TransactionInstruction } from '@solana/web3.js';\nimport { TOKEN_PROGRAM_ID } from '@solana/spl-token';\n\nconst dataLayout = BufferLayout.struct([BufferLayout.u8('instruction')]);\n\n/**\n * Construct a SyncNative instruction\n *\n * @param account Native account to sync lamports from\n * @param programId SPL Token program account\n *\n * @return Instruction to add to a transaction\n */\nexport function syncNative(account: PublicKey, programId = TOKEN_PROGRAM_ID): TransactionInstruction {\n const keys = [{ pubkey: account, isSigner: false, isWritable: true }];\n\n const data = Buffer.alloc(dataLayout.span);\n dataLayout.encode({ instruction: 17 }, data);\n\n return new TransactionInstruction({ keys, programId, data });\n}\n"]}
@@ -0,0 +1,15 @@
1
+ import { PublicKey, TransactionInstruction, Connection, GetProgramAccountsFilter } from '@solana/web3.js';
2
+ import { KaminoMarket, KaminoObligation } from '../classes';
3
+ import { UserMetadata } from '../lib';
4
+ export type KaminoUserMetadata = {
5
+ address: PublicKey;
6
+ state: UserMetadata;
7
+ };
8
+ export declare const getUserLutAddressAndSetupIxns: (kaminoMarket: KaminoMarket, user: PublicKey, referrer?: PublicKey, withExtendLut?: boolean, multiplyMints?: {
9
+ coll: PublicKey;
10
+ debt: PublicKey;
11
+ }[], leverageMints?: {
12
+ coll: PublicKey;
13
+ debt: PublicKey;
14
+ }[], repayWithCollObligation?: KaminoObligation | undefined, payer?: PublicKey) => Promise<[PublicKey, TransactionInstruction[][]]>;
15
+ export declare function getAllUserMetadatasWithFilter(connection: Connection, filter: GetProgramAccountsFilter[], programId: PublicKey): Promise<KaminoUserMetadata[]>;