Distribution proposal
function createDistributionProposal(
IGovPool govPool,
IDistributionProposal distributionProposal
) external {
uint256 proposalId = GovPool(payable(address(govPool))).latestProposalId();
uint256 amount = 10 ether;
IGovPool.ProposalAction[] memory actionsFor = new IGovPool.ProposalAction[](1);
actionsFor[0] = IGovPool.ProposalAction({
executor: address(distributionProposal),
value: 0,
data: abi.encodeWithSelector(
IDistributionProposal.execute.selector,
proposalId,
ETHEREUM_ADDRESS,
amount
)
});
IGovPool.ProposalAction[] memory actionsAgainst = new IGovPool.ProposalAction[](0);
govPool.createProposal("Distribution proposal", actionsFor, actionsAgainst);
}