@kamino-finance/klend-sdk 5.11.3-beta.0 → 5.11.3-beta.1

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 (87) hide show
  1. package/dist/classes/action.d.ts +23 -23
  2. package/dist/classes/action.d.ts.map +1 -1
  3. package/dist/classes/action.js +149 -69
  4. package/dist/classes/action.js.map +1 -1
  5. package/dist/classes/manager.d.ts +1 -1
  6. package/dist/classes/manager.js +1 -1
  7. package/dist/classes/market.d.ts +3 -3
  8. package/dist/classes/market.d.ts.map +1 -1
  9. package/dist/classes/market.js +16 -30
  10. package/dist/classes/market.js.map +1 -1
  11. package/dist/classes/obligation.d.ts +0 -2
  12. package/dist/classes/obligation.d.ts.map +1 -1
  13. package/dist/classes/obligation.js +0 -5
  14. package/dist/classes/obligation.js.map +1 -1
  15. package/dist/classes/vault.js +14 -14
  16. package/dist/classes/vault.js.map +1 -1
  17. package/dist/idl_codegen_kamino_vault/accounts/VaultState.d.ts +3 -3
  18. package/dist/idl_codegen_kamino_vault/accounts/VaultState.d.ts.map +1 -1
  19. package/dist/idl_codegen_kamino_vault/accounts/VaultState.js +6 -6
  20. package/dist/idl_codegen_kamino_vault/accounts/VaultState.js.map +1 -1
  21. package/dist/idl_codegen_kamino_vault/instructions/giveUpPendingFees.d.ts +1 -1
  22. package/dist/idl_codegen_kamino_vault/instructions/giveUpPendingFees.d.ts.map +1 -1
  23. package/dist/idl_codegen_kamino_vault/instructions/giveUpPendingFees.js +1 -1
  24. package/dist/idl_codegen_kamino_vault/instructions/giveUpPendingFees.js.map +1 -1
  25. package/dist/idl_codegen_kamino_vault/instructions/initializeSharesMetadata.d.ts +1 -1
  26. package/dist/idl_codegen_kamino_vault/instructions/initializeSharesMetadata.d.ts.map +1 -1
  27. package/dist/idl_codegen_kamino_vault/instructions/initializeSharesMetadata.js +1 -1
  28. package/dist/idl_codegen_kamino_vault/instructions/initializeSharesMetadata.js.map +1 -1
  29. package/dist/idl_codegen_kamino_vault/instructions/updateSharesMetadata.d.ts +1 -1
  30. package/dist/idl_codegen_kamino_vault/instructions/updateSharesMetadata.d.ts.map +1 -1
  31. package/dist/idl_codegen_kamino_vault/instructions/updateSharesMetadata.js +1 -1
  32. package/dist/idl_codegen_kamino_vault/instructions/updateSharesMetadata.js.map +1 -1
  33. package/dist/idl_codegen_kamino_vault/instructions/updateVaultConfig.d.ts +1 -1
  34. package/dist/idl_codegen_kamino_vault/instructions/updateVaultConfig.d.ts.map +1 -1
  35. package/dist/idl_codegen_kamino_vault/instructions/updateVaultConfig.js +1 -1
  36. package/dist/idl_codegen_kamino_vault/instructions/updateVaultConfig.js.map +1 -1
  37. package/dist/idl_codegen_kamino_vault/instructions/withdrawPendingFees.d.ts +1 -1
  38. package/dist/idl_codegen_kamino_vault/instructions/withdrawPendingFees.d.ts.map +1 -1
  39. package/dist/idl_codegen_kamino_vault/instructions/withdrawPendingFees.js +1 -1
  40. package/dist/idl_codegen_kamino_vault/instructions/withdrawPendingFees.js.map +1 -1
  41. package/dist/lending_operations/repay_with_collateral_operations.d.ts +4 -4
  42. package/dist/lending_operations/repay_with_collateral_operations.d.ts.map +1 -1
  43. package/dist/lending_operations/repay_with_collateral_operations.js +8 -10
  44. package/dist/lending_operations/repay_with_collateral_operations.js.map +1 -1
  45. package/dist/lending_operations/swap_collateral_operations.d.ts +2 -2
  46. package/dist/lending_operations/swap_collateral_operations.d.ts.map +1 -1
  47. package/dist/lending_operations/swap_collateral_operations.js +6 -11
  48. package/dist/lending_operations/swap_collateral_operations.js.map +1 -1
  49. package/dist/leverage/calcs.d.ts +10 -5
  50. package/dist/leverage/calcs.d.ts.map +1 -1
  51. package/dist/leverage/calcs.js +13 -6
  52. package/dist/leverage/calcs.js.map +1 -1
  53. package/dist/leverage/operations.d.ts +7 -9
  54. package/dist/leverage/operations.d.ts.map +1 -1
  55. package/dist/leverage/operations.js +72 -78
  56. package/dist/leverage/operations.js.map +1 -1
  57. package/dist/leverage/types.d.ts +4 -4
  58. package/dist/leverage/types.d.ts.map +1 -1
  59. package/dist/utils/ObligationType.d.ts +1 -1
  60. package/dist/utils/ObligationType.d.ts.map +1 -1
  61. package/dist/utils/managerTypes.d.ts.map +1 -1
  62. package/dist/utils/managerTypes.js +52 -7
  63. package/dist/utils/managerTypes.js.map +1 -1
  64. package/dist/utils/oracle.d.ts +3 -3
  65. package/dist/utils/oracle.d.ts.map +1 -1
  66. package/package.json +2 -2
  67. package/src/classes/action.ts +162 -75
  68. package/src/classes/manager.ts +1 -1
  69. package/src/classes/market.ts +25 -34
  70. package/src/classes/obligation.ts +0 -6
  71. package/src/classes/vault.ts +14 -14
  72. package/src/client.ts +3 -8
  73. package/src/idl_codegen_kamino_vault/accounts/VaultState.ts +8 -8
  74. package/src/idl_codegen_kamino_vault/instructions/giveUpPendingFees.ts +2 -2
  75. package/src/idl_codegen_kamino_vault/instructions/initializeSharesMetadata.ts +2 -2
  76. package/src/idl_codegen_kamino_vault/instructions/updateSharesMetadata.ts +2 -2
  77. package/src/idl_codegen_kamino_vault/instructions/updateVaultConfig.ts +2 -2
  78. package/src/idl_codegen_kamino_vault/instructions/withdrawPendingFees.ts +2 -2
  79. package/src/idl_kamino_vault.json +7 -7
  80. package/src/lending_operations/repay_with_collateral_operations.ts +11 -15
  81. package/src/lending_operations/swap_collateral_operations.ts +7 -19
  82. package/src/leverage/calcs.ts +18 -2
  83. package/src/leverage/operations.ts +72 -114
  84. package/src/leverage/types.ts +4 -4
  85. package/src/utils/ObligationType.ts +1 -1
  86. package/src/utils/managerTypes.ts +52 -10
  87. package/src/utils/oracle.ts +2 -2
