import { TransactionInstruction, PublicKey } from "@solana/web3.js";
import BN from "bn.js";
export interface WithdrawArgs {
    sharesAmount: BN;
}
export interface WithdrawAccounts {
    user: PublicKey;
    vaultState: PublicKey;
    reserve: PublicKey;
    tokenVault: PublicKey;
    ctokenVault: PublicKey;
    baseVaultAuthority: PublicKey;
    tokenAta: PublicKey;
    tokenMint: PublicKey;
    userSharesAta: PublicKey;
    sharesMint: PublicKey;
    tokenProgram: PublicKey;
    /** CPI accounts */
    lendingMarket: PublicKey;
    lendingMarketAuthority: PublicKey;
    reserveLiquiditySupply: PublicKey;
    reserveCollateralMint: PublicKey;
    klendProgram: PublicKey;
    instructionSysvarAccount: PublicKey;
    reserveCollateralTokenProgram: PublicKey;
    sharesTokenProgram: PublicKey;
}
export declare const layout: any;
export declare function withdraw(args: WithdrawArgs, accounts: WithdrawAccounts, programId?: PublicKey): TransactionInstruction;
//# sourceMappingURL=withdraw.d.ts.map