Governance Module
The GovernanceModule enables participating in the governance of component tokens held in the SetToken. Examples of intended protocols include Aave, Compound, and Uniswap governance.
Select Methods
delegate()
function delegate(ISetToken _setToken, string memory _governanceName, address _delegatee)
Manager only. Delegate voting power to an Ethereum address. Note: for some governance adapters, delegating to self is equivalent to registering and delegating to zero address is revoking right to vote.
Parameter Name
Type
Description
_setToken
ISetToken
Instance of the SetToken
_governanceName
string
Human readable name of integration stored in the IntegrationRegistry
_delegatee
address
Address of delegatee
propose()
function propose(ISetToken _setToken, string memory _governanceName, bytes memory _proposalData)
Manager only. Create a new proposal for a specified governance protocol.
Parameter Name
Type
Description
_setToken
ISetToken
Instance of the SetToken
_governanceName
string
Human readable name of integration stored in the IntegrationRegistry
_proposalData
bytes
Byte data of proposal to pass into governance adapter
vote()
function vote(ISetToken _setToken, string memory _governanceName, uint256 _proposalId, bool _support, bytes memory _data)
Manager only. Cast vote for a specific governance token held in the SetToken. Manager specifies whether to vote for or against a given proposal
Parameter Name
Type
Description
_setToken
ISetToken
Instance of the SetToken
_governanceName
string
Human readable name of integration stored in the IntegrationRegistry
_proposalId
uint256
ID of the proposal to vote on
_support
bool
Boolean indicating whether to support proposal
_data
bytes
Arbitrary bytes to be used to construct vote call data
register()
function register(ISetToken _setToken, string memory _governanceName)
Manager only. Register for voting for the SetToken
Parameter Name
Type
Description
_setToken
ISetToken
Instance of the SetToken
_governanceName
string
Human readable name of integration stored in the IntegrationRegistry
revoke()
function revoke(ISetToken _setToken, string memory _governanceName)
Manager only. Revoke voting for the SetToken
Parameter Name
Type
Description
_setToken
ISetToken
Instance of the SetToken
_governanceName
string
Human readable name of integration stored in the IntegrationRegistry
initialize()
function initialize(ISetToken _setToken)
Manager only. Initializes this module to the SetToken.
Parameter Name
Type
Description
_setToken
ISetToken
Address of the SetToken
Last updated