text: "use strict";
  /* Autogenerated file. Do not edit manually. */
  /* tslint:disable */
  /* eslint-disable */
  exports.__esModule = true;
  var ethers_1 = require("ethers");
  {
      IBasePool, IBasePoolInterface;
  }
  from;
  "../IBasePool";
  var _abi = [
      {
          inputs: [
              {
                  internalType: "bytes32",
                  name: "poolId",
                  type: "bytes32"
              },
              {
                  internalType: "address",
                  name: "sender",
                  type: "address"
              },
              {
                  internalType: "address",
                  name: "recipient",
                  type: "address"
              },
              {
                  internalType: "uint256[]",
                  name: "balances",
                  type: "uint256[]"
              },
              {
                  internalType: "uint256",
                  name: "lastChangeBlock",
                  type: "uint256"
              },
              {
                  internalType: "uint256",
                  name: "protocolSwapFeePercentage",
                  type: "uint256"
              },
              {
                  internalType: "bytes",
                  name: "userData",
                  type: "bytes"
              },
          ],
          name: "onExitPool",
          outputs: [
              {
                  internalType: "uint256[]",
                  name: "amountsOut",
                  type: "uint256[]"
              },
              {
                  internalType: "uint256[]",
                  name: "dueProtocolFeeAmounts",
                  type: "uint256[]"
              },
          ],
          stateMutability: "nonpayable",
          type: "function"
      },
      {
          inputs: [
              {
                  internalType: "bytes32",
                  name: "poolId",
                  type: "bytes32"
              },
              {
                  internalType: "address",
                  name: "sender",
                  type: "address"
              },
              {
                  internalType: "address",
                  name: "recipient",
                  type: "address"
              },
              {
                  internalType: "uint256[]",
                  name: "balances",
                  type: "uint256[]"
              },
              {
                  internalType: "uint256",
                  name: "lastChangeBlock",
                  type: "uint256"
              },
              {
                  internalType: "uint256",
                  name: "protocolSwapFeePercentage",
                  type: "uint256"
              },
              {
                  internalType: "bytes",
                  name: "userData",
                  type: "bytes"
              },
          ],
          name: "onJoinPool",
          outputs: [
              {
                  internalType: "uint256[]",
                  name: "amountsIn",
                  type: "uint256[]"
              },
              {
                  internalType: "uint256[]",
                  name: "dueProtocolFeeAmounts",
                  type: "uint256[]"
              },
          ],
          stateMutability: "nonpayable",
          type: "function"
      },
  ];
  var IBasePool__factory = (function () {
      function IBasePool__factory() {
      }
      IBasePool__factory.createInterface = function () {
          return new ethers_1.utils.Interface(_abi);
      };
      IBasePool__factory.connect = function (address, signerOrProvider) {
          return new ethers_1.Contract(address, _abi, signerOrProvider);
      };
      IBasePool__factory.abi = _abi;
      return IBasePool__factory;
  }());
  exports.IBasePool__factory = IBasePool__factory;
  