@@ -2,7 +2,7 @@ import { AddressLookupTableAccount, PublicKey, TransactionInstruction } from '@s
2
2
  import Decimal from 'decimal.js';
3
3
  import { KaminoMarket, KaminoObligation } from '../classes';
4
4
  import { InstructionsWithLookupTables, Kamino, StrategyWithAddress } from '@kamino-finance/kliquidity-sdk';
5
- import { ObligationType, ObligationTypeTag, ScopePriceRefreshConfig } from '../utils';
5
+ import { ObligationType, ObligationTypeTag } from '../utils';
6
6
 
7
7
  export type SwapQuoteProvider<QuoteResponse> = (
8
8
  inputs: SwapInputs,
@@ -82,7 +82,7 @@ export interface DepositWithLeverageSwapInputsProps<QuoteResponse> {
82
82
  selectedTokenMint: PublicKey;
83
83
  budgetAndPriorityFeeIxs?: TransactionInstruction[];
84
84
  kamino: Kamino | undefined;
85
- scopeRefreshConfig?: ScopePriceRefreshConfig;
85
+ scopeFeed: string | undefined;
86
86
  quoteBufferBps: Decimal;
87
87
  priceAinB: PriceAinBProvider;
88
88
  isKtoken: IsKtokenProvider;
@@ -143,7 +143,7 @@ export interface WithdrawWithLeverageSwapInputsProps<QuoteResponse> {
143
143
  selectedTokenMint: PublicKey;
144
144
  budgetAndPriorityFeeIxs?: TransactionInstruction[];
145
145
  kamino: Kamino | undefined;
146
- scopeRefreshConfig?: ScopePriceRefreshConfig;
146
+ scopeFeed: string | undefined;
147
147
  quoteBufferBps: Decimal;
148
148
  isKtoken: IsKtokenProvider;
149
149
  quoter: SwapQuoteProvider<QuoteResponse>;
@@ -196,7 +196,7 @@ export interface AdjustLeverageSwapInputsProps<QuoteResponse> {
196
196
  slippagePct: Decimal;
197
197
  budgetAndPriorityFeeIxs?: TransactionInstruction[];
198
198
  kamino: Kamino | undefined;
199
- scopeRefreshConfig?: ScopePriceRefreshConfig;
199
+ scopeFeed: string | undefined;
200
200
  quoteBufferBps: Decimal;
201
201
  priceAinB: PriceAinBProvider;
202
202
  isKtoken: IsKtokenProvider;
@@ -1,7 +1,7 @@
1
1
  import { PublicKey } from '@solana/web3.js';
2
2
  import { KaminoMarket, KaminoObligation } from '../classes';
3
3
 
4
- export type ObligationType = VanillaObligation | MultiplyObligation | LendingObligation | LeverageObligation;
4
+ export type ObligationType = VanillaObligation | MultiplyObligation | LendingObligation;
5
5
 
6
6
  export enum ObligationTypeTag {
7
7
  Vanilla = 0,
@@ -397,17 +397,59 @@ export function getReserveOracleConfigs(priceFeed: PriceFeed | null): {
397
397
  };
398
398
  }
399
399
 
400
- const ORACLE_TYPE_MAP = Object.fromEntries(
401
- Object.values(OracleType)
402
- // Filter for oracle types that have a discriminator property
403
- // This ensures we only include actual oracle implementations in the mapping
404
- // Pyth is used as a type assertion here but actually any oracle type with a discriminator will pass
405
- .filter((T): T is typeof OracleType.Pyth => 'discriminator' in T)
406
- .map((T) => [T.discriminator, T.name])
407
- );
408
-
409
400
  export function parseOracleType(type: number): string {
410
- return ORACLE_TYPE_MAP[type] || 'Unknown';
401
+ switch (type) {
402
+ case new OracleType.Pyth().discriminator:
403
+ return 'Pyth';
404
+ case new OracleType.SwitchboardV2().discriminator:
405
+ return 'SwitchboardV2';
406
+ case new OracleType.CToken().discriminator:
407
+ return 'CToken';
408
+ case new OracleType.KToken().discriminator:
409
+ return 'KToken';
410
+ case new OracleType.SplStake().discriminator:
411
+ return 'SplStake';
412
+ case new OracleType.PythEMA().discriminator:
413
+ return 'PythEMA';
414
+ case new OracleType.DeprecatedPlaceholder1().discriminator:
415
+ return 'DeprecatedPlaceholder1';
416
+ case new OracleType.DeprecatedPlaceholder2().discriminator:
417
+ return 'DeprecatedPlaceholder2';
418
+ case new OracleType.MsolStake().discriminator:
419
+ return 'MsolStake';
420
+ case new OracleType.KTokenToTokenA().discriminator:
421
+ return 'KTokenToTokenA';
422
+ case new OracleType.KTokenToTokenB().discriminator:
423
+ return 'KTokenToTokenB';
424
+ case new OracleType.JupiterLpFetch().discriminator:
425
+ return 'JupiterLpFetch';
426
+ case new OracleType.ScopeTwap().discriminator:
427
+ return 'ScopeTwap';
428
+ case new OracleType.OrcaWhirlpoolAtoB().discriminator:
429
+ return 'OrcaWhirlpoolAtoB';
430
+ case new OracleType.OrcaWhirlpoolBtoA().discriminator:
431
+ return 'OrcaWhirlpoolBtoA';
432
+ case new OracleType.RaydiumAmmV3AtoB().discriminator:
433
+ return 'RaydiumAmmV3AtoB';
434
+ case new OracleType.RaydiumAmmV3BtoA().discriminator:
435
+ return 'RaydiumAmmV3BtoA';
436
+ case new OracleType.JupiterLpCompute().discriminator:
437
+ return 'JupiterLpCompute';
438
+ case new OracleType.MeteoraDlmmAtoB().discriminator:
439
+ return 'MeteoraDlmmAtoB';
440
+ case new OracleType.MeteoraDlmmBtoA().discriminator:
441
+ return 'MeteoraDlmmBtoA';
442
+ case new OracleType.JupiterLpScope().discriminator:
443
+ return 'JupiterLpScope';
444
+ case new OracleType.PythPullBased().discriminator:
445
+ return 'PythPullBased';
446
+ case new OracleType.PythPullBasedEMA().discriminator:
447
+ return 'PythPullBasedEMA';
448
+ case new OracleType.FixedPrice().discriminator:
449
+ return 'FixedPrice';
450
+ default:
451
+ return 'Unknown';
452
+ }
411
453
  }
412
454
 
413
455
  export type MarketWithAddress = {
@@ -35,8 +35,8 @@ export type CandidatePrice = {
35
35
  valid: boolean;
36
36
  };
37
37
 
38
- export type ScopePriceRefreshConfig = {
39
- scope: Scope;
38
+ export type ScopeRefresh = {
39
+ includeScopeRefresh: boolean;
40
40
  scopeFeed: string;
41
41
  };
42
42