import BN from "bn.js";
import * as types from "../types";
export interface LiquidityOneSideParameterFields {
    /** Amount of X token or Y token to deposit */
    amount: BN;
    /** Active bin that integrator observe off-chain */
    activeId: number;
    /** max active bin slippage allowed */
    maxActiveBinSlippage: number;
    /** Liquidity distribution to each bins */
    binLiquidityDist: Array<types.BinLiquidityDistributionByWeightFields>;
}
export interface LiquidityOneSideParameterJSON {
    /** Amount of X token or Y token to deposit */
    amount: string;
    /** Active bin that integrator observe off-chain */
    activeId: number;
    /** max active bin slippage allowed */
    maxActiveBinSlippage: number;
    /** Liquidity distribution to each bins */
    binLiquidityDist: Array<types.BinLiquidityDistributionByWeightJSON>;
}
export declare class LiquidityOneSideParameter {
    /** Amount of X token or Y token to deposit */
    readonly amount: BN;
    /** Active bin that integrator observe off-chain */
    readonly activeId: number;
    /** max active bin slippage allowed */
    readonly maxActiveBinSlippage: number;
    /** Liquidity distribution to each bins */
    readonly binLiquidityDist: Array<types.BinLiquidityDistributionByWeight>;
    constructor(fields: LiquidityOneSideParameterFields);
    static layout(property?: string): any;
    static fromDecoded(obj: any): types.LiquidityOneSideParameter;
    static toEncodable(fields: LiquidityOneSideParameterFields): {
        amount: BN;
        activeId: number;
        maxActiveBinSlippage: number;
        binLiquidityDist: {
            binId: number;
            weight: number;
        }[];
    };
    toJSON(): LiquidityOneSideParameterJSON;
    static fromJSON(obj: LiquidityOneSideParameterJSON): LiquidityOneSideParameter;
    toEncodable(): {
        amount: BN;
        activeId: number;
        maxActiveBinSlippage: number;
        binLiquidityDist: {
            binId: number;
            weight: number;
        }[];
    };
}
//# sourceMappingURL=LiquidityOneSideParameter.d.ts.map