@kamino-finance/klend-sdk 7.4.0-beta.0 → 7.4.0-beta.2

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 (264) hide show
  1. package/dist/@codegen/kvault/accounts/LendingMarket.d.ts +480 -0
  2. package/dist/@codegen/kvault/accounts/LendingMarket.d.ts.map +1 -0
  3. package/dist/@codegen/kvault/accounts/LendingMarket.js +480 -0
  4. package/dist/@codegen/kvault/accounts/LendingMarket.js.map +1 -0
  5. package/dist/@codegen/kvault/accounts/Obligation.d.ts +208 -0
  6. package/dist/@codegen/kvault/accounts/Obligation.d.ts.map +1 -0
  7. package/dist/@codegen/kvault/accounts/Obligation.js +298 -0
  8. package/dist/@codegen/kvault/accounts/Obligation.js.map +1 -0
  9. package/dist/@codegen/kvault/accounts/ReferrerTokenState.d.ts +51 -0
  10. package/dist/@codegen/kvault/accounts/ReferrerTokenState.d.ts.map +1 -0
  11. package/dist/@codegen/kvault/accounts/ReferrerTokenState.js +137 -0
  12. package/dist/@codegen/kvault/accounts/ReferrerTokenState.js.map +1 -0
  13. package/dist/@codegen/kvault/accounts/Reserve.d.ts +6 -0
  14. package/dist/@codegen/kvault/accounts/Reserve.d.ts.map +1 -1
  15. package/dist/@codegen/kvault/accounts/Reserve.js +9 -2
  16. package/dist/@codegen/kvault/accounts/Reserve.js.map +1 -1
  17. package/dist/@codegen/kvault/accounts/VaultState.d.ts +45 -3
  18. package/dist/@codegen/kvault/accounts/VaultState.d.ts.map +1 -1
  19. package/dist/@codegen/kvault/accounts/VaultState.js +28 -4
  20. package/dist/@codegen/kvault/accounts/VaultState.js.map +1 -1
  21. package/dist/@codegen/kvault/accounts/WithdrawTicket.d.ts +144 -0
  22. package/dist/@codegen/kvault/accounts/WithdrawTicket.d.ts.map +1 -0
  23. package/dist/@codegen/kvault/accounts/WithdrawTicket.js +205 -0
  24. package/dist/@codegen/kvault/accounts/WithdrawTicket.js.map +1 -0
  25. package/dist/@codegen/kvault/accounts/index.d.ts +8 -0
  26. package/dist/@codegen/kvault/accounts/index.d.ts.map +1 -1
  27. package/dist/@codegen/kvault/accounts/index.js +9 -1
  28. package/dist/@codegen/kvault/accounts/index.js.map +1 -1
  29. package/dist/@codegen/kvault/errors/custom.d.ts +81 -1
  30. package/dist/@codegen/kvault/errors/custom.d.ts.map +1 -1
  31. package/dist/@codegen/kvault/errors/custom.js +141 -1
  32. package/dist/@codegen/kvault/errors/custom.js.map +1 -1
  33. package/dist/@codegen/kvault/instructions/index.d.ts +4 -0
  34. package/dist/@codegen/kvault/instructions/index.d.ts.map +1 -1
  35. package/dist/@codegen/kvault/instructions/index.js +5 -1
  36. package/dist/@codegen/kvault/instructions/index.js.map +1 -1
  37. package/dist/@codegen/kvault/instructions/invest.d.ts +9 -0
  38. package/dist/@codegen/kvault/instructions/invest.d.ts.map +1 -1
  39. package/dist/@codegen/kvault/instructions/invest.js +7 -0
  40. package/dist/@codegen/kvault/instructions/invest.js.map +1 -1
  41. package/dist/@codegen/kvault/instructions/investInVirtualReserveAndFillOrder.d.ts +51 -0
  42. package/dist/@codegen/kvault/instructions/investInVirtualReserveAndFillOrder.d.ts.map +1 -0
  43. package/dist/@codegen/kvault/instructions/investInVirtualReserveAndFillOrder.js +154 -0
  44. package/dist/@codegen/kvault/instructions/investInVirtualReserveAndFillOrder.js.map +1 -0
  45. package/dist/@codegen/kvault/instructions/investInVirtualReserveAndFillWithdrawalTicket.d.ts +54 -0
  46. package/dist/@codegen/kvault/instructions/investInVirtualReserveAndFillWithdrawalTicket.d.ts.map +1 -0
  47. package/dist/@codegen/kvault/instructions/investInVirtualReserveAndFillWithdrawalTicket.js +166 -0
  48. package/dist/@codegen/kvault/instructions/investInVirtualReserveAndFillWithdrawalTicket.js.map +1 -0
  49. package/dist/@codegen/kvault/instructions/updateKlendQueueAccounting.d.ts +1 -0
  50. package/dist/@codegen/kvault/instructions/updateKlendQueueAccounting.d.ts.map +1 -0
  51. package/dist/@codegen/kvault/instructions/updateKlendQueueAccounting.js +72 -0
  52. package/dist/@codegen/kvault/instructions/updateKlendQueueAccounting.js.map +1 -0
  53. package/dist/@codegen/kvault/instructions/updateReserveAllocation.d.ts +3 -1
  54. package/dist/@codegen/kvault/instructions/updateReserveAllocation.d.ts.map +1 -1
  55. package/dist/@codegen/kvault/instructions/updateReserveAllocation.js +3 -0
  56. package/dist/@codegen/kvault/instructions/updateReserveAllocation.js.map +1 -1
  57. package/dist/@codegen/kvault/types/BorrowOrder.d.ts +192 -0
  58. package/dist/@codegen/kvault/types/BorrowOrder.d.ts.map +1 -0
  59. package/dist/@codegen/kvault/types/BorrowOrder.js +194 -0
  60. package/dist/@codegen/kvault/types/BorrowOrder.js.map +1 -0
  61. package/dist/@codegen/kvault/types/ElevationGroup.d.ts +67 -0
  62. package/dist/@codegen/kvault/types/ElevationGroup.d.ts.map +1 -0
  63. package/dist/@codegen/kvault/types/ElevationGroup.js +137 -0
  64. package/dist/@codegen/kvault/types/ElevationGroup.js.map +1 -0
  65. package/dist/@codegen/kvault/types/FixedTermBorrowRolloverConfig.d.ts +145 -0
  66. package/dist/@codegen/kvault/types/FixedTermBorrowRolloverConfig.d.ts.map +1 -0
  67. package/dist/@codegen/kvault/types/FixedTermBorrowRolloverConfig.js +144 -0
  68. package/dist/@codegen/kvault/types/FixedTermBorrowRolloverConfig.js.map +1 -0
  69. package/dist/@codegen/kvault/types/ObligationCollateral.d.ts +72 -0
  70. package/dist/@codegen/kvault/types/ObligationCollateral.d.ts.map +1 -0
  71. package/dist/@codegen/kvault/types/ObligationCollateral.js +119 -0
  72. package/dist/@codegen/kvault/types/ObligationCollateral.js.map +1 -0
  73. package/dist/@codegen/kvault/types/ObligationLiquidity.d.ts +143 -0
  74. package/dist/@codegen/kvault/types/ObligationLiquidity.d.ts.map +1 -0
  75. package/dist/@codegen/kvault/types/ObligationLiquidity.js +165 -0
  76. package/dist/@codegen/kvault/types/ObligationLiquidity.js.map +1 -0
  77. package/dist/@codegen/kvault/types/ObligationOrder.d.ts +284 -0
  78. package/dist/@codegen/kvault/types/ObligationOrder.d.ts.map +1 -0
  79. package/dist/@codegen/kvault/types/ObligationOrder.js +205 -0
  80. package/dist/@codegen/kvault/types/ObligationOrder.js.map +1 -0
  81. package/dist/@codegen/kvault/types/ReserveConfig.d.ts +60 -5
  82. package/dist/@codegen/kvault/types/ReserveConfig.d.ts.map +1 -1
  83. package/dist/@codegen/kvault/types/ReserveConfig.js +36 -7
  84. package/dist/@codegen/kvault/types/ReserveConfig.js.map +1 -1
  85. package/dist/@codegen/kvault/types/ReserveLiquidity.d.ts +26 -8
  86. package/dist/@codegen/kvault/types/ReserveLiquidity.d.ts.map +1 -1
  87. package/dist/@codegen/kvault/types/ReserveLiquidity.js +14 -8
  88. package/dist/@codegen/kvault/types/ReserveLiquidity.js.map +1 -1
  89. package/dist/@codegen/kvault/types/ReserveType.d.ts +32 -0
  90. package/dist/@codegen/kvault/types/ReserveType.d.ts.map +1 -0
  91. package/dist/@codegen/kvault/types/ReserveType.js +108 -0
  92. package/dist/@codegen/kvault/types/ReserveType.js.map +1 -0
  93. package/dist/@codegen/kvault/types/VaultAllocation.d.ts +60 -0
  94. package/dist/@codegen/kvault/types/VaultAllocation.d.ts.map +1 -1
  95. package/dist/@codegen/kvault/types/VaultAllocation.js +38 -2
  96. package/dist/@codegen/kvault/types/VaultAllocation.js.map +1 -1
  97. package/dist/@codegen/kvault/types/WithdrawQueue.d.ts +64 -0
  98. package/dist/@codegen/kvault/types/WithdrawQueue.d.ts.map +1 -0
  99. package/dist/@codegen/kvault/types/WithdrawQueue.js +104 -0
  100. package/dist/@codegen/kvault/types/WithdrawQueue.js.map +1 -0
  101. package/dist/@codegen/kvault/types/WithdrawTicketProgressEvent.d.ts +19 -0
  102. package/dist/@codegen/kvault/types/WithdrawTicketProgressEvent.d.ts.map +1 -0
  103. package/dist/@codegen/kvault/types/WithdrawTicketProgressEvent.js +82 -0
  104. package/dist/@codegen/kvault/types/WithdrawTicketProgressEvent.js.map +1 -0
  105. package/dist/@codegen/kvault/types/index.d.ts +34 -0
  106. package/dist/@codegen/kvault/types/index.d.ts.map +1 -1
  107. package/dist/@codegen/kvault/types/index.js +19 -1
  108. package/dist/@codegen/kvault/types/index.js.map +1 -1
  109. package/dist/classes/action.d.ts +21 -91
  110. package/dist/classes/action.d.ts.map +1 -1
  111. package/dist/classes/action.js +141 -119
  112. package/dist/classes/action.js.map +1 -1
  113. package/dist/classes/actionTypes.d.ts +310 -0
  114. package/dist/classes/actionTypes.d.ts.map +1 -0
  115. package/dist/classes/actionTypes.js +3 -0
  116. package/dist/classes/actionTypes.js.map +1 -0
  117. package/dist/classes/market.d.ts +109 -15
  118. package/dist/classes/market.d.ts.map +1 -1
  119. package/dist/classes/market.js +186 -26
  120. package/dist/classes/market.js.map +1 -1
  121. package/dist/classes/obligation.d.ts +11 -11
  122. package/dist/classes/obligation.d.ts.map +1 -1
  123. package/dist/classes/obligation.js +56 -56
  124. package/dist/classes/obligation.js.map +1 -1
  125. package/dist/classes/obligationOrder.d.ts.map +1 -1
  126. package/dist/classes/obligationOrder.js +6 -3
  127. package/dist/classes/obligationOrder.js.map +1 -1
  128. package/dist/classes/reserve.d.ts +9 -1
  129. package/dist/classes/reserve.d.ts.map +1 -1
  130. package/dist/classes/reserve.js +20 -0
  131. package/dist/classes/reserve.js.map +1 -1
  132. package/dist/classes/shared.d.ts +1 -0
  133. package/dist/classes/shared.d.ts.map +1 -1
  134. package/dist/classes/utils.d.ts +2 -0
  135. package/dist/classes/utils.d.ts.map +1 -1
  136. package/dist/classes/utils.js +12 -1
  137. package/dist/classes/utils.js.map +1 -1
  138. package/dist/classes/vault.d.ts +4 -2
  139. package/dist/classes/vault.d.ts.map +1 -1
  140. package/dist/classes/vault.js +12 -2
  141. package/dist/classes/vault.js.map +1 -1
  142. package/dist/client/commands/borrow.d.ts +1 -1
  143. package/dist/client/commands/borrow.d.ts.map +1 -1
  144. package/dist/client/commands/borrow.js +11 -2
  145. package/dist/client/commands/borrow.js.map +1 -1
  146. package/dist/client/commands/deposit.d.ts +1 -1
  147. package/dist/client/commands/deposit.d.ts.map +1 -1
  148. package/dist/client/commands/deposit.js +11 -2
  149. package/dist/client/commands/deposit.js.map +1 -1
  150. package/dist/client/commands/printReserve.d.ts +1 -1
  151. package/dist/client/commands/printReserve.d.ts.map +1 -1
  152. package/dist/client/commands/printReserve.js +2 -4
  153. package/dist/client/commands/printReserve.js.map +1 -1
  154. package/dist/client/commands/repay.d.ts +1 -1
  155. package/dist/client/commands/repay.d.ts.map +1 -1
  156. package/dist/client/commands/repay.js +12 -2
  157. package/dist/client/commands/repay.js.map +1 -1
  158. package/dist/client/commands/withdraw.d.ts +1 -1
  159. package/dist/client/commands/withdraw.d.ts.map +1 -1
  160. package/dist/client/commands/withdraw.js +11 -2
  161. package/dist/client/commands/withdraw.js.map +1 -1
  162. package/dist/lending_operations/repay_with_collateral_calcs.d.ts +1 -1
  163. package/dist/lending_operations/repay_with_collateral_calcs.d.ts.map +1 -1
  164. package/dist/lending_operations/repay_with_collateral_calcs.js +2 -2
  165. package/dist/lending_operations/repay_with_collateral_calcs.js.map +1 -1
  166. package/dist/lending_operations/repay_with_collateral_operations.d.ts +4 -4
  167. package/dist/lending_operations/repay_with_collateral_operations.d.ts.map +1 -1
  168. package/dist/lending_operations/repay_with_collateral_operations.js +43 -10
  169. package/dist/lending_operations/repay_with_collateral_operations.js.map +1 -1
  170. package/dist/lending_operations/swap_collateral_operations.d.ts +4 -4
  171. package/dist/lending_operations/swap_collateral_operations.d.ts.map +1 -1
  172. package/dist/lending_operations/swap_collateral_operations.js +40 -21
  173. package/dist/lending_operations/swap_collateral_operations.js.map +1 -1
  174. package/dist/leverage/operations.d.ts +6 -6
  175. package/dist/leverage/operations.d.ts.map +1 -1
  176. package/dist/leverage/operations.js +167 -52
  177. package/dist/leverage/operations.js.map +1 -1
  178. package/dist/leverage/types.d.ts +2 -2
  179. package/dist/leverage/types.d.ts.map +1 -1
  180. package/dist/manager/client_kamino_manager.js +0 -2
  181. package/dist/manager/client_kamino_manager.js.map +1 -1
  182. package/dist/obligation_orders/price_based.js +5 -3
  183. package/dist/obligation_orders/price_based.js.map +1 -1
  184. package/dist/utils/ObligationType.d.ts +33 -1
  185. package/dist/utils/ObligationType.d.ts.map +1 -1
  186. package/dist/utils/ObligationType.js +81 -2
  187. package/dist/utils/ObligationType.js.map +1 -1
  188. package/dist/utils/ReserveKind.d.ts +57 -0
  189. package/dist/utils/ReserveKind.d.ts.map +1 -0
  190. package/dist/utils/ReserveKind.js +76 -0
  191. package/dist/utils/ReserveKind.js.map +1 -0
  192. package/dist/utils/index.d.ts +1 -0
  193. package/dist/utils/index.d.ts.map +1 -1
  194. package/dist/utils/index.js +1 -0
  195. package/dist/utils/index.js.map +1 -1
  196. package/dist/utils/userMetadata.d.ts +2 -2
  197. package/dist/utils/userMetadata.d.ts.map +1 -1
  198. package/dist/utils/userMetadata.js +49 -25
  199. package/dist/utils/userMetadata.js.map +1 -1
  200. package/dist/utils/validations.d.ts +1 -0
  201. package/dist/utils/validations.d.ts.map +1 -1
  202. package/dist/utils/validations.js +5 -0
  203. package/dist/utils/validations.js.map +1 -1
  204. package/dist/utils/vault.d.ts.map +1 -1
  205. package/dist/utils/vault.js +2 -0
  206. package/dist/utils/vault.js.map +1 -1
  207. package/package.json +1 -1
  208. package/src/@codegen/kvault/accounts/LendingMarket.ts +837 -0
  209. package/src/@codegen/kvault/accounts/Obligation.ts +459 -0
  210. package/src/@codegen/kvault/accounts/ReferrerTokenState.ts +160 -0
  211. package/src/@codegen/kvault/accounts/Reserve.ts +13 -2
  212. package/src/@codegen/kvault/accounts/VaultState.ts +59 -7
  213. package/src/@codegen/kvault/accounts/WithdrawTicket.ts +280 -0
  214. package/src/@codegen/kvault/accounts/index.ts +11 -0
  215. package/src/@codegen/kvault/errors/custom.ts +152 -0
  216. package/src/@codegen/kvault/instructions/index.ts +10 -0
  217. package/src/@codegen/kvault/instructions/invest.ts +16 -0
  218. package/src/@codegen/kvault/instructions/investInVirtualReserveAndFillOrder.ts +189 -0
  219. package/src/@codegen/kvault/instructions/investInVirtualReserveAndFillWithdrawalTicket.ts +205 -0
  220. package/src/@codegen/kvault/instructions/updateKlendQueueAccounting.ts +76 -0
  221. package/src/@codegen/kvault/instructions/updateReserveAllocation.ts +4 -1
  222. package/src/@codegen/kvault/types/BorrowOrder.ts +267 -0
  223. package/src/@codegen/kvault/types/ElevationGroup.ts +134 -0
  224. package/src/@codegen/kvault/types/FixedTermBorrowRolloverConfig.ts +199 -0
  225. package/src/@codegen/kvault/types/ObligationCollateral.ts +129 -0
  226. package/src/@codegen/kvault/types/ObligationLiquidity.ts +226 -0
  227. package/src/@codegen/kvault/types/ObligationOrder.ts +348 -0
  228. package/src/@codegen/kvault/types/ReserveConfig.ts +72 -9
  229. package/src/@codegen/kvault/types/ReserveLiquidity.ts +30 -12
  230. package/src/@codegen/kvault/types/ReserveType.ts +89 -0
  231. package/src/@codegen/kvault/types/VaultAllocation.ts +74 -2
  232. package/src/@codegen/kvault/types/WithdrawQueue.ts +117 -0
  233. package/src/@codegen/kvault/types/WithdrawTicketProgressEvent.ts +59 -0
  234. package/src/@codegen/kvault/types/index.ts +52 -0
  235. package/src/classes/action.ts +321 -347
  236. package/src/classes/actionTypes.ts +295 -0
  237. package/src/classes/manager.ts +1 -1
  238. package/src/classes/market.ts +232 -30
  239. package/src/classes/obligation.ts +62 -59
  240. package/src/classes/obligationOrder.ts +6 -3
  241. package/src/classes/reserve.ts +24 -0
  242. package/src/classes/shared.ts +2 -0
  243. package/src/classes/utils.ts +8 -0
  244. package/src/classes/vault.ts +35 -4
  245. package/src/client/client.ts +17 -18
  246. package/src/client/commands/borrow.ts +10 -9
  247. package/src/client/commands/deposit.ts +10 -9
  248. package/src/client/commands/printReserve.ts +2 -4
  249. package/src/client/commands/repay.ts +11 -10
  250. package/src/client/commands/withdraw.ts +15 -9
  251. package/src/idl/kvault.json +2336 -299
  252. package/src/lending_operations/repay_with_collateral_calcs.ts +3 -4
  253. package/src/lending_operations/repay_with_collateral_operations.ts +40 -38
  254. package/src/lending_operations/swap_collateral_operations.ts +47 -41
  255. package/src/leverage/operations.ts +168 -129
  256. package/src/leverage/types.ts +2 -2
  257. package/src/manager/client_kamino_manager.ts +0 -2
  258. package/src/obligation_orders/price_based.ts +7 -5
  259. package/src/utils/ObligationType.ts +92 -1
  260. package/src/utils/ReserveKind.ts +94 -0
  261. package/src/utils/index.ts +1 -0
  262. package/src/utils/userMetadata.ts +64 -30
  263. package/src/utils/validations.ts +5 -0
  264. package/src/utils/vault.ts +2 -0
@@ -0,0 +1,144 @@
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 () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.FixedTermBorrowRolloverConfig = void 0;
40
+ const bn_js_1 = __importDefault(require("bn.js")); // eslint-disable-line @typescript-eslint/no-unused-vars
41
+ const borsh = __importStar(require("@coral-xyz/borsh"));
42
+ /**
43
+ * Settings driving the auto-rollover of an [ObligationLiquidity] that uses a fixed-term [Reserve]
44
+ * and approaches the end of its [ReserveConfig::debt_term_seconds].
45
+ *
46
+ * By its nature (not a special case), the zeroed struct mean "no auto-rollover".
47
+ */
48
+ class FixedTermBorrowRolloverConfig {
49
+ /**
50
+ * Whether the borrow can be permissionlessly prolonged under the following *joint* conditions:
51
+ *
52
+ * The reserve used to re-borrow the liquidity must have:
53
+ * A) the exact same maximum borrow rate as the current one,
54
+ * B) the exact same debt term as the current one,
55
+ * C) sufficient available liquidity (including no withdraw tickets waiting in its queue).
56
+ *
57
+ * The time left until the current debt term expires must be:
58
+ * D) less than [LendingMarket::fixed_rollover_window_duration_seconds].
59
+ *
60
+ * Note: the other settings are only effective when this one is `1`.
61
+ */
62
+ autoRolloverEnabled;
63
+ /**
64
+ * When `1`, partially lifts the condition *B* from [Self::auto_rollover_enabled]: additionally
65
+ * allows to use a variable (indefinite) debt term if less than
66
+ * [LendingMarket::variable_rollover_window_duration_seconds] is left until expiration.
67
+ *
68
+ * Note: typically this flag should be used together with [Self::max_borrow_rate_bps] set to
69
+ * `u32::MAX` (to denote a variable-rate reserve).
70
+ */
71
+ openTermAllowed;
72
+ /** Internal alignment padding (free to reuse). */
73
+ alignmentPadding;
74
+ /**
75
+ * A customization setting that can lift the condition *A* from [Self::auto_rollover_enabled]:
76
+ * when not zeroed, the rollover may use a reserve with a maximum borrow rate equal or lower
77
+ * than the given one.
78
+ */
79
+ maxBorrowRateBps;
80
+ /**
81
+ * A customization setting that can lift the condition *B* from [Self::auto_rollover_enabled]:
82
+ * when not zeroed, the rollover may use a reserve with a *fixed* debt term equal or longer
83
+ * than the given one.
84
+ */
85
+ minDebtTermSeconds;
86
+ constructor(fields) {
87
+ this.autoRolloverEnabled = fields.autoRolloverEnabled;
88
+ this.openTermAllowed = fields.openTermAllowed;
89
+ this.alignmentPadding = fields.alignmentPadding;
90
+ this.maxBorrowRateBps = fields.maxBorrowRateBps;
91
+ this.minDebtTermSeconds = fields.minDebtTermSeconds;
92
+ }
93
+ static layout(property) {
94
+ return borsh.struct([
95
+ borsh.u8("autoRolloverEnabled"),
96
+ borsh.u8("openTermAllowed"),
97
+ borsh.array(borsh.u8(), 2, "alignmentPadding"),
98
+ borsh.u32("maxBorrowRateBps"),
99
+ borsh.u64("minDebtTermSeconds"),
100
+ ], property);
101
+ }
102
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
103
+ static fromDecoded(obj) {
104
+ return new FixedTermBorrowRolloverConfig({
105
+ autoRolloverEnabled: obj.autoRolloverEnabled,
106
+ openTermAllowed: obj.openTermAllowed,
107
+ alignmentPadding: obj.alignmentPadding,
108
+ maxBorrowRateBps: obj.maxBorrowRateBps,
109
+ minDebtTermSeconds: obj.minDebtTermSeconds,
110
+ });
111
+ }
112
+ static toEncodable(fields) {
113
+ return {
114
+ autoRolloverEnabled: fields.autoRolloverEnabled,
115
+ openTermAllowed: fields.openTermAllowed,
116
+ alignmentPadding: fields.alignmentPadding,
117
+ maxBorrowRateBps: fields.maxBorrowRateBps,
118
+ minDebtTermSeconds: fields.minDebtTermSeconds,
119
+ };
120
+ }
121
+ toJSON() {
122
+ return {
123
+ autoRolloverEnabled: this.autoRolloverEnabled,
124
+ openTermAllowed: this.openTermAllowed,
125
+ alignmentPadding: this.alignmentPadding,
126
+ maxBorrowRateBps: this.maxBorrowRateBps,
127
+ minDebtTermSeconds: this.minDebtTermSeconds.toString(),
128
+ };
129
+ }
130
+ static fromJSON(obj) {
131
+ return new FixedTermBorrowRolloverConfig({
132
+ autoRolloverEnabled: obj.autoRolloverEnabled,
133
+ openTermAllowed: obj.openTermAllowed,
134
+ alignmentPadding: obj.alignmentPadding,
135
+ maxBorrowRateBps: obj.maxBorrowRateBps,
136
+ minDebtTermSeconds: new bn_js_1.default(obj.minDebtTermSeconds),
137
+ });
138
+ }
139
+ toEncodable() {
140
+ return FixedTermBorrowRolloverConfig.toEncodable(this);
141
+ }
142
+ }
143
+ exports.FixedTermBorrowRolloverConfig = FixedTermBorrowRolloverConfig;
144
+ //# sourceMappingURL=FixedTermBorrowRolloverConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FixedTermBorrowRolloverConfig.js","sourceRoot":"","sources":["../../../../src/@codegen/kvault/types/FixedTermBorrowRolloverConfig.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,kDAAsB,CAAC,wDAAwD;AAE/E,wDAAyC;AAmFzC;;;;;GAKG;AACH,MAAa,6BAA6B;IACxC;;;;;;;;;;;;OAYG;IACM,mBAAmB,CAAQ;IACpC;;;;;;;OAOG;IACM,eAAe,CAAQ;IAChC,kDAAkD;IACzC,gBAAgB,CAAe;IACxC;;;;OAIG;IACM,gBAAgB,CAAQ;IACjC;;;;OAIG;IACM,kBAAkB,CAAI;IAE/B,YAAY,MAA2C;QACrD,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAAC,mBAAmB,CAAA;QACrD,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,CAAA;QAC7C,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAA;QAC/C,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAA;QAC/C,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC,kBAAkB,CAAA;IACrD,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,QAAiB;QAC7B,OAAO,KAAK,CAAC,MAAM,CACjB;YACE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CAAC;YAC/B,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAAC;YAC3B,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,kBAAkB,CAAC;YAC9C,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC;YAC7B,KAAK,CAAC,GAAG,CAAC,oBAAoB,CAAC;SAChC,EACD,QAAQ,CACT,CAAA;IACH,CAAC;IAED,8DAA8D;IAC9D,MAAM,CAAC,WAAW,CAAC,GAAQ;QACzB,OAAO,IAAI,6BAA6B,CAAC;YACvC,mBAAmB,EAAE,GAAG,CAAC,mBAAmB;YAC5C,eAAe,EAAE,GAAG,CAAC,eAAe;YACpC,gBAAgB,EAAE,GAAG,CAAC,gBAAgB;YACtC,gBAAgB,EAAE,GAAG,CAAC,gBAAgB;YACtC,kBAAkB,EAAE,GAAG,CAAC,kBAAkB;SAC3C,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,MAA2C;QAC5D,OAAO;YACL,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;YAC/C,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;YACzC,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;YACzC,kBAAkB,EAAE,MAAM,CAAC,kBAAkB;SAC9C,CAAA;IACH,CAAC;IAED,MAAM;QACJ,OAAO;YACL,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;YAC7C,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE;SACvD,CAAA;IACH,CAAC;IAED,MAAM,CAAC,QAAQ,CACb,GAAsC;QAEtC,OAAO,IAAI,6BAA6B,CAAC;YACvC,mBAAmB,EAAE,GAAG,CAAC,mBAAmB;YAC5C,eAAe,EAAE,GAAG,CAAC,eAAe;YACpC,gBAAgB,EAAE,GAAG,CAAC,gBAAgB;YACtC,gBAAgB,EAAE,GAAG,CAAC,gBAAgB;YACtC,kBAAkB,EAAE,IAAI,eAAE,CAAC,GAAG,CAAC,kBAAkB,CAAC;SACnD,CAAC,CAAA;IACJ,CAAC;IAED,WAAW;QACT,OAAO,6BAA6B,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;IACxD,CAAC;CACF;AA1GD,sEA0GC"}
@@ -0,0 +1,72 @@
1
+ import { Address } from "@solana/kit";
2
+ import BN from "bn.js";
3
+ import * as types from "../types";
4
+ export interface ObligationCollateralFields {
5
+ /** Reserve collateral is deposited to */
6
+ depositReserve: Address;
7
+ /** Amount of collateral deposited */
8
+ depositedAmount: BN;
9
+ /** Collateral market value in quote currency (scaled fraction) */
10
+ marketValueSf: BN;
11
+ /**
12
+ * Debt amount (lamport) taken against this collateral.
13
+ * (only meaningful if this obligation is part of an elevation group, otherwise 0)
14
+ * This is only indicative of the debt computed on the last refresh obligation.
15
+ * If the obligation have multiple collateral this value is the same for all of them.
16
+ */
17
+ borrowedAmountAgainstThisCollateralInElevationGroup: BN;
18
+ padding: Array<BN>;
19
+ }
20
+ export interface ObligationCollateralJSON {
21
+ /** Reserve collateral is deposited to */
22
+ depositReserve: string;
23
+ /** Amount of collateral deposited */
24
+ depositedAmount: string;
25
+ /** Collateral market value in quote currency (scaled fraction) */
26
+ marketValueSf: string;
27
+ /**
28
+ * Debt amount (lamport) taken against this collateral.
29
+ * (only meaningful if this obligation is part of an elevation group, otherwise 0)
30
+ * This is only indicative of the debt computed on the last refresh obligation.
31
+ * If the obligation have multiple collateral this value is the same for all of them.
32
+ */
33
+ borrowedAmountAgainstThisCollateralInElevationGroup: string;
34
+ padding: Array<string>;
35
+ }
36
+ /** Obligation collateral state */
37
+ export declare class ObligationCollateral {
38
+ /** Reserve collateral is deposited to */
39
+ readonly depositReserve: Address;
40
+ /** Amount of collateral deposited */
41
+ readonly depositedAmount: BN;
42
+ /** Collateral market value in quote currency (scaled fraction) */
43
+ readonly marketValueSf: BN;
44
+ /**
45
+ * Debt amount (lamport) taken against this collateral.
46
+ * (only meaningful if this obligation is part of an elevation group, otherwise 0)
47
+ * This is only indicative of the debt computed on the last refresh obligation.
48
+ * If the obligation have multiple collateral this value is the same for all of them.
49
+ */
50
+ readonly borrowedAmountAgainstThisCollateralInElevationGroup: BN;
51
+ readonly padding: Array<BN>;
52
+ constructor(fields: ObligationCollateralFields);
53
+ static layout(property?: string): import("buffer-layout").Layout<unknown>;
54
+ static fromDecoded(obj: any): types.ObligationCollateral;
55
+ static toEncodable(fields: ObligationCollateralFields): {
56
+ depositReserve: Address;
57
+ depositedAmount: BN;
58
+ marketValueSf: BN;
59
+ borrowedAmountAgainstThisCollateralInElevationGroup: BN;
60
+ padding: BN[];
61
+ };
62
+ toJSON(): ObligationCollateralJSON;
63
+ static fromJSON(obj: ObligationCollateralJSON): ObligationCollateral;
64
+ toEncodable(): {
65
+ depositReserve: Address;
66
+ depositedAmount: BN;
67
+ marketValueSf: BN;
68
+ borrowedAmountAgainstThisCollateralInElevationGroup: BN;
69
+ padding: BN[];
70
+ };
71
+ }
72
+ //# sourceMappingURL=ObligationCollateral.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ObligationCollateral.d.ts","sourceRoot":"","sources":["../../../../src/@codegen/kvault/types/ObligationCollateral.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,OAAO,EAAE,MAAM,aAAa,CAAA;AAC9C,OAAO,EAAE,MAAM,OAAO,CAAA;AACtB,OAAO,KAAK,KAAK,MAAM,UAAU,CAAA;AAIjC,MAAM,WAAW,0BAA0B;IACzC,yCAAyC;IACzC,cAAc,EAAE,OAAO,CAAA;IACvB,qCAAqC;IACrC,eAAe,EAAE,EAAE,CAAA;IACnB,kEAAkE;IAClE,aAAa,EAAE,EAAE,CAAA;IACjB;;;;;OAKG;IACH,mDAAmD,EAAE,EAAE,CAAA;IACvD,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,CAAA;CACnB;AAED,MAAM,WAAW,wBAAwB;IACvC,yCAAyC;IACzC,cAAc,EAAE,MAAM,CAAA;IACtB,qCAAqC;IACrC,eAAe,EAAE,MAAM,CAAA;IACvB,kEAAkE;IAClE,aAAa,EAAE,MAAM,CAAA;IACrB;;;;;OAKG;IACH,mDAAmD,EAAE,MAAM,CAAA;IAC3D,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;CACvB;AAED,kCAAkC;AAClC,qBAAa,oBAAoB;IAC/B,yCAAyC;IACzC,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAA;IAChC,qCAAqC;IACrC,QAAQ,CAAC,eAAe,EAAE,EAAE,CAAA;IAC5B,kEAAkE;IAClE,QAAQ,CAAC,aAAa,EAAE,EAAE,CAAA;IAC1B;;;;;OAKG;IACH,QAAQ,CAAC,mDAAmD,EAAE,EAAE,CAAA;IAChE,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,CAAA;gBAEf,MAAM,EAAE,0BAA0B;IAS9C,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,MAAM;IAc/B,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG;IAW3B,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,0BAA0B;;;;;;;IAWrD,MAAM,IAAI,wBAAwB;IAWlC,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,wBAAwB,GAAG,oBAAoB;IAYpE,WAAW;;;;;;;CAGZ"}
@@ -0,0 +1,119 @@
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 () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.ObligationCollateral = void 0;
40
+ const kit_1 = require("@solana/kit"); // eslint-disable-line @typescript-eslint/no-unused-vars
41
+ const bn_js_1 = __importDefault(require("bn.js")); // eslint-disable-line @typescript-eslint/no-unused-vars
42
+ const borsh = __importStar(require("@coral-xyz/borsh"));
43
+ const utils_1 = require("../utils");
44
+ /** Obligation collateral state */
45
+ class ObligationCollateral {
46
+ /** Reserve collateral is deposited to */
47
+ depositReserve;
48
+ /** Amount of collateral deposited */
49
+ depositedAmount;
50
+ /** Collateral market value in quote currency (scaled fraction) */
51
+ marketValueSf;
52
+ /**
53
+ * Debt amount (lamport) taken against this collateral.
54
+ * (only meaningful if this obligation is part of an elevation group, otherwise 0)
55
+ * This is only indicative of the debt computed on the last refresh obligation.
56
+ * If the obligation have multiple collateral this value is the same for all of them.
57
+ */
58
+ borrowedAmountAgainstThisCollateralInElevationGroup;
59
+ padding;
60
+ constructor(fields) {
61
+ this.depositReserve = fields.depositReserve;
62
+ this.depositedAmount = fields.depositedAmount;
63
+ this.marketValueSf = fields.marketValueSf;
64
+ this.borrowedAmountAgainstThisCollateralInElevationGroup =
65
+ fields.borrowedAmountAgainstThisCollateralInElevationGroup;
66
+ this.padding = fields.padding;
67
+ }
68
+ static layout(property) {
69
+ return borsh.struct([
70
+ (0, utils_1.borshAddress)("depositReserve"),
71
+ borsh.u64("depositedAmount"),
72
+ borsh.u128("marketValueSf"),
73
+ borsh.u64("borrowedAmountAgainstThisCollateralInElevationGroup"),
74
+ borsh.array(borsh.u64(), 9, "padding"),
75
+ ], property);
76
+ }
77
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
78
+ static fromDecoded(obj) {
79
+ return new ObligationCollateral({
80
+ depositReserve: obj.depositReserve,
81
+ depositedAmount: obj.depositedAmount,
82
+ marketValueSf: obj.marketValueSf,
83
+ borrowedAmountAgainstThisCollateralInElevationGroup: obj.borrowedAmountAgainstThisCollateralInElevationGroup,
84
+ padding: obj.padding,
85
+ });
86
+ }
87
+ static toEncodable(fields) {
88
+ return {
89
+ depositReserve: fields.depositReserve,
90
+ depositedAmount: fields.depositedAmount,
91
+ marketValueSf: fields.marketValueSf,
92
+ borrowedAmountAgainstThisCollateralInElevationGroup: fields.borrowedAmountAgainstThisCollateralInElevationGroup,
93
+ padding: fields.padding,
94
+ };
95
+ }
96
+ toJSON() {
97
+ return {
98
+ depositReserve: this.depositReserve,
99
+ depositedAmount: this.depositedAmount.toString(),
100
+ marketValueSf: this.marketValueSf.toString(),
101
+ borrowedAmountAgainstThisCollateralInElevationGroup: this.borrowedAmountAgainstThisCollateralInElevationGroup.toString(),
102
+ padding: this.padding.map((item) => item.toString()),
103
+ };
104
+ }
105
+ static fromJSON(obj) {
106
+ return new ObligationCollateral({
107
+ depositReserve: (0, kit_1.address)(obj.depositReserve),
108
+ depositedAmount: new bn_js_1.default(obj.depositedAmount),
109
+ marketValueSf: new bn_js_1.default(obj.marketValueSf),
110
+ borrowedAmountAgainstThisCollateralInElevationGroup: new bn_js_1.default(obj.borrowedAmountAgainstThisCollateralInElevationGroup),
111
+ padding: obj.padding.map((item) => new bn_js_1.default(item)),
112
+ });
113
+ }
114
+ toEncodable() {
115
+ return ObligationCollateral.toEncodable(this);
116
+ }
117
+ }
118
+ exports.ObligationCollateral = ObligationCollateral;
119
+ //# sourceMappingURL=ObligationCollateral.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ObligationCollateral.js","sourceRoot":"","sources":["../../../../src/@codegen/kvault/types/ObligationCollateral.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAA8C,CAAC,wDAAwD;AACvG,kDAAsB,CAAC,wDAAwD;AAE/E,wDAAyC;AACzC,oCAAuC;AAoCvC,kCAAkC;AAClC,MAAa,oBAAoB;IAC/B,yCAAyC;IAChC,cAAc,CAAS;IAChC,qCAAqC;IAC5B,eAAe,CAAI;IAC5B,kEAAkE;IACzD,aAAa,CAAI;IAC1B;;;;;OAKG;IACM,mDAAmD,CAAI;IACvD,OAAO,CAAW;IAE3B,YAAY,MAAkC;QAC5C,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAA;QAC3C,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,CAAA;QAC7C,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAA;QACzC,IAAI,CAAC,mDAAmD;YACtD,MAAM,CAAC,mDAAmD,CAAA;QAC5D,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAA;IAC/B,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,QAAiB;QAC7B,OAAO,KAAK,CAAC,MAAM,CACjB;YACE,IAAA,oBAAY,EAAC,gBAAgB,CAAC;YAC9B,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC;YAC3B,KAAK,CAAC,GAAG,CAAC,qDAAqD,CAAC;YAChE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,SAAS,CAAC;SACvC,EACD,QAAQ,CACT,CAAA;IACH,CAAC;IAED,8DAA8D;IAC9D,MAAM,CAAC,WAAW,CAAC,GAAQ;QACzB,OAAO,IAAI,oBAAoB,CAAC;YAC9B,cAAc,EAAE,GAAG,CAAC,cAAc;YAClC,eAAe,EAAE,GAAG,CAAC,eAAe;YACpC,aAAa,EAAE,GAAG,CAAC,aAAa;YAChC,mDAAmD,EACjD,GAAG,CAAC,mDAAmD;YACzD,OAAO,EAAE,GAAG,CAAC,OAAO;SACrB,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,MAAkC;QACnD,OAAO;YACL,cAAc,EAAE,MAAM,CAAC,cAAc;YACrC,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,mDAAmD,EACjD,MAAM,CAAC,mDAAmD;YAC5D,OAAO,EAAE,MAAM,CAAC,OAAO;SACxB,CAAA;IACH,CAAC;IAED,MAAM;QACJ,OAAO;YACL,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,eAAe,EAAE,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE;YAChD,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE;YAC5C,mDAAmD,EACjD,IAAI,CAAC,mDAAmD,CAAC,QAAQ,EAAE;YACrE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;SACrD,CAAA;IACH,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,GAA6B;QAC3C,OAAO,IAAI,oBAAoB,CAAC;YAC9B,cAAc,EAAE,IAAA,aAAO,EAAC,GAAG,CAAC,cAAc,CAAC;YAC3C,eAAe,EAAE,IAAI,eAAE,CAAC,GAAG,CAAC,eAAe,CAAC;YAC5C,aAAa,EAAE,IAAI,eAAE,CAAC,GAAG,CAAC,aAAa,CAAC;YACxC,mDAAmD,EAAE,IAAI,eAAE,CACzD,GAAG,CAAC,mDAAmD,CACxD;YACD,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,eAAE,CAAC,IAAI,CAAC,CAAC;SACjD,CAAC,CAAA;IACJ,CAAC;IAED,WAAW;QACT,OAAO,oBAAoB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;IAC/C,CAAC;CACF;AAvFD,oDAuFC"}
@@ -0,0 +1,143 @@
1
+ import { Address } from "@solana/kit";
2
+ import BN from "bn.js";
3
+ import * as types from "../types";
4
+ export interface ObligationLiquidityFields {
5
+ /** Reserve liquidity is borrowed from */
6
+ borrowReserve: Address;
7
+ /** Borrow rate used for calculating interest (big scaled fraction) */
8
+ cumulativeBorrowRateBsf: types.BigFractionBytesFields;
9
+ /**
10
+ * The timestamp at which this debt was taken.
11
+ * More specifically: when the *first* borrow operation from this reserve happened.
12
+ * This means that:
13
+ * - adding debt of the same reserve does *not* change this timestamp,
14
+ * - repaying the entire debt of this reserve *does* reset this timestamp.
15
+ *
16
+ * Note: this field is *not* only metadata: it is used in the logic, e.g. for enforcing the
17
+ * fixed-term borrows (i.e. those induced by [ReserveConfig::debt_term_seconds]).
18
+ */
19
+ firstBorrowedAtTimestamp: BN;
20
+ /** Amount of liquidity borrowed plus interest (scaled fraction) */
21
+ borrowedAmountSf: BN;
22
+ /** Liquidity market value in quote currency (scaled fraction) */
23
+ marketValueSf: BN;
24
+ /** Risk adjusted liquidity market value in quote currency - DEBUG ONLY - use market_value instead */
25
+ borrowFactorAdjustedMarketValueSf: BN;
26
+ /** Amount of liquidity borrowed outside of an elevation group */
27
+ borrowedAmountOutsideElevationGroups: BN;
28
+ /**
29
+ * The user's auto-rollover opt-ins - only effective when this borrow is fixed-term (i.e. its
30
+ * reserve has a non-zero [ReserveConfig::debt_term_seconds]).
31
+ */
32
+ fixedTermBorrowRolloverConfig: types.FixedTermBorrowRolloverConfigFields;
33
+ padding2: Array<BN>;
34
+ }
35
+ export interface ObligationLiquidityJSON {
36
+ /** Reserve liquidity is borrowed from */
37
+ borrowReserve: string;
38
+ /** Borrow rate used for calculating interest (big scaled fraction) */
39
+ cumulativeBorrowRateBsf: types.BigFractionBytesJSON;
40
+ /**
41
+ * The timestamp at which this debt was taken.
42
+ * More specifically: when the *first* borrow operation from this reserve happened.
43
+ * This means that:
44
+ * - adding debt of the same reserve does *not* change this timestamp,
45
+ * - repaying the entire debt of this reserve *does* reset this timestamp.
46
+ *
47
+ * Note: this field is *not* only metadata: it is used in the logic, e.g. for enforcing the
48
+ * fixed-term borrows (i.e. those induced by [ReserveConfig::debt_term_seconds]).
49
+ */
50
+ firstBorrowedAtTimestamp: string;
51
+ /** Amount of liquidity borrowed plus interest (scaled fraction) */
52
+ borrowedAmountSf: string;
53
+ /** Liquidity market value in quote currency (scaled fraction) */
54
+ marketValueSf: string;
55
+ /** Risk adjusted liquidity market value in quote currency - DEBUG ONLY - use market_value instead */
56
+ borrowFactorAdjustedMarketValueSf: string;
57
+ /** Amount of liquidity borrowed outside of an elevation group */
58
+ borrowedAmountOutsideElevationGroups: string;
59
+ /**
60
+ * The user's auto-rollover opt-ins - only effective when this borrow is fixed-term (i.e. its
61
+ * reserve has a non-zero [ReserveConfig::debt_term_seconds]).
62
+ */
63
+ fixedTermBorrowRolloverConfig: types.FixedTermBorrowRolloverConfigJSON;
64
+ padding2: Array<string>;
65
+ }
66
+ /** Obligation liquidity state */
67
+ export declare class ObligationLiquidity {
68
+ /** Reserve liquidity is borrowed from */
69
+ readonly borrowReserve: Address;
70
+ /** Borrow rate used for calculating interest (big scaled fraction) */
71
+ readonly cumulativeBorrowRateBsf: types.BigFractionBytes;
72
+ /**
73
+ * The timestamp at which this debt was taken.
74
+ * More specifically: when the *first* borrow operation from this reserve happened.
75
+ * This means that:
76
+ * - adding debt of the same reserve does *not* change this timestamp,
77
+ * - repaying the entire debt of this reserve *does* reset this timestamp.
78
+ *
79
+ * Note: this field is *not* only metadata: it is used in the logic, e.g. for enforcing the
80
+ * fixed-term borrows (i.e. those induced by [ReserveConfig::debt_term_seconds]).
81
+ */
82
+ readonly firstBorrowedAtTimestamp: BN;
83
+ /** Amount of liquidity borrowed plus interest (scaled fraction) */
84
+ readonly borrowedAmountSf: BN;
85
+ /** Liquidity market value in quote currency (scaled fraction) */
86
+ readonly marketValueSf: BN;
87
+ /** Risk adjusted liquidity market value in quote currency - DEBUG ONLY - use market_value instead */
88
+ readonly borrowFactorAdjustedMarketValueSf: BN;
89
+ /** Amount of liquidity borrowed outside of an elevation group */
90
+ readonly borrowedAmountOutsideElevationGroups: BN;
91
+ /**
92
+ * The user's auto-rollover opt-ins - only effective when this borrow is fixed-term (i.e. its
93
+ * reserve has a non-zero [ReserveConfig::debt_term_seconds]).
94
+ */
95
+ readonly fixedTermBorrowRolloverConfig: types.FixedTermBorrowRolloverConfig;
96
+ readonly padding2: Array<BN>;
97
+ constructor(fields: ObligationLiquidityFields);
98
+ static layout(property?: string): import("buffer-layout").Layout<unknown>;
99
+ static fromDecoded(obj: any): types.ObligationLiquidity;
100
+ static toEncodable(fields: ObligationLiquidityFields): {
101
+ borrowReserve: Address;
102
+ cumulativeBorrowRateBsf: {
103
+ value: BN[];
104
+ padding: BN[];
105
+ };
106
+ firstBorrowedAtTimestamp: BN;
107
+ borrowedAmountSf: BN;
108
+ marketValueSf: BN;
109
+ borrowFactorAdjustedMarketValueSf: BN;
110
+ borrowedAmountOutsideElevationGroups: BN;
111
+ fixedTermBorrowRolloverConfig: {
112
+ autoRolloverEnabled: number;
113
+ openTermAllowed: number;
114
+ alignmentPadding: number[];
115
+ maxBorrowRateBps: number;
116
+ minDebtTermSeconds: BN;
117
+ };
118
+ padding2: BN[];
119
+ };
120
+ toJSON(): ObligationLiquidityJSON;
121
+ static fromJSON(obj: ObligationLiquidityJSON): ObligationLiquidity;
122
+ toEncodable(): {
123
+ borrowReserve: Address;
124
+ cumulativeBorrowRateBsf: {
125
+ value: BN[];
126
+ padding: BN[];
127
+ };
128
+ firstBorrowedAtTimestamp: BN;
129
+ borrowedAmountSf: BN;
130
+ marketValueSf: BN;
131
+ borrowFactorAdjustedMarketValueSf: BN;
132
+ borrowedAmountOutsideElevationGroups: BN;
133
+ fixedTermBorrowRolloverConfig: {
134
+ autoRolloverEnabled: number;
135
+ openTermAllowed: number;
136
+ alignmentPadding: number[];
137
+ maxBorrowRateBps: number;
138
+ minDebtTermSeconds: BN;
139
+ };
140
+ padding2: BN[];
141
+ };
142
+ }
143
+ //# sourceMappingURL=ObligationLiquidity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ObligationLiquidity.d.ts","sourceRoot":"","sources":["../../../../src/@codegen/kvault/types/ObligationLiquidity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,OAAO,EAAE,MAAM,aAAa,CAAA;AAC9C,OAAO,EAAE,MAAM,OAAO,CAAA;AACtB,OAAO,KAAK,KAAK,MAAM,UAAU,CAAA;AAIjC,MAAM,WAAW,yBAAyB;IACxC,yCAAyC;IACzC,aAAa,EAAE,OAAO,CAAA;IACtB,sEAAsE;IACtE,uBAAuB,EAAE,KAAK,CAAC,sBAAsB,CAAA;IACrD;;;;;;;;;OASG;IACH,wBAAwB,EAAE,EAAE,CAAA;IAC5B,mEAAmE;IACnE,gBAAgB,EAAE,EAAE,CAAA;IACpB,iEAAiE;IACjE,aAAa,EAAE,EAAE,CAAA;IACjB,qGAAqG;IACrG,iCAAiC,EAAE,EAAE,CAAA;IACrC,iEAAiE;IACjE,oCAAoC,EAAE,EAAE,CAAA;IACxC;;;OAGG;IACH,6BAA6B,EAAE,KAAK,CAAC,mCAAmC,CAAA;IACxE,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,CAAA;CACpB;AAED,MAAM,WAAW,uBAAuB;IACtC,yCAAyC;IACzC,aAAa,EAAE,MAAM,CAAA;IACrB,sEAAsE;IACtE,uBAAuB,EAAE,KAAK,CAAC,oBAAoB,CAAA;IACnD;;;;;;;;;OASG;IACH,wBAAwB,EAAE,MAAM,CAAA;IAChC,mEAAmE;IACnE,gBAAgB,EAAE,MAAM,CAAA;IACxB,iEAAiE;IACjE,aAAa,EAAE,MAAM,CAAA;IACrB,qGAAqG;IACrG,iCAAiC,EAAE,MAAM,CAAA;IACzC,iEAAiE;IACjE,oCAAoC,EAAE,MAAM,CAAA;IAC5C;;;OAGG;IACH,6BAA6B,EAAE,KAAK,CAAC,iCAAiC,CAAA;IACtE,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;CACxB;AAED,iCAAiC;AACjC,qBAAa,mBAAmB;IAC9B,yCAAyC;IACzC,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAA;IAC/B,sEAAsE;IACtE,QAAQ,CAAC,uBAAuB,EAAE,KAAK,CAAC,gBAAgB,CAAA;IACxD;;;;;;;;;OASG;IACH,QAAQ,CAAC,wBAAwB,EAAE,EAAE,CAAA;IACrC,mEAAmE;IACnE,QAAQ,CAAC,gBAAgB,EAAE,EAAE,CAAA;IAC7B,iEAAiE;IACjE,QAAQ,CAAC,aAAa,EAAE,EAAE,CAAA;IAC1B,qGAAqG;IACrG,QAAQ,CAAC,iCAAiC,EAAE,EAAE,CAAA;IAC9C,iEAAiE;IACjE,QAAQ,CAAC,oCAAoC,EAAE,EAAE,CAAA;IACjD;;;OAGG;IACH,QAAQ,CAAC,6BAA6B,EAAE,KAAK,CAAC,6BAA6B,CAAA;IAC3E,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,CAAA;gBAEhB,MAAM,EAAE,yBAAyB;IAmB7C,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,MAAM;IAoB/B,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG;IAoB3B,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,yBAAyB;;;;;;;;;;;;;;;;;;;;IAqBpD,MAAM,IAAI,uBAAuB;IAiBjC,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,uBAAuB,GAAG,mBAAmB;IAuBlE,WAAW;;;;;;;;;;;;;;;;;;;;CAGZ"}
@@ -0,0 +1,165 @@
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 () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.ObligationLiquidity = void 0;
40
+ const kit_1 = require("@solana/kit"); // eslint-disable-line @typescript-eslint/no-unused-vars
41
+ const bn_js_1 = __importDefault(require("bn.js")); // eslint-disable-line @typescript-eslint/no-unused-vars
42
+ const types = __importStar(require("../types")); // eslint-disable-line @typescript-eslint/no-unused-vars
43
+ const borsh = __importStar(require("@coral-xyz/borsh"));
44
+ const utils_1 = require("../utils");
45
+ /** Obligation liquidity state */
46
+ class ObligationLiquidity {
47
+ /** Reserve liquidity is borrowed from */
48
+ borrowReserve;
49
+ /** Borrow rate used for calculating interest (big scaled fraction) */
50
+ cumulativeBorrowRateBsf;
51
+ /**
52
+ * The timestamp at which this debt was taken.
53
+ * More specifically: when the *first* borrow operation from this reserve happened.
54
+ * This means that:
55
+ * - adding debt of the same reserve does *not* change this timestamp,
56
+ * - repaying the entire debt of this reserve *does* reset this timestamp.
57
+ *
58
+ * Note: this field is *not* only metadata: it is used in the logic, e.g. for enforcing the
59
+ * fixed-term borrows (i.e. those induced by [ReserveConfig::debt_term_seconds]).
60
+ */
61
+ firstBorrowedAtTimestamp;
62
+ /** Amount of liquidity borrowed plus interest (scaled fraction) */
63
+ borrowedAmountSf;
64
+ /** Liquidity market value in quote currency (scaled fraction) */
65
+ marketValueSf;
66
+ /** Risk adjusted liquidity market value in quote currency - DEBUG ONLY - use market_value instead */
67
+ borrowFactorAdjustedMarketValueSf;
68
+ /** Amount of liquidity borrowed outside of an elevation group */
69
+ borrowedAmountOutsideElevationGroups;
70
+ /**
71
+ * The user's auto-rollover opt-ins - only effective when this borrow is fixed-term (i.e. its
72
+ * reserve has a non-zero [ReserveConfig::debt_term_seconds]).
73
+ */
74
+ fixedTermBorrowRolloverConfig;
75
+ padding2;
76
+ constructor(fields) {
77
+ this.borrowReserve = fields.borrowReserve;
78
+ this.cumulativeBorrowRateBsf = new types.BigFractionBytes({
79
+ ...fields.cumulativeBorrowRateBsf,
80
+ });
81
+ this.firstBorrowedAtTimestamp = fields.firstBorrowedAtTimestamp;
82
+ this.borrowedAmountSf = fields.borrowedAmountSf;
83
+ this.marketValueSf = fields.marketValueSf;
84
+ this.borrowFactorAdjustedMarketValueSf =
85
+ fields.borrowFactorAdjustedMarketValueSf;
86
+ this.borrowedAmountOutsideElevationGroups =
87
+ fields.borrowedAmountOutsideElevationGroups;
88
+ this.fixedTermBorrowRolloverConfig =
89
+ new types.FixedTermBorrowRolloverConfig({
90
+ ...fields.fixedTermBorrowRolloverConfig,
91
+ });
92
+ this.padding2 = fields.padding2;
93
+ }
94
+ static layout(property) {
95
+ return borsh.struct([
96
+ (0, utils_1.borshAddress)("borrowReserve"),
97
+ types.BigFractionBytes.layout("cumulativeBorrowRateBsf"),
98
+ borsh.u64("firstBorrowedAtTimestamp"),
99
+ borsh.u128("borrowedAmountSf"),
100
+ borsh.u128("marketValueSf"),
101
+ borsh.u128("borrowFactorAdjustedMarketValueSf"),
102
+ borsh.u64("borrowedAmountOutsideElevationGroups"),
103
+ types.FixedTermBorrowRolloverConfig.layout("fixedTermBorrowRolloverConfig"),
104
+ borsh.array(borsh.u64(), 5, "padding2"),
105
+ ], property);
106
+ }
107
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
108
+ static fromDecoded(obj) {
109
+ return new ObligationLiquidity({
110
+ borrowReserve: obj.borrowReserve,
111
+ cumulativeBorrowRateBsf: types.BigFractionBytes.fromDecoded(obj.cumulativeBorrowRateBsf),
112
+ firstBorrowedAtTimestamp: obj.firstBorrowedAtTimestamp,
113
+ borrowedAmountSf: obj.borrowedAmountSf,
114
+ marketValueSf: obj.marketValueSf,
115
+ borrowFactorAdjustedMarketValueSf: obj.borrowFactorAdjustedMarketValueSf,
116
+ borrowedAmountOutsideElevationGroups: obj.borrowedAmountOutsideElevationGroups,
117
+ fixedTermBorrowRolloverConfig: types.FixedTermBorrowRolloverConfig.fromDecoded(obj.fixedTermBorrowRolloverConfig),
118
+ padding2: obj.padding2,
119
+ });
120
+ }
121
+ static toEncodable(fields) {
122
+ return {
123
+ borrowReserve: fields.borrowReserve,
124
+ cumulativeBorrowRateBsf: types.BigFractionBytes.toEncodable(fields.cumulativeBorrowRateBsf),
125
+ firstBorrowedAtTimestamp: fields.firstBorrowedAtTimestamp,
126
+ borrowedAmountSf: fields.borrowedAmountSf,
127
+ marketValueSf: fields.marketValueSf,
128
+ borrowFactorAdjustedMarketValueSf: fields.borrowFactorAdjustedMarketValueSf,
129
+ borrowedAmountOutsideElevationGroups: fields.borrowedAmountOutsideElevationGroups,
130
+ fixedTermBorrowRolloverConfig: types.FixedTermBorrowRolloverConfig.toEncodable(fields.fixedTermBorrowRolloverConfig),
131
+ padding2: fields.padding2,
132
+ };
133
+ }
134
+ toJSON() {
135
+ return {
136
+ borrowReserve: this.borrowReserve,
137
+ cumulativeBorrowRateBsf: this.cumulativeBorrowRateBsf.toJSON(),
138
+ firstBorrowedAtTimestamp: this.firstBorrowedAtTimestamp.toString(),
139
+ borrowedAmountSf: this.borrowedAmountSf.toString(),
140
+ marketValueSf: this.marketValueSf.toString(),
141
+ borrowFactorAdjustedMarketValueSf: this.borrowFactorAdjustedMarketValueSf.toString(),
142
+ borrowedAmountOutsideElevationGroups: this.borrowedAmountOutsideElevationGroups.toString(),
143
+ fixedTermBorrowRolloverConfig: this.fixedTermBorrowRolloverConfig.toJSON(),
144
+ padding2: this.padding2.map((item) => item.toString()),
145
+ };
146
+ }
147
+ static fromJSON(obj) {
148
+ return new ObligationLiquidity({
149
+ borrowReserve: (0, kit_1.address)(obj.borrowReserve),
150
+ cumulativeBorrowRateBsf: types.BigFractionBytes.fromJSON(obj.cumulativeBorrowRateBsf),
151
+ firstBorrowedAtTimestamp: new bn_js_1.default(obj.firstBorrowedAtTimestamp),
152
+ borrowedAmountSf: new bn_js_1.default(obj.borrowedAmountSf),
153
+ marketValueSf: new bn_js_1.default(obj.marketValueSf),
154
+ borrowFactorAdjustedMarketValueSf: new bn_js_1.default(obj.borrowFactorAdjustedMarketValueSf),
155
+ borrowedAmountOutsideElevationGroups: new bn_js_1.default(obj.borrowedAmountOutsideElevationGroups),
156
+ fixedTermBorrowRolloverConfig: types.FixedTermBorrowRolloverConfig.fromJSON(obj.fixedTermBorrowRolloverConfig),
157
+ padding2: obj.padding2.map((item) => new bn_js_1.default(item)),
158
+ });
159
+ }
160
+ toEncodable() {
161
+ return ObligationLiquidity.toEncodable(this);
162
+ }
163
+ }
164
+ exports.ObligationLiquidity = ObligationLiquidity;
165
+ //# sourceMappingURL=ObligationLiquidity.js.map