lll-sdk 0.0.0-experimental-20250903143747 → 0.0.0-experimental-20250903183530

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.
package/dist/index.d.mts CHANGED
@@ -1,5 +1,4 @@
1
1
  import { SdkWrapper, BaseSdkOptions, Package } from '@cetusprotocol/common-sdk';
2
- import * as _mysten_sui_dist_cjs_transactions from '@mysten/sui/dist/cjs/transactions';
3
2
  import { SuilendClient as SuilendClient$1 } from '@suilend/sdk/client';
4
3
  import { SuilendClient, ParsedLendingMarket, ParsedReserve } from '@suilend/sdk';
5
4
  import { CoinMetadata } from '@mysten/sui/client';
@@ -10,6 +9,7 @@ import { Transaction } from '@mysten/sui/transactions';
10
9
  import BigNumber$1 from 'bignumber.js';
11
10
  import * as _cetusprotocol_aggregator_sdk from '@cetusprotocol/aggregator-sdk';
12
11
  import { AggregatorClient } from '@cetusprotocol/aggregator-sdk';
12
+ import * as _mysten_sui_dist_cjs_transactions from '@mysten/sui/dist/cjs/transactions';
13
13
  import * as _suilend_sdk__generated_suilend_obligation_structs from '@suilend/sdk/_generated/suilend/obligation/structs';
14
14
  import * as _suilend_sdk__generated_suilend_liquidity_mining_structs from '@suilend/sdk/_generated/suilend/liquidity-mining/structs';
15
15
  import { CetusClmmSDK } from '@cetusprotocol/sui-clmm-sdk';
@@ -76,6 +76,17 @@ interface RepayFlashSwapParams {
76
76
  clmmPoolCoinTypeB: string;
77
77
  receipt: any;
78
78
  }
79
+ interface Market {
80
+ marketId: string;
81
+ baseToken: string;
82
+ quoteToken: string;
83
+ isOpenPause: boolean;
84
+ isClosePause: boolean;
85
+ maxLongLeverage: string;
86
+ maxShortLeverage: string;
87
+ openFeeRate: string;
88
+ closeFeeRate: string;
89
+ }
79
90
  type Price = {
80
91
  coin_type: string;
81
92
  price: string;
@@ -225,8 +236,7 @@ declare class SuiLendModule {
225
236
  netValueUsd: any;
226
237
  rewardMap: any;
227
238
  } | undefined>;
228
- createObligation: (transaction: Transaction) => Promise<_mysten_sui_dist_cjs_transactions.TransactionResult>;
229
- refreshReservePrices: (tx: Transaction, priceObjectId: string, reserveArrayIndex: bigint) => Promise<void>;
239
+ refreshReservePrice: (tx: Transaction, priceObjectId: string, reserveArrayIndex: bigint) => Promise<void>;
230
240
  getLatestPriceFeeds: (reserves: Reserve<string>[]) => Promise<Record<string, Price>>;
231
241
  priceCheck(price: Price, age?: number): Price | undefined;
232
242
  getSuiLendReserveInfo: (baseToken: string, quoteToken: string) => Promise<{
@@ -234,6 +244,7 @@ declare class SuiLendModule {
234
244
  quoteReserveArrayIndex: string;
235
245
  reserve: Reserve<string>[];
236
246
  }>;
247
+ refreshReservePrices: (tx: Transaction, reserve: Reserve<string>[]) => Promise<void>;
237
248
  }
238
249
 
239
250
  declare class LeverageModules {
@@ -520,269 +531,7 @@ declare class LeverageModules {
520
531
  /**
521
532
  * 获取杠杆仓位详情
522
533
  */
523
- getLeveragePosition: (positionId: string) => Promise<{
524
- createdAt: any;
525
- positionId: any;
526
- initDepositAmount: any;
527
- isLong: any;
528
- lendingMarketId: any;
529
- obligationOwnerCap: any;
530
- id: string;
531
- depositedAmountUsd: BigNumber;
532
- borrowedAmountUsd: BigNumber;
533
- netValueUsd: BigNumber;
534
- weightedBorrowsUsd: BigNumber;
535
- maxPriceWeightedBorrowsUsd: BigNumber;
536
- borrowLimitUsd: BigNumber;
537
- minPriceBorrowLimitUsd: BigNumber;
538
- unhealthyBorrowValueUsd: BigNumber;
539
- depositPositionCount: number;
540
- borrowPositionCount: number;
541
- positionCount: number;
542
- deposits: {
543
- coinType: string;
544
- reserveArrayIndex: bigint;
545
- userRewardManagerIndex: number;
546
- userRewardManager: _suilend_sdk__generated_suilend_liquidity_mining_structs.UserRewardManager;
547
- depositedAmount: BigNumber;
548
- depositedAmountUsd: BigNumber;
549
- depositedCtokenAmount: BigNumber;
550
- reserve: {
551
- config: {
552
- $typeName: string;
553
- openLtvPct: number;
554
- closeLtvPct: number;
555
- maxCloseLtvPct: number;
556
- borrowWeightBps: BigNumber;
557
- depositLimit: BigNumber;
558
- borrowLimit: BigNumber;
559
- liquidationBonusBps: number;
560
- maxLiquidationBonusBps: number;
561
- depositLimitUsd: BigNumber;
562
- borrowLimitUsd: BigNumber;
563
- borrowFeeBps: number;
564
- spreadFeeBps: number;
565
- protocolLiquidationFeeBps: number;
566
- isolated: boolean;
567
- openAttributedBorrowLimitUsd: number;
568
- closeAttributedBorrowLimitUsd: number;
569
- interestRate: {
570
- id: string;
571
- utilPercent: BigNumber;
572
- aprPercent: BigNumber;
573
- }[];
574
- };
575
- $typeName: string;
576
- id: string;
577
- arrayIndex: bigint;
578
- coinType: string;
579
- mintDecimals: number;
580
- priceIdentifier: string;
581
- price: BigNumber;
582
- smoothedPrice: BigNumber;
583
- minPrice: BigNumber;
584
- maxPrice: BigNumber;
585
- priceLastUpdateTimestampS: bigint;
586
- availableAmount: BigNumber;
587
- ctokenSupply: BigNumber;
588
- borrowedAmount: BigNumber;
589
- cumulativeBorrowRate: BigNumber;
590
- interestLastUpdateTimestampS: bigint;
591
- unclaimedSpreadFees: BigNumber;
592
- attributedBorrowValue: BigNumber;
593
- depositsPoolRewardManager: {
594
- $typeName: string;
595
- id: string;
596
- totalShares: bigint;
597
- poolRewards: {
598
- $typeName: string;
599
- id: string;
600
- poolRewardManagerId: string;
601
- coinType: string;
602
- startTimeMs: number;
603
- endTimeMs: number;
604
- totalRewards: BigNumber;
605
- allocatedRewards: BigNumber;
606
- cumulativeRewardsPerShare: BigNumber;
607
- numUserRewardManagers: bigint;
608
- rewardIndex: number;
609
- symbol: string;
610
- mintDecimals: number;
611
- }[];
612
- lastUpdateTimeMs: bigint;
613
- };
614
- borrowsPoolRewardManager: {
615
- $typeName: string;
616
- id: string;
617
- totalShares: bigint;
618
- poolRewards: {
619
- $typeName: string;
620
- id: string;
621
- poolRewardManagerId: string;
622
- coinType: string;
623
- startTimeMs: number;
624
- endTimeMs: number;
625
- totalRewards: BigNumber;
626
- allocatedRewards: BigNumber;
627
- cumulativeRewardsPerShare: BigNumber;
628
- numUserRewardManagers: bigint;
629
- rewardIndex: number;
630
- symbol: string;
631
- mintDecimals: number;
632
- }[];
633
- lastUpdateTimeMs: bigint;
634
- };
635
- availableAmountUsd: BigNumber;
636
- borrowedAmountUsd: BigNumber;
637
- depositedAmount: BigNumber;
638
- depositedAmountUsd: BigNumber;
639
- cTokenExchangeRate: BigNumber;
640
- borrowAprPercent: BigNumber;
641
- depositAprPercent: BigNumber;
642
- utilizationPercent: BigNumber;
643
- token: {
644
- decimals: number;
645
- description: string;
646
- iconUrl?: string | null;
647
- id?: string | null;
648
- name: string;
649
- symbol: string;
650
- coinType: string;
651
- };
652
- symbol: string;
653
- name: string;
654
- iconUrl: string | null | undefined;
655
- description: string;
656
- totalDeposits: BigNumber;
657
- };
658
- original: _suilend_sdk__generated_suilend_obligation_structs.Obligation<string>;
659
- }[];
660
- borrows: {
661
- coinType: string;
662
- reserveArrayIndex: bigint;
663
- userRewardManagerIndex: number;
664
- userRewardManager: _suilend_sdk__generated_suilend_liquidity_mining_structs.UserRewardManager;
665
- borrowedAmount: BigNumber;
666
- borrowedAmountUsd: BigNumber;
667
- reserve: {
668
- config: {
669
- $typeName: string;
670
- openLtvPct: number;
671
- closeLtvPct: number;
672
- maxCloseLtvPct: number;
673
- borrowWeightBps: BigNumber;
674
- depositLimit: BigNumber;
675
- borrowLimit: BigNumber;
676
- liquidationBonusBps: number;
677
- maxLiquidationBonusBps: number;
678
- depositLimitUsd: BigNumber;
679
- borrowLimitUsd: BigNumber;
680
- borrowFeeBps: number;
681
- spreadFeeBps: number;
682
- protocolLiquidationFeeBps: number;
683
- isolated: boolean;
684
- openAttributedBorrowLimitUsd: number;
685
- closeAttributedBorrowLimitUsd: number;
686
- interestRate: {
687
- id: string;
688
- utilPercent: BigNumber;
689
- aprPercent: BigNumber;
690
- }[];
691
- };
692
- $typeName: string;
693
- id: string;
694
- arrayIndex: bigint;
695
- coinType: string;
696
- mintDecimals: number;
697
- priceIdentifier: string;
698
- price: BigNumber;
699
- smoothedPrice: BigNumber;
700
- minPrice: BigNumber;
701
- maxPrice: BigNumber;
702
- priceLastUpdateTimestampS: bigint;
703
- availableAmount: BigNumber;
704
- ctokenSupply: BigNumber;
705
- borrowedAmount: BigNumber;
706
- cumulativeBorrowRate: BigNumber;
707
- interestLastUpdateTimestampS: bigint;
708
- unclaimedSpreadFees: BigNumber;
709
- attributedBorrowValue: BigNumber;
710
- depositsPoolRewardManager: {
711
- $typeName: string;
712
- id: string;
713
- totalShares: bigint;
714
- poolRewards: {
715
- $typeName: string;
716
- id: string;
717
- poolRewardManagerId: string;
718
- coinType: string;
719
- startTimeMs: number;
720
- endTimeMs: number;
721
- totalRewards: BigNumber;
722
- allocatedRewards: BigNumber;
723
- cumulativeRewardsPerShare: BigNumber;
724
- numUserRewardManagers: bigint;
725
- rewardIndex: number;
726
- symbol: string;
727
- mintDecimals: number;
728
- }[];
729
- lastUpdateTimeMs: bigint;
730
- };
731
- borrowsPoolRewardManager: {
732
- $typeName: string;
733
- id: string;
734
- totalShares: bigint;
735
- poolRewards: {
736
- $typeName: string;
737
- id: string;
738
- poolRewardManagerId: string;
739
- coinType: string;
740
- startTimeMs: number;
741
- endTimeMs: number;
742
- totalRewards: BigNumber;
743
- allocatedRewards: BigNumber;
744
- cumulativeRewardsPerShare: BigNumber;
745
- numUserRewardManagers: bigint;
746
- rewardIndex: number;
747
- symbol: string;
748
- mintDecimals: number;
749
- }[];
750
- lastUpdateTimeMs: bigint;
751
- };
752
- availableAmountUsd: BigNumber;
753
- borrowedAmountUsd: BigNumber;
754
- depositedAmount: BigNumber;
755
- depositedAmountUsd: BigNumber;
756
- cTokenExchangeRate: BigNumber;
757
- borrowAprPercent: BigNumber;
758
- depositAprPercent: BigNumber;
759
- utilizationPercent: BigNumber;
760
- token: {
761
- decimals: number;
762
- description: string;
763
- iconUrl?: string | null;
764
- id?: string | null;
765
- name: string;
766
- symbol: string;
767
- coinType: string;
768
- };
769
- symbol: string;
770
- name: string;
771
- iconUrl: string | null | undefined;
772
- description: string;
773
- totalDeposits: BigNumber;
774
- };
775
- original: _suilend_sdk__generated_suilend_obligation_structs.Obligation<string>;
776
- }[];
777
- weightedConservativeBorrowUtilizationPercent: BigNumber;
778
- original: _suilend_sdk__generated_suilend_obligation_structs.Obligation<string>;
779
- totalSupplyUsd: BigNumber;
780
- totalBorrowUsd: BigNumber;
781
- totalWeightedBorrowUsd: BigNumber;
782
- maxPriceTotalWeightedBorrowUsd: BigNumber;
783
- borrowLimit: BigNumber;
784
- minPriceBorrowLimit: BigNumber;
785
- }>;
534
+ getLeveragePosition: (positionId: string, force_refresh?: boolean) => Promise<any>;
786
535
  /**
787
536
  * 获取CLMM池子信息
788
537
  */
@@ -791,6 +540,18 @@ declare class LeverageModules {
791
540
  clmmPoolCoinTypeA: string;
792
541
  clmmPoolCoinTypeB: string;
793
542
  }>;
543
+ /**
544
+ * 判断是否需要swap并处理swap逻辑
545
+ * @param params 参数对象
546
+ * @returns swap结果
547
+ */
548
+ private handleSwapLogic;
549
+ /**
550
+ * 处理债务swap逻辑
551
+ * @param params 参数对象
552
+ * @returns 债务swap结果
553
+ */
554
+ private handleDebtSwapLogic;
794
555
  /**
795
556
  * 开杠杆仓位
796
557
  */
@@ -803,10 +564,13 @@ declare class LeverageModules {
803
564
  * 杠杆仓位减仓
804
565
  */
805
566
  positionManageSizeWithdraw: (params: PositionManageSizeWithdrawParams) => Promise<Transaction>;
806
- /**}
567
+ /**
807
568
  * 仓位升杠杆
808
569
  */
809
570
  positionManageLeverageIncrease: (params: PositionManageLeverageParams) => Promise<Transaction>;
571
+ /**
572
+ * 仓位降杠杆
573
+ */
810
574
  positionManageLeverageDecrease: (params: PositionManageLeverageParams) => Promise<Transaction>;
811
575
  /**
812
576
  * 杠杆仓位平仓
@@ -935,4 +699,26 @@ declare class CetusLeverageSDK extends SdkWrapper<SdkOptions> {
935
699
 
936
700
  declare const leverage_mainnet: SdkOptions;
937
701
 
938
- export { CetusLeverageSDK, type SdkOptions, CetusLeverageSDK as default, leverage_mainnet };
702
+ declare const wrapMarketList: (list: any) => Market[];
703
+ declare const wrapMarketInfo: (info: any) => {
704
+ marketId: any;
705
+ baseToken: string;
706
+ quoteToken: string;
707
+ isOpenPause: any;
708
+ isClosePause: any;
709
+ maxLongLeverage: any;
710
+ maxShortLeverage: any;
711
+ openFeeRate: string;
712
+ closeFeeRate: string;
713
+ positionsHandle: any;
714
+ };
715
+ declare const wrapPosition: (position: any) => {
716
+ createdAt: any;
717
+ positionId: any;
718
+ initDepositAmount: any;
719
+ isLong: any;
720
+ lendingMarketId: any;
721
+ obligationOwnerCap: any;
722
+ };
723
+
724
+ export { CetusLeverageSDK, type SdkOptions, CetusLeverageSDK as default, leverage_mainnet, wrapMarketInfo, wrapMarketList, wrapPosition };