Euler Vault Integration
contract EulerTrancheRaiseStrategy is IRaiseStrategy {
/// @notice Converts asset needs to safety module specific raises using a tranching strategy which prioritizes
/// raising the fee share reserve pool prior to the lender share reserve pool.
/// @param originSafetyModule_ The safety module that triggered the raise
/// @param assetNeeds_ The asset needs to be converted to raises
/// @param data_ Encoded reserve pool ids: abi.encode(uint8 feeShareReservePoolId, uint8 lenderShareReservePoolId)
function calculateRaise(ISafetyModule originSafetyModule_, AssetNeed[] memory assetNeeds_, bytes calldata data_)
external
returns (SafetyModuleRaise[] memory);
}contract CozyLiquidatorManager is Ownable, ICozyLiquidatorManager {
/// @notice Deploys a new CozyLiquidator with the provided parameters.
/// @param safetyModule_ The associated SafetyModule.
/// @param eVault_ The associated Euler vault.
/// @param raiseStrategy_ The associated raise strategy.
/// @param feeShareReservePoolId_ The reserve pool ID to use for the fee share.
/// @param lenderShareReservePoolId_ The reserve pool ID to use for the lender share.
/// @param salt_ Used to compute the resulting address of the CozyLiquidator along with `msg.sender`.
/// @return cozyLiquidator_ The newly created CozyLiquidator.
function createCozyLiquidator(
ISafetyModule safetyModule_,
IEVault eVault_,
EulerTrancheRaiseStrategy raiseStrategy_,
uint8 feeShareReservePoolId_,
uint8 lenderShareReservePoolId_,
bytes32 salt_
) external returns (ICozyLiquidator cozyLiquidator_)
}Components
Deployment & Configuration
Liquidation & Raise Lifecycle
Observability
Last updated