import { Address, AccountMeta, AccountSignerMeta, Instruction, Option, TransactionSigner } from "@solana/kit";
import BN from "bn.js";
export declare const DISCRIMINATOR: Buffer<ArrayBuffer>;
export interface InvestWithMaxAmountArgs {
    maxAmount: BN;
}
export interface InvestWithMaxAmountAccounts {
    payer: TransactionSigner;
    payerTokenAccount: Address;
    vaultState: Address;
    tokenVault: Address;
    tokenMint: Address;
    baseVaultAuthority: Address;
    ctokenVault: Address;
    reserve: Address;
    lendingMarket: Address;
    lendingMarketAuthority: Address;
    reserveLiquiditySupply: Address;
    reserveCollateralMint: Address;
    reserveWhitelistEntry: Option<Address>;
    klendProgram: Address;
    reserveCollateralTokenProgram: Address;
    tokenProgram: Address;
    instructionSysvarAccount: Address;
}
export declare const layout: import("buffer-layout").Layout<InvestWithMaxAmountArgs>;
export declare function investWithMaxAmount(args: InvestWithMaxAmountArgs, accounts: InvestWithMaxAmountAccounts, remainingAccounts?: Array<AccountMeta | AccountSignerMeta>, programAddress?: Address): Instruction<string, readonly (AccountMeta<string> | import("@solana/kit").AccountLookupMeta<string, string>)[]>;
//# sourceMappingURL=investWithMaxAmount.d.ts.map