Expand description

Generated by the following Solidity interface…

interface ZeroXLiquidityProviderFeature {
    event LiquidityProviderSwap(address inputToken, address outputToken, uint256 inputTokenAmount, uint256 outputTokenAmount, address provider, address recipient);

    constructor(address sandbox_);

    function FEATURE_NAME() external view returns (string memory);
    function FEATURE_VERSION() external view returns (uint256);
    function migrate() external returns (bytes4 success);
    function sandbox() external view returns (address);
    function sellToLiquidityProvider(address inputToken, address outputToken, address provider, address recipient, uint256 sellAmount, uint256 minBuyAmount, bytes memory auxiliaryData) external payable returns (uint256 boughtAmount);
}

…which was generated by the following JSON ABI:

[
  {
    "type": "constructor",
    "inputs": [
      {
        "name": "sandbox_",
        "type": "address",
        "internalType": "contract LiquidityProviderSandbox"
      }
    ],
    "stateMutability": "nonpayable"
  },
  {
    "type": "function",
    "name": "FEATURE_NAME",
    "inputs": [],
    "outputs": [
      {
        "name": "",
        "type": "string",
        "internalType": "string"
      }
    ],
    "stateMutability": "view"
  },
  {
    "type": "function",
    "name": "FEATURE_VERSION",
    "inputs": [],
    "outputs": [
      {
        "name": "",
        "type": "uint256",
        "internalType": "uint256"
      }
    ],
    "stateMutability": "view"
  },
  {
    "type": "function",
    "name": "migrate",
    "inputs": [],
    "outputs": [
      {
        "name": "success",
        "type": "bytes4",
        "internalType": "bytes4"
      }
    ],
    "stateMutability": "nonpayable"
  },
  {
    "type": "function",
    "name": "sandbox",
    "inputs": [],
    "outputs": [
      {
        "name": "",
        "type": "address",
        "internalType": "contract ILiquidityProviderSandbox"
      }
    ],
    "stateMutability": "view"
  },
  {
    "type": "function",
    "name": "sellToLiquidityProvider",
    "inputs": [
      {
        "name": "inputToken",
        "type": "address",
        "internalType": "contract IERC20Token"
      },
      {
        "name": "outputToken",
        "type": "address",
        "internalType": "contract IERC20Token"
      },
      {
        "name": "provider",
        "type": "address",
        "internalType": "contract ILiquidityProvider"
      },
      {
        "name": "recipient",
        "type": "address",
        "internalType": "address"
      },
      {
        "name": "sellAmount",
        "type": "uint256",
        "internalType": "uint256"
      },
      {
        "name": "minBuyAmount",
        "type": "uint256",
        "internalType": "uint256"
      },
      {
        "name": "auxiliaryData",
        "type": "bytes",
        "internalType": "bytes"
      }
    ],
    "outputs": [
      {
        "name": "boughtAmount",
        "type": "uint256",
        "internalType": "uint256"
      }
    ],
    "stateMutability": "payable"
  },
  {
    "type": "event",
    "name": "LiquidityProviderSwap",
    "inputs": [
      {
        "name": "inputToken",
        "type": "address",
        "indexed": false,
        "internalType": "contract IERC20Token"
      },
      {
        "name": "outputToken",
        "type": "address",
        "indexed": false,
        "internalType": "contract IERC20Token"
      },
      {
        "name": "inputTokenAmount",
        "type": "uint256",
        "indexed": false,
        "internalType": "uint256"
      },
      {
        "name": "outputTokenAmount",
        "type": "uint256",
        "indexed": false,
        "internalType": "uint256"
      },
      {
        "name": "provider",
        "type": "address",
        "indexed": false,
        "internalType": "contract ILiquidityProvider"
      },
      {
        "name": "recipient",
        "type": "address",
        "indexed": false,
        "internalType": "address"
      }
    ],
    "anonymous": false
  }
]

Structs§

Enums§