60 lines
1.9 KiB
Solidity
60 lines
1.9 KiB
Solidity
// SPDX-License-Identifier: MIT
|
|
pragma solidity =0.8.20;
|
|
|
|
import {IUniswapV2Router01} from "./IUniswapV2Router01.sol";
|
|
|
|
interface IUniswapV2Router is IUniswapV2Router01 {
|
|
// forge-lint: disable-next-line(mixed-case-function)
|
|
function removeLiquidityETHSupportingFeeOnTransferTokens(
|
|
address token,
|
|
uint256 liquidity,
|
|
uint256 amountTokenMin,
|
|
// forge-lint: disable-next-line(mixed-case-variable)
|
|
uint256 amountETHMin,
|
|
address to,
|
|
uint256 deadline
|
|
// forge-lint: disable-next-line(mixed-case-variable)
|
|
) external returns (uint256 amountETH);
|
|
|
|
// forge-lint: disable-next-line(mixed-case-function)
|
|
function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens(
|
|
address token,
|
|
uint256 liquidity,
|
|
uint256 amountTokenMin,
|
|
// forge-lint: disable-next-line(mixed-case-variable)
|
|
uint256 amountETHMin,
|
|
address to,
|
|
uint256 deadline,
|
|
bool approveMax,
|
|
uint8 v,
|
|
bytes32 r,
|
|
bytes32 s
|
|
// forge-lint: disable-next-line(mixed-case-variable)
|
|
) external returns (uint256 amountETH);
|
|
|
|
function swapExactTokensForTokensSupportingFeeOnTransferTokens(
|
|
uint256 amountIn,
|
|
uint256 amountOutMin,
|
|
address[] calldata path,
|
|
address to,
|
|
uint256 deadline
|
|
) external;
|
|
|
|
// forge-lint: disable-next-line(mixed-case-function)
|
|
function swapExactETHForTokensSupportingFeeOnTransferTokens(
|
|
uint256 amountOutMin,
|
|
address[] calldata path,
|
|
address to,
|
|
uint256 deadline
|
|
) external payable;
|
|
|
|
// forge-lint: disable-next-line(mixed-case-function)
|
|
function swapExactTokensForETHSupportingFeeOnTransferTokens(
|
|
uint256 amountIn,
|
|
uint256 amountOutMin,
|
|
address[] calldata path,
|
|
address to,
|
|
uint256 deadline
|
|
) external;
|
|
}
|