// SPDX-License-Identifier: MIT pragma solidity ^0.8.19; /** * @title ISwapRouter - Uniswap V3 SwapRouter Interface * @notice Minimal interface for Uniswap V3 SwapRouter * @dev Matches the legacy Uniswap V3 SwapRouter exactInputSingle / exactInput ABI. */ interface ISwapRouter { struct ExactInputSingleParams { address tokenIn; address tokenOut; uint24 fee; address recipient; uint256 deadline; uint256 amountIn; uint256 amountOutMinimum; uint160 sqrtPriceLimitX96; } struct ExactInputParams { bytes path; address recipient; uint256 deadline; uint256 amountIn; uint256 amountOutMinimum; } function exactInputSingle(ExactInputSingleParams calldata params) external payable returns (uint256 amountOut); function exactInput(ExactInputParams calldata params) external payable returns (uint256 amountOut); }