@kamino-finance/klend-sdk 5.11.15 → 5.11.16

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.
@@ -70,7 +70,7 @@ async function main() {
70
70
  throw new Error('If using multisig mode, multisig pubkey is required');
71
71
  }
72
72
  const multisigPk = multisig ? new web3_js_1.PublicKey(multisig) : web3_js_1.PublicKey.default;
73
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
73
+ const kaminoManager = new lib_1.KaminoManager(env.connection, lib_1.DEFAULT_RECENT_SLOT_DURATION_MS, env.kLendProgramId, env.kVaultProgramId);
74
74
  const { market: marketKp, ixns: createMarketIxns } = await kaminoManager.createMarketIxs({
75
75
  admin: mode === 'multisig' ? multisigPk : env.payer.publicKey,
76
76
  });
@@ -95,7 +95,7 @@ async function main() {
95
95
  throw new Error('If using multisig mode, multisig is required');
96
96
  }
97
97
  const multisigPk = multisig ? new web3_js_1.PublicKey(multisig) : web3_js_1.PublicKey.default;
98
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
98
+ const kaminoManager = new lib_1.KaminoManager(env.connection, lib_1.DEFAULT_RECENT_SLOT_DURATION_MS, env.kLendProgramId, env.kVaultProgramId);
99
99
  const reserveConfigFromFile = JSON.parse(fs.readFileSync(reserveConfigPath, 'utf8'));
100
100
  const reserveConfig = parseReserveConfigFromFile(reserveConfigFromFile);
101
101
  const assetConfig = new lib_1.AssetReserveConfigCli(tokenMint, tokenMintProgramId, reserveConfig);
