import { web3 } from '@coral-xyz/anchor';
import { GetInstructionsReturnType } from '../types';
import { BondOffer } from '../../../core/accounts/BondOffer/BondOffer';
import { BanxMarket } from '../../../core/accounts/BanxMarket/BanxMarket';
import { BondLoan } from '../../accounts/BondLoan/BondLoan';
type GetLenderInstantRefinanceIxnsRawParams = {
    connection: web3.Connection;
    accounts: {
        userPubkey: web3.PublicKey;
        market: web3.PublicKey;
        oldLender: web3.PublicKey;
        oldBondLoan: web3.PublicKey;
        oldBondOffer: web3.PublicKey;
        newLender: web3.PublicKey;
        newBondOffer: web3.PublicKey;
        lendingTokenMint: web3.PublicKey;
        oracle: web3.PublicKey;
    };
};
type GetLenderInstantRefinanceIxnsReturnType = GetInstructionsReturnType<{
    oldBondOffer: web3.PublicKey;
    oldBondLoan: web3.PublicKey;
    oldLenderVault: web3.PublicKey;
    newBondLoan: web3.PublicKey;
    newBondOffer: web3.PublicKey;
    newLenderVault: web3.PublicKey;
}>;
export declare function getLenderInstantRefinanceIxnsRaw({ accounts, connection, }: GetLenderInstantRefinanceIxnsRawParams): Promise<GetLenderInstantRefinanceIxnsReturnType>;
type GetLenderInstantRefinanceIxnsParams = {
    connection: web3.Connection;
    walletPublicKey: web3.PublicKey;
    accounts: {
        bondLoan: BondLoan;
        bondOffer: BondOffer;
        banxMarket: BanxMarket;
    };
};
export declare function getLenderInstantRefinanceIxns({ connection, walletPublicKey, accounts, }: GetLenderInstantRefinanceIxnsParams): Promise<GetLenderInstantRefinanceIxnsReturnType>;
export {};
