/**
 * Autogenerated file. Do not edit manually. */
export declare const Initialized: {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: false;
        readonly internalType: "uint8";
        readonly name: "version";
        readonly type: "uint8";
    }];
    readonly name: "Initialized";
    readonly type: "event";
};
export declare const OwnershipTransferred: {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "previousOwner";
        readonly type: "address";
    }, {
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "newOwner";
        readonly type: "address";
    }];
    readonly name: "OwnershipTransferred";
    readonly type: "event";
};
export declare const UNISWAP_V2_ROUTER_02: {
    readonly inputs: readonly [];
    readonly name: "UNISWAP_V2_ROUTER_02";
    readonly outputs: readonly [{
        readonly internalType: "contract IUniswapV2Router02";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
};
export declare const W_NATIVE_ADDRESS: {
    readonly inputs: readonly [];
    readonly name: "W_NATIVE_ADDRESS";
    readonly outputs: readonly [{
        readonly internalType: "address";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
};
export declare const _becomeImplementation: {
    readonly inputs: readonly [{
        readonly internalType: "bytes";
        readonly name: "data";
        readonly type: "bytes";
    }];
    readonly name: "_becomeImplementation";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const _whitelistRedemptionStrategies: {
    readonly inputs: readonly [{
        readonly internalType: "contract IRedemptionStrategy[]";
        readonly name: "strategies";
        readonly type: "address[]";
    }, {
        readonly internalType: "bool[]";
        readonly name: "whitelisted";
        readonly type: "bool[]";
    }];
    readonly name: "_whitelistRedemptionStrategies";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const _whitelistRedemptionStrategy: {
    readonly inputs: readonly [{
        readonly internalType: "contract IRedemptionStrategy";
        readonly name: "strategy";
        readonly type: "address";
    }, {
        readonly internalType: "bool";
        readonly name: "whitelisted";
        readonly type: "bool";
    }];
    readonly name: "_whitelistRedemptionStrategy";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const convertCustomFunds: {
    readonly inputs: readonly [{
        readonly internalType: "contract IERC20Upgradeable";
        readonly name: "inputToken";
        readonly type: "address";
    }, {
        readonly internalType: "uint256";
        readonly name: "inputAmount";
        readonly type: "uint256";
    }, {
        readonly internalType: "contract IFundsConversionStrategy";
        readonly name: "strategy";
        readonly type: "address";
    }, {
        readonly internalType: "bytes";
        readonly name: "strategyData";
        readonly type: "bytes";
    }];
    readonly name: "convertCustomFunds";
    readonly outputs: readonly [{
        readonly internalType: "contract IERC20Upgradeable";
        readonly name: "";
        readonly type: "address";
    }, {
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const flashSwapFee: {
    readonly inputs: readonly [];
    readonly name: "flashSwapFee";
    readonly outputs: readonly [{
        readonly internalType: "uint8";
        readonly name: "";
        readonly type: "uint8";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
};
export declare const initialize: {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "_wtoken";
        readonly type: "address";
    }, {
        readonly internalType: "address";
        readonly name: "_uniswapV2router";
        readonly type: "address";
    }, {
        readonly internalType: "uint8";
        readonly name: "_flashSwapFee";
        readonly type: "uint8";
    }];
    readonly name: "initialize";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const moraswapCall: {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "sender";
        readonly type: "address";
    }, {
        readonly internalType: "uint256";
        readonly name: "amount0";
        readonly type: "uint256";
    }, {
        readonly internalType: "uint256";
        readonly name: "amount1";
        readonly type: "uint256";
    }, {
        readonly internalType: "bytes";
        readonly name: "data";
        readonly type: "bytes";
    }];
    readonly name: "moraswapCall";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const owner: {
    readonly inputs: readonly [];
    readonly name: "owner";
    readonly outputs: readonly [{
        readonly internalType: "address";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
};
export declare const pancakeCall: {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "sender";
        readonly type: "address";
    }, {
        readonly internalType: "uint256";
        readonly name: "amount0";
        readonly type: "uint256";
    }, {
        readonly internalType: "uint256";
        readonly name: "amount1";
        readonly type: "uint256";
    }, {
        readonly internalType: "bytes";
        readonly name: "data";
        readonly type: "bytes";
    }];
    readonly name: "pancakeCall";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const redeemCustomCollateral: {
    readonly inputs: readonly [{
        readonly internalType: "contract IERC20Upgradeable";
        readonly name: "underlyingCollateral";
        readonly type: "address";
    }, {
        readonly internalType: "uint256";
        readonly name: "underlyingCollateralSeized";
        readonly type: "uint256";
    }, {
        readonly internalType: "contract IRedemptionStrategy";
        readonly name: "strategy";
        readonly type: "address";
    }, {
        readonly internalType: "bytes";
        readonly name: "strategyData";
        readonly type: "bytes";
    }];
    readonly name: "redeemCustomCollateral";
    readonly outputs: readonly [{
        readonly internalType: "contract IERC20Upgradeable";
        readonly name: "";
        readonly type: "address";
    }, {
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const redemptionStrategiesWhitelist: {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "";
        readonly type: "address";
    }];
    readonly name: "redemptionStrategiesWhitelist";
    readonly outputs: readonly [{
        readonly internalType: "bool";
        readonly name: "";
        readonly type: "bool";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
};
export declare const renounceOwnership: {
    readonly inputs: readonly [];
    readonly name: "renounceOwnership";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const safeLiquidate: {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "borrower";
        readonly type: "address";
    }, {
        readonly internalType: "uint256";
        readonly name: "repayAmount";
        readonly type: "uint256";
    }, {
        readonly internalType: "contract ICErc20";
        readonly name: "cErc20";
        readonly type: "address";
    }, {
        readonly internalType: "contract ICErc20";
        readonly name: "cTokenCollateral";
        readonly type: "address";
    }, {
        readonly internalType: "uint256";
        readonly name: "minOutputAmount";
        readonly type: "uint256";
    }];
    readonly name: "safeLiquidate";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const safeLiquidateToTokensWithFlashLoan: {
    readonly inputs: readonly [{
        readonly components: readonly [{
            readonly internalType: "address";
            readonly name: "borrower";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "repayAmount";
            readonly type: "uint256";
        }, {
            readonly internalType: "contract ICErc20";
            readonly name: "cErc20";
            readonly type: "address";
        }, {
            readonly internalType: "contract ICErc20";
            readonly name: "cTokenCollateral";
            readonly type: "address";
        }, {
            readonly internalType: "contract IUniswapV2Pair";
            readonly name: "flashSwapPair";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "minProfitAmount";
            readonly type: "uint256";
        }, {
            readonly internalType: "contract IUniswapV2Router02";
            readonly name: "uniswapV2RouterForBorrow";
            readonly type: "address";
        }, {
            readonly internalType: "contract IUniswapV2Router02";
            readonly name: "uniswapV2RouterForCollateral";
            readonly type: "address";
        }, {
            readonly internalType: "contract IRedemptionStrategy[]";
            readonly name: "redemptionStrategies";
            readonly type: "address[]";
        }, {
            readonly internalType: "bytes[]";
            readonly name: "strategyData";
            readonly type: "bytes[]";
        }, {
            readonly internalType: "contract IFundsConversionStrategy[]";
            readonly name: "debtFundingStrategies";
            readonly type: "address[]";
        }, {
            readonly internalType: "bytes[]";
            readonly name: "debtFundingStrategiesData";
            readonly type: "bytes[]";
        }];
        readonly internalType: "struct IonicLiquidator.LiquidateToTokensWithFlashSwapVars";
        readonly name: "vars";
        readonly type: "tuple";
    }];
    readonly name: "safeLiquidateToTokensWithFlashLoan";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const transferOwnership: {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "newOwner";
        readonly type: "address";
    }];
    readonly name: "transferOwnership";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const uniswapV2Call: {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "";
        readonly type: "address";
    }, {
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }, {
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }, {
        readonly internalType: "bytes";
        readonly name: "data";
        readonly type: "bytes";
    }];
    readonly name: "uniswapV2Call";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
declare const _default: readonly [{
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: false;
        readonly internalType: "uint8";
        readonly name: "version";
        readonly type: "uint8";
    }];
    readonly name: "Initialized";
    readonly type: "event";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "previousOwner";
        readonly type: "address";
    }, {
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "newOwner";
        readonly type: "address";
    }];
    readonly name: "OwnershipTransferred";
    readonly type: "event";
}, {
    readonly inputs: readonly [];
    readonly name: "UNISWAP_V2_ROUTER_02";
    readonly outputs: readonly [{
        readonly internalType: "contract IUniswapV2Router02";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "W_NATIVE_ADDRESS";
    readonly outputs: readonly [{
        readonly internalType: "address";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "bytes";
        readonly name: "data";
        readonly type: "bytes";
    }];
    readonly name: "_becomeImplementation";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "contract IRedemptionStrategy[]";
        readonly name: "strategies";
        readonly type: "address[]";
    }, {
        readonly internalType: "bool[]";
        readonly name: "whitelisted";
        readonly type: "bool[]";
    }];
    readonly name: "_whitelistRedemptionStrategies";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "contract IRedemptionStrategy";
        readonly name: "strategy";
        readonly type: "address";
    }, {
        readonly internalType: "bool";
        readonly name: "whitelisted";
        readonly type: "bool";
    }];
    readonly name: "_whitelistRedemptionStrategy";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "contract IERC20Upgradeable";
        readonly name: "inputToken";
        readonly type: "address";
    }, {
        readonly internalType: "uint256";
        readonly name: "inputAmount";
        readonly type: "uint256";
    }, {
        readonly internalType: "contract IFundsConversionStrategy";
        readonly name: "strategy";
        readonly type: "address";
    }, {
        readonly internalType: "bytes";
        readonly name: "strategyData";
        readonly type: "bytes";
    }];
    readonly name: "convertCustomFunds";
    readonly outputs: readonly [{
        readonly internalType: "contract IERC20Upgradeable";
        readonly name: "";
        readonly type: "address";
    }, {
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "flashSwapFee";
    readonly outputs: readonly [{
        readonly internalType: "uint8";
        readonly name: "";
        readonly type: "uint8";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "_wtoken";
        readonly type: "address";
    }, {
        readonly internalType: "address";
        readonly name: "_uniswapV2router";
        readonly type: "address";
    }, {
        readonly internalType: "uint8";
        readonly name: "_flashSwapFee";
        readonly type: "uint8";
    }];
    readonly name: "initialize";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "sender";
        readonly type: "address";
    }, {
        readonly internalType: "uint256";
        readonly name: "amount0";
        readonly type: "uint256";
    }, {
        readonly internalType: "uint256";
        readonly name: "amount1";
        readonly type: "uint256";
    }, {
        readonly internalType: "bytes";
        readonly name: "data";
        readonly type: "bytes";
    }];
    readonly name: "moraswapCall";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "owner";
    readonly outputs: readonly [{
        readonly internalType: "address";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "sender";
        readonly type: "address";
    }, {
        readonly internalType: "uint256";
        readonly name: "amount0";
        readonly type: "uint256";
    }, {
        readonly internalType: "uint256";
        readonly name: "amount1";
        readonly type: "uint256";
    }, {
        readonly internalType: "bytes";
        readonly name: "data";
        readonly type: "bytes";
    }];
    readonly name: "pancakeCall";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "contract IERC20Upgradeable";
        readonly name: "underlyingCollateral";
        readonly type: "address";
    }, {
        readonly internalType: "uint256";
        readonly name: "underlyingCollateralSeized";
        readonly type: "uint256";
    }, {
        readonly internalType: "contract IRedemptionStrategy";
        readonly name: "strategy";
        readonly type: "address";
    }, {
        readonly internalType: "bytes";
        readonly name: "strategyData";
        readonly type: "bytes";
    }];
    readonly name: "redeemCustomCollateral";
    readonly outputs: readonly [{
        readonly internalType: "contract IERC20Upgradeable";
        readonly name: "";
        readonly type: "address";
    }, {
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "";
        readonly type: "address";
    }];
    readonly name: "redemptionStrategiesWhitelist";
    readonly outputs: readonly [{
        readonly internalType: "bool";
        readonly name: "";
        readonly type: "bool";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "renounceOwnership";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "borrower";
        readonly type: "address";
    }, {
        readonly internalType: "uint256";
        readonly name: "repayAmount";
        readonly type: "uint256";
    }, {
        readonly internalType: "contract ICErc20";
        readonly name: "cErc20";
        readonly type: "address";
    }, {
        readonly internalType: "contract ICErc20";
        readonly name: "cTokenCollateral";
        readonly type: "address";
    }, {
        readonly internalType: "uint256";
        readonly name: "minOutputAmount";
        readonly type: "uint256";
    }];
    readonly name: "safeLiquidate";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly components: readonly [{
            readonly internalType: "address";
            readonly name: "borrower";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "repayAmount";
            readonly type: "uint256";
        }, {
            readonly internalType: "contract ICErc20";
            readonly name: "cErc20";
            readonly type: "address";
        }, {
            readonly internalType: "contract ICErc20";
            readonly name: "cTokenCollateral";
            readonly type: "address";
        }, {
            readonly internalType: "contract IUniswapV2Pair";
            readonly name: "flashSwapPair";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "minProfitAmount";
            readonly type: "uint256";
        }, {
            readonly internalType: "contract IUniswapV2Router02";
            readonly name: "uniswapV2RouterForBorrow";
            readonly type: "address";
        }, {
            readonly internalType: "contract IUniswapV2Router02";
            readonly name: "uniswapV2RouterForCollateral";
            readonly type: "address";
        }, {
            readonly internalType: "contract IRedemptionStrategy[]";
            readonly name: "redemptionStrategies";
            readonly type: "address[]";
        }, {
            readonly internalType: "bytes[]";
            readonly name: "strategyData";
            readonly type: "bytes[]";
        }, {
            readonly internalType: "contract IFundsConversionStrategy[]";
            readonly name: "debtFundingStrategies";
            readonly type: "address[]";
        }, {
            readonly internalType: "bytes[]";
            readonly name: "debtFundingStrategiesData";
            readonly type: "bytes[]";
        }];
        readonly internalType: "struct IonicLiquidator.LiquidateToTokensWithFlashSwapVars";
        readonly name: "vars";
        readonly type: "tuple";
    }];
    readonly name: "safeLiquidateToTokensWithFlashLoan";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "newOwner";
        readonly type: "address";
    }];
    readonly name: "transferOwnership";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "";
        readonly type: "address";
    }, {
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }, {
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }, {
        readonly internalType: "bytes";
        readonly name: "data";
        readonly type: "bytes";
    }];
    readonly name: "uniswapV2Call";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}];
export default _default;