@@ -140,7 +140,7 @@ async function main() {
140
140
  if (mode === 'multisig' && !multisig) {
141
141
  throw new Error('If using multisig mode, multisig is required');
142
142
  }
143
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
143
+ const kaminoManager = new lib_1.KaminoManager(env.connection, lib_1.DEFAULT_RECENT_SLOT_DURATION_MS, env.kLendProgramId, env.kVaultProgramId);
144
144
  const reserveConfigFromFile = JSON.parse(fs.readFileSync(reserveConfigPath, 'utf8'));
145
145
  const reserveConfig = parseReserveConfigFromFile(reserveConfigFromFile);
146
146
  const ixns = await kaminoManager.updateReserveIxs(marketWithAddress, reserveAddress, reserveConfig, reserveState, updateEntireConfig);
@@ -178,7 +178,7 @@ async function main() {
178
178
  throw new Error('If using multisig mode, multisig is required');
179
179
  }
180
180
  const multisigPk = multisig ? new web3_js_1.PublicKey(multisig) : web3_js_1.PublicKey.default;
181
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
181
+ const kaminoManager = new lib_1.KaminoManager(env.connection, lib_1.DEFAULT_RECENT_SLOT_DURATION_MS, env.kLendProgramId, env.kVaultProgramId);
182
182
  const tokenProgramID = await (0, rpc_1.getAccountOwner)(env.connection, tokenMint);
183
183
  const kaminoVaultConfig = new lib_1.KaminoVaultConfig({
184
184
  admin: mode === 'multisig' ? multisigPk : env.payer.publicKey,
@@ -207,7 +207,7 @@ async function main() {
207
207
  if (mode === 'multisig' && !multisig) {
208
208
  throw new Error('If using multisig mode, multisig is required');
209
209
  }
210
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
210
+ const kaminoManager = new lib_1.KaminoManager(env.connection, lib_1.DEFAULT_RECENT_SLOT_DURATION_MS, env.kLendProgramId, env.kVaultProgramId);
211
211
  const kaminoVault = new lib_1.KaminoVault(vaultAddress, undefined, env.kVaultProgramId);
212
212
  const instructions = await kaminoManager.updateVaultConfigIxs(kaminoVault, new VaultConfigField_1.PendingVaultAdmin(), newAdmin);
213
213
  const updateVaultPendingAdminSig = await processTxn(env.client, env.payer, [instructions.updateVaultConfigIx, ...instructions.updateLUTIxs], mode, 2500, []);
@@ -227,7 +227,7 @@ async function main() {
227
227
  if (mode === 'multisig' && !multisig) {
228
228
  throw new Error('If using multisig mode, multisig is required');
229
229
  }
230
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
230
+ const kaminoManager = new lib_1.KaminoManager(env.connection, lib_1.DEFAULT_RECENT_SLOT_DURATION_MS, env.kLendProgramId, env.kVaultProgramId);
231
231
  const kaminoVault = new lib_1.KaminoVault(vaultAddress, undefined, env.kVaultProgramId);
232
232
  const instructions = await kaminoManager.updateVaultConfigIxs(kaminoVault, field, value);
233
233
  const updateVaultPendingAdminSig = await processTxn(env.client, env.payer, [instructions.updateVaultConfigIx, ...instructions.updateLUTIxs], mode, 2500, []);
@@ -246,7 +246,7 @@ async function main() {
246
246
  if (mode === 'multisig' && !multisig) {
247
247
  throw new Error('If using multisig mode, multisig is required');
248
248
  }
249
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
249
+ const kaminoManager = new lib_1.KaminoManager(env.connection, lib_1.DEFAULT_RECENT_SLOT_DURATION_MS, env.kLendProgramId, env.kVaultProgramId);
250
250
  const kaminoVault = new lib_1.KaminoVault(vaultAddress, undefined, env.kVaultProgramId);
251
251
  const instructions = await kaminoManager.updateVaultConfigIxs(kaminoVault, new VaultConfigField_1.ManagementFeeBps(), feeBps);
252
252
  const updateVaultConfigSig = await processTxn(env.client, env.payer, [instructions.updateVaultConfigIx, ...instructions.updateLUTIxs], mode, 2500, []);
@@ -266,7 +266,7 @@ async function main() {
266
266
  if (mode === 'multisig' && !multisig) {
267
267
  throw new Error('If using multisig mode, multisig is required');
268
268
  }
269
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
269
+ const kaminoManager = new lib_1.KaminoManager(env.connection, lib_1.DEFAULT_RECENT_SLOT_DURATION_MS, env.kLendProgramId, env.kVaultProgramId);
270
270
  const instructions = await kaminoManager.insertIntoLUTIxs(env.payer.publicKey, lutAddress, addressesArr);
271
271
  const updateVaultConfigSig = await processTxn(env.client, env.payer, instructions, mode, 2500, []);
272
272
  mode === 'execute' && console.log('Management fee updated:', updateVaultConfigSig);
@@ -289,7 +289,7 @@ async function main() {
289
289
  if (mode === 'multisig' && !multisig) {
290
290
  throw new Error('If using multisig mode, multisig is required');
291
291
  }
292
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
292
+ const kaminoManager = new lib_1.KaminoManager(env.connection, lib_1.DEFAULT_RECENT_SLOT_DURATION_MS, env.kLendProgramId, env.kVaultProgramId);
293
293
  const kaminoVault = new lib_1.KaminoVault(vaultAddress, undefined, env.kVaultProgramId);
294
294
  const syncLUTIxs = await kaminoManager.syncVaultLUTIxs(kaminoVault);
295
295
  // if we need to create the LUT we have to do that in a separate tx and wait a little bit after
@@ -317,7 +317,7 @@ async function main() {
317
317
  if (mode === 'multisig' && !multisig) {
318
318
  throw new Error('If using multisig mode, multisig is required');
319
319
  }
320
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
320
+ const kaminoManager = new lib_1.KaminoManager(env.connection, lib_1.DEFAULT_RECENT_SLOT_DURATION_MS, env.kLendProgramId, env.kVaultProgramId);
321
321
  const kaminoVault = new lib_1.KaminoVault(vaultAddress, undefined, env.kVaultProgramId);
322
322
  const instructions = await kaminoManager.updateVaultConfigIxs(kaminoVault, new VaultConfigField_1.PerformanceFeeBps(), feeBps);
323
323
  const updateVaultPerfFeeSig = await processTxn(env.client, env.payer, [instructions.updateVaultConfigIx, ...instructions.updateLUTIxs], mode, 2500, []);
@@ -335,7 +335,7 @@ async function main() {
335
335
  if (mode === 'multisig' && !multisig) {
336
336
  throw new Error('If using multisig mode, multisig is required');
337
337
  }
338
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
338
+ const kaminoManager = new lib_1.KaminoManager(env.connection, lib_1.DEFAULT_RECENT_SLOT_DURATION_MS, env.kLendProgramId, env.kVaultProgramId);
339
339
  const kaminoVault = new lib_1.KaminoVault(vaultAddress, undefined, env.kVaultProgramId);
340
340
  const instructions = await kaminoManager.acceptVaultOwnershipIxs(kaminoVault);
341
341
  const acceptVaultOwnershipSig = await processTxn(env.client, env.payer, [instructions.acceptVaultOwnershipIx, ...instructions.updateLUTIxs], mode, 2500, []);
@@ -354,7 +354,7 @@ async function main() {
354
354
  if (mode === 'multisig' && !multisig) {
355
355
  throw new Error('If using multisig mode, multisig is required');
356
356
  }
357
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
357
+ const kaminoManager = new lib_1.KaminoManager(env.connection, lib_1.DEFAULT_RECENT_SLOT_DURATION_MS, env.kLendProgramId, env.kVaultProgramId);
358
358
  const kaminoVault = new lib_1.KaminoVault(vaultAddress, undefined, env.kVaultProgramId);
359
359
  const instruction = await kaminoManager.giveUpPendingFeesIx(kaminoVault, new decimal_js_1.default(maxAmountToGiveUp));
360
360
  const giveUpPendingFeesSig = await processTxn(env.client, env.payer, [instruction], mode, 2500, []);
@@ -372,7 +372,7 @@ async function main() {
372
372
  if (mode === 'multisig' && !multisig) {
373
373
  throw new Error('If using multisig mode, multisig is required');
374
374
  }
375
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
375
+ const kaminoManager = new lib_1.KaminoManager(env.connection, lib_1.DEFAULT_RECENT_SLOT_DURATION_MS, env.kLendProgramId, env.kVaultProgramId);
376
376
  const kaminoVault = new lib_1.KaminoVault(vaultAddress, undefined, env.kVaultProgramId);
377
377
  const instructions = await kaminoManager.withdrawPendingFeesIxs(kaminoVault, await env.connection.getSlot('confirmed'));
378
378
  const withdrawPendingFeesSig = await processTxn(env.client, env.payer, instructions, mode, 2500, []);
@@ -388,7 +388,7 @@ async function main() {
388
388
  const env = initializeClient(mode === 'multisig', staging);
389
389
  const vaultAddress = new web3_js_1.PublicKey(vault);
390
390
  const kaminoVault = new lib_1.KaminoVault(vaultAddress, undefined, env.kVaultProgramId);
391
- const stakeIxs = await new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId).stakeSharesIxs(env.payer.publicKey, kaminoVault);
391
+ const stakeIxs = await new lib_1.KaminoManager(env.connection, lib_1.DEFAULT_RECENT_SLOT_DURATION_MS, env.kLendProgramId, env.kVaultProgramId).stakeSharesIxs(env.payer.publicKey, kaminoVault);
392
392
  if (mode === 'multisig' && !multisig) {
393
393
  throw new Error('If using multisig mode, multisig is required');
394
394
  }
@@ -413,7 +413,7 @@ async function main() {
413
413
  if (mode === 'multisig' && !multisig) {
414
414
  throw new Error('If using multisig mode, multisig is required');
415
415
  }
416
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
416
+ const kaminoManager = new lib_1.KaminoManager(env.connection, lib_1.DEFAULT_RECENT_SLOT_DURATION_MS, env.kLendProgramId, env.kVaultProgramId);
417
417
  const reserveState = await lib_1.Reserve.fetch(env.connection, reserveAddress, env.kLendProgramId);
418
418
  if (!reserveState) {
419
419
  throw new Error('Reserve not found');
@@ -441,7 +441,7 @@ async function main() {
441
441
  if (mode === 'multisig' && !multisig) {
442
442
  throw new Error('If using multisig mode, multisig is required');
443
443
  }
444
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
444
+ const kaminoManager = new lib_1.KaminoManager(env.connection, lib_1.DEFAULT_RECENT_SLOT_DURATION_MS, env.kLendProgramId, env.kVaultProgramId);
445
445
  const kaminoVault = new lib_1.KaminoVault(vaultAddress, undefined, env.kVaultProgramId);
446
446
  const depositInstructions = await kaminoManager.depositToVaultIxs(env.payer.publicKey, kaminoVault, amount);
447
447
  const instructions = [...depositInstructions.depositIxs, ...depositInstructions.stakeInFarmIfNeededIxs];
@@ -461,7 +461,7 @@ async function main() {
461
461
  if (mode === 'multisig' && !multisig) {
462
462
  throw new Error('If using multisig mode, multisig is required');
463
463
  }
464
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
464
+ const kaminoManager = new lib_1.KaminoManager(env.connection, lib_1.DEFAULT_RECENT_SLOT_DURATION_MS, env.kLendProgramId, env.kVaultProgramId);
465
465
  const kaminoVault = new lib_1.KaminoVault(vaultAddress, undefined, env.kVaultProgramId);
466
466
  const withdrawIxs = await kaminoManager.withdrawFromVaultIxs(env.payer.publicKey, kaminoVault, new decimal_js_1.default(amount), await env.connection.getSlot('confirmed'));
467
467
  const depositSig = await processTxn(env.client, env.payer, [...withdrawIxs.unstakeFromFarmIfNeededIxs, ...withdrawIxs.withdrawIxs], mode, 2500, [], 800_000);
@@ -479,7 +479,7 @@ async function main() {
479
479
  if (mode === 'multisig' && !multisig) {
480
480
  throw new Error('If using multisig mode, multisig is required');
481
481
  }
482
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
482
+ const kaminoManager = new lib_1.KaminoManager(env.connection, lib_1.DEFAULT_RECENT_SLOT_DURATION_MS, env.kLendProgramId, env.kVaultProgramId);
483
483
  const kaminoVault = new lib_1.KaminoVault(vaultAddress, undefined, env.kVaultProgramId);
484
484
  const instructions = await kaminoManager.investAllReservesIxs(env.payer.publicKey, kaminoVault);
485
485
  for (let i = 0; i < instructions.length; i++) {
@@ -502,7 +502,7 @@ async function main() {
502
502
  if (mode === 'multisig' && !multisig) {
503
503
  throw new Error('If using multisig mode, multisig is required');
504
504
  }
505
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
505
+ const kaminoManager = new lib_1.KaminoManager(env.connection, lib_1.DEFAULT_RECENT_SLOT_DURATION_MS, env.kLendProgramId, env.kVaultProgramId);
506
506
  const kaminoVault = new lib_1.KaminoVault(vaultAddress, undefined, env.kVaultProgramId);
507
507
  const reserveState = await lib_1.Reserve.fetch(env.connection, new web3_js_1.PublicKey(reserve), env.kLendProgramId);
508
508
  if (!reserveState) {
@@ -534,7 +534,8 @@ async function main() {
534
534
  .requiredOption('--vault <string>', 'Vault address')
535
535
  .action(async ({ vault }) => {
536
536
  const env = initializeClient(false, false);
537
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
537
+ const slotDuration = await (0, lib_1.getMedianSlotDurationInMsFromLastEpochs)();
538
+ const kaminoManager = new lib_1.KaminoManager(env.connection, slotDuration, env.kLendProgramId, env.kVaultProgramId);
538
539
  const vaultAddress = new web3_js_1.PublicKey(vault);
539
540
  const vaultState = await new lib_1.KaminoVault(vaultAddress, undefined, env.kVaultProgramId).getState(env.connection);
540
541
  const vaultCollaterals = await kaminoManager.getVaultCollaterals(vaultState, await env.connection.getSlot('confirmed'));
@@ -550,7 +551,8 @@ async function main() {
550
551
  .requiredOption('--vault <string>', 'Vault address')
551
552
  .action(async ({ vault }) => {
552
553
  const env = initializeClient(false, false);
553
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
554
+ const slotDuration = await (0, lib_1.getMedianSlotDurationInMsFromLastEpochs)();
555
+ const kaminoManager = new lib_1.KaminoManager(env.connection, slotDuration, env.kLendProgramId, env.kVaultProgramId);
554
556
  const vaultAddress = new web3_js_1.PublicKey(vault);
555
557
  const vaultState = await new lib_1.KaminoVault(vaultAddress, undefined, env.kVaultProgramId).getState(env.connection);
556
558
  const vaultOverview = await kaminoManager.getVaultOverview(vaultState, new decimal_js_1.default(1.0), await env.connection.getSlot('confirmed'));
@@ -561,7 +563,8 @@ async function main() {
561
563
  .requiredOption('--vault <string>', 'Vault address')
562
564
  .action(async ({ vault }) => {
563
565
  const env = initializeClient(false, false);
564
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
566
+ const slotDuration = await (0, lib_1.getMedianSlotDurationInMsFromLastEpochs)();
567
+ const kaminoManager = new lib_1.KaminoManager(env.connection, slotDuration, env.kLendProgramId, env.kVaultProgramId);
565
568
  const vaultAddress = new web3_js_1.PublicKey(vault);
566
569
  const vaultState = await new lib_1.KaminoVault(vaultAddress, undefined, env.kVaultProgramId).getState(env.connection);
567
570
  const allocationDistribution = kaminoManager.getAllocationsDistribuionPct(vaultState);
@@ -576,7 +579,8 @@ async function main() {
576
579
  .requiredOption('--wallet <string>', 'User wailt address')
577
580
  .action(async ({ vault, wallet }) => {
578
581
  const env = initializeClient(false, false);
579
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
582
+ const slotDuration = await (0, lib_1.getMedianSlotDurationInMsFromLastEpochs)();
583
+ const kaminoManager = new lib_1.KaminoManager(env.connection, slotDuration, env.kLendProgramId, env.kVaultProgramId);
580
584
  const vaultAddress = new web3_js_1.PublicKey(vault);
581
585
  const walletAddress = new web3_js_1.PublicKey(wallet);
582
586
  const kaminoVault = new lib_1.KaminoVault(vaultAddress, undefined, env.kVaultProgramId);
@@ -588,7 +592,8 @@ async function main() {
588
592
  .requiredOption('--wallet <string>', 'User wailt address')
589
593
  .action(async ({ wallet }) => {
590
594
  const env = initializeClient(false, false);
591
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
595
+ const slotDuration = await (0, lib_1.getMedianSlotDurationInMsFromLastEpochs)();
596
+ const kaminoManager = new lib_1.KaminoManager(env.connection, slotDuration, env.kLendProgramId, env.kVaultProgramId);
592
597
  const walletAddress = new web3_js_1.PublicKey(wallet);
593
598
  const userShares = await kaminoManager.getUserSharesBalanceAllVaults(walletAddress);
594
599
  userShares.forEach((userShares, vaultAddress) => {
@@ -600,7 +605,8 @@ async function main() {
600
605
  .requiredOption('--vault <string>', 'Vault address')
601
606
  .action(async ({ vault }) => {
602
607
  const env = initializeClient(false, false);
603
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
608
+ const slotDuration = await (0, lib_1.getMedianSlotDurationInMsFromLastEpochs)();
609
+ const kaminoManager = new lib_1.KaminoManager(env.connection, slotDuration, env.kLendProgramId, env.kVaultProgramId);
604
610
  const vaultAddress = new web3_js_1.PublicKey(vault);
605
611
  const kaminoVault = new lib_1.KaminoVault(vaultAddress, undefined, env.kVaultProgramId);
606
612
  const tokensPerShare = await kaminoManager.getTokensPerShareSingleVault(kaminoVault, await env.connection.getSlot('confirmed'));
@@ -611,7 +617,8 @@ async function main() {
611
617
  .requiredOption('--vault <string>', 'Vault address')
612
618
  .action(async ({ vault }) => {
613
619
  const env = initializeClient(false, false);
614
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
620
+ const slotDuration = await (0, lib_1.getMedianSlotDurationInMsFromLastEpochs)();
621
+ const kaminoManager = new lib_1.KaminoManager(env.connection, slotDuration, env.kLendProgramId, env.kVaultProgramId);
615
622
  const vaultAddress = new web3_js_1.PublicKey(vault);
616
623
  const kaminoVault = new lib_1.KaminoVault(vaultAddress, undefined, env.kVaultProgramId);
617
624
  await kaminoVault.getState(env.connection);
@@ -628,20 +635,21 @@ async function main() {
628
635
  });
629
636
  commands.command('get-oracle-mappings').action(async () => {
630
637
  const env = initializeClient(false, false);
631
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
638
+ const kaminoManager = new lib_1.KaminoManager(env.connection, lib_1.DEFAULT_RECENT_SLOT_DURATION_MS, env.kLendProgramId, env.kVaultProgramId);
632
639
  console.log('Getting oracle mappings');
633
640
  const oracleConfigs = await kaminoManager.getScopeOracleConfigs();
634
641
  console.log('oracleConfigs', JSON.parse(JSON.stringify(oracleConfigs)));
635
642
  });
636
643
  commands.command('get-all-vaults').action(async () => {
637
644
  const env = initializeClient(false, false);
638
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
645
+ const slotDuration = await (0, lib_1.getMedianSlotDurationInMsFromLastEpochs)();
646
+ const kaminoManager = new lib_1.KaminoManager(env.connection, slotDuration, env.kLendProgramId, env.kVaultProgramId);
639
647
  const allVaults = await kaminoManager.getAllVaults();
640
648
  console.log('all vaults', allVaults);
641
649
  });
642
650
  commands.command('get-all-vaults-pks').action(async () => {
643
651
  const env = initializeClient(false, false);
644
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
652
+ const kaminoManager = new lib_1.KaminoManager(env.connection, lib_1.DEFAULT_RECENT_SLOT_DURATION_MS, env.kLendProgramId, env.kVaultProgramId);
645
653
  const allVaults = await kaminoManager.getAllVaults();
646
654
  console.log('all vaults', allVaults.map((vault) => vault.address.toBase58()));
647
655
  });
@@ -651,7 +659,8 @@ async function main() {
651
659
  .action(async ({ vault }) => {
652
660
  const env = initializeClient(false, false);
653
661
  const vaultAddress = new web3_js_1.PublicKey(vault);
654
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
662
+ const slotDuration = await (0, lib_1.getMedianSlotDurationInMsFromLastEpochs)();
663
+ const kaminoManager = new lib_1.KaminoManager(env.connection, slotDuration, env.kLendProgramId, env.kVaultProgramId);
655
664
  const vaultState = await new lib_1.KaminoVault(vaultAddress, undefined, env.kVaultProgramId).getState(env.connection);
656
665
  const simulatedHoldings = await kaminoManager.calculateSimulatedHoldingsWithInterest(vaultState);
657
666
  console.log('Simulated holdings with interest', simulatedHoldings);
@@ -679,7 +688,8 @@ async function main() {
679
688
  .action(async ({ vault }) => {
680
689
  const env = initializeClient(false, false);
681
690
  const vaultAddress = new web3_js_1.PublicKey(vault);
682
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
691
+ const slotDuration = await (0, lib_1.getMedianSlotDurationInMsFromLastEpochs)();
692
+ const kaminoManager = new lib_1.KaminoManager(env.connection, slotDuration, env.kLendProgramId, env.kVaultProgramId);
683
693
  const vaultState = await new lib_1.KaminoVault(vaultAddress, undefined, env.kVaultProgramId).getState(env.connection);
684
694
  const computedAllocation = await kaminoManager.getVaultComputedReservesAllocation(vaultState);
685
695
  console.log('computedAllocation', computedAllocation);
@@ -730,7 +740,7 @@ async function main() {
730
740
  if (mode === 'multisig') {
731
741
  throw new Error('If using multisig mode, multisig is required');
732
742
  }
733
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
743
+ const kaminoManager = new lib_1.KaminoManager(env.connection, lib_1.DEFAULT_RECENT_SLOT_DURATION_MS, env.kLendProgramId, env.kVaultProgramId);
734
744
  const newLendingMarket = lib_1.LendingMarket.fromJSON(JSON.parse(fs.readFileSync(lendingMarketConfigPath, 'utf8')));
735
745
  const ixns = kaminoManager.updateLendingMarketIxs(marketWithAddress, newLendingMarket);
736
746
  // executing 6 ixns in a txn to make sure they fit
@@ -760,7 +770,7 @@ async function main() {
760
770
  if (mode === 'multisig') {
761
771
  throw new Error('If using multisig mode, multisig is required');
762
772
  }
763
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
773
+ const kaminoManager = new lib_1.KaminoManager(env.connection, lib_1.DEFAULT_RECENT_SLOT_DURATION_MS, env.kLendProgramId, env.kVaultProgramId);
764
774
  const ixn = kaminoManager.updateLendingMarketOwnerIxs(marketWithAddress);
765
775
  const _updateLendingMarketSig = await processTxn(env.client, env.payer, [ixn], mode, 2500, [], 400_000);
766
776
  mode === 'execute' &&
@@ -786,7 +796,7 @@ async function main() {
786
796
  if (mode === 'multisig') {
787
797
  throw new Error('If using multisig mode, multisig is required');
788
798
  }
789
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
799
+ const kaminoManager = new lib_1.KaminoManager(env.connection, lib_1.DEFAULT_RECENT_SLOT_DURATION_MS, env.kLendProgramId, env.kVaultProgramId);
790
800
  const currentName = (0, lib_1.parseZeroPaddedUtf8)(lendingMarketState.name);
791
801
  const newNameEncoded = (0, lib_1.encodeTokenName)(newName);
792
802
  console.log('Current name: ', currentName, ' encoded: ', lendingMarketState.name);
@@ -825,7 +835,7 @@ async function main() {
825
835
  if (mode === 'multisig') {
826
836
  throw new Error('If using multisig mode, multisig is required');
827
837
  }
828
- const kaminoManager = new lib_1.KaminoManager(env.connection, env.kLendProgramId, env.kVaultProgramId);
838
+ const kaminoManager = new lib_1.KaminoManager(env.connection, lib_1.DEFAULT_RECENT_SLOT_DURATION_MS, env.kLendProgramId, env.kVaultProgramId);
829
839
  const newReserveConfigFields = {
830
840
  ...reserveState.config,
831
841
  borrowLimit: new anchor_1.BN(1000),
@@ -1 +1 @@
1
- {"version":3,"file":"client_kamino_manager.js","sourceRoot":"","sources":["../src/client_kamino_manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client_kamino_manager.js","sourceRoot":"","sources":["../src/client_kamino_manager.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  import { Connection, PublicKey, TransactionInstruction } from '@solana/web3.js';
2
2
  import Decimal from 'decimal.js';
3
- import { AnchorProvider } from '@coral-xyz/anchor';
4
3
  /**
5
4
  * Create an idempotent create ATA instruction
6
5
  * Overrides the create ATA ix to use the idempotent version as the spl-token library does not provide this ix yet
@@ -29,6 +28,20 @@ export declare function createAtasIdempotent(user: PublicKey, mints: Array<{
29
28
  }>;
30
29
  export declare function getTransferWsolIxns(owner: PublicKey, ata: PublicKey, amountLamports: Decimal): TransactionInstruction[];
31
30
  export declare function removeBudgetAndAtaIxns(ixns: TransactionInstruction[], mints: string[]): TransactionInstruction[];
32
- export declare function getTokenAccountBalance(provider: AnchorProvider, tokenAccount: PublicKey): Promise<number>;
31
+ export declare function getTokenAccountBalance(connection: Connection, tokenAccount: PublicKey): Promise<number>;
33
32
  export declare function getTokenAccountBalanceDecimal(connection: Connection, mint: PublicKey, owner: PublicKey, tokenProgram?: PublicKey): Promise<Decimal>;
33
+ export type CreateWsolAtaIxs = {
34
+ wsolAta: PublicKey;
35
+ createAtaIxs: TransactionInstruction[];
36
+ closeAtaIxs: TransactionInstruction[];
37
+ };
38
+ /**
39
+ * Creates a wSOL ata if missing and syncs the balance. If the ata exists and it has more or equal no wrapping happens
40
+ * @param connection - Solana RPC connection (read)
41
+ * @param amount min amount to have in the wSOL ata. If the ata exists and it has more or equal no wrapping happens
42
+ * @param owner - owner of the ata
43
+ * @returns wsolAta: the keypair of the ata, used to sign the initialization transaction; createAtaIxs: a list with ixs to initialize the ata and wrap SOL if needed; closeAtaIxs: a list with ixs to close the ata
44
+ */
45
+ export declare const createWsolAtaIfMissing: (connection: Connection, amount: Decimal, owner: PublicKey) => Promise<CreateWsolAtaIxs>;
46
+ export declare const isWsolInfoInvalid: (wsolAtaAccountInfo: any) => boolean;
34
47
  //# sourceMappingURL=ata.d.ts.map