ISwapRouter
Functions for swapping tokens via Uniswap V3
#
Parameter Structs#
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:Name | Type | Description |
---|---|---|
params | struct ISwapRouter.ExactInputSingleParams | The parameters necessary for the swap, encoded as ExactInputSingleParams in calldata |
#
Return Values:Name | Type | Description |
---|---|---|
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:Name | Type | Description |
---|---|---|
params | struct ISwapRouter.ExactInputParams | The parameters necessary for the multi-hop swap, encoded as ExactInputParams in calldata |
#
Return Values:Name | Type | Description |
---|---|---|
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:Name | Type | Description |
---|---|---|
params | struct ISwapRouter.ExactOutputSingleParams | The parameters necessary for the swap, encoded as ExactOutputSingleParams in calldata |
#
Return Values:Name | Type | Description |
---|---|---|
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:Name | Type | Description |
---|---|---|
params | struct ISwapRouter.ExactOutputParams | The parameters necessary for the multi-hop swap, encoded as ExactOutputParams in calldata |
#
Return Values:Name | Type | Description |
---|---|---|
amountIn | struct ISwapRouter.ExactOutputParams | The amount of the input token |