import { Address, IAccountMeta, IInstruction, Option, TransactionSigner } from "@solana/kit";
import BN from "bn.js";
export interface SwapUnevenVaultsArgs {
    targetLimitBps: BN;
}
export interface SwapUnevenVaultsAccounts {
    actionsAuthority: TransactionSigner;
    strategy: Address;
    globalConfig: Address;
    tokenAVault: Address;
    tokenBVault: Address;
    tokenAMint: Address;
    tokenBMint: Address;
    baseVaultAuthority: Address;
    pool: Address;
    position: Address;
    raydiumPoolConfigOrBaseVaultAuthority: Address;
    poolTokenVaultA: Address;
    poolTokenVaultB: Address;
    /** Payer must send this correctly. */
    tickArray0: Address;
    /** Payer must send this correctly. */
    tickArray1: Address;
    /** Payer must send this correctly. */
    tickArray2: Address;
    oracle: Address;
    poolProgram: Address;
    scopePrices: Address;
    tokenInfos: Address;
    tickArrayLower: Address;
    tickArrayUpper: Address;
    tokenATokenProgram: Address;
    tokenBTokenProgram: Address;
    memoProgram: Address;
    tokenProgram: Address;
    tokenProgram2022: Address;
    instructionSysvarAccount: Address;
    consensusAccount: Address;
    eventAuthority: Option<Address>;
}
export declare const layout: import("buffer-layout").Layout<unknown>;
export declare function swapUnevenVaults(args: SwapUnevenVaultsArgs, accounts: SwapUnevenVaultsAccounts, programAddress?: Address): IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>;
//# sourceMappingURL=swapUnevenVaults.d.ts.map