@kamino-finance/klend-sdk 5.0.3 → 5.0.4

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 (111) hide show
  1. package/dist/classes/fraction.d.ts.map +1 -1
  2. package/dist/classes/fraction.js.map +1 -1
  3. package/dist/classes/manager.d.ts.map +1 -1
  4. package/dist/classes/manager.js +1 -14
  5. package/dist/classes/manager.js.map +1 -1
  6. package/dist/classes/market.d.ts +0 -4
  7. package/dist/classes/market.d.ts.map +1 -1
  8. package/dist/classes/market.js +0 -15
  9. package/dist/classes/market.js.map +1 -1
  10. package/dist/classes/obligation.d.ts.map +1 -1
  11. package/dist/classes/obligation.js +1 -2
  12. package/dist/classes/obligation.js.map +1 -1
  13. package/dist/classes/reserve.d.ts +0 -1
  14. package/dist/classes/reserve.d.ts.map +1 -1
  15. package/dist/classes/reserve.js +27 -22
  16. package/dist/classes/reserve.js.map +1 -1
  17. package/dist/classes/utils.d.ts +0 -3
  18. package/dist/classes/utils.d.ts.map +1 -1
  19. package/dist/classes/utils.js +0 -30
  20. package/dist/classes/utils.js.map +1 -1
  21. package/dist/client_kamino_manager.js +1 -1
  22. package/dist/client_kamino_manager.js.map +1 -1
  23. package/dist/idl.json +2 -27
  24. package/dist/idl_codegen/accounts/LendingMarket.d.ts +0 -6
  25. package/dist/idl_codegen/accounts/LendingMarket.d.ts.map +1 -1
  26. package/dist/idl_codegen/accounts/LendingMarket.js +1 -8
  27. package/dist/idl_codegen/accounts/LendingMarket.js.map +1 -1
  28. package/dist/idl_codegen/accounts/Obligation.d.ts +12 -3
  29. package/dist/idl_codegen/accounts/Obligation.d.ts.map +1 -1
  30. package/dist/idl_codegen/accounts/Obligation.js +4 -1
  31. package/dist/idl_codegen/accounts/Obligation.js.map +1 -1
  32. package/dist/idl_codegen/types/UpdateLendingMarketConfigValue.d.ts +0 -20
  33. package/dist/idl_codegen/types/UpdateLendingMarketConfigValue.d.ts.map +1 -1
  34. package/dist/idl_codegen/types/UpdateLendingMarketConfigValue.js +1 -33
  35. package/dist/idl_codegen/types/UpdateLendingMarketConfigValue.js.map +1 -1
  36. package/dist/idl_codegen/types/UpdateLendingMarketMode.d.ts +0 -13
  37. package/dist/idl_codegen/types/UpdateLendingMarketMode.d.ts.map +1 -1
  38. package/dist/idl_codegen/types/UpdateLendingMarketMode.js +1 -25
  39. package/dist/idl_codegen/types/UpdateLendingMarketMode.js.map +1 -1
  40. package/dist/idl_codegen/types/index.d.ts +4 -4
  41. package/dist/idl_codegen/types/index.d.ts.map +1 -1
  42. package/dist/idl_codegen/types/index.js.map +1 -1
  43. package/dist/lending_operations/repay_with_collateral_operations.d.ts.map +1 -1
  44. package/dist/lending_operations/repay_with_collateral_operations.js +6 -0
  45. package/dist/lending_operations/repay_with_collateral_operations.js.map +1 -1
  46. package/dist/leverage/calcs.d.ts +28 -1
  47. package/dist/leverage/calcs.d.ts.map +1 -1
  48. package/dist/leverage/calcs.js +204 -8
  49. package/dist/leverage/calcs.js.map +1 -1
  50. package/dist/leverage/index.d.ts +1 -0
  51. package/dist/leverage/index.d.ts.map +1 -1
  52. package/dist/leverage/index.js +1 -0
  53. package/dist/leverage/index.js.map +1 -1
  54. package/dist/leverage/operations.d.ts +14 -241
  55. package/dist/leverage/operations.d.ts.map +1 -1
  56. package/dist/leverage/operations.js +508 -776
  57. package/dist/leverage/operations.js.map +1 -1
  58. package/dist/leverage/types.d.ts +173 -0
  59. package/dist/leverage/types.d.ts.map +1 -0
  60. package/dist/leverage/types.js +3 -0
  61. package/dist/leverage/types.js.map +1 -0
  62. package/dist/leverage/utils.d.ts +5 -5
  63. package/dist/leverage/utils.d.ts.map +1 -1
  64. package/dist/leverage/utils.js +68 -33
  65. package/dist/leverage/utils.js.map +1 -1
  66. package/dist/utils/ObligationType.d.ts.map +1 -1
  67. package/dist/utils/ObligationType.js.map +1 -1
  68. package/dist/utils/constants.d.ts +1 -0
  69. package/dist/utils/constants.d.ts.map +1 -1
  70. package/dist/utils/constants.js +2 -1
  71. package/dist/utils/constants.js.map +1 -1
  72. package/dist/utils/fuzz.d.ts +3 -0
  73. package/dist/utils/fuzz.d.ts.map +1 -0
  74. package/dist/utils/fuzz.js +11 -0
  75. package/dist/utils/fuzz.js.map +1 -0
  76. package/dist/utils/index.d.ts +1 -0
  77. package/dist/utils/index.d.ts.map +1 -1
  78. package/dist/utils/index.js +1 -0
  79. package/dist/utils/index.js.map +1 -1
  80. package/dist/utils/managerTypes.d.ts.map +1 -1
  81. package/dist/utils/managerTypes.js.map +1 -1
  82. package/dist/utils/pubkey.d.ts.map +1 -1
  83. package/dist/utils/pubkey.js.map +1 -1
  84. package/dist/utils/rpc.d.ts.map +1 -1
  85. package/dist/utils/rpc.js.map +1 -1
  86. package/package.json +1 -1
  87. package/src/classes/fraction.ts +0 -5
  88. package/src/classes/manager.ts +1 -14
  89. package/src/classes/market.ts +1 -18
  90. package/src/classes/obligation.ts +1 -2
  91. package/src/classes/reserve.ts +39 -55
  92. package/src/classes/utils.ts +0 -30
  93. package/src/client_kamino_manager.ts +1 -1
  94. package/src/idl_codegen/accounts/LendingMarket.ts +1 -12
  95. package/src/idl_codegen/accounts/Obligation.ts +12 -3
  96. package/src/idl_codegen/types/UpdateLendingMarketConfigValue.ts +0 -43
  97. package/src/idl_codegen/types/UpdateLendingMarketMode.ts +0 -30
  98. package/src/idl_codegen/types/index.ts +0 -4
  99. package/src/lending_operations/repay_with_collateral_operations.ts +2 -0
  100. package/src/leverage/calcs.ts +315 -8
  101. package/src/leverage/index.ts +1 -0
  102. package/src/leverage/operations.ts +1079 -1331
  103. package/src/leverage/types.ts +211 -0
  104. package/src/leverage/utils.ts +103 -64
  105. package/src/utils/ObligationType.ts +0 -6
  106. package/src/utils/constants.ts +2 -0
  107. package/src/utils/fuzz.ts +5 -0
  108. package/src/utils/index.ts +1 -0
  109. package/src/utils/managerTypes.ts +0 -1
  110. package/src/utils/pubkey.ts +0 -2
  111. package/src/utils/rpc.ts +0 -1
@@ -3,12 +3,18 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.estimateDepositMode = exports.estimateAdjustMode = exports.fuzzyEq = exports.estimateWithdrawMode = exports.calcBorrowAmount = exports.FormTabs = exports.toJson = void 0;
6
+ exports.depositLeverageKtokenCalcs = exports.depositLeverageCalcs = exports.estimateDepositMode = exports.estimateAdjustMode = exports.estimateWithdrawMode = exports.calcBorrowAmount = exports.FormTabs = exports.toJson = void 0;
7
7
  exports.calculateMultiplyEffects = calculateMultiplyEffects;
8
8
  exports.calcWithdrawAmounts = calcWithdrawAmounts;
9
9
  exports.calcAdjustAmounts = calcAdjustAmounts;
10
10
  exports.simulateMintKToken = simulateMintKToken;
11
+ exports.withdrawLeverageCalcs = withdrawLeverageCalcs;
12
+ exports.adjustDepositLeverageCalcs = adjustDepositLeverageCalcs;
13
+ exports.adjustWithdrawLeverageCalcs = adjustWithdrawLeverageCalcs;
11
14
  const decimal_js_1 = __importDefault(require("decimal.js"));
15
+ const kliquidity_sdk_1 = require("@kamino-finance/kliquidity-sdk");
16
+ const utils_1 = require("./utils");
17
+ const utils_2 = require("../utils");
12
18
  const toJson = (object) => {
13
19
  return JSON.stringify(object, null, 2);
14
20
  };
@@ -73,9 +79,9 @@ async function calculateMultiplyEffects(getPriceByTokenMintDecimal, { depositAmo
73
79
  isClosingPosition =
74
80
  (withdrawModeEstimatedDepositTokenWithdrawn.gte(new decimal_js_1.default(deposited)) ||
75
81
  withdrawModeEstimatedBorrowTokenWithdrawn.gte(new decimal_js_1.default(borrowed)) ||
76
- (0, exports.fuzzyEq)(withdrawModeEstimatedDepositTokenWithdrawn, new decimal_js_1.default(deposited), closingPositionDiffTolerance) ||
77
- (0, exports.fuzzyEq)(withdrawModeEstimatedBorrowTokenWithdrawn, new decimal_js_1.default(borrowed), closingPositionDiffTolerance)) &&
78
- !(0, exports.fuzzyEq)(withdrawModeEstimatedDepositTokenWithdrawn, new decimal_js_1.default(0), closingPositionDiffTolerance);
82
+ (0, utils_2.fuzzyEqual)(withdrawModeEstimatedDepositTokenWithdrawn, new decimal_js_1.default(deposited), closingPositionDiffTolerance) ||
83
+ (0, utils_2.fuzzyEqual)(withdrawModeEstimatedBorrowTokenWithdrawn, new decimal_js_1.default(borrowed), closingPositionDiffTolerance)) &&
84
+ !(0, utils_2.fuzzyEqual)(withdrawModeEstimatedDepositTokenWithdrawn, new decimal_js_1.default(0), closingPositionDiffTolerance);
79
85
  totalDeposited = isClosingPosition ? new decimal_js_1.default(0) : deposited.sub(withdrawModeEstimatedDepositTokenWithdrawn);
80
86
  totalBorrowed = isClosingPosition ? new decimal_js_1.default(0) : borrowed.sub(withdrawModeEstimatedBorrowTokenWithdrawn);
81
87
  break;
@@ -160,10 +166,6 @@ function calcWithdrawAmounts(params) {
160
166
  adjustBorrowPosition,
161
167
  };
162
168
  }
163
- const fuzzyEq = (a, b, epsilon = 0.0001) => {
164
- return new decimal_js_1.default(a).sub(b).abs().lte(epsilon);
165
- };
166
- exports.fuzzyEq = fuzzyEq;
167
169
  /**
168
170
  * Calculate how much token will be deposited or withdrawn in case of position adjustment
169
171
  * @param leverage
@@ -275,4 +277,198 @@ async function simulateMintKToken(kamino, strategy, mintAmount, strategyHoldings
275
277
  console.log(`Actual deposit amounts: A: ${actualA}, B: ${actualB}, kTokens to mint: ${actualMint}`);
276
278
  return [requiredA, requiredB, actualMint];
277
279
  }
280
+ const depositLeverageCalcs = (props) => {
281
+ // Initialize local variables from the props object
282
+ const { depositAmount, depositTokenIsCollToken, depositTokenIsSol, priceDebtToColl, targetLeverage, slippagePct, flashLoanFee, } = props;
283
+ const slippage = slippagePct.div('100');
284
+ const initDepositInSol = depositTokenIsSol ? depositAmount : new decimal_js_1.default(0);
285
+ // Core logic
286
+ if (depositTokenIsCollToken) {
287
+ const y = targetLeverage.mul(priceDebtToColl);
288
+ const x = flashLoanFee.add('1').mul(slippage.add('1')).div(priceDebtToColl);
289
+ const finalColl = depositAmount.mul(x).div(x.sub(targetLeverage.sub('1').div(y)));
290
+ const debt = finalColl.sub(depositAmount).mul(x);
291
+ const flashBorrowColl = finalColl.sub(depositAmount).mul(flashLoanFee.add('1'));
292
+ return {
293
+ flashBorrowInCollToken: flashBorrowColl,
294
+ initDepositInSol,
295
+ debtTokenToBorrow: debt,
296
+ collTokenToDeposit: finalColl,
297
+ swapDebtTokenIn: debt,
298
+ swapCollTokenExpectedOut: finalColl.sub(depositAmount),
299
+ flashBorrowInDebtTokenKtokenOnly: new decimal_js_1.default(0),
300
+ singleSidedDepositKtokenOnly: new decimal_js_1.default(0),
301
+ requiredCollateralKtokenOnly: new decimal_js_1.default(0),
302
+ };
303
+ }
304
+ else {
305
+ const y = targetLeverage.mul(priceDebtToColl);
306
+ const x = flashLoanFee.add('1').mul(slippage.add('1')).div(priceDebtToColl);
307
+ const finalColl = depositAmount.div(x.sub(targetLeverage.sub('1').div(y)));
308
+ const flashBorrowColl = finalColl.mul(flashLoanFee.add('1'));
309
+ const debt = targetLeverage.sub('1').mul(finalColl).div(y);
310
+ return {
311
+ flashBorrowInCollToken: flashBorrowColl,
312
+ initDepositInSol,
313
+ debtTokenToBorrow: debt,
314
+ collTokenToDeposit: finalColl,
315
+ swapDebtTokenIn: debt.add(depositAmount),
316
+ swapCollTokenExpectedOut: finalColl,
317
+ flashBorrowInDebtTokenKtokenOnly: new decimal_js_1.default(0),
318
+ singleSidedDepositKtokenOnly: new decimal_js_1.default(0),
319
+ requiredCollateralKtokenOnly: new decimal_js_1.default(0),
320
+ };
321
+ }
322
+ };
323
+ exports.depositLeverageCalcs = depositLeverageCalcs;
324
+ const depositLeverageKtokenCalcs = async (props) => {
325
+ const { kamino, strategy, debtTokenMint, depositAmount, depositTokenIsCollToken, depositTokenIsSol, priceDebtToColl, targetLeverage, slippagePct, flashLoanFee, priceAinB, strategyHoldings, } = props;
326
+ const initDepositInSol = depositTokenIsSol ? depositAmount : new decimal_js_1.default(0);
327
+ const slippage = slippagePct.div('100');
328
+ let flashBorrowInDebtToken;
329
+ let collTokenToDeposit;
330
+ let debtTokenToBorrow;
331
+ if (depositTokenIsCollToken) {
332
+ const x = slippage.add('1').div(priceDebtToColl);
333
+ const y = flashLoanFee.add('1').mul(priceDebtToColl);
334
+ const z = targetLeverage.mul(y).div(targetLeverage.sub(1));
335
+ flashBorrowInDebtToken = depositAmount.div(z.minus(new decimal_js_1.default(1).div(x)));
336
+ collTokenToDeposit = depositAmount.add(flashBorrowInDebtToken.div(x));
337
+ debtTokenToBorrow = flashBorrowInDebtToken.mul(new decimal_js_1.default(1).add(flashLoanFee));
338
+ return {
339
+ flashBorrowInCollToken: new decimal_js_1.default(0),
340
+ initDepositInSol,
341
+ collTokenToDeposit,
342
+ debtTokenToBorrow,
343
+ swapDebtTokenIn: new decimal_js_1.default(0),
344
+ swapCollTokenExpectedOut: new decimal_js_1.default(0),
345
+ flashBorrowInDebtTokenKtokenOnly: flashBorrowInDebtToken,
346
+ requiredCollateralKtokenOnly: collTokenToDeposit.sub(depositAmount), // Assuming netValue is requiredCollateral, adjust as needed
347
+ singleSidedDepositKtokenOnly: flashBorrowInDebtToken,
348
+ };
349
+ }
350
+ else {
351
+ const y = targetLeverage.mul(priceDebtToColl);
352
+ // although we will only swap ~half of the debt token, we account for the slippage on the entire amount as we are working backwards from the minimum collateral and do not know the exact swap proportion in advance
353
+ // This also allows for some variation in the pool ratios between calculation + submitting the tx
354
+ const x = flashLoanFee.add('1').mul(slippage.add('1')).div(priceDebtToColl);
355
+ // Calculate the amount of collateral tokens we will deposit in order to achieve the desired leverage after swapping a portion of the debt token and flash loan fees
356
+ const finalColl = depositAmount.div(x.sub(targetLeverage.sub('1').div(y)));
357
+ // Calculate how many A and B tokens we will need to actually mint the desired amount of ktoken collateral
358
+ // The actual amount of ktokens received may be less than the finalColl due to smart proportional contract logic
359
+ // So we use the actualColl as the amount we will deposit
360
+ const [estimatedA, estimatedB, actualColl] = await simulateMintKToken(kamino, strategy, finalColl, strategyHoldings);
361
+ const pxAinB = await priceAinB(strategy.strategy.tokenAMint, strategy.strategy.tokenBMint);
362
+ const isTokenADeposit = strategy.strategy.tokenAMint.equals(debtTokenMint);
363
+ // Calculate the amount we need to flash borrow by combining value of A and B into the debt token
364
+ const singleSidedDepositAmount = isTokenADeposit
365
+ ? estimatedA.add(estimatedB.div(pxAinB))
366
+ : estimatedB.add(estimatedA.mul(pxAinB));
367
+ // Add slippage to the entire amount, add flash loan fee to part we will flash borrow
368
+ flashBorrowInDebtToken = singleSidedDepositAmount
369
+ .div(new decimal_js_1.default('1').sub(slippage))
370
+ .sub(depositAmount)
371
+ .div(new decimal_js_1.default('1').sub(flashLoanFee));
372
+ // Deposit the min ktoken amount we calculated at the beginning
373
+ // Any slippage will be left in the user's wallet as ktokens
374
+ collTokenToDeposit = actualColl;
375
+ debtTokenToBorrow = flashBorrowInDebtToken.div(new decimal_js_1.default('1').sub(flashLoanFee));
376
+ // Add slippage to ensure we try to swap/deposit as much as possible after flash loan fees
377
+ const singleSidedDeposit = singleSidedDepositAmount.div(new decimal_js_1.default('1').sub(slippage));
378
+ return {
379
+ flashBorrowInCollToken: new decimal_js_1.default(0),
380
+ initDepositInSol,
381
+ collTokenToDeposit,
382
+ debtTokenToBorrow,
383
+ swapDebtTokenIn: new decimal_js_1.default(0),
384
+ swapCollTokenExpectedOut: new decimal_js_1.default(0),
385
+ flashBorrowInDebtTokenKtokenOnly: flashBorrowInDebtToken,
386
+ singleSidedDepositKtokenOnly: singleSidedDeposit,
387
+ requiredCollateralKtokenOnly: collTokenToDeposit, // Assuming collTokenToDeposit is requiredCollateral, adjust as needed
388
+ };
389
+ }
390
+ };
391
+ exports.depositLeverageKtokenCalcs = depositLeverageKtokenCalcs;
392
+ function withdrawLeverageCalcs(market, collReserve, debtReserve, priceCollToDebt, withdrawAmount, deposited, borrowed, currentSlot, isClosingPosition, selectedTokenIsCollToken, selectedTokenMint, obligation, flashLoanFee, slippagePct) {
393
+ // 1. Calculate coll_amount and debt_amount to repay such that we maintain leverage and we withdraw to
394
+ // the wallet `amountInDepositTokenToWithdrawToWallet` amount of collateral token
395
+ // We need to withdraw withdrawAmountInDepositToken coll tokens
396
+ // and repay repayAmountInBorrowToken debt tokens
397
+ const { adjustDepositPosition: withdrawAmountCalculated, adjustBorrowPosition: initialRepayAmount } = isClosingPosition
398
+ ? { adjustDepositPosition: deposited, adjustBorrowPosition: borrowed }
399
+ : calcWithdrawAmounts({
400
+ collTokenMint: collReserve.getLiquidityMint(),
401
+ priceCollToDebt: new decimal_js_1.default(priceCollToDebt),
402
+ currentDepositPosition: deposited,
403
+ currentBorrowPosition: borrowed,
404
+ withdrawAmount: new decimal_js_1.default(withdrawAmount),
405
+ selectedTokenMint: selectedTokenMint,
406
+ });
407
+ // Add slippage for the accrued interest rate amount
408
+ const irSlippageBpsForDebt = obligation
409
+ .estimateObligationInterestRate(market, debtReserve, obligation?.state.borrows[0], currentSlot)
410
+ .toDecimalPlaces(debtReserve?.state.liquidity.mintDecimals.toNumber(), decimal_js_1.default.ROUND_CEIL);
411
+ // add 0.1 to irSlippageBpsForDebt because we don't want to estimate slightly less than SC and end up not reapying enough
412
+ const repayAmount = initialRepayAmount
413
+ .mul(irSlippageBpsForDebt.add('0.1').div('10_000').add('1'))
414
+ .toDecimalPlaces(debtReserve?.state.liquidity.mintDecimals.toNumber(), decimal_js_1.default.ROUND_CEIL);
415
+ // 6. Get swap ixns
416
+ // 5. Get swap estimations to understand how much we need to borrow from borrow reserve
417
+ // prevent withdrawing more then deposited if we close position
418
+ const depositTokenWithdrawAmount = !isClosingPosition
419
+ ? withdrawAmountCalculated.mul(new decimal_js_1.default(1).plus(flashLoanFee))
420
+ : withdrawAmountCalculated;
421
+ // We are swapping debt token
422
+ // When withdrawing coll, it means we just need to swap enough to pay for the flash borrow
423
+ const swapAmountIfWithdrawingColl = repayAmount
424
+ .mul(new decimal_js_1.default(1).plus(flashLoanFee))
425
+ .mul(new decimal_js_1.default(1).plus(slippagePct.div(100)))
426
+ .div(priceCollToDebt);
427
+ // When withdrawing debt, it means we need to swap just the collateral we are withdrwaing
428
+ // enough to cover the debt we are repaying, leaving the remaining in the wallet
429
+ const swapAmountIfWithdrawingDebt = withdrawAmountCalculated;
430
+ const collTokenSwapIn = selectedTokenIsCollToken ? swapAmountIfWithdrawingColl : swapAmountIfWithdrawingDebt;
431
+ const debtTokenExpectedSwapOut = collTokenSwapIn.mul(priceCollToDebt).div(new decimal_js_1.default(1).add(slippagePct.div(100)));
432
+ return {
433
+ withdrawAmount: withdrawAmountCalculated,
434
+ repayAmount,
435
+ collTokenSwapIn,
436
+ debtTokenExpectedSwapOut,
437
+ depositTokenWithdrawAmount,
438
+ };
439
+ }
440
+ async function adjustDepositLeverageCalcs(market, owner, debtReserve, adjustDepositPosition, adjustBorrowPosition, priceDebtToColl, flashLoanFee, slippagePct, collIsKtoken) {
441
+ // used if coll is Ktoken and we borrow debt token instead
442
+ const amountToFlashBorrowDebt = adjustDepositPosition
443
+ .div(priceDebtToColl)
444
+ .mul(new decimal_js_1.default(new decimal_js_1.default(1).add(slippagePct.div(100))))
445
+ .toDecimalPlaces(debtReserve.stats.decimals, decimal_js_1.default.ROUND_UP);
446
+ const borrowAmount = adjustDepositPosition
447
+ .mul(new decimal_js_1.default(1).plus(flashLoanFee))
448
+ .mul(new decimal_js_1.default(new decimal_js_1.default(1).add(slippagePct.div(100))))
449
+ .div(priceDebtToColl);
450
+ const expectedDebtTokenAtaBalance = await (0, utils_1.getExpectedTokenBalanceAfterBorrow)(market.getConnection(), debtReserve.getLiquidityMint(), owner, (0, kliquidity_sdk_1.collToLamportsDecimal)(!collIsKtoken ? borrowAmount : amountToFlashBorrowDebt, debtReserve.stats.decimals).floor(), debtReserve.state.liquidity.mintDecimals.toNumber());
451
+ return {
452
+ adjustDepositPosition,
453
+ adjustBorrowPosition,
454
+ amountToFlashBorrowDebt,
455
+ borrowAmount,
456
+ expectedDebtTokenAtaBalance,
457
+ withdrawAmountWithSlippageAndFlashLoanFee: new decimal_js_1.default(0),
458
+ };
459
+ }
460
+ function adjustWithdrawLeverageCalcs(adjustDepositPosition, adjustBorrowPosition, flashLoanFee, slippagePct) {
461
+ // used if coll is Ktoken and we borrow debt token instead
462
+ const withdrawAmountWithSlippageAndFlashLoanFee = decimal_js_1.default.abs(adjustDepositPosition)
463
+ .mul(new decimal_js_1.default(1).plus(flashLoanFee))
464
+ .mul(new decimal_js_1.default(1).add(slippagePct.div(100)));
465
+ return {
466
+ adjustDepositPosition,
467
+ adjustBorrowPosition,
468
+ amountToFlashBorrowDebt: new decimal_js_1.default(0),
469
+ borrowAmount: new decimal_js_1.default(0),
470
+ expectedDebtTokenAtaBalance: new decimal_js_1.default(0),
471
+ withdrawAmountWithSlippageAndFlashLoanFee,
472
+ };
473
+ }
278
474
  //# sourceMappingURL=calcs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"calcs.js","sourceRoot":"","sources":["../../src/leverage/calcs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"calcs.js","sourceRoot":"","sources":["../../src/leverage/calcs.ts"],"names":[],"mappings":"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"}
@@ -2,4 +2,5 @@ export * from './calcs';
2
2
  export * from './instructions';
3
3
  export * from './operations';
4
4
  export * from './utils';
5
+ export * from './types';
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/leverage/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/leverage/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
@@ -18,4 +18,5 @@ __exportStar(require("./calcs"), exports);
18
18
  __exportStar(require("./instructions"), exports);
19
19
  __exportStar(require("./operations"), exports);
20
20
  __exportStar(require("./utils"), exports);
21
+ __exportStar(require("./types"), exports);
21
22
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/leverage/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,iDAA+B;AAC/B,+CAA6B;AAC7B,0CAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/leverage/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,iDAA+B;AAC/B,+CAA6B;AAC7B,0CAAwB;AACxB,0CAAwB"}
@@ -1,248 +1,21 @@
1
- import { AddressLookupTableAccount, Connection, PublicKey, TransactionInstruction } from '@solana/web3.js';
2
- import Decimal from 'decimal.js';
3
- import { KaminoMarket, KaminoObligation } from '../classes';
4
- import { ObligationTypeTag } from '../utils';
5
- import { Kamino, InstructionsWithLookupTables, StrategyWithAddress, TokenAmounts } from '@kamino-finance/kliquidity-sdk';
6
- export type SwapIxnsProvider = (amountInLamports: number, inputMint: PublicKey, outputMint: PublicKey, slippagePct: number, amountDebtAtaBalance?: Decimal) => Promise<[TransactionInstruction[], PublicKey[]]>;
7
- export type SwapQuoteProvider<QuoteResponse> = (inputs: SwapInputs, klendAccounts: Array<PublicKey>) => Promise<SwapQuote<QuoteResponse>>;
8
- export type SwapQuoteIxsProvider<QuoteResponse> = (inputs: SwapInputs, klendAccounts: Array<PublicKey>, quote: SwapQuote<QuoteResponse>) => Promise<SwapQuoteIxs>;
9
- export type SwapQuote<QuoteResponse> = {
10
- priceAInB: Decimal;
11
- quoteResponse?: QuoteResponse;
12
- };
13
- export type SwapQuoteIxs = {
14
- preActionIxs: TransactionInstruction[];
15
- swapIxs: TransactionInstruction[];
16
- lookupTables: AddressLookupTableAccount[];
17
- };
18
- export type PriceAinBProvider = (mintA: PublicKey, mintB: PublicKey) => Promise<Decimal>;
19
- export type IsKtokenProvider = (token: PublicKey | string) => Promise<boolean>;
20
- export type SwapInputs = {
21
- inputAmountLamports: Decimal;
22
- inputMint: PublicKey;
23
- outputMint: PublicKey;
24
- };
25
- export type KaminoDepositSwapOverride = (kaminoMarket: KaminoMarket, kamino: Kamino, depositor: PublicKey, amountInMint: PublicKey, amountOutMint: PublicKey, amountIn: Decimal, slippageFactor: Decimal, amountDebtAtaBalance: Decimal) => Promise<InstructionsWithLookupTables>;
26
- export declare const depositLeverageCalcs: (props: {
27
- depositAmount: Decimal;
28
- depositTokenIsCollToken: boolean;
29
- depositTokenIsSol: boolean;
30
- priceDebtToColl: Decimal;
31
- targetLeverage: Decimal;
32
- slippagePct: Decimal;
33
- flashLoanFee: Decimal;
34
- }) => {
35
- flashBorrowInCollToken: Decimal;
36
- initDepositInSol: Decimal;
37
- debtTokenToBorrow: Decimal;
38
- collTokenToDeposit: Decimal;
39
- swapDebtTokenIn: Decimal;
40
- swapCollTokenExpectedOut: Decimal;
41
- };
42
- export declare const depositLeverageKtokenCalcs: (props: {
43
- kamino: Kamino;
44
- strategy: StrategyWithAddress;
45
- debtTokenMint: PublicKey;
46
- depositAmount: Decimal;
47
- depositTokenIsCollToken: boolean;
48
- depositTokenIsSol: boolean;
49
- priceDebtToColl: Decimal;
50
- targetLeverage: Decimal;
51
- slippagePct: Decimal;
52
- flashLoanFee: Decimal;
53
- priceAinB: PriceAinBProvider;
54
- strategyHoldings?: TokenAmounts;
55
- }) => Promise<{
56
- flashBorrowInDebtToken: Decimal;
57
- initDepositInSol: Decimal;
58
- collTokenToDeposit: Decimal;
59
- debtTokenToBorrow: Decimal;
60
- requiredCollateral: Decimal;
61
- singleSidedDeposit: Decimal;
62
- }>;
63
- export declare const getDepositWithLeverageSwapInputs: (props: {
64
- depositAmount: Decimal;
65
- priceDebtToColl: Decimal;
66
- slippagePct: Decimal;
67
- targetLeverage: Decimal;
68
- kaminoMarket: KaminoMarket;
69
- selectedTokenMint: PublicKey;
70
- debtTokenMint: PublicKey;
71
- collTokenMint: PublicKey;
72
- }) => {
73
- swapInputs: SwapInputs;
74
- };
75
- export declare const getDepositWithLeverageIxns: (props: {
76
- connection: Connection;
77
- budgetAndPriorityFeeIxns?: TransactionInstruction[];
78
- user: PublicKey;
79
- amount: Decimal;
80
- selectedTokenMint: PublicKey;
81
- collTokenMint: PublicKey;
82
- debtTokenMint: PublicKey;
83
- targetLeverage: Decimal;
84
- kaminoMarket: KaminoMarket;
85
- slippagePct: Decimal;
86
- priceDebtToColl: Decimal;
87
- swapper: SwapIxnsProvider;
88
- referrer: PublicKey;
89
- isKtoken: IsKtokenProvider;
90
- priceAinB: PriceAinBProvider;
91
- kamino: Kamino | undefined;
92
- obligationTypeTagOverride: ObligationTypeTag;
93
- obligation: KaminoObligation | null;
94
- currentSlot: number;
95
- getTotalKlendAccountsOnly: boolean;
96
- scopeFeed?: string;
97
- }) => Promise<{
98
- ixns: TransactionInstruction[];
99
- lookupTablesAddresses: PublicKey[];
100
- swapInputs: SwapInputs;
101
- totalKlendAccounts: number;
102
- }>;
103
- export declare const getWithdrawWithLeverageSwapInputs: (props: {
104
- amount: Decimal;
105
- deposited: Decimal;
106
- borrowed: Decimal;
107
- priceCollToDebt: Decimal;
108
- slippagePct: number;
109
- isClosingPosition: boolean;
110
- kaminoMarket: KaminoMarket;
111
- selectedTokenMint: PublicKey;
112
- debtTokenMint: PublicKey;
113
- collTokenMint: PublicKey;
114
- userObligation: KaminoObligation;
115
- currentSlot: number;
116
- }) => {
117
- swapInputs: SwapInputs;
118
- };
119
- export declare const getWithdrawWithLeverageIxns: (props: {
120
- connection: Connection;
121
- budgetAndPriorityFeeIxns: TransactionInstruction[];
122
- user: PublicKey;
123
- amount: Decimal;
124
- deposited: Decimal;
125
- borrowed: Decimal;
126
- collTokenMint: PublicKey;
127
- debtTokenMint: PublicKey;
128
- priceCollToDebt: Decimal;
129
- selectedTokenMint: PublicKey;
130
- isClosingPosition: boolean;
131
- kaminoMarket: KaminoMarket;
132
- slippagePct: number;
133
- swapper: SwapIxnsProvider;
134
- referrer: PublicKey;
135
- isKtoken: IsKtokenProvider;
136
- kamino: Kamino | undefined;
137
- obligationTypeTagOverride: ObligationTypeTag;
138
- obligation: KaminoObligation | null;
139
- currentSlot: number;
140
- getTotalKlendAccountsOnly: boolean;
141
- scopeFeed?: string;
142
- }) => Promise<{
143
- ixns: TransactionInstruction[];
144
- lookupTablesAddresses: PublicKey[];
145
- swapInputs: SwapInputs;
146
- totalKlendAccounts: number;
147
- }>;
148
- export declare const getAdjustLeverageSwapInputs: (props: {
149
- deposited: Decimal;
150
- borrowed: Decimal;
151
- priceCollToDebt: Decimal;
152
- priceDebtToColl: Decimal;
153
- slippagePct: number;
154
- targetLeverage: Decimal;
155
- kaminoMarket: KaminoMarket;
156
- debtTokenMint: PublicKey;
157
- collTokenMint: PublicKey;
158
- }) => {
159
- swapInputs: SwapInputs;
160
- };
161
- export declare const getAdjustLeverageIxns: (props: {
162
- connection: Connection;
163
- budgetAndPriorityFeeIxns: TransactionInstruction[];
164
- user: PublicKey;
165
- kaminoMarket: KaminoMarket;
166
- priceDebtToColl: Decimal;
167
- priceCollToDebt: Decimal;
168
- targetLeverage: Decimal;
169
- slippagePct: number;
170
- depositedLamports: Decimal;
171
- borrowedLamports: Decimal;
172
- collTokenMint: PublicKey;
173
- debtTokenMint: PublicKey;
174
- swapper: SwapIxnsProvider;
175
- referrer: PublicKey;
176
- isKtoken: IsKtokenProvider;
177
- priceAinB: PriceAinBProvider;
178
- kamino: Kamino | undefined;
179
- obligationTypeTagOverride: ObligationTypeTag;
180
- obligation: KaminoObligation | null;
181
- currentSlot: number;
182
- getTotalKlendAccountsOnly: boolean;
183
- scopeFeed: string | undefined;
184
- }) => Promise<{
185
- ixns: TransactionInstruction[];
186
- lookupTablesAddresses: PublicKey[];
1
+ import { PublicKey, TransactionInstruction } from '@solana/web3.js';
2
+ import { KaminoMarket, KaminoObligation, KaminoReserve } from '../classes';
3
+ import { StrategyWithAddress } from '@kamino-finance/kliquidity-sdk';
4
+ import { AdjustLeverageInitialInputs, AdjustLeverageIxsResponse, AdjustLeverageProps, AdjustLeverageSwapInputsProps, DepositLeverageInitialInputs, DepositWithLeverageProps, DepositWithLeverageSwapInputsProps, DepsoitLeverageIxsResponse, SwapInputs, SwapQuoteIxs, WithdrawLeverageCalcsResult, WithdrawLeverageInitialInputs, WithdrawLeverageIxsResponse, WithdrawWithLeverageProps, WithdrawWithLeverageSwapInputsProps } from './types';
5
+ export declare function getDepositWithLeverageSwapInputs<QuoteResponse>({ owner, kaminoMarket, debtTokenMint, collTokenMint, depositAmount, priceDebtToColl, slippagePct, obligation, referrer, currentSlot, targetLeverage, selectedTokenMint, kamino, obligationTypeTagOverride, scopeFeed, budgetAndPriorityFeeIxs, quoteBufferBps, priceAinB, isKtoken, quoter, }: DepositWithLeverageSwapInputsProps<QuoteResponse>): Promise<{
187
6
  swapInputs: SwapInputs;
188
- totalKlendAccounts: number;
7
+ initialInputs: DepositLeverageInitialInputs<QuoteResponse>;
189
8
  }>;
190
- /**
191
- * Deposit and borrow tokens if leverage increased
192
- */
193
- export declare const getIncreaseLeverageIxns: (props: {
194
- connection: Connection;
195
- budgetAndPriorityFeeIxns: TransactionInstruction[];
196
- user: PublicKey;
197
- kaminoMarket: KaminoMarket;
198
- depositAmount: Decimal;
199
- collTokenMint: PublicKey;
200
- debtTokenMint: PublicKey;
201
- slippagePct: number;
202
- priceDebtToColl: Decimal;
203
- priceCollToDebt: Decimal;
204
- swapper: SwapIxnsProvider;
205
- referrer: PublicKey;
206
- isKtoken: IsKtokenProvider;
207
- priceAinB: PriceAinBProvider;
208
- kamino: Kamino | undefined;
209
- obligationTypeTagOverride: ObligationTypeTag;
210
- obligation: KaminoObligation | null;
211
- currentSlot: number;
212
- getTotalKlendAccountsOnly: boolean;
213
- scopeFeed: string | undefined;
214
- }) => Promise<{
215
- ixns: TransactionInstruction[];
216
- lookupTablesAddresses: PublicKey[];
9
+ export declare function getDepositWithLeverageIxns<QuoteResponse>({ owner, kaminoMarket, debtTokenMint, collTokenMint, depositAmount, priceDebtToColl, slippagePct, obligation, referrer, currentSlot, targetLeverage, selectedTokenMint, kamino, obligationTypeTagOverride, scopeFeed, budgetAndPriorityFeeIxs, quoteBufferBps, priceAinB, isKtoken, quoter, swapper, }: DepositWithLeverageProps<QuoteResponse>): Promise<DepsoitLeverageIxsResponse<QuoteResponse>>;
10
+ export declare function getWithdrawWithLeverageSwapInputs<QuoteResponse>({ owner, kaminoMarket, debtTokenMint, collTokenMint, deposited, borrowed, obligation, referrer, currentSlot, withdrawAmount, priceCollToDebt, slippagePct, isClosingPosition, selectedTokenMint, budgetAndPriorityFeeIxs, kamino, scopeFeed, quoteBufferBps, isKtoken, quoter, }: WithdrawWithLeverageSwapInputsProps<QuoteResponse>): Promise<{
217
11
  swapInputs: SwapInputs;
218
- totalKlendAccounts: number;
12
+ initialInputs: WithdrawLeverageInitialInputs<QuoteResponse>;
219
13
  }>;
220
- /**
221
- * Withdraw and repay tokens if leverage decreased
222
- */
223
- export declare const getDecreaseLeverageIxns: (props: {
224
- connection: Connection;
225
- budgetAndPriorityFeeIxns: TransactionInstruction[];
226
- user: PublicKey;
227
- kaminoMarket: KaminoMarket;
228
- withdrawAmount: Decimal;
229
- repayAmount: Decimal;
230
- collTokenMint: PublicKey;
231
- debtTokenMint: PublicKey;
232
- slippagePct: number;
233
- swapper: SwapIxnsProvider;
234
- referrer: PublicKey;
235
- isKtoken: IsKtokenProvider;
236
- kamino: Kamino | undefined;
237
- obligationTypeTagOverride: ObligationTypeTag;
238
- obligation: KaminoObligation | null;
239
- currentSlot: number;
240
- getTotalKlendAccountsOnly: boolean;
241
- scopeFeed: string | undefined;
242
- }) => Promise<{
243
- ixns: TransactionInstruction[];
244
- lookupTablesAddresses: PublicKey[];
14
+ export declare function getWithdrawWithLeverageIxns<QuoteResponse>({ owner, kaminoMarket, debtTokenMint, collTokenMint, obligation, deposited, borrowed, referrer, currentSlot, withdrawAmount, priceCollToDebt, slippagePct, isClosingPosition, selectedTokenMint, budgetAndPriorityFeeIxs, kamino, scopeFeed, quoteBufferBps, isKtoken, quoter, swapper, }: WithdrawWithLeverageProps<QuoteResponse>): Promise<WithdrawLeverageIxsResponse<QuoteResponse>>;
15
+ export declare function buildWithdrawWithLeverageIxns(market: KaminoMarket, debtReserve: KaminoReserve, collReserve: KaminoReserve, owner: PublicKey, obligation: KaminoObligation, referrer: PublicKey, currentSlot: number, isClosingPosition: boolean, depositTokenIsSol: boolean, scopeFeed: string | undefined, calcs: WithdrawLeverageCalcsResult, budgetAndPriorityFeeIxs: TransactionInstruction[] | undefined, swapQuoteIxs: SwapQuoteIxs, strategy: StrategyWithAddress | undefined, collIsKtoken: boolean): Promise<TransactionInstruction[]>;
16
+ export declare function getAdjustLeverageSwapInputs<QuoteResponse>({ owner, kaminoMarket, debtTokenMint, collTokenMint, obligation, depositedLamports, borrowedLamports, referrer, currentSlot, targetLeverage, priceCollToDebt, priceDebtToColl, slippagePct, budgetAndPriorityFeeIxs, kamino, scopeFeed, quoteBufferBps, isKtoken, quoter, }: AdjustLeverageSwapInputsProps<QuoteResponse>): Promise<{
245
17
  swapInputs: SwapInputs;
246
- totalKlendAccounts: number;
18
+ initialInputs: AdjustLeverageInitialInputs<QuoteResponse>;
247
19
  }>;
20
+ export declare function getAdjustLeverageIxns<QuoteResponse>({ owner, kaminoMarket, debtTokenMint, collTokenMint, obligation, depositedLamports, borrowedLamports, referrer, currentSlot, targetLeverage, priceCollToDebt, priceDebtToColl, slippagePct, budgetAndPriorityFeeIxs, kamino, scopeFeed, quoteBufferBps, priceAinB, isKtoken, quoter, swapper, }: AdjustLeverageProps<QuoteResponse>): Promise<AdjustLeverageIxsResponse<QuoteResponse>>;
248
21
  //# sourceMappingURL=operations.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../src/leverage/operations.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,EACzB,UAAU,EAEV,SAAS,EACT,sBAAsB,EACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,OAAO,MAAM,YAAY,CAAC;AACjC,OAAO,EAAgB,YAAY,EAAE,gBAAgB,EAA2C,MAAM,YAAY,CAAC;AAInH,OAAO,EAIL,iBAAiB,EAUlB,MAAM,UAAU,CAAC;AAGlB,OAAO,EACL,MAAM,EACN,4BAA4B,EAC5B,mBAAmB,EACnB,YAAY,EACb,MAAM,gCAAgC,CAAC;AAGxC,MAAM,MAAM,gBAAgB,GAAG,CAC7B,gBAAgB,EAAE,MAAM,EACxB,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,SAAS,EACrB,WAAW,EAAE,MAAM,EACnB,oBAAoB,CAAC,EAAE,OAAO,KAC3B,OAAO,CAAC,CAAC,sBAAsB,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;AAEtD,MAAM,MAAM,iBAAiB,CAAC,aAAa,IAAI,CAC7C,MAAM,EAAE,UAAU,EAClB,aAAa,EAAE,KAAK,CAAC,SAAS,CAAC,KAC5B,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC;AAEvC,MAAM,MAAM,oBAAoB,CAAC,aAAa,IAAI,CAChD,MAAM,EAAE,UAAU,EAClB,aAAa,EAAE,KAAK,CAAC,SAAS,CAAC,EAC/B,KAAK,EAAE,SAAS,CAAC,aAAa,CAAC,KAC5B,OAAO,CAAC,YAAY,CAAC,CAAC;AAE3B,MAAM,MAAM,SAAS,CAAC,aAAa,IAAI;IACrC,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,YAAY,EAAE,sBAAsB,EAAE,CAAC;IACvC,OAAO,EAAE,sBAAsB,EAAE,CAAC;IAClC,YAAY,EAAE,yBAAyB,EAAE,CAAC;CAC3C,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAEzF,MAAM,MAAM,gBAAgB,GAAG,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAE/E,MAAM,MAAM,UAAU,GAAG;IACvB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,SAAS,EAAE,SAAS,CAAC;IACrB,UAAU,EAAE,SAAS,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG,CACtC,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,SAAS,EACvB,aAAa,EAAE,SAAS,EACxB,QAAQ,EAAE,OAAO,EACjB,cAAc,EAAE,OAAO,EACvB,oBAAoB,EAAE,OAAO,KAC1B,OAAO,CAAC,4BAA4B,CAAC,CAAC;AAE3C,eAAO,MAAM,oBAAoB,UAAW;IAC1C,aAAa,EAAE,OAAO,CAAC;IACvB,uBAAuB,EAAE,OAAO,CAAC;IACjC,iBAAiB,EAAE,OAAO,CAAC;IAC3B,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,EAAE,OAAO,CAAC;IACxB,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;CACvB,KAAG;IACF,sBAAsB,EAAE,OAAO,CAAC;IAChC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,eAAe,EAAE,OAAO,CAAC;IACzB,wBAAwB,EAAE,OAAO,CAAC;CAgDnC,CAAC;AAEF,eAAO,MAAM,0BAA0B,UAAiB;IACtD,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,aAAa,EAAE,SAAS,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,uBAAuB,EAAE,OAAO,CAAC;IACjC,iBAAiB,EAAE,OAAO,CAAC;IAC3B,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,EAAE,OAAO,CAAC;IACxB,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,SAAS,EAAE,iBAAiB,CAAC;IAC7B,gBAAgB,CAAC,EAAE,YAAY,CAAC;CACjC,KAAG,OAAO,CAAC;IACV,sBAAsB,EAAE,OAAO,CAAC;IAChC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,kBAAkB,EAAE,OAAO,CAAC;CAC7B,CAkFA,CAAC;AAEF,eAAO,MAAM,gCAAgC,UAAW;IACtD,aAAa,EAAE,OAAO,CAAC;IACvB,eAAe,EAAE,OAAO,CAAC;IACzB,WAAW,EAAE,OAAO,CAAC;IACrB,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,EAAE,YAAY,CAAC;IAC3B,iBAAiB,EAAE,SAAS,CAAC;IAC7B,aAAa,EAAE,SAAS,CAAC;IACzB,aAAa,EAAE,SAAS,CAAC;CAC1B,KAAG;IACF,UAAU,EAAE,UAAU,CAAC;CAsCxB,CAAC;AAEF,eAAO,MAAM,0BAA0B,UAAiB;IACtD,UAAU,EAAE,UAAU,CAAC;IACvB,wBAAwB,CAAC,EAAE,sBAAsB,EAAE,CAAC;IACpD,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,iBAAiB,EAAE,SAAS,CAAC;IAC7B,aAAa,EAAE,SAAS,CAAC;IACzB,aAAa,EAAE,SAAS,CAAC;IACzB,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,EAAE,YAAY,CAAC;IAC3B,WAAW,EAAE,OAAO,CAAC;IACrB,eAAe,EAAE,OAAO,CAAC;IACzB,OAAO,EAAE,gBAAgB,CAAC;IAC1B,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,SAAS,EAAE,iBAAiB,CAAC;IAC7B,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,yBAAyB,EAAE,iBAAiB,CAAC;IAC7C,UAAU,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,yBAAyB,EAAE,OAAO,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,KAAG,OAAO,CAAC;IACV,IAAI,EAAE,sBAAsB,EAAE,CAAC;IAC/B,qBAAqB,EAAE,SAAS,EAAE,CAAC;IACnC,UAAU,EAAE,UAAU,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;CAC5B,CA4VA,CAAC;AAEF,eAAO,MAAM,iCAAiC,UAAW;IACvD,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,eAAe,EAAE,OAAO,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,YAAY,EAAE,YAAY,CAAC;IAC3B,iBAAiB,EAAE,SAAS,CAAC;IAC7B,aAAa,EAAE,SAAS,CAAC;IACzB,aAAa,EAAE,SAAS,CAAC;IACzB,cAAc,EAAE,gBAAgB,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;CACrB,KAAG;IACF,UAAU,EAAE,UAAU,CAAC;CAwDxB,CAAC;AAEF,eAAO,MAAM,2BAA2B,UAAiB;IACvD,UAAU,EAAE,UAAU,CAAC;IACvB,wBAAwB,EAAE,sBAAsB,EAAE,CAAC;IACnD,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,SAAS,CAAC;IACzB,aAAa,EAAE,SAAS,CAAC;IACzB,eAAe,EAAE,OAAO,CAAC;IACzB,iBAAiB,EAAE,SAAS,CAAC;IAC7B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,YAAY,EAAE,YAAY,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,gBAAgB,CAAC;IAC1B,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,yBAAyB,EAAE,iBAAiB,CAAC;IAC7C,UAAU,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,yBAAyB,EAAE,OAAO,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,KAAG,OAAO,CAAC;IACV,IAAI,EAAE,sBAAsB,EAAE,CAAC;IAC/B,qBAAqB,EAAE,SAAS,EAAE,CAAC;IACnC,UAAU,EAAE,UAAU,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;CAC5B,CAySA,CAAC;AAEF,eAAO,MAAM,2BAA2B,UAAW;IACjD,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,OAAO,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,EAAE,YAAY,CAAC;IAC3B,aAAa,EAAE,SAAS,CAAC;IACzB,aAAa,EAAE,SAAS,CAAC;CAC1B,KAAG;IACF,UAAU,EAAE,UAAU,CAAC;CAuDxB,CAAC;AAEF,eAAO,MAAM,qBAAqB,UAAiB;IACjD,UAAU,EAAE,UAAU,CAAC;IACvB,wBAAwB,EAAE,sBAAsB,EAAE,CAAC;IACnD,IAAI,EAAE,SAAS,CAAC;IAChB,YAAY,EAAE,YAAY,CAAC;IAC3B,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,EAAE,OAAO,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,aAAa,EAAE,SAAS,CAAC;IACzB,aAAa,EAAE,SAAS,CAAC;IACzB,OAAO,EAAE,gBAAgB,CAAC;IAC1B,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,SAAS,EAAE,iBAAiB,CAAC;IAC7B,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,yBAAyB,EAAE,iBAAiB,CAAC;IAC7C,UAAU,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,yBAAyB,EAAE,OAAO,CAAC;IACnC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/B;;;;;EAkIA,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,uBAAuB,UAAiB;IACnD,UAAU,EAAE,UAAU,CAAC;IACvB,wBAAwB,EAAE,sBAAsB,EAAE,CAAC;IACnD,IAAI,EAAE,SAAS,CAAC;IAChB,YAAY,EAAE,YAAY,CAAC;IAC3B,aAAa,EAAE,OAAO,CAAC;IACvB,aAAa,EAAE,SAAS,CAAC;IACzB,aAAa,EAAE,SAAS,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,OAAO,CAAC;IACzB,OAAO,EAAE,gBAAgB,CAAC;IAC1B,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,SAAS,EAAE,iBAAiB,CAAC;IAC7B,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,yBAAyB,EAAE,iBAAiB,CAAC;IAC7C,UAAU,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,yBAAyB,EAAE,OAAO,CAAC;IACnC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/B;;;;;EA8RA,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,uBAAuB,UAAiB;IACnD,UAAU,EAAE,UAAU,CAAC;IACvB,wBAAwB,EAAE,sBAAsB,EAAE,CAAC;IACnD,IAAI,EAAE,SAAS,CAAC;IAChB,YAAY,EAAE,YAAY,CAAC;IAC3B,cAAc,EAAE,OAAO,CAAC;IACxB,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,EAAE,SAAS,CAAC;IACzB,aAAa,EAAE,SAAS,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,gBAAgB,CAAC;IAC1B,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,yBAAyB,EAAE,iBAAiB,CAAC;IAC7C,UAAU,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,yBAAyB,EAAE,OAAO,CAAC;IACnC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/B;;;;;EAqQA,CAAC"}
1
+ {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../src/leverage/operations.ts"],"names":[],"mappings":"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"}