import { Address, IAccountMeta, IInstruction, Option, TransactionSigner } from "@solana/kit";
import * as types from "../types";
export interface RemoveLiquidityArgs {
    binLiquidityRemoval: Array<types.BinLiquidityReductionFields>;
}
export interface RemoveLiquidityAccounts {
    position: Address;
    lbPair: Address;
    binArrayBitmapExtension: Option<Address>;
    userTokenX: Address;
    userTokenY: Address;
    reserveX: Address;
    reserveY: Address;
    tokenXMint: Address;
    tokenYMint: Address;
    binArrayLower: Address;
    binArrayUpper: Address;
    sender: TransactionSigner;
    tokenXProgram: Address;
    tokenYProgram: Address;
    eventAuthority: Address;
    program: Address;
}
export declare const layout: import("buffer-layout").Layout<unknown>;
export declare function removeLiquidity(args: RemoveLiquidityArgs, accounts: RemoveLiquidityAccounts, programAddress?: Address): IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>;
//# sourceMappingURL=removeLiquidity.d.ts.map