import { PublicClient, WalletClient } from 'viem'; import { CollateralConfig, ProtocolConfig } from '../types'; export declare class SatoshiTroveManager { readonly walletClient: WalletClient; readonly protocolConfig: ProtocolConfig; readonly publicClient: PublicClient; constructor({ protocolConfig, publicClient, walletClient, }: { protocolConfig: ProtocolConfig; publicClient: PublicClient; walletClient: WalletClient; }); getEntireDebtAndColl(collateral: CollateralConfig, address?: `0x${string}`): Promise<{ debt: bigint; coll: bigint; pendingDebtReward: bigint; pendingCollateralReward: bigint; }>; doOpenTrove({ collateral, borrowingAmt, totalCollAmt, referrer, }: { collateral: CollateralConfig; borrowingAmt: bigint; totalCollAmt: bigint; referrer?: `0x${string}`; }): Promise; doWithdraw({ collateral, withdrawCollAmt }: { collateral: CollateralConfig; withdrawCollAmt: bigint; }): Promise; doDeposit({ collateral, addedCollAmt }: { collateral: CollateralConfig; addedCollAmt: bigint; }): Promise; doBorrow({ collateral, addBorrowingAmt }: { collateral: CollateralConfig; addBorrowingAmt: bigint; }): Promise; doRepay({ collateral, repayAmt }: { collateral: CollateralConfig; repayAmt: bigint; }): Promise; doCloseTrove({ collateral }: { collateral: CollateralConfig; }): Promise; doRedeem(collateral: CollateralConfig, estimatedRedeemAmt: bigint): Promise; }