import { Address, IInstruction, TransactionSigner } from "@solana/kit";
import BN from "bn.js";
export interface SwapV2Args {
    amount: BN;
    otherAmountThreshold: BN;
    sqrtPriceLimitX64: BN;
    isBaseInput: boolean;
}
export interface SwapV2Accounts {
    payer: TransactionSigner;
    ammConfig: Address;
    poolState: Address;
    inputTokenAccount: Address;
    outputTokenAccount: Address;
    inputVault: Address;
    outputVault: Address;
    observationState: Address;
    tokenProgram: Address;
    tokenProgram2022: Address;
    memoProgram: Address;
    inputVaultMint: Address;
    outputVaultMint: Address;
}
export declare const layout: import("buffer-layout").Layout<unknown>;
export declare function swapV2(args: SwapV2Args, accounts: SwapV2Accounts, programAddress?: Address): IInstruction;
//# sourceMappingURL=swapV2.d.ts.map