IGovSettings

Interface Description

License: MIT

interface IGovSettings

This is the contract that stores proposal settings that will be used by the governance pool

Enums info

ExecutorType

enum ExecutorType {
	 DEFAULT,
	 INTERNAL,
	 VALIDATORS
}

Structs info

ProposalSettings

The struct holds information about settings for proposal type

Parameters:

Name
Type
Description

earlyCompletion

bool

the boolean flag, if true the voting completes as soon as the quorum is reached

delegatedVotingAllowed

bool

the boolean flag, if true then delegators can vote with their own delegated tokens, else micropool vote allowed

validatorsVote

bool

the boolean flag, if true then voting will have an additional validators step

duration

uint64

the duration of voting in seconds

durationValidators

uint64

the duration of validators voting in seconds

executionDelay

uint64

the delay in seconds before the proposal can be executed

quorum

uint128

the percentage of total votes supply (erc20 + nft) to confirm the proposal

quorumValidators

uint128

the percentage of total validator token supply to confirm the proposal

minVotesForVoting

uint256

the minimal needed voting power to vote for the proposal

minVotesForCreating

uint256

the minimal needed voting power to create the proposal

rewardsInfo

struct IGovSettings.RewardsInfo

the reward info for proposal creation and execution

executorDescription

string

the settings description string

RewardsInfo

The struct holds information about rewards for proposals

Parameters:

Name
Type
Description

rewardToken

address

the reward token address

creationReward

uint256

the amount of reward for proposal creation

executionReward

uint256

the amount of reward for proposal execution

voteRewardsCoefficient

uint256

the reward multiplier for voting for the proposal

Functions info

executorToSettings (0x793e1468)

The function to get settings of this executor

Parameters:

Name
Type
Description

executor

address

the executor

Return values:

Name
Type
Description

[0]

uint256

setting id of the executor

addSettings (0x6a11e769)

Add new types to contract

Parameters:

Name
Type
Description

_settings

struct IGovSettings.ProposalSettings[]

New settings

editSettings (0x2d141cdd)

Edit existed type

Parameters:

Name
Type
Description

settingsIds

uint256[]

Existed settings IDs

_settings

struct IGovSettings.ProposalSettings[]

New settings

changeExecutors (0xf7e1ef01)

Change executors association

Parameters:

Name
Type
Description

executors

address[]

Addresses

settingsIds

uint256[]

New types

getDefaultSettings (0x00d04976)

The function to get default settings

Return values:

Name
Type
Description

[0]

struct IGovSettings.ProposalSettings

default setting

getInternalSettings (0x79dcff40)

The function to get internal settings

Return values:

Name
Type
Description

[0]

struct IGovSettings.ProposalSettings

internal setting

getExecutorSettings (0x57404769)

The function the get the settings of the executor

Parameters:

Name
Type
Description

executor

address

Executor address

Return values:

Name
Type
Description

[0]

struct IGovSettings.ProposalSettings

ProposalSettings by executor address