# Events

[Git Source](https://github.com/EntreDevelopers-Lab-Inc/Mezz-Companies/blob/f7a3e84e3dd5bb33c4bd7f77283983f9e8ba20b2/src/libraries/Events.sol)

**Author:** Daniel Yamagata & Naveen Ailawadi

A library for all events emitted throughout the Mezzanine protocol

## Events

### UpgradeProposed

```solidity
event UpgradeProposed(address newImplementation, uint256 pendingUpgradeSnapshot);
```

### UpgradeCanceled

```solidity
event UpgradeCanceled(address caller);
```

### OwnershipTransferCanceled

```solidity
event OwnershipTransferCanceled(address caller);
```

### ProtocolStateSet

```solidity
event ProtocolStateSet(DataTypes.ProtocolState state);
```

### ProtocolFrozen

```solidity
event ProtocolFrozen(address indexed freezer, uint256 freezeDuration, uint256 frozenSnapshot);
```

### ImplementationFrozenStateSet

```solidity
event ImplementationFrozenStateSet(address indexed implementation, bool frozen);
```

### DeploymentFrozenStateSet

```solidity
event DeploymentFrozenStateSet(address indexed freezer, address indexed deployment, bool frozen);
```

### DocumentRegistrySet

```solidity
event DocumentRegistrySet(address newDocumentRegistry);
```

### MezzDeployerSet

```solidity
event MezzDeployerSet(address newMezzDeployer);
```

### FeeControllerSet

```solidity
event FeeControllerSet(address newFeeController);
```

### DenominationAssetAddedToWhitelist

```solidity
event DenominationAssetAddedToWhitelist(address denominationAsset);
```

### DenominationAssetRemovedFromWhitelist

```solidity
event DenominationAssetRemovedFromWhitelist(address denominationAsset);
```

### DefenderAdded

```solidity
event DefenderAdded(address defender);
```

### DefenderRemoved

```solidity
event DefenderRemoved(address defender);
```

### MezzInstanceDeployed

```solidity
event MezzInstanceDeployed(
    address indexed creator,
    bytes32 indexed companyId,
    DataTypes.MezzInstance mezzInstance,
    address[] initialOwners,
    string name,
    string symbol
);
```

### GuardDeployed

```solidity
event GuardDeployed(
    address indexed creator, address indexed controlled, address indexed controller, bytes32 coreId, address newGuard
);
```

### DepartmentDeployed

```solidity
event DepartmentDeployed(address indexed creator, bytes32 coreId, address deployedDepartment);
```

### ModuleDeployed

```solidity
event ModuleDeployed(address indexed creator, bytes32 coreId, address deployedDepartment);
```

### AssetDeployed

```solidity
event AssetDeployed(address indexed creator, bytes32 coreId, address deployedAsset);
```

### GovernorDeployed

```solidity
event GovernorDeployed(address indexed creator, bytes32 coreId, address deployedGovernor);
```

### GuardSelectorDefaultAdded

```solidity
event GuardSelectorDefaultAdded(
    bytes32 indexed coreId, address indexed contractAddress, bytes4 indexed functionSelector
);
```

### GuardSelectorDefaultRemoved

```solidity
event GuardSelectorDefaultRemoved(
    bytes32 indexed coreId, address indexed contractAddress, bytes4 indexed functionSelector
);
```

### GuardContractDefaultAdded

```solidity
event GuardContractDefaultAdded(bytes32 indexed coreId, address indexed contractAddress);
```

### GuardContractDefaultRemoved

```solidity
event GuardContractDefaultRemoved(bytes32 indexed coreId, address indexed contractAddress);
```

### NewCoreVersionSet

```solidity
event NewCoreVersionSet(bytes32 indexed coreId, uint256 indexed version, address newImplementation);
```

### ContractUpgraded

```solidity
event ContractUpgraded(
    address indexed caller, bytes32 indexed coreId, uint256 indexed newVersion, address newImplementation
);
```

### CoreVersionDeleted

```solidity
event CoreVersionDeleted(bytes32 indexed coreId, uint256 indexed version, address implementation);
```

### CoreVersionReset

```solidity
event CoreVersionReset(bytes32 indexed coreId, uint256 indexed latestVersion, address priorImplementation);
```

### ContractResetToPatchedVersion

```solidity
event ContractResetToPatchedVersion(
    address indexed caller, bytes32 indexed coreId, uint256 indexed newVersion, address newImplementation
);
```

### DocumentAdded

```solidity
event DocumentAdded(
    address indexed documentOwner, uint256 indexed documentIndex, string indexed documentName, string documentUri
);
```

### DocumentUpdated

```solidity
event DocumentUpdated(
    address indexed documentOwner,
    uint256 indexed documentIndex,
    string indexed updatedDocumentName,
    string updatedDocumentUri,
    uint256 version
);
```

### ImplementationFeeSet

```solidity
event ImplementationFeeSet(address indexed implementationAddress, uint256 newFee);
```

### FeesCollected

```solidity
event FeesCollected(address indexed asset, address indexed hubOwner, uint256 collectionAmount);
```

### InvoiceSent

```solidity
event InvoiceSent(
    address indexed seller,
    address indexed billableParty,
    bytes32 indexed categoryId,
    bytes32 invoiceId,
    address denominationAsset,
    uint256 amount,
    uint256 dueDate,
    string description
);
```

### InvoicePaid

```solidity
event InvoicePaid(
    address indexed seller,
    address indexed billableParty,
    bytes32 indexed categoryId,
    bytes32 invoiceId,
    address payer,
    address denominationAsset,
    uint256 amountPaid,
    uint256 invoiceAmount
);
```

### InvoiceCanceled

```solidity
event InvoiceCanceled(
    address indexed seller,
    address indexed billableParty,
    bytes32 indexed categoryId,
    bytes32 invoiceId,
    address denominationAsset,
    uint256 amount,
    uint256 dueDate,
    uint256 documentIndex
);
```

### InvoiceDocumentUpdated

```solidity
event InvoiceDocumentUpdated(bytes32 indexed invoiceId, uint256 invoiceDocumentIndex, uint256 newDocumentVersion);
```

### AdminAdded

```solidity
event AdminAdded(address admin);
```

### AdminRemoved

```solidity
event AdminRemoved(address admin);
```

### ChildInserted

```solidity
event ChildInserted(address indexed child);
```

### ChildRemoved

```solidity
event ChildRemoved(address indexed child);
```

### AncestorAddedOwner

```solidity
event AncestorAddedOwner(address indexed ancestor, address indexed newOwner);
```

### AncestorRemovedOwner

```solidity
event AncestorRemovedOwner(address indexed ancestor, address indexed removedOwner);
```

### AncestorSwappedGuard

```solidity
event AncestorSwappedGuard(address indexed ancestor, bytes32 newGuardCoreId, address newGuard);
```

### AncestorChangedThreshold

```solidity
event AncestorChangedThreshold(address indexed ancestor, uint256 newThreshold);
```

### Spent

```solidity
event Spent(address indexed asset, uint256 amount, uint256 amountReceived);
```

### SharesIssued

```solidity
event SharesIssued(address indexed to, uint256 value);
```

### SharesAuthorized

```solidity
event SharesAuthorized(uint256 amount);
```

### SharesBurned

```solidity
event SharesBurned(address indexed from, uint256 amount);
```

### DelegateVotesChanged

```solidity
event DelegateVotesChanged(address indexed delegate, uint256 previousVotes, uint256 newVotes);
```

### AssetAddedToCapitalStack

```solidity
event AssetAddedToCapitalStack(address indexed asset, uint256 senioirtyLevelIndex, uint256 assetDocumentIndex);
```

### AssetRemovedFromCapitalStack

```solidity
event AssetRemovedFromCapitalStack(address indexed asset);
```

### ShareClassAdded

```solidity
event ShareClassAdded(address indexed shares);
```

### ShareClassRemoved

```solidity
event ShareClassRemoved(address indexed shares);
```

### GovernorChanged

```solidity
event GovernorChanged(bytes32 indexed governorCoreId, address newGovernor);
```

### PayrollSpent

```solidity
event PayrollSpent(address indexed asset, uint256 amount, uint256 amountPaid);
```

### ChildSpent

```solidity
event ChildSpent(address indexed asset, uint256 amount, uint256 fee);
```

### SharesVested

```solidity
event SharesVested(address indexed owner, address indexed shares, uint256 indexed tokenId, uint256 amountVested);
```

### SharesVestingCompleted

```solidity
event SharesVestingCompleted(
    address indexed owner, address indexed shares, uint256 indexed tokenId, uint256 totalAmountReleased
);
```

### SharesVestingCanceledAtTimepoint

```solidity
event SharesVestingCanceledAtTimepoint(
    address indexed owner,
    address indexed shares,
    uint256 indexed tokenId,
    address cancelor,
    uint256 amountCanceled,
    uint256 timepoint
);
```

### SharesVestingCanceled

```solidity
event SharesVestingCanceled(
    address indexed owner, address indexed shares, uint256 indexed tokenId, address cancelor, uint256 amountCanceled
);
```

### SharesVestingDurationExtended

```solidity
event SharesVestingDurationExtended(address indexed owner, uint256 indexed tokenId, uint256 durationExtension);
```

### SharesVestingAmountIncreased

```solidity
event SharesVestingAmountIncreased(
    address indexed owner, address indexed shares, uint256 indexed tokenId, address sender, uint256 equityExtension
);
```

### SharesReleased

```solidity
event SharesReleased(address indexed owner, address indexed shares, uint256 indexed tokenId, uint256 amountReleased);
```

### DelegateVotesChanged

```solidity
event DelegateVotesChanged(address indexed delegate, address shares, uint256 previousVotes, uint256 newVotes);
```

### SeniorityLevelAdded

```solidity
event SeniorityLevelAdded(
    uint256 indexed seniorityLevelIndex,
    uint8 indexed assetClass,
    uint256 previousSeniorityLevelIndex,
    uint256 nextSeniorityLevelIndex
);
```

### SeniorityLevelRemoved

```solidity
event SeniorityLevelRemoved(
    uint256 indexed seniorityLevelIndex,
    uint8 indexed assetClass,
    uint256 previousSeniorityLevelIndex,
    uint256 nextSeniorityLevelIndex
);
```

### AssetAdded

```solidity
event AssetAdded(uint256 indexed seniorityLevelIndex, address indexed asset, uint256 documentIndex);
```

### AssetRemoved

```solidity
event AssetRemoved(uint256 indexed seniorityLevelIndex, address indexed asset, uint256 documentIndex);
```

### AssetDocumentUpdated

```solidity
event AssetDocumentUpdated(address indexed asset, uint256 indexed documentIndex, uint256 newDocumentVersion);
```

### DelegateChanged

```solidity
event DelegateChanged(address indexed delegator, address indexed fromDelegate, address indexed toDelegate);
```

### EmployeeHired

```solidity
event EmployeeHired(
    address indexed employee,
    uint256 indexed tokenId,
    address indexed hirer,
    uint256 startDate,
    uint256 annualCash,
    uint256 equityAmount,
    uint256 vestingDuration
);
```

### CashPaid

```solidity
event CashPaid(
    address indexed employee,
    uint256 indexed tokenId,
    address indexed recipient,
    address executor,
    address cashAsset,
    uint256 cashToTransfer,
    uint256 cashPaid,
    bytes32 encodedPaymentDetails
);
```

### EquityPaid

```solidity
event EquityPaid(
    address indexed employee,
    uint256 indexed tokenId,
    address indexed recipient,
    address executor,
    uint256 equityToTransfer,
    bytes32 encodedPaymentDetails
);
```

### EmployeeTerminated

```solidity
event EmployeeTerminated(address indexed employee, uint256 tokenId);
```

### UnpaidTimeOffIncreased

```solidity
event UnpaidTimeOffIncreased(address indexed employee, uint256 indexed tokenId, uint256 unpaidTimeOff);
```

### EmployeeResigned

```solidity
event EmployeeResigned(address indexed employee, uint256 tokenId, uint256 endDate);
```

### EmployeeRecipientChanged

```solidity
event EmployeeRecipientChanged(address indexed employee, uint256 indexed tokenId, address newRecipient);
```

### ActionProposed

```solidity
event ActionProposed(bytes32 indexed actionId, address indexed proposer);
```

### CashSalaryChangeProposed

```solidity
event CashSalaryChangeProposed(bytes32 indexed actionId, uint256 indexed tokenId, uint256 newCashSalary);
```

### CashPaymentProposed

```solidity
event CashPaymentProposed(
    bytes32 indexed actionId, uint256 indexed tokenId, uint256 cashPaymentAmount, bytes32 encodedPaymentDetails
);
```

### EquityPaymentProposed

```solidity
event EquityPaymentProposed(
    bytes32 indexed actionId, uint256 indexed tokenId, uint256 equityPaymentAmount, bytes32 encodedPaymentDetails
);
```

### EquityPaymentsExtensionProposed

```solidity
event EquityPaymentsExtensionProposed(
    bytes32 indexed actionId, uint256 indexed tokenId, uint256 equityExtension, uint256 durationExtension
);
```

### NewEquityPaymentsProposed

```solidity
event NewEquityPaymentsProposed(
    bytes32 indexed actionId,
    uint256 indexed tokenId,
    uint256 equityAmount,
    uint256 startDate,
    uint256 vestingDuration,
    uint256 vestingCliff,
    uint256 vestingInitialUnlock
);
```

### PendingActionCanceled

```solidity
event PendingActionCanceled(bytes32 indexed actionId, address indexed canceler);
```

### CashSalaryChanged

```solidity
event CashSalaryChanged(
    address indexed employee, uint256 indexed tokenId, bytes32 indexed actionId, uint256 newCashSalary
);
```

### ExtendedEquityPayments

```solidity
event ExtendedEquityPayments(
    address indexed employee,
    uint256 indexed tokenId,
    bytes32 indexed actionId,
    uint256 equityExtension,
    uint256 durationExtension
);
```

### NewEquityPaymentsSet

```solidity
event NewEquityPaymentsSet(
    address indexed employee,
    uint256 indexed tokenId,
    bytes32 indexed actionId,
    uint256 equityAmount,
    uint256 startDate,
    uint256 vestingDuration,
    uint256 vestingCliff,
    uint256 vestingInitialUnlock
);
```

### EmployeeDocumentUpdated

```solidity
event EmployeeDocumentUpdated(
    address indexed employee, uint256 indexed tokenId, uint256 documentIndex, uint256 newDocumentVersion
);
```

### VotingDelaySet

```solidity
event VotingDelaySet(uint256 newVotingDelay);
```

### VotingPeriodSet

```solidity
event VotingPeriodSet(uint256 newVotingPeriod);
```

### ProposalThresholdPercentageSet

```solidity
event ProposalThresholdPercentageSet(uint256 newProposalThresholdPercentage);
```

### QuorumPercentageSet

```solidity
event QuorumPercentageSet(uint256 newQuorumPercentage);
```

### ProposalCanceled

```solidity
event ProposalCanceled(uint256 proposalId, address canceler);
```

### ProposalExecuted

```solidity
event ProposalExecuted(uint256 proposalId, address executor);
```

### VoteCast

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

### VoteCastWithParams

```solidity
event VoteCastWithParams(
    address indexed voter, uint256 proposalId, uint8 support, uint256 weight, string reason, bytes params
);
```

### Executed

```solidity
event Executed(
    address indexed target, bytes4 indexed functionSelector, address indexed executor, uint256 value, bytes data
);
```

### ProposalCreated

```solidity
event ProposalCreated(
    address indexed proposer,
    address indexed shareClass,
    uint256 proposalId,
    bytes4 action,
    uint256 voteStart,
    uint256 voteEnd,
    string description
);
```

### GovernorChangedTreasuryThreshold

```solidity
event GovernorChangedTreasuryThreshold(uint256 newTreasuryThreshold, uint256 oldThreshold);
```

### ShareClassBoardSeatsIncreased

```solidity
event ShareClassBoardSeatsIncreased(address indexed shareClass, uint256 newBoardSeats, uint256 increaseAmount);
```

### ShareClassBoardMemberAdded

```solidity
event ShareClassBoardMemberAdded(address indexed shareClass, address indexed boardMember);
```

### ShareClassBoardMemberRemoved

```solidity
event ShareClassBoardMemberRemoved(address indexed shareClass, address indexed boardMember);
```

### SelectorAddedToList

```solidity
event SelectorAddedToList(address indexed contractAddress, bytes4 indexed selector);
```

### SelectorRemovedFromList

```solidity
event SelectorRemovedFromList(address indexed contractAddress, bytes4 indexed selector);
```

### ContractAddedToList

```solidity
event ContractAddedToList(address indexed contractAddress);
```

### ContractRemovedFromList

```solidity
event ContractRemovedFromList(address indexed contractAddress);
```

### PricedRoundOpened

```solidity
event PricedRoundOpened(
    uint256 indexed newPricedRoundIndex,
    address pricedRoundAddress,
    uint256 totalSharesForRound,
    uint256 pricePerShare,
    uint256 targetRaise,
    uint256 minimumRaise
);
```

### InvestorAllocationSet

```solidity
event InvestorAllocationSet(address indexed investor, uint128 numberOfShares, int128 discountOrPremium);
```

### InvestorShareAllocationIncreased

```solidity
event InvestorShareAllocationIncreased(address indexed investor, uint128 amount, uint128 newShareAllocation);
```

### InvestorShareAllocationDecreased

```solidity
event InvestorShareAllocationDecreased(address indexed investor, uint128 amount, uint128 newShareAllocation);
```

### RoundOpened

```solidity
event RoundOpened(
    address owner,
    address treasury,
    address denominationAsset,
    address shares,
    uint128 minimumRaise,
    uint128 targetRaise
);
```

### MinimumRaiseIncreased

```solidity
event MinimumRaiseIncreased(uint128 minimumRaiseExtension, uint128 newMinimumRaise);
```

### RoundExtended

```solidity
event RoundExtended(
    uint128 targetRaiseExtension, uint128 totalSharesExtension, uint128 newTargetRaise, uint128 newTotalSharesForRound
);
```

### RoundCanceled

```solidity
event RoundCanceled(uint128 totalRaised, uint128 minimumRaise, uint128 targetRaise, uint128 totalSharesForRound);
```

### RoundClosed

```solidity
event RoundClosed(uint256 totalRaised, uint128 allottedShares);
```

### InvestedInRound

```solidity
event InvestedInRound(address indexed investor, uint128 investmentAmount, uint128 sharesOwed);
```

### InvestmentRevoked

```solidity
event InvestmentRevoked(address indexed investor, uint128 investmentAmount, uint128 sharesOwed);
```

### InvestmentRecouped

```solidity
event InvestmentRecouped(address indexed investor, uint128 investmentAmount, uint128 sharesOwed);
```

### SharesClaimed

```solidity
event SharesClaimed(address indexed investor, uint128 sharesClaimed, uint256 tokenTimelockTokenId);
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.mezzanine.xyz/smart-contracts/source-code/events.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
