ICompensationFactory

Git Source

Interface for compensation plan factory

Functions

deployRule701Plan

function deployRule701Plan(string calldata name, address entity, uint256 annualLimit, bytes calldata additionalConfig)
    external
    returns (address);

deployCompensationPlan

function deployCompensationPlan(string calldata planType, string calldata name, address entity, bytes calldata config)
    external
    returns (address);

getPlansByEntity

function getPlansByEntity(address entity) external view returns (address[] memory);

getPlanType

function getPlanType(address plan) external view returns (string memory);

isPlan

function isPlan(address plan) external view returns (bool);

addPlanTemplate

function addPlanTemplate(string calldata planType, address[] calldata facets) external;

updatePlanTemplate

function updatePlanTemplate(string calldata planType, address[] calldata facets) external;

removePlanTemplate

function removePlanTemplate(string calldata planType) external;

Events

CompensationPlanCreated

event CompensationPlanCreated(address indexed plan, address indexed entity, string planType, string name);

PlanTemplateAdded

event PlanTemplateAdded(string planType, address[] facets);

PlanTemplateUpdated

event PlanTemplateUpdated(string planType, address[] facets);

PlanTemplateRemoved

event PlanTemplateRemoved(string planType);

Errors

InvalidPlanType

error InvalidPlanType();

PlanTypeExists

error PlanTypeExists();

UnauthorizedDeployment

error UnauthorizedDeployment();

InvalidConfiguration

error InvalidConfiguration();

Last updated

Was this helpful?