import { HyperionSDK } from '..';
export interface AddLiquidityTransactionPayloadArgs {
    positionId: string;
    currencyA: string;
    currencyB: string;
    currencyAAmount: number | string;
    currencyBAmount: number | string;
    slippage: number | string;
    feeTierIndex: number | string;
}
export interface RemoveLiquidityTransactionPayloadArgs {
    positionId: string;
    currencyA: string;
    currencyB: string;
    currencyAAmount: number | string;
    currencyBAmount: number | string;
    deltaLiquidity: number | string;
    slippage: number | string;
    recipient: string;
}
export declare class Position {
    protected _sdk: HyperionSDK;
    constructor(sdk: HyperionSDK);
    fetchAllPositionsByAddress({ address }: {
        address: string;
    }): Promise<any>;
    fetchPositionById(args: {
        positionId: string;
        address: string;
    }): Promise<any>;
    /**
     * Fetch the history of Fee Reward claim
     *
     * @param args
     * @returns
     */
    fetchFeeHistory(args: {
        positionId: string;
        address: string;
    }): Promise<any>;
    /**
     * Adds liquidity to a liquidity pool
     *
     * This method is used to add liquidity to a liquidity pool.
     */
    addLiquidityTransactionPayload(args: AddLiquidityTransactionPayloadArgs): Promise<any>;
    /**
     * Removes liquidity from a liquidity pool
     *
     * This method is used to remove liquidity from a liquidity pool.
     */
    removeLiquidityTransactionPayload(args: RemoveLiquidityTransactionPayloadArgs): any;
    claimFeeTransactionPayload({ positionId, recipient, }: {
        positionId: string;
        recipient: string;
    }): {
        function: string;
        typeArguments: never[];
        functionArguments: (string | string[])[];
    };
    claimRewardTransactionPayload({ positionId, recipient, }: {
        positionId: string;
        recipient: string;
    }): {
        function: string;
        typeArguments: never[];
        functionArguments: string[];
    };
    claimAllRewardsTransactionPayload({ positionId, recipient, }: {
        positionId: string;
        recipient: string;
    }): {
        function: string;
        typeArguments: never[];
        functionArguments: (string | string[])[];
    };
    /**
     *
     * @param positionId
     *
     * @returns [currencyAAmount, currencyBAmount]
     */
    fetchTokensAmountByPositionId({ positionId }: {
        positionId: string;
    }): Promise<any>;
}
//# sourceMappingURL=positionModule.d.ts.map