⬅️ Contracts

OwnableTimedMinter

OwnableTimedMinter

A FeiTimedMinter that mints only when called by an owner

Mainnet implementations

Name Address
optimisticMinter 0xE66c4De480Bd317054B5a3CF8E8689649d0728c9

Core, OptimisticTimelock

Events

BufferCapUpdate

event BufferCapUpdate(uint256,uint256)
Params
Param Type Notes
oldBufferCap uint256
newBufferCap uint256

BufferUsed

event BufferUsed(uint256,uint256)
Params
Param Type Notes
amountUsed uint256
bufferRemaining uint256

ContractAdminRoleUpdate

event ContractAdminRoleUpdate(bytes32,bytes32)
Params
Param Type Notes
oldContractAdminRole bytes32 indexed
newContractAdminRole bytes32 indexed

CoreUpdate

event CoreUpdate(address,address)
Params
Param Type Notes
oldCore address indexed
newCore address indexed

DurationUpdate

event DurationUpdate(uint256,uint256)
Params
Param Type Notes
oldDuration uint256
newDuration uint256

FeiMinting

event FeiMinting(address,uint256)
Params
Param Type Notes
caller address indexed
feiAmount uint256

IncentiveUpdate

event IncentiveUpdate(uint256,uint256)
Params
Param Type Notes
oldIncentiveAmount uint256
newIncentiveAmount uint256

MintAmountUpdate

event MintAmountUpdate(uint256,uint256)
Params
Param Type Notes
oldMintAmount uint256
newMintAmount uint256

OwnershipTransferred

event OwnershipTransferred(address,address)
Params
Param Type Notes
previousOwner address indexed
newOwner address indexed

Paused

event Paused(address)
Params
Param Type Notes
account address

RateLimitPerSecondUpdate

event RateLimitPerSecondUpdate(uint256,uint256)
Params
Param Type Notes
oldRateLimitPerSecond uint256
newRateLimitPerSecond uint256

TargetUpdate

event TargetUpdate(address,address)
Params
Param Type Notes
oldTarget address
newTarget address

TimerReset

event TimerReset(uint256)
Params
Param Type Notes
startTime uint256

Unpaused

event Unpaused(address)
Params
Param Type Notes
account address

Methods

CONTRACT_ADMIN_ROLE

function CONTRACT_ADMIN_ROLE() view returns(bytes32)

a role used with a subset of governor permissions for this contract only

Returns
Param Type Notes
bytes32

MAX_MINT_FREQUENCY

function MAX_MINT_FREQUENCY() view returns(uint256)

least frequent that mints can happen

Returns
Param Type Notes
uint256

MAX_RATE_LIMIT_PER_SECOND

function MAX_RATE_LIMIT_PER_SECOND() view returns(uint256)

maximum rate limit per second governance can set for this contract

Returns
Param Type Notes
uint256

MIN_MINT_FREQUENCY

function MIN_MINT_FREQUENCY() view returns(uint256)

most frequent that mints can happen

Returns
Param Type Notes
uint256

buffer

function buffer() view returns(uint256)

the amount of action used before hitting limit

replenishes at rateLimitPerSecond per second up to bufferCap

Returns
Param Type Notes
uint256

bufferCap

function bufferCap() view returns(uint256)

the cap of the buffer that can be used at once

Returns
Param Type Notes
uint256

core

function core() view returns(address)

address of the Core contract referenced

Returns
Param Type Notes
address ICore implementation address

doPartialAction

function doPartialAction() view returns(bool)

a flag for whether to allow partial actions to complete if the buffer is less than amount

Returns
Param Type Notes
bool

duration

function duration() view returns(uint256)

the duration of the timed period

Returns
Param Type Notes
uint256

fei

function fei() view returns(address)

address of the Fei contract referenced by Core

Returns
Param Type Notes
address IFei implementation address

feiBalance

function feiBalance() view returns(uint256)

fei balance of contract

Returns
Param Type Notes
uint256 fei amount held

incentiveAmount

function incentiveAmount() view returns(uint256)

FEI incentive for calling keeper functions

Returns
Param Type Notes
uint256

isContractAdmin

function isContractAdmin(address) view returns(bool)

returns whether a given address has the admin role for this contract

Params
Param Type Notes
_admin address
Returns
Param Type Notes
bool

isTimeEnded

function isTimeEnded() view returns(bool)

return true if time period has ended

Returns
Param Type Notes
bool

isTimeStarted

function isTimeStarted() view returns(bool)
Returns
Param Type Notes
bool

lastBufferUsedTime

function lastBufferUsedTime() view returns(uint256)

the last time the buffer was used by the contract

Returns
Param Type Notes
uint256

mint

function mint() nonpayable

triggers a minting of FEI by owner

mintAmount

function mintAmount() view returns(uint256)
Returns
Param Type Notes
uint256

owner

function owner() view returns(address)

Returns the address of the current owner.

Returns
Param Type Notes
address

pause

function pause() nonpayable

set pausable methods to paused

paused

function paused() view returns(bool)

Returns true if the contract is paused, and false otherwise.

Returns
Param Type Notes
bool

rateLimitPerSecond

function rateLimitPerSecond() view returns(uint256)

the rate per second for this contract

Returns
Param Type Notes
uint256

remainingTime

function remainingTime() view returns(uint256)

number of seconds remaining until time is up

Returns
Param Type Notes
uint256 remaining

renounceOwnership

function renounceOwnership() nonpayable

Leaves the contract without owner. It will not be possible to call onlyOwner functions anymore. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner.

setBufferCap

function setBufferCap(uint256) nonpayable

set the buffer cap

Params
Param Type Notes
newBufferCap uint256

setContractAdminRole

function setContractAdminRole(bytes32) nonpayable

sets a new admin role for this contract

Params
Param Type Notes
newContractAdminRole bytes32

setCore

function setCore(address) nonpayable

set new Core reference address

Params
Param Type Notes
newCore address the new core address

setFrequency

function setFrequency(uint256) nonpayable

set the mint frequency

Params
Param Type Notes
newFrequency uint256

setIncentiveAmount

function setIncentiveAmount(uint256) nonpayable

set the incentiveAmount

Params
Param Type Notes
newIncentiveAmount uint256

setMintAmount

function setMintAmount(uint256) nonpayable
Params
Param Type Notes
newMintAmount uint256

setRateLimitPerSecond

function setRateLimitPerSecond(uint256) nonpayable

set the rate limit per second

Params
Param Type Notes
newRateLimitPerSecond uint256

setTarget

function setTarget(address) nonpayable

set the new FEI target

Params
Param Type Notes
newTarget address

startTime

function startTime() view returns(uint256)

the start timestamp of the timed period

Returns
Param Type Notes
uint256

target

function target() view returns(address)

the target receiving minted FEI

Returns
Param Type Notes
address

timeSinceStart

function timeSinceStart() view returns(uint256)

number of seconds since contract was initialized

will be less than or equal to duration

Returns
Param Type Notes
uint256 timestamp

transferOwnership

function transferOwnership(address) nonpayable

Transfers ownership of the contract to a new account (newOwner). Can only be called by the current owner.

Params
Param Type Notes
newOwner address

tribe

function tribe() view returns(address)

address of the Tribe contract referenced by Core

Returns
Param Type Notes
address IERC20 implementation address

tribeBalance

function tribeBalance() view returns(uint256)

tribe balance of contract

Returns
Param Type Notes
uint256 tribe amount held

unpause

function unpause() nonpayable

set pausable methods to unpaused

⬅️ Contracts