Skip to main content

InternalGovernance.sol

Methods

BALLOT_TYPEHASH()

Solidity

function BALLOT_TYPEHASH() external view returns (bytes32)

Returns

NameTypeDescription
_0bytes32undefined

COUNTING_MODE()

module:voting

Solidity

function COUNTING_MODE() external pure returns (string)
Details

A description of the possible support values for {castVote} and the way these votes are counted, meant to be consumed by UIs to show correct vote options and interpret the results. The string is a URL-encoded sequence of key-value pairs that each describe one aspect, for example support=bravo&quorum=for,abstain. There are 2 standard keys: support and quorum. - support=bravo refers to the vote options 0 = Against, 1 = For, 2 = Abstain, as in GovernorBravo. - quorum=bravo means that only For votes are counted towards quorum. - quorum=for,abstain means that both For and Abstain votes are counted towards quorum. NOTE: The string can be decoded by the standard https://developer.mozilla.org/en-US/docs/Web/API/URLSearchParams[`URLSearchParams`] JavaScript class.

Returns

NameTypeDescription
_0stringundefined

cancel(uint256)

Solidity

function cancel(uint256 proposalId) external nonpayable
Details

Cancels a proposal only if sender is the proposer, or proposer delegates dropped below proposal threshold.

Parameters

NameTypeDescription
proposalIduint256undefined

castVote(uint256,uint8)

Solidity

function castVote(uint256 proposalId, uint8 support) external nonpayable returns (uint256)
Details

See {IGovernor-castVote}.

Parameters

NameTypeDescription
proposalIduint256undefined
supportuint8undefined

Returns

NameTypeDescription
_0uint256undefined

castVoteBySig(uint256,uint8,uint8,bytes32,bytes32)

Solidity

function castVoteBySig(uint256 proposalId, uint8 support, uint8 v, bytes32 r, bytes32 s) external nonpayable returns (uint256)
Details

See {IGovernor-castVoteBySig}.

Parameters

NameTypeDescription
proposalIduint256undefined
supportuint8undefined
vuint8undefined
rbytes32undefined
sbytes32undefined

Returns

NameTypeDescription
_0uint256undefined

castVoteWithReason(uint256,uint8,string)

Solidity

function castVoteWithReason(uint256 proposalId, uint8 support, string reason) external nonpayable returns (uint256)
Details

See {IGovernor-castVoteWithReason}.

Parameters

NameTypeDescription
proposalIduint256undefined
supportuint8undefined
reasonstringundefined

Returns

NameTypeDescription
_0uint256undefined

execute(address[],uint256[],bytes[],bytes32)

Solidity

function execute(address[] targets, uint256[] values, bytes[] calldatas, bytes32 descriptionHash) external payable returns (uint256)
Details

See {IGovernor-execute}.

Parameters

NameTypeDescription
targetsaddress[]undefined
valuesuint256[]undefined
calldatasbytes[]undefined
descriptionHashbytes32undefined

Returns

NameTypeDescription
_0uint256undefined

execute(uint256)

Solidity

function execute(uint256 proposalId) external payable
Details

See {IGovernorCompatibilityBravo-execute}.

Parameters

NameTypeDescription
proposalIduint256undefined

getActions(uint256)

Solidity

function getActions(uint256 proposalId) external view returns (address[] targets, uint256[] values, string[] signatures, bytes[] calldatas)
Details

See {IGovernorCompatibilityBravo-getActions}.

Parameters

NameTypeDescription
proposalIduint256undefined

Returns

NameTypeDescription
targetsaddress[]undefined
valuesuint256[]undefined
signaturesstring[]undefined
calldatasbytes[]undefined

getReceipt(uint256,address)

Solidity

function getReceipt(uint256 proposalId, address voter) external view returns (struct IGovernorCompatibilityBravoUpgradeable.Receipt)
Details

See {IGovernorCompatibilityBravo-getReceipt}.

Parameters

NameTypeDescription
proposalIduint256undefined
voteraddressundefined

Returns

NameTypeDescription
_0IGovernorCompatibilityBravoUpgradeable.Receiptundefined

getVotes(address,uint256)

Solidity

function getVotes(address account, uint256 blockNumber) external view returns (uint256)

Parameters

NameTypeDescription
accountaddressundefined
blockNumberuint256undefined

Returns

NameTypeDescription
_0uint256undefined

giveVotingPower(address[])

Solidity

function giveVotingPower(address[] _recipients) external nonpayable
Details

Use this function to give the ability to vote in the proposals made in this contract.Only Steer Governance Timelock can call this function.

Parameters

NameTypeDescription
_recipientsaddress[]is the array of addresses that should be given the ability to vote.

hasVoted(uint256,address)

Solidity

function hasVoted(uint256 proposalId, address account) external view returns (bool)
Details

See {IGovernor-hasVoted}.

Parameters

NameTypeDescription
proposalIduint256undefined
accountaddressundefined

Returns

NameTypeDescription
_0boolundefined

hasVotingPower(address)

Solidity

function hasVotingPower(address) external view returns (bool)

Parameters

NameTypeDescription
_0addressundefined

Returns

NameTypeDescription
_0boolundefined

hashProposal(address[],uint256[],bytes[],bytes32)

Solidity

function hashProposal(address[] targets, uint256[] values, bytes[] calldatas, bytes32 descriptionHash) external pure returns (uint256)
Details

See {IGovernor-hashProposal}. The proposal id is produced by hashing the RLC encoded targets array, the values array, the calldatas array and the descriptionHash (bytes32 which itself is the keccak256 hash of the description string). This proposal id can be produced from the proposal data which is part of the {ProposalCreated} event. It can even be computed in advance, before the proposal is submitted. Note that the chainId and the governor address are not part of the proposal id computation. Consequently, the same proposal (with same operation and same description) will have the same id if submitted on multiple governors accross multiple networks. This also means that in order to execute the same operation twice (on the same governor) the proposer will have to change the description in order to avoid proposal id conflicts.

Parameters

NameTypeDescription
targetsaddress[]undefined
valuesuint256[]undefined
calldatasbytes[]undefined
descriptionHashbytes32undefined

Returns

NameTypeDescription
_0uint256undefined

initialize(address,address,address,address[])

Solidity

function initialize(contract ERC20VotesUpgradeable _token, contract TimelockControllerUpgradeable _timelock, address _steerTimeLock, address[] _voters) external nonpayable

Parameters

NameTypeDescription
_tokencontract ERC20VotesUpgradeableundefined
_timelockcontract TimelockControllerUpgradeableundefined
_steerTimeLockaddressundefined
_votersaddress[]undefined

name()

Solidity

function name() external view returns (string)
Details

See {IGovernor-name}.

Returns

NameTypeDescription
_0stringundefined

owner()

Solidity

function owner() external view returns (address)
Details

Returns the address of the current owner.

Returns

NameTypeDescription
_0addressundefined

proposalDeadline(uint256)

Solidity

function proposalDeadline(uint256 proposalId) external view returns (uint256)
Details

See {IGovernor-proposalDeadline}.

Parameters

NameTypeDescription
proposalIduint256undefined

Returns

NameTypeDescription
_0uint256undefined

proposalEta(uint256)

Solidity

function proposalEta(uint256 proposalId) external view returns (uint256)
Details

Public accessor to check the eta of a queued proposal

Parameters

NameTypeDescription
proposalIduint256undefined

Returns

NameTypeDescription
_0uint256undefined

proposalSnapshot(uint256)

Solidity

function proposalSnapshot(uint256 proposalId) external view returns (uint256)
Details

See {IGovernor-proposalSnapshot}.

Parameters

NameTypeDescription
proposalIduint256undefined

Returns

NameTypeDescription
_0uint256undefined

proposalThreshold()

Solidity

function proposalThreshold() external view returns (uint256)

Returns

NameTypeDescription
_0uint256undefined

proposals(uint256)

Solidity

function proposals(uint256 proposalId) external view returns (uint256 id, address proposer, uint256 eta, uint256 startBlock, uint256 endBlock, uint256 forVotes, uint256 againstVotes, uint256 abstainVotes, bool canceled, bool executed)
Details

See {IGovernorCompatibilityBravo-proposals}.

Parameters

NameTypeDescription
proposalIduint256undefined

Returns

NameTypeDescription
iduint256undefined
proposeraddressundefined
etauint256undefined
startBlockuint256undefined
endBlockuint256undefined
forVotesuint256undefined
againstVotesuint256undefined
abstainVotesuint256undefined
canceledboolundefined
executedboolundefined

propose(address[],uint256[],bytes[],string)

Solidity

function propose(address[] targets, uint256[] values, bytes[] calldatas, string description) external nonpayable returns (uint256)
Details

propose a new governance action.

Parameters

NameTypeDescription
targetsaddress[]the target address of each proposed action.
valuesuint256[]the ETH value of each proposed action.
calldatasbytes[]the calldata of each proposed action.
descriptionstringthe description of this governance action.

Returns

NameTypeDescription
_0uint256undefined

propose(address[],uint256[],string[],bytes[],string)

Solidity

function propose(address[] targets, uint256[] values, string[] signatures, bytes[] calldatas, string description) external nonpayable returns (uint256)
Details

propose a new governance action, with signatures from other signers

Parameters

NameTypeDescription
targetsaddress[]the target address of each proposed action.
valuesuint256[]the ETH value of each proposed action.
signaturesstring[]extra signatures for bravo governance
calldatasbytes[]the calldata of each proposed action.
descriptionstringthe description of this governance action.

Returns

NameTypeDescription
_0uint256undefined

queue(address[],uint256[],bytes[],bytes32)

Solidity

function queue(address[] targets, uint256[] values, bytes[] calldatas, bytes32 descriptionHash) external nonpayable returns (uint256)
Details

Function to queue a proposal to the timelock.

Parameters

NameTypeDescription
targetsaddress[]undefined
valuesuint256[]undefined
calldatasbytes[]undefined
descriptionHashbytes32undefined

Returns

NameTypeDescription
_0uint256undefined

queue(uint256)

Solidity

function queue(uint256 proposalId) external nonpayable
Details

See {IGovernorCompatibilityBravo-queue}.

Parameters

NameTypeDescription
proposalIduint256undefined

quorum(uint256)

Solidity

function quorum(uint256 blockNumber) external view returns (uint256)

Parameters

NameTypeDescription
blockNumberuint256undefined

Returns

NameTypeDescription
_0uint256undefined

quorumDenominator()

Solidity

function quorumDenominator() external view returns (uint256)

Returns

NameTypeDescription
_0uint256undefined

quorumNumerator()

Solidity

function quorumNumerator() external view returns (uint256)

Returns

NameTypeDescription
_0uint256undefined

quorumVotes()

Solidity

function quorumVotes() external view returns (uint256)
Details

See {IGovernorCompatibilityBravo-quorumVotes}.

Returns

NameTypeDescription
_0uint256undefined

removeVotingPower(address[])

Solidity

function removeVotingPower(address[] _recipients) external nonpayable
Details

Use this function to remove the ability to vote in the proposals made in this contract.Only Steer Governance Timelock can call this function.

Parameters

NameTypeDescription
_recipientsaddress[]is the array of addresses whose ability to vote should be removed.

renounceOwnership()

Solidity

function renounceOwnership() external nonpayable
Details

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.

setProposalThreshold(uint256)

Solidity

function setProposalThreshold(uint256 newProposalThreshold) external nonpayable
Details

Update the proposal threshold. This operation can only be performed through a governance proposal. Emits a {ProposalThresholdSet} event.

Parameters

NameTypeDescription
newProposalThresholduint256undefined

setVotingDelay(uint256)

Solidity

function setVotingDelay(uint256 newVotingDelay) external nonpayable
Details

Update the voting delay. This operation can only be performed through a governance proposal. Emits a {VotingDelaySet} event.

Parameters

NameTypeDescription
newVotingDelayuint256undefined

setVotingPeriod(uint256)

Solidity

function setVotingPeriod(uint256 newVotingPeriod) external nonpayable
Details

Update the voting period. This operation can only be performed through a governance proposal. Emits a {VotingPeriodSet} event.

Parameters

NameTypeDescription
newVotingPerioduint256undefined

state(uint256)

Solidity

function state(uint256 proposalId) external view returns (enum IGovernorUpgradeable.ProposalState)

Parameters

NameTypeDescription
proposalIduint256undefined

Returns

NameTypeDescription
_0enum IGovernorUpgradeable.ProposalStateundefined

supportsInterface(bytes4)

Solidity

function supportsInterface(bytes4 interfaceId) external view returns (bool)

Parameters

NameTypeDescription
interfaceIdbytes4undefined

Returns

NameTypeDescription
_0boolundefined

timelock()

Solidity

function timelock() external view returns (address)
Details

Public accessor to check the address of the timelock

Returns

NameTypeDescription
_0addressundefined

token()

Solidity

function token() external view returns (contract ERC20VotesUpgradeable)

Returns

NameTypeDescription
_0contract ERC20VotesUpgradeableundefined

transferOwnership(address)

Solidity

function transferOwnership(address newOwner) external nonpayable
Details

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

Parameters

NameTypeDescription
newOwneraddressundefined

updateQuorumNumerator(uint256)

Solidity

function updateQuorumNumerator(uint256 newQuorumNumerator) external nonpayable

Parameters

NameTypeDescription
newQuorumNumeratoruint256undefined

updateTimelock(address)

Solidity

function updateTimelock(contract TimelockControllerUpgradeable newTimelock) external nonpayable
Details

Public endpoint to update the underlying timelock instance. Restricted to the timelock itself, so updates must be proposed, scheduled and executed using the {Governor} workflow.

Parameters

NameTypeDescription
newTimelockcontract TimelockControllerUpgradeableundefined

upgradeTo(address)

Solidity

function upgradeTo(address newImplementation) external nonpayable
Details

Upgrade the implementation of the proxy to newImplementation. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.

Parameters

NameTypeDescription
newImplementationaddressundefined

upgradeToAndCall(address,bytes)

Solidity

function upgradeToAndCall(address newImplementation, bytes data) external payable
Details

Upgrade the implementation of the proxy to newImplementation, and subsequently execute the function call encoded in data. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.

Parameters

NameTypeDescription
newImplementationaddressundefined
databytesundefined

version()

Solidity

function version() external view returns (string)
Details

See {IGovernor-version}.

Returns

NameTypeDescription
_0stringundefined

votingDelay()

Solidity

function votingDelay() external view returns (uint256)

Returns

NameTypeDescription
_0uint256undefined

votingPeriod()

Solidity

function votingPeriod() external view returns (uint256)

Returns

NameTypeDescription
_0uint256undefined

Events

AdminChanged

Solidity

event AdminChanged(address previousAdmin, address newAdmin)

Parameters

NameTypeDescription
previousAdminaddressundefined
newAdminaddressundefined

BeaconUpgraded

Solidity

event BeaconUpgraded(address indexed beacon)

Parameters

NameTypeDescription
beacon indexedaddressundefined

OwnershipTransferred

Solidity

event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)

Parameters

NameTypeDescription
previousOwner indexedaddressundefined
newOwner indexedaddressundefined

ProposalCanceled

Solidity

event ProposalCanceled(uint256 proposalId)

Parameters

NameTypeDescription
proposalIduint256undefined

ProposalCreated

Solidity

event ProposalCreated(uint256 proposalId, address proposer, address[] targets, uint256[] values, string[] signatures, bytes[] calldatas, uint256 startBlock, uint256 endBlock, string description)

Parameters

NameTypeDescription
proposalIduint256undefined
proposeraddressundefined
targetsaddress[]undefined
valuesuint256[]undefined
signaturesstring[]undefined
calldatasbytes[]undefined
startBlockuint256undefined
endBlockuint256undefined
descriptionstringundefined

ProposalExecuted

Solidity

event ProposalExecuted(uint256 proposalId)

Parameters

NameTypeDescription
proposalIduint256undefined

ProposalQueued

Solidity

event ProposalQueued(uint256 proposalId, uint256 eta)

Parameters

NameTypeDescription
proposalIduint256undefined
etauint256undefined

ProposalThresholdSet

Solidity

event ProposalThresholdSet(uint256 oldProposalThreshold, uint256 newProposalThreshold)

Parameters

NameTypeDescription
oldProposalThresholduint256undefined
newProposalThresholduint256undefined

QuorumNumeratorUpdated

Solidity

event QuorumNumeratorUpdated(uint256 oldQuorumNumerator, uint256 newQuorumNumerator)

Parameters

NameTypeDescription
oldQuorumNumeratoruint256undefined
newQuorumNumeratoruint256undefined

TimelockChange

Solidity

event TimelockChange(address oldTimelock, address newTimelock)

Parameters

NameTypeDescription
oldTimelockaddressundefined
newTimelockaddressundefined

Upgraded

Solidity

event Upgraded(address indexed implementation)

Parameters

NameTypeDescription
implementation indexedaddressundefined

VoteCast

Solidity

event VoteCast(address indexed voter, uint256 proposalId, uint8 support, uint256 weight, string reason)

Parameters

NameTypeDescription
voter indexedaddressundefined
proposalIduint256undefined
supportuint8undefined
weightuint256undefined
reasonstringundefined

VotingDelaySet

Solidity

event VotingDelaySet(uint256 oldVotingDelay, uint256 newVotingDelay)

Parameters

NameTypeDescription
oldVotingDelayuint256undefined
newVotingDelayuint256undefined

VotingPeriodSet

Solidity

event VotingPeriodSet(uint256 oldVotingPeriod, uint256 newVotingPeriod)

Parameters

NameTypeDescription
oldVotingPerioduint256undefined
newVotingPerioduint256undefined

VotingPowerGiven

Solidity

event VotingPowerGiven(address[] recipients)

Parameters

NameTypeDescription
recipientsaddress[]undefined

VotingPowerRemoved

Solidity

event VotingPowerRemoved(address[] recipients)

Parameters

NameTypeDescription
recipientsaddress[]undefined