ISwapRouter

Functions for swapping tokens via Uniswap V3

Parameter Structs

Note that fee is in hundredths of basis points (e.g. the fee for a pool at the 0.3% tier is 3000; the fee for a pool at the 0.01% tier is 100).

ExactInputSingleParams

    struct ExactInputSingleParams {
        address tokenIn;
        address tokenOut;
        uint24 fee;
        address recipient;
        uint256 deadline;
        uint256 amountIn;
        uint256 amountOutMinimum;
        uint160 sqrtPriceLimitX96;
    }

ExactInputParams

   struct ExactInputParams {
        bytes path;
        address recipient;
        uint256 deadline;
        uint256 amountIn;
        uint256 amountOutMinimum;
    }

ExactOutputSingleParams

    struct ExactOutputSingleParams {
        address tokenIn;
        address tokenOut;
        uint24 fee;
        address recipient;
        uint256 deadline;
        uint256 amountOut;
        uint256 amountInMaximum;
        uint160 sqrtPriceLimitX96;
    }

ExactOutputParams

    struct ExactOutputParams {
        bytes path;
        address recipient;
        uint256 deadline;
        uint256 amountOut;
        uint256 amountInMaximum;
    }

Functions

exactInputSingle

  function exactInputSingle(
    struct ISwapRouter.ExactInputSingleParams params
  ) external returns (uint256 amountOut)

Swaps amountIn of one token for as much as possible of another token

Parameters:

NameTypeDescription

params

struct ISwapRouter.ExactInputSingleParams

The parameters necessary for the swap, encoded as ExactInputSingleParams in calldata

Return Values:

NameTypeDescription

amountOut

struct ISwapRouter.ExactInputSingleParams

The amount of the received token

exactInput

  function exactInput(
    struct ISwapRouter.ExactInputParams params
  ) external returns (uint256 amountOut)

Swaps amountIn of one token for as much as possible of another along the specified path

Parameters:

NameTypeDescription

params

struct ISwapRouter.ExactInputParams

The parameters necessary for the multi-hop swap, encoded as ExactInputParams in calldata

Return Values:

NameTypeDescription

amountOut

struct ISwapRouter.ExactInputParams

The amount of the received token

exactOutputSingle

  function exactOutputSingle(
    struct ISwapRouter.ExactOutputSingleParams params
  ) external returns (uint256 amountIn)

Swaps as little as possible of one token for amountOut of another token

Parameters:

NameTypeDescription

params

struct ISwapRouter.ExactOutputSingleParams

The parameters necessary for the swap, encoded as ExactOutputSingleParams in calldata

Return Values:

NameTypeDescription

amountIn

struct ISwapRouter.ExactOutputSingleParams

The amount of the input token

exactOutput

  function exactOutput(
    struct ISwapRouter.ExactOutputParams params
  ) external returns (uint256 amountIn)

Swaps as little as possible of one token for amountOut of another along the specified path (reversed)

Parameters:

NameTypeDescription

params

struct ISwapRouter.ExactOutputParams

The parameters necessary for the multi-hop swap, encoded as ExactOutputParams in calldata

Return Values:

NameTypeDescription

amountIn

struct ISwapRouter.ExactOutputParams

The amount of the input token

Last updated