SMART CONTRACTS
← Contract catalogGenericGovernor
Connect proposals, votes and execution in a governance workflow.
Role and use
Use participant voting to approve configuration changes or transactions. Strategy defines voting weight; TimelockController schedules execution.
Integration considerationsAlign voting tokens, voting periods, quorum and execution permissions. A successful vote and transaction execution are separate states.
Key SDK operations
These operations are exposed by GenericGovernorHelper in @hazbase/kit@0.9.0. The signatures below are type definitions; see the SDK reference for parameter structures and the complete interface.
typescript
import { GenericGovernorHelper } from '@hazbase/kit';propose
typescript
async propose(p: ProposalArgs): Promise<bigint>castVote
typescript
async castVote(
proposalId: bigint | number,
support: 0 | 1 | 2
): Promise<TransactionReceipt>queue
typescript
async queue(proposalId: bigint | number): Promise<bigint | null>execute
typescript
async execute(proposalId: bigint | number): Promise<TransactionReceipt>Related contracts
Put it into practice
Community & governance
See the data model, processing sequence and SDK code for an application-level implementation.
Read the implementation patternSpecification and source
The Solidity source is pinned to the revision below. Match it with the SDK version and your network’s implementation address and ABI.
generic-governor/contracts/GenericGovernor.solSource revision: b53a5b5