Key Roles

Describes the abilities and roles of the admin

Admin

Our Lender, Redeemer and MarketPlace contract rely on an admin to control certain aspects. They are described on a contract basis below.

Lender

In the Lender contract, the admin has the following privileges:

  • approve: the admin is responsible for executing the approval of the redeemer contract. This is necessary to facilitate the usage of Principal Tokens by the Redeemer

  • setAdmin: the admin is the only one that can transfer admin powers

  • setFee: the admin can see a fee rate. This fee rate has a minimum value (which limits the amount of fees extracted per transaction)

  • setMarketPlace: the admin can set the MarketPlace contract

  • scheduleWithdrawal and scheduleFeeChange: the admin can schedule these actions (there is a 3 day holding period)

  • blockWithdrawal and blockFeeChange: the admin may block fee changes and withdrawals

  • withdrawFee: the admin may withdraw fees from the contract. The amount extractable from the contract is limited by the fees mapping

  • withdraw: the admin may withdraw the entire balance of the token (this is an emergency measure)

  • pause: the admin may pause certain markets. This may be necessary in the event that an integrated principal token experiences insolvency or their own pauses

Redeemer

In the Redeemer contract, the admin has the following privileges:

  • setAdmin: the admin is the only one that can transfer admin powers

  • setMarketPlace: the admin can set the MarketPlace contract

  • setConverter: the admin can set the Converter contract

  • setLender: the admin can set the Lender contract

  • setFee: the admin can see a fee rate for automatic redemptions. This fee rate has a minimum value (which limits the amount of fees extracted per transaction)

  • pauseRedemptions: the admin may pause the redemption process. This is an emergency measure

MarketPlace

In the MarketPlace contract, the admin has the following privileges:

  • createMarket: the admin can create new markets

  • setPrincipal: the admin can add principal tokens to a market if one has not already been set for the protocol

  • setPool: the admin can set a Yield Space Pool for swapping Illuminate principal tokens and the underlying

  • setAdmin: the admin is the only one that can transfer admin powers

Lenders

These are the users of the protocol. They will be able to use Illuminate to arbitrage fixed rates markets and lend conveniently via our protocol and API.

Lender

  • lend: this method will swap underlying assets for Illuminate's principal tokens in a given market

  • mint: this method will mint Illuminate principal tokens in exchange for principal tokens

  • batch: this method allows the user to chain multiple lend and mint calls together efficiently

Redeemer

  • redeem: this method allows the user to swap their Illuminate principal tokens for the underlying asset after maturity

MarketPlace

  • sellPrincipalToken: allows user to swap Illuminate principal tokens for the underlying asset prior to maturity

  • buyPrincipalToken: allows user to swap underlying tokens for Illuminate principal tokens

  • sellUnderlying: allows user to swap underlying tokens for Illuminate principal tokens

  • buyUnderlying: allows user to swap Illuminate principal tokens for underlying tokens

  • batch: this method allows the user to chain multiple swap methods together efficiently

Last updated