IGovernor_v1.sol
Last updated
Last updated
The module's initializer function.
Parameters
_communityMultisig
address
The address of the community multisig.
_teamMultisig
address
The address of the team multisig.
_timelockPeriod
uint256
_feeManager
address
_moduleFactory
address
Parameters
registeredBeacons
IInverterBeacon_v1[]
Parameters
beacon
address
Returns
<none>
Timelock
Returns
<none>
IInverterBeacon_v1[]
Returns
<none>
address
Returns
<none>
address
Can only be accessed by the COMMUNITY_MULTISIG_ROLE
.
Parameters
newFeeManager
address
Can only be accessed by the COMMUNITY_MULTISIG_ROLE
.
Parameters
newModuleFactory
address
Can only be accessed by the COMMUNITY_MULTISIG_ROLE
.
The given max fee can not be higher than the BPS.
Parameters
maxFee
uint256
The max Fee in relation to the BPS.
Can only be accessed by the COMMUNITY_MULTISIG_ROLE
.
The given treasury address can not be address(0).
Parameters
_defaultProtocolTreasury
address
The address of the default protocol treasury.
Can only be accessed by the COMMUNITY_MULTISIG_ROLE
.
The given treasury address can not be address(0).
Parameters
workflow
address
The address of the workflow.
treasury
address
The address of the protocol treasury for that specific workflow.
Can only be accessed by the COMMUNITY_MULTISIG_ROLE
.
The given fee needs to be less than the BPS.
Parameters
_defaultCollateralFee
uint256
The default collateral fee of the protocol in relation to the BPS.
Can only be accessed by the COMMUNITY_MULTISIG_ROLE
.
The given fee needs to be less than the BPS.
Parameters
_defaultIssuanceFee
uint256
The default issuance fee of the protocol in relation to the BPS.
Can only be accessed by either the COMMUNITY_MULTISIG_ROLE
or the TEAM_MULTISIG_ROLE
.
The given fee needs to be less than the BPS.
Parameters
workflow
address
The address of the workflow that contains the module function.
module
address
The address of the module that contains the function.
functionSelector
bytes4
The function selector of the target function.
set
bool
Boolean that determines if the fee is actually used or not.
fee
uint256
The collateral fee in relation to the BPS.
Can only be accessed by either the COMMUNITY_MULTISIG_ROLE
or the TEAM_MULTISIG_ROLE
.
The given fee needs to be less than the BPS.
Parameters
workflow
address
The address of the workflow that contains the module function.
module
address
The address of the module that contains the function.
functionSelector
bytes4
The function selector of the target function.
set
bool
Boolean that determines if the fee is actually used or not.
fee
uint256
The issuance fee in relation to the BPS.
Can only be accessed by either the COMMUNITY_MULTISIG_ROLE
or the TEAM_MULTISIG_ROLE
.
Parameters
metadata
IModule_v1.Metadata
The metadata that will be registered.
beacon
IInverterBeacon_v1
This function will override previous timelocks even if they are active.
Can only be accessed by either the COMMUNITY_MULTISIG_ROLE
or the TEAM_MULTISIG_ROLE
.
Parameters
beacon
address
newImplementation
address
newMinorVersion
uint256
newPatchVersion
uint256
Can only be accessed by either the COMMUNITY_MULTISIG_ROLE
or the TEAM_MULTISIG_ROLE
.
Parameters
beacon
address
Can only be accessed by either the COMMUNITY_MULTISIG_ROLE
or the TEAM_MULTISIG_ROLE
.
Parameters
beacon
address
Can only be accessed by the COMMUNITY_MULTISIG_ROLE
.
Parameters
newtimelockPeriod
uint256
The new timelock period.
Can only be accessed by either the COMMUNITY_MULTISIG_ROLE
or the TEAM_MULTISIG_ROLE
.
Parameters
beacon
address
Can only be accessed by either the COMMUNITY_MULTISIG_ROLE
or the TEAM_MULTISIG_ROLE
.
This function forces the upgrade of a beacon and restarts the implementation afterwards.
Can only be accessed by the COMMUNITY_MULTISIG_ROLE
.
Parameters
beacon
address
newImplementation
address
newMinorVersion
uint256
newPatchVersion
uint256
Can only be accessed by the COMMUNITY_MULTISIG_ROLE
.
Parameters
beacon
address
Accepts the ownership over the target address.
Can only be accessed by the COMMUNITY_MULTISIG_ROLE
or TEAM_MULTISIG_ROLE
.
Parameters
adr
address
The address of target that wants to hand over the ownership.
Parameters
beacon
address
newImplementation
address
The address of the new Implementation.
newMinorVersion
uint256
The new minor version.
newPatchVersion
uint256
The new patch version.
timelockExceeded
uint256
Timestamp of when the timelock is exceeded.
Parameters
beacon
address
newImplementation
address
The address of the new Implementation.
newMinorVersion
uint256
The new minor version.
newPatchVersion
uint256
The new patch version.
Parameters
beacon
address
Event emitted when the fee manager is updated.
Parameters
feeManager
address
The address of the fee manager.
Event emitted when the module factory is updated.
Parameters
moduleFactory
address
The address of the module factory.
Event emitted when a timelock period is set.
Parameters
newTimelockPeriod
uint256
The new timelock period.
Parameters
beacon
address
Parameters
beacon
address
newImplementation
address
The address of the new Implementation.
newMinorVersion
uint256
The new minor version.
newPatchVersion
uint256
The new patch version.
Parameters
beacon
address
Parameters
adr
address
The address of the contract that distributed the ownership.
The given address is invalid.
The given amount is invalid.
The given target address is not accessible.
This function can only be accessed by the CommunityMultisig or TeamMultisig.
The call to the target contract has failed.
Properties
timelockActive
bool
Is the timelock currently active.
timelockUntil
uint256
intendedImplementation
address
intendedMinorVersion
uint256
intendedPatchVersion
uint256
The timelock period needed to upgrade a
The address of the initial .
The address of the initial .
Callback function that is called by during initialization.
The array of s that will be registered.
Returns the current timelock of a address.
The address of the .
The timelock of the address.
Returns the list of currently linkeds.
LinkedBeacons The array of s that are currently linked to the .
Returns the address.
Address of the .
Returns the address.
Address of the .
Sets the address of the .
The address of the new .
Sets the address of the .
The address of the new .
Sets the maximum fee percentage that can be assigned in the linked .
Sets the default protocol treasury address in the linked .
Sets the protocol treasury address for a specific workflow in the linked .
Sets the default collateral fee of the protocol in the linked .
Sets the default issuance fee of the protocol in the linked .
Sets the collateral fee for a specific workflow module function in the linked .
Sets the issuance fee for a specific workflow module function in the linked .
Registers a with the provided metadata
in the target .
The that will be registered.
Starts the upgrade process of a by creating a timelock period after which the can be upgraded via triggerUpgradeBeaconWithTimelock()
.
The address of the that is intended to be upgraded.
The address of the intended new Implementation of the .
The intended new minor version of the .
The intended new patch version of the .
Upgrades a with the data provided by the active timelock.
The address of the that is intended to be upgraded.
Cancels an upgrade of by setting the active timelock to inactive.
The address of the for which the timelock should be canceled.
Sets the timelock period of a upgrade process.
Initiates the shutdown of a .
The address of the that should be shut down.
Initiates the shutdown of all linked s.
The address of the that is intended to be upgraded and restarted.
The address of the intended new Implementation of the .
The intended new minor version of the .
The intended new patch version of the .
Restarts the implementation.
The address of the that should restarted.
Event emitted when a new timelock period for a upgrade of a is started.
The address of the .
Event emitted when a is upgraded.
The address of the .
Event emitted when a upgraded is canceled.
The address of the .
Event emitted when a shutdown is initiated.
The address of the .
Event emitted when a is forcefully upgraded and the implementation gets restarted immediately.
The address of the .
Event emitted when a implementation is restarted.
The address of the .
Event emitted when the contract accepts the ownership over another contract.
This function can only be accessed by the linked .
This function can only be called when the linked array is empty.
The timelock period needed for the to be upgraded has not been exceeded yet.
This upgrade process for this has not yet been started.
Struct used to store information about a timelock for aupgrade.
The timelock is needed to upgrade a to new implementation.
The new inteded Implementation address of the .
The new intended minor version of the .
The new intended patch version of the .