CompensationProposalFacet

Git Source

Inherits: UnifiedGovernanceBase

Handles executive compensation proposals within the unified governance framework

Simplified compensation proposal facet for unified governance

Functions

createCompensationProposal

Create a compensation proposal for an executive

function createCompensationProposal(
    address executive,
    uint256 amount,
    CompensationType compensationType,
    string memory description
) external returns (uint256 proposalId);

approveCompensation

Approve compensation for an executive (called by governance execution)

function approveCompensation(address executive, uint256 amount, CompensationType compensationType) external;

canProposeCompensation

Check if an address can propose compensation

function canProposeCompensation(address account) external view returns (bool);

_compensationTypeToString

function _compensationTypeToString(CompensationType cType) internal pure returns (string memory);

configureOCFStockClasses

function configureOCFStockClasses(GovernanceStorage.OCFStockClass[] calldata stockClasses) external pure override;

configureOCFProposalTypes

function configureOCFProposalTypes(GovernanceStorage.OCFProposalTypeConfig[] calldata proposalTypes)
    external
    pure
    override;

updateStakeholderShares

function updateStakeholderShares(address stakeholder, string calldata classId, uint256 shares) external pure override;

calculateVotingPower

function calculateVotingPower(address stakeholder, string memory proposalType) public pure override returns (uint256);

canVetoProposal

function canVetoProposal(address stakeholder, string memory proposalType) public pure override returns (bool);

Events

CompensationProposalCreated

event CompensationProposalCreated(
    uint256 indexed proposalId, address indexed executive, uint256 amount, string compensationType
);

CompensationApproved

event CompensationApproved(address indexed executive, uint256 amount, string compensationType);

Enums

CompensationType

enum CompensationType {
    BASE_SALARY,
    BONUS,
    EQUITY_GRANT,
    RETENTION_BONUS,
    SEVERANCE_PACKAGE
}

Last updated

Was this helpful?