IEarnerRateModel

Git Source

Inherits: IRateModel

Author: M^0 Labs

Functions

RATE_CONFIDENCE_INTERVAL

The interval over which there's confidence cash flow to earners will not exceed cash flows from minters.

function RATE_CONFIDENCE_INTERVAL() external view returns (uint32);

RATE_MULTIPLIER

The percent (in basis points) of the earner rate that will be effectively used.

function RATE_MULTIPLIER() external view returns (uint32);

ONE

100% in basis points.

function ONE() external view returns (uint32);

mToken

The M Token contract address.

function mToken() external view returns (address);

minterGateway

The Minter Gateway contract address.

function minterGateway() external view returns (address);

ttgRegistrar

The TTG Registrar contract address.

function ttgRegistrar() external view returns (address);

maxRate

The max rate in basis points.

function maxRate() external view returns (uint256);

getSafeEarnerRate

Returns the safe earner rate.

function getSafeEarnerRate(uint240 totalActiveOwedM, uint240 totalEarningSupply, uint32 minterRate)
    external
    pure
    returns (uint32);

Parameters

NameTypeDescription

totalActiveOwedM

uint240

The total active owed M.

totalEarningSupply

uint240

The total earning supply of M Token.

minterRate

uint32

The minter rate.

Returns

NameTypeDescription

<none>

uint32

The safe earner rate.

Errors

ZeroMToken

Emitted when M Token contract address is zero.

error ZeroMToken();

ZeroMinterGateway

Emitted when Minter Gateway contract address is zero.

error ZeroMinterGateway();

ZeroTTGRegistrar

Emitted when TTG Registrar contract address is zero.

error ZeroTTGRegistrar();

Copyright 2024 M^0 Foundation