"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.swap = exports.redemptionStrategiesByTokens = exports.redemptionStrategiesByName = exports.pairsStrategiesMatch = exports.owner = exports.getSlippage = exports.getRedemptionStrategy = exports.getRedemptionStrategies = exports.getInputTokensByOutputToken = exports.getAllRedemptionStrategies = exports.getAllPairsStrategies = exports.defaultOutputToken = exports.amountOutAndSlippageOfSwap = exports._setRedemptionStrategy = exports._setRedemptionStrategies = exports._setDefaultOutputToken = exports._resetRedemptionStrategies = exports._removeRedemptionStrategy = void 0;
/**
 * Autogenerated file. Do not edit manually. */
exports._removeRedemptionStrategy = { inputs: [{ internalType: "contract IRedemptionStrategy", name: "strategyToRemove", type: "address" }], name: "_removeRedemptionStrategy", outputs: [], stateMutability: "nonpayable", type: "function" };
exports._resetRedemptionStrategies = { inputs: [{ internalType: "contract IRedemptionStrategy[]", name: "strategies", type: "address[]" }, { internalType: "contract IERC20Upgradeable[]", name: "inputTokens", type: "address[]" }, { internalType: "contract IERC20Upgradeable[]", name: "outputTokens", type: "address[]" }], name: "_resetRedemptionStrategies", outputs: [], stateMutability: "nonpayable", type: "function" };
exports._setDefaultOutputToken = { inputs: [{ internalType: "contract IERC20Upgradeable", name: "inputToken", type: "address" }, { internalType: "contract IERC20Upgradeable", name: "outputToken", type: "address" }], name: "_setDefaultOutputToken", outputs: [], stateMutability: "nonpayable", type: "function" };
exports._setRedemptionStrategies = { inputs: [{ internalType: "contract IRedemptionStrategy[]", name: "strategies", type: "address[]" }, { internalType: "contract IERC20Upgradeable[]", name: "inputTokens", type: "address[]" }, { internalType: "contract IERC20Upgradeable[]", name: "outputTokens", type: "address[]" }], name: "_setRedemptionStrategies", outputs: [], stateMutability: "nonpayable", type: "function" };
exports._setRedemptionStrategy = { inputs: [{ internalType: "contract IRedemptionStrategy", name: "strategy", type: "address" }, { internalType: "contract IERC20Upgradeable", name: "inputToken", type: "address" }, { internalType: "contract IERC20Upgradeable", name: "outputToken", type: "address" }], name: "_setRedemptionStrategy", outputs: [], stateMutability: "nonpayable", type: "function" };
exports.amountOutAndSlippageOfSwap = { inputs: [{ internalType: "contract IERC20Upgradeable", name: "inputToken", type: "address" }, { internalType: "uint256", name: "inputAmount", type: "uint256" }, { internalType: "contract IERC20Upgradeable", name: "outputToken", type: "address" }], name: "amountOutAndSlippageOfSwap", outputs: [{ internalType: "uint256", name: "outputAmount", type: "uint256" }, { internalType: "uint256", name: "slippage", type: "uint256" }], stateMutability: "nonpayable", type: "function" };
exports.defaultOutputToken = { inputs: [{ internalType: "contract IERC20Upgradeable", name: "inputToken", type: "address" }], name: "defaultOutputToken", outputs: [{ internalType: "contract IERC20Upgradeable", name: "", type: "address" }], stateMutability: "view", type: "function" };
exports.getAllPairsStrategies = { inputs: [], name: "getAllPairsStrategies", outputs: [{ internalType: "contract IRedemptionStrategy[]", name: "strategies", type: "address[]" }, { internalType: "contract IERC20Upgradeable[]", name: "inputTokens", type: "address[]" }, { internalType: "contract IERC20Upgradeable[]", name: "outputTokens", type: "address[]" }], stateMutability: "view", type: "function" };
exports.getAllRedemptionStrategies = { inputs: [], name: "getAllRedemptionStrategies", outputs: [{ internalType: "address[]", name: "", type: "address[]" }], stateMutability: "view", type: "function" };
exports.getInputTokensByOutputToken = { inputs: [{ internalType: "contract IERC20Upgradeable", name: "outputToken", type: "address" }], name: "getInputTokensByOutputToken", outputs: [{ internalType: "address[]", name: "", type: "address[]" }], stateMutability: "view", type: "function" };
exports.getRedemptionStrategies = { inputs: [{ internalType: "contract IERC20Upgradeable", name: "inputToken", type: "address" }, { internalType: "contract IERC20Upgradeable", name: "outputToken", type: "address" }], name: "getRedemptionStrategies", outputs: [{ internalType: "contract IRedemptionStrategy[]", name: "strategies", type: "address[]" }, { internalType: "bytes[]", name: "strategiesData", type: "bytes[]" }], stateMutability: "view", type: "function" };
exports.getRedemptionStrategy = { inputs: [{ internalType: "contract IERC20Upgradeable", name: "inputToken", type: "address" }, { internalType: "contract IERC20Upgradeable", name: "outputToken", type: "address" }], name: "getRedemptionStrategy", outputs: [{ internalType: "contract IRedemptionStrategy", name: "strategy", type: "address" }, { internalType: "bytes", name: "strategyData", type: "bytes" }], stateMutability: "view", type: "function" };
exports.getSlippage = { inputs: [{ internalType: "contract IERC20Upgradeable", name: "inputToken", type: "address" }, { internalType: "contract IERC20Upgradeable", name: "outputToken", type: "address" }], name: "getSlippage", outputs: [{ internalType: "uint256", name: "slippage", type: "uint256" }], stateMutability: "view", type: "function" };
exports.owner = { inputs: [], name: "owner", outputs: [{ internalType: "address", name: "", type: "address" }], stateMutability: "view", type: "function" };
exports.pairsStrategiesMatch = { inputs: [{ internalType: "contract IRedemptionStrategy[]", name: "configStrategies", type: "address[]" }, { internalType: "contract IERC20Upgradeable[]", name: "configInputTokens", type: "address[]" }, { internalType: "contract IERC20Upgradeable[]", name: "configOutputTokens", type: "address[]" }], name: "pairsStrategiesMatch", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "view", type: "function" };
exports.redemptionStrategiesByName = { inputs: [{ internalType: "string", name: "name", type: "string" }], name: "redemptionStrategiesByName", outputs: [{ internalType: "contract IRedemptionStrategy", name: "", type: "address" }], stateMutability: "view", type: "function" };
exports.redemptionStrategiesByTokens = { inputs: [{ internalType: "contract IERC20Upgradeable", name: "inputToken", type: "address" }, { internalType: "contract IERC20Upgradeable", name: "outputToken", type: "address" }], name: "redemptionStrategiesByTokens", outputs: [{ internalType: "contract IRedemptionStrategy", name: "", type: "address" }], stateMutability: "view", type: "function" };
exports.swap = { inputs: [{ internalType: "contract IERC20Upgradeable", name: "inputToken", type: "address" }, { internalType: "uint256", name: "inputAmount", type: "uint256" }, { internalType: "contract IERC20Upgradeable", name: "outputToken", type: "address" }], name: "swap", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "nonpayable", type: "function" };
exports.default = [exports._removeRedemptionStrategy, exports._resetRedemptionStrategies, exports._setDefaultOutputToken, exports._setRedemptionStrategies, exports._setRedemptionStrategy, exports.amountOutAndSlippageOfSwap, exports.defaultOutputToken, exports.getAllPairsStrategies, exports.getAllRedemptionStrategies, exports.getInputTokensByOutputToken, exports.getRedemptionStrategies, exports.getRedemptionStrategy, exports.getSlippage, exports.owner, exports.pairsStrategiesMatch, exports.redemptionStrategiesByName, exports.redemptionStrategiesByTokens, exports.swap];
