ABI's

IQuoterV2

[
    {
        "type": "function",
        "name": "quoteExactInput",
        "inputs": [
            {
                "name": "path",
                "type": "bytes",
                "internalType": "bytes"
            },
            {
                "name": "amountIn",
                "type": "uint256",
                "internalType": "uint256"
            }
        ],
        "outputs": [
            {
                "name": "amountOut",
                "type": "uint256",
                "internalType": "uint256"
            },
            {
                "name": "sqrtPriceX96AfterList",
                "type": "uint160[]",
                "internalType": "uint160[]"
            },
            {
                "name": "initializedTicksCrossedList",
                "type": "uint32[]",
                "internalType": "uint32[]"
            },
            {
                "name": "gasEstimate",
                "type": "uint256",
                "internalType": "uint256"
            }
        ],
        "stateMutability": "nonpayable"
    }
]

ISwapRouter

[
    {
        "type": "function",
        "name": "exactInput",
        "inputs": [
            {
                "name": "params",
                "type": "tuple",
                "internalType": "struct ISwapRouter.ExactInputParams",
                "components": [
                    {
                        "name": "path",
                        "type": "bytes",
                        "internalType": "bytes"
                    },
                    {
                        "name": "recipient",
                        "type": "address",
                        "internalType": "address"
                    },
                    {
                        "name": "deadline",
                        "type": "uint256",
                        "internalType": "uint256"
                    },
                    {
                        "name": "amountIn",
                        "type": "uint256",
                        "internalType": "uint256"
                    },
                    {
                        "name": "amountOutMinimum",
                        "type": "uint256",
                        "internalType": "uint256"
                    }
                ]
            }
        ],
        "outputs": [
            {
                "name": "amountOut",
                "type": "uint256",
                "internalType": "uint256"
            }
        ],
        "stateMutability": "payable"
    }
]

IUniswapV3Factory

[
    {
        "type": "function",
        "name": "createPool",
        "inputs": [
            {
                "name": "tokenA",
                "type": "address",
                "internalType": "address"
            },
            {
                "name": "tokenB",
                "type": "address",
                "internalType": "address"
            },
            {
                "name": "fee",
                "type": "uint24",
                "internalType": "uint24"
            }
        ],
        "outputs": [
            {
                "name": "pool",
                "type": "address",
                "internalType": "address"
            }
        ],
        "stateMutability": "nonpayable"
    }
]

IUniswapV3Pool

[
    {
        "type": "function",
        "name": "burn",
        "inputs": [
            {
                "name": "tickLower",
                "type": "int24",
                "internalType": "int24"
            },
            {
                "name": "tickUpper",
                "type": "int24",
                "internalType": "int24"
            },
            {
                "name": "amount",
                "type": "uint128",
                "internalType": "uint128"
            }
        ],
        "outputs": [
            {
                "name": "amount0",
                "type": "uint256",
                "internalType": "uint256"
            },
            {
                "name": "amount1",
                "type": "uint256",
                "internalType": "uint256"
            }
        ],
        "stateMutability": "nonpayable"
    }
]