@kamino-finance/klend-sdk 5.10.13 → 5.10.15

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 (182) hide show
  1. package/README.md +32 -0
  2. package/dist/classes/action.d.ts.map +1 -1
  3. package/dist/classes/action.js +8 -6
  4. package/dist/classes/action.js.map +1 -1
  5. package/dist/classes/manager.d.ts +6 -5
  6. package/dist/classes/manager.d.ts.map +1 -1
  7. package/dist/classes/manager.js +8 -17
  8. package/dist/classes/manager.js.map +1 -1
  9. package/dist/classes/obligation.js +1 -1
  10. package/dist/classes/obligation.js.map +1 -1
  11. package/dist/classes/reserve.js +9 -9
  12. package/dist/classes/reserve.js.map +1 -1
  13. package/dist/classes/types_utils.d.ts +2 -1
  14. package/dist/classes/types_utils.d.ts.map +1 -1
  15. package/dist/classes/types_utils.js +6 -3
  16. package/dist/classes/types_utils.js.map +1 -1
  17. package/dist/classes/vault.d.ts +18 -11
  18. package/dist/classes/vault.d.ts.map +1 -1
  19. package/dist/classes/vault.js +63 -27
  20. package/dist/classes/vault.js.map +1 -1
  21. package/dist/client_kamino_manager.js +2 -2
  22. package/dist/client_kamino_manager.js.map +1 -1
  23. package/dist/idl.json +1137 -132
  24. package/dist/idl_codegen/accounts/LendingMarket.d.ts +6 -6
  25. package/dist/idl_codegen/accounts/LendingMarket.d.ts.map +1 -1
  26. package/dist/idl_codegen/accounts/LendingMarket.js +7 -7
  27. package/dist/idl_codegen/accounts/LendingMarket.js.map +1 -1
  28. package/dist/idl_codegen/errors/custom.d.ts +15 -7
  29. package/dist/idl_codegen/errors/custom.d.ts.map +1 -1
  30. package/dist/idl_codegen/errors/custom.js +28 -14
  31. package/dist/idl_codegen/errors/custom.js.map +1 -1
  32. package/dist/idl_codegen/instructions/borrowObligationLiquidityV2.d.ts +29 -0
  33. package/dist/idl_codegen/instructions/borrowObligationLiquidityV2.d.ts.map +1 -0
  34. package/dist/idl_codegen/instructions/borrowObligationLiquidityV2.js +125 -0
  35. package/dist/idl_codegen/instructions/borrowObligationLiquidityV2.js.map +1 -0
  36. package/dist/idl_codegen/instructions/depositObligationCollateralV2.d.ts +26 -0
  37. package/dist/idl_codegen/instructions/depositObligationCollateralV2.d.ts.map +1 -0
  38. package/dist/idl_codegen/instructions/depositObligationCollateralV2.js +110 -0
  39. package/dist/idl_codegen/instructions/depositObligationCollateralV2.js.map +1 -0
  40. package/dist/idl_codegen/instructions/depositReserveLiquidityAndObligationCollateralV2.d.ts +31 -0
  41. package/dist/idl_codegen/instructions/depositReserveLiquidityAndObligationCollateralV2.d.ts.map +1 -0
  42. package/dist/idl_codegen/instructions/depositReserveLiquidityAndObligationCollateralV2.js +135 -0
  43. package/dist/idl_codegen/instructions/depositReserveLiquidityAndObligationCollateralV2.js.map +1 -0
  44. package/dist/idl_codegen/instructions/index.d.ts +18 -0
  45. package/dist/idl_codegen/instructions/index.d.ts.map +1 -1
  46. package/dist/idl_codegen/instructions/index.js +19 -1
  47. package/dist/idl_codegen/instructions/index.js.map +1 -1
  48. package/dist/idl_codegen/instructions/liquidateObligationAndRedeemReserveCollateralV2.d.ts +43 -0
  49. package/dist/idl_codegen/instructions/liquidateObligationAndRedeemReserveCollateralV2.d.ts.map +1 -0
  50. package/dist/idl_codegen/instructions/liquidateObligationAndRedeemReserveCollateralV2.js +181 -0
  51. package/dist/idl_codegen/instructions/liquidateObligationAndRedeemReserveCollateralV2.js.map +1 -0
  52. package/dist/idl_codegen/instructions/refreshObligationFarmsForReserve.d.ts +8 -6
  53. package/dist/idl_codegen/instructions/refreshObligationFarmsForReserve.d.ts.map +1 -1
  54. package/dist/idl_codegen/instructions/refreshObligationFarmsForReserve.js +23 -7
  55. package/dist/idl_codegen/instructions/refreshObligationFarmsForReserve.js.map +1 -1
  56. package/dist/idl_codegen/instructions/repayAndWithdrawAndRedeemV2.d.ts +49 -0
  57. package/dist/idl_codegen/instructions/repayAndWithdrawAndRedeemV2.d.ts.map +1 -0
  58. package/dist/idl_codegen/instructions/repayAndWithdrawAndRedeemV2.js +205 -0
  59. package/dist/idl_codegen/instructions/repayAndWithdrawAndRedeemV2.js.map +1 -0
  60. package/dist/idl_codegen/instructions/repayObligationLiquidityV2.d.ts +27 -0
  61. package/dist/idl_codegen/instructions/repayObligationLiquidityV2.d.ts.map +1 -0
  62. package/dist/idl_codegen/instructions/repayObligationLiquidityV2.js +111 -0
  63. package/dist/idl_codegen/instructions/repayObligationLiquidityV2.js.map +1 -0
  64. package/dist/idl_codegen/instructions/socializeLossV2.d.ts +23 -0
  65. package/dist/idl_codegen/instructions/socializeLossV2.d.ts.map +1 -0
  66. package/dist/idl_codegen/instructions/socializeLossV2.js +95 -0
  67. package/dist/idl_codegen/instructions/socializeLossV2.js.map +1 -0
  68. package/dist/idl_codegen/instructions/withdrawObligationCollateralAndRedeemReserveCollateralV2.d.ts +31 -0
  69. package/dist/idl_codegen/instructions/withdrawObligationCollateralAndRedeemReserveCollateralV2.d.ts.map +1 -0
  70. package/dist/idl_codegen/instructions/withdrawObligationCollateralAndRedeemReserveCollateralV2.js +135 -0
  71. package/dist/idl_codegen/instructions/withdrawObligationCollateralAndRedeemReserveCollateralV2.js.map +1 -0
  72. package/dist/idl_codegen/instructions/withdrawObligationCollateralV2.d.ts +26 -0
  73. package/dist/idl_codegen/instructions/withdrawObligationCollateralV2.d.ts.map +1 -0
  74. package/dist/idl_codegen/instructions/withdrawObligationCollateralV2.js +110 -0
  75. package/dist/idl_codegen/instructions/withdrawObligationCollateralV2.js.map +1 -0
  76. package/dist/idl_codegen/types/ReserveConfig.d.ts +8 -5
  77. package/dist/idl_codegen/types/ReserveConfig.d.ts.map +1 -1
  78. package/dist/idl_codegen/types/ReserveConfig.js +9 -8
  79. package/dist/idl_codegen/types/ReserveConfig.js.map +1 -1
  80. package/dist/idl_codegen/types/UpdateConfigMode.d.ts +7 -7
  81. package/dist/idl_codegen/types/UpdateConfigMode.d.ts.map +1 -1
  82. package/dist/idl_codegen/types/UpdateConfigMode.js +12 -12
  83. package/dist/idl_codegen/types/UpdateConfigMode.js.map +1 -1
  84. package/dist/idl_codegen/types/UpdateLendingMarketMode.d.ts +7 -7
  85. package/dist/idl_codegen/types/UpdateLendingMarketMode.d.ts.map +1 -1
  86. package/dist/idl_codegen/types/UpdateLendingMarketMode.js +12 -12
  87. package/dist/idl_codegen/types/UpdateLendingMarketMode.js.map +1 -1
  88. package/dist/idl_codegen/types/index.d.ts +4 -4
  89. package/dist/idl_codegen/types/index.d.ts.map +1 -1
  90. package/dist/idl_codegen_kamino_vault/accounts/Reserve.js +2 -2
  91. package/dist/idl_codegen_kamino_vault/accounts/Reserve.js.map +1 -1
  92. package/dist/idl_codegen_kamino_vault/accounts/VaultState.js +2 -2
  93. package/dist/idl_codegen_kamino_vault/accounts/VaultState.js.map +1 -1
  94. package/dist/idl_codegen_kamino_vault/errors/index.js +1 -1
  95. package/dist/idl_codegen_kamino_vault/errors/index.js.map +1 -1
  96. package/dist/idl_codegen_kamino_vault/instructions/deposit.js +1 -1
  97. package/dist/idl_codegen_kamino_vault/instructions/deposit.js.map +1 -1
  98. package/dist/idl_codegen_kamino_vault/instructions/giveUpPendingFees.js +1 -1
  99. package/dist/idl_codegen_kamino_vault/instructions/giveUpPendingFees.js.map +1 -1
  100. package/dist/idl_codegen_kamino_vault/instructions/initVault.js +1 -1
  101. package/dist/idl_codegen_kamino_vault/instructions/initVault.js.map +1 -1
  102. package/dist/idl_codegen_kamino_vault/instructions/initializeSharesMetadata.js +1 -1
  103. package/dist/idl_codegen_kamino_vault/instructions/initializeSharesMetadata.js.map +1 -1
  104. package/dist/idl_codegen_kamino_vault/instructions/invest.js +1 -1
  105. package/dist/idl_codegen_kamino_vault/instructions/invest.js.map +1 -1
  106. package/dist/idl_codegen_kamino_vault/instructions/updateAdmin.js +1 -1
  107. package/dist/idl_codegen_kamino_vault/instructions/updateAdmin.js.map +1 -1
  108. package/dist/idl_codegen_kamino_vault/instructions/updateReserveAllocation.js +1 -1
  109. package/dist/idl_codegen_kamino_vault/instructions/updateReserveAllocation.js.map +1 -1
  110. package/dist/idl_codegen_kamino_vault/instructions/updateSharesMetadata.js +1 -1
  111. package/dist/idl_codegen_kamino_vault/instructions/updateSharesMetadata.js.map +1 -1
  112. package/dist/idl_codegen_kamino_vault/instructions/updateVaultConfig.js +1 -1
  113. package/dist/idl_codegen_kamino_vault/instructions/updateVaultConfig.js.map +1 -1
  114. package/dist/idl_codegen_kamino_vault/instructions/withdraw.js +1 -1
  115. package/dist/idl_codegen_kamino_vault/instructions/withdraw.js.map +1 -1
  116. package/dist/idl_codegen_kamino_vault/instructions/withdrawFromAvailable.js +1 -1
  117. package/dist/idl_codegen_kamino_vault/instructions/withdrawFromAvailable.js.map +1 -1
  118. package/dist/idl_codegen_kamino_vault/instructions/withdrawPendingFees.js +1 -1
  119. package/dist/idl_codegen_kamino_vault/instructions/withdrawPendingFees.js.map +1 -1
  120. package/dist/idl_codegen_kamino_vault/programId.d.ts +3 -2
  121. package/dist/idl_codegen_kamino_vault/programId.d.ts.map +1 -1
  122. package/dist/idl_codegen_kamino_vault/programId.js +7 -3
  123. package/dist/idl_codegen_kamino_vault/programId.js.map +1 -1
  124. package/dist/lib.d.ts +1 -0
  125. package/dist/lib.d.ts.map +1 -1
  126. package/dist/lib.js +1 -0
  127. package/dist/lib.js.map +1 -1
  128. package/dist/utils/ObligationType.d.ts.map +1 -1
  129. package/dist/utils/ObligationType.js.map +1 -1
  130. package/dist/utils/accountListing.d.ts +3 -1
  131. package/dist/utils/accountListing.d.ts.map +1 -1
  132. package/dist/utils/accountListing.js +40 -0
  133. package/dist/utils/accountListing.js.map +1 -1
  134. package/dist/utils/managerTypes.js +1 -1
  135. package/dist/utils/managerTypes.js.map +1 -1
  136. package/package.json +1 -1
  137. package/src/classes/action.ts +8 -6
  138. package/src/classes/manager.ts +9 -19
  139. package/src/classes/obligation.ts +1 -1
  140. package/src/classes/reserve.ts +11 -11
  141. package/src/classes/types_utils.ts +6 -3
  142. package/src/classes/vault.ts +81 -32
  143. package/src/client.ts +22 -0
  144. package/src/client_kamino_manager.ts +2 -2
  145. package/src/idl.json +1137 -132
  146. package/src/idl_codegen/accounts/LendingMarket.ts +11 -11
  147. package/src/idl_codegen/errors/custom.ts +26 -12
  148. package/src/idl_codegen/instructions/borrowObligationLiquidityV2.ts +124 -0
  149. package/src/idl_codegen/instructions/depositObligationCollateralV2.ts +106 -0
  150. package/src/idl_codegen/instructions/depositReserveLiquidityAndObligationCollateralV2.ts +136 -0
  151. package/src/idl_codegen/instructions/index.ts +45 -0
  152. package/src/idl_codegen/instructions/liquidateObligationAndRedeemReserveCollateralV2.ts +195 -0
  153. package/src/idl_codegen/instructions/refreshObligationFarmsForReserve.ts +31 -13
  154. package/src/idl_codegen/instructions/repayAndWithdrawAndRedeemV2.ts +239 -0
  155. package/src/idl_codegen/instructions/repayObligationLiquidityV2.ts +108 -0
  156. package/src/idl_codegen/instructions/socializeLossV2.ts +88 -0
  157. package/src/idl_codegen/instructions/withdrawObligationCollateralAndRedeemReserveCollateralV2.ts +136 -0
  158. package/src/idl_codegen/instructions/withdrawObligationCollateralV2.ts +106 -0
  159. package/src/idl_codegen/types/ReserveConfig.ts +17 -14
  160. package/src/idl_codegen/types/UpdateConfigMode.ts +13 -13
  161. package/src/idl_codegen/types/UpdateLendingMarketMode.ts +13 -13
  162. package/src/idl_codegen/types/index.ts +4 -4
  163. package/src/idl_codegen_kamino_vault/accounts/Reserve.ts +1 -1
  164. package/src/idl_codegen_kamino_vault/accounts/VaultState.ts +1 -1
  165. package/src/idl_codegen_kamino_vault/errors/index.ts +1 -1
  166. package/src/idl_codegen_kamino_vault/instructions/deposit.ts +1 -1
  167. package/src/idl_codegen_kamino_vault/instructions/giveUpPendingFees.ts +1 -1
  168. package/src/idl_codegen_kamino_vault/instructions/initVault.ts +1 -1
  169. package/src/idl_codegen_kamino_vault/instructions/initializeSharesMetadata.ts +1 -1
  170. package/src/idl_codegen_kamino_vault/instructions/invest.ts +1 -1
  171. package/src/idl_codegen_kamino_vault/instructions/updateAdmin.ts +1 -1
  172. package/src/idl_codegen_kamino_vault/instructions/updateReserveAllocation.ts +1 -1
  173. package/src/idl_codegen_kamino_vault/instructions/updateSharesMetadata.ts +1 -1
  174. package/src/idl_codegen_kamino_vault/instructions/updateVaultConfig.ts +1 -1
  175. package/src/idl_codegen_kamino_vault/instructions/withdraw.ts +1 -1
  176. package/src/idl_codegen_kamino_vault/instructions/withdrawFromAvailable.ts +1 -1
  177. package/src/idl_codegen_kamino_vault/instructions/withdrawPendingFees.ts +1 -1
  178. package/src/idl_codegen_kamino_vault/programId.ts +6 -2
  179. package/src/lib.ts +1 -0
  180. package/src/utils/ObligationType.ts +2 -10
  181. package/src/utils/accountListing.ts +43 -1
  182. package/src/utils/managerTypes.ts +1 -1
@@ -1,9 +1,13 @@
1
1
  import { PublicKey } from "@solana/web3.js"
2
2
 
3
3
  // Program ID passed with the cli --program-id flag when running the code generator. Do not edit, it will get overwritten.
4
- export const PROGRAM_ID_CLI = new PublicKey(
4
+ export const KVAULTS_PROGRAM_ID_CLI = new PublicKey(
5
5
  "kvauTFR8qm1dhniz6pYuBZkuene3Hfrs1VQhVRgCNrr"
6
6
  )
7
7
 
8
8
  // This constant will not get overwritten on subsequent code generations and it's safe to modify it's value.
9
- export const PROGRAM_ID: PublicKey = PROGRAM_ID_CLI
9
+ export let KVAULTS_PROGRAM_ID: PublicKey = KVAULTS_PROGRAM_ID_CLI
10
+
11
+ export const setKVaultsProgramId = (programId: PublicKey) => {
12
+ KVAULTS_PROGRAM_ID = programId;
13
+ }
package/src/lib.ts CHANGED
@@ -7,6 +7,7 @@ export * from './idl_codegen_kamino_vault/instructions';
7
7
  // only export vault state, do not export Reserve as it's the same one in main klend /idl_codegen/accounts
8
8
  export * from './idl_codegen_kamino_vault/accounts/VaultState';
9
9
  export * from './idl_codegen_kamino_vault/types';
10
+ export * from './idl_codegen_kamino_vault/programId';
10
11
 
11
12
  export * from './classes';
12
13
  export * from './utils';
@@ -160,18 +160,10 @@ export function getObligationType(
160
160
  return new VanillaObligation(kaminoMarket.programId);
161
161
  }
162
162
  case MultiplyObligation.tag: {
163
- return new MultiplyObligation(
164
- mintAddress1,
165
- mintAddress2,
166
- kaminoMarket.programId
167
- );
163
+ return new MultiplyObligation(mintAddress1, mintAddress2, kaminoMarket.programId);
168
164
  }
169
165
  case LeverageObligation.tag: {
170
- return new LeverageObligation(
171
- mintAddress1,
172
- mintAddress2,
173
- kaminoMarket.programId
174
- );
166
+ return new LeverageObligation(mintAddress1, mintAddress2, kaminoMarket.programId);
175
167
  }
176
168
  case LendingObligation.tag: {
177
169
  return new LendingObligation(mintAddress1, kaminoMarket.programId);
@@ -1,5 +1,5 @@
1
1
  import { Connection } from '@solana/web3.js';
2
- import { Obligation } from '../idl_codegen/accounts';
2
+ import { LendingMarket, Obligation, Reserve } from '../idl_codegen/accounts';
3
3
  import { PROGRAM_ID } from '../idl_codegen/programId';
4
4
  import bs58 from 'bs58';
5
5
 
@@ -30,3 +30,45 @@ export async function* getAllObligationAccounts(connection: Connection): AsyncGe
30
30
  }
31
31
  }
32
32
  }
33
+
34
+ export async function* getAllReserveAccounts(connection: Connection): AsyncGenerator<Reserve, void, unknown> {
35
+ // due to relatively low count of reserves, we technically don't really need a generator, but let's keep it consistent within this file
36
+ const reserves = await connection.getProgramAccounts(PROGRAM_ID, {
37
+ filters: [
38
+ {
39
+ dataSize: Reserve.layout.span + 8,
40
+ },
41
+ {
42
+ memcmp: {
43
+ offset: 0,
44
+ bytes: bs58.encode(Reserve.discriminator),
45
+ },
46
+ },
47
+ ],
48
+ });
49
+ for (const reserve of reserves) {
50
+ yield Reserve.decode(reserve.account.data);
51
+ }
52
+ }
53
+
54
+ export async function* getAllLendingMarketAccounts(
55
+ connection: Connection
56
+ ): AsyncGenerator<LendingMarket, void, unknown> {
57
+ // due to relatively very low count of lending markets, we technically don't really need a generator, but let's keep it consistent within this file
58
+ const lendingMarkets = await connection.getProgramAccounts(PROGRAM_ID, {
59
+ filters: [
60
+ {
61
+ dataSize: LendingMarket.layout.span + 8,
62
+ },
63
+ {
64
+ memcmp: {
65
+ offset: 0,
66
+ bytes: bs58.encode(LendingMarket.discriminator),
67
+ },
68
+ },
69
+ ],
70
+ });
71
+ for (const lendingMarket of lendingMarkets) {
72
+ yield LendingMarket.decode(lendingMarket.account.data);
73
+ }
74
+ }
@@ -337,7 +337,7 @@ function buildReserveConfig(fields: {
337
337
  elevationGroups: fields.configParams.elevationGroups,
338
338
  deleveragingThresholdDecreaseBpsPerDay: new BN(24),
339
339
  disableUsageAsCollOutsideEmode: 0,
340
- utilizationLimitBlockBorrowingAbove: 0,
340
+ utilizationLimitBlockBorrowingAbovePct: 0,
341
341
  hostFixedInterestRateBps: 0,
342
342
  autodeleverageEnabled: 0,
343
343
  borrowLimitOutsideElevationGroup: new BN(0),