IJBController3_1
Inherits:
IJBController3_0_1, ERC165
Functions
projects
function projects() external view returns (IJBProjects);
fundingCycleStore
function fundingCycleStore() external view returns (IJBFundingCycleStore);
tokenStore
function tokenStore() external view returns (IJBTokenStore);
splitsStore
function splitsStore() external view returns (IJBSplitsStore);
fundAccessConstraintsStore
function fundAccessConstraintsStore() external view returns (IJBFundAccessConstraintsStore);
directory
function directory() external view returns (IJBDirectory);
reservedTokenBalanceOf
function reservedTokenBalanceOf(uint256 _projectId) external view returns (uint256);
totalOutstandingTokensOf
function totalOutstandingTokensOf(uint256 _projectId) external view returns (uint256);
getFundingCycleOf
function getFundingCycleOf(uint256 _projectId, uint256 _configuration)
    external
    view
    returns (JBFundingCycle memory fundingCycle, JBFundingCycleMetadata memory metadata);
latestConfiguredFundingCycleOf
function latestConfiguredFundingCycleOf(uint256 _projectId)
    external
    view
    returns (JBFundingCycle memory, JBFundingCycleMetadata memory metadata, JBBallotState);
currentFundingCycleOf
function currentFundingCycleOf(uint256 _projectId)
    external
    view
    returns (JBFundingCycle memory fundingCycle, JBFundingCycleMetadata memory metadata);
queuedFundingCycleOf
function queuedFundingCycleOf(uint256 _projectId)
    external
    view
    returns (JBFundingCycle memory fundingCycle, JBFundingCycleMetadata memory metadata);
launchProjectFor
function launchProjectFor(
    address _owner,
    JBProjectMetadata calldata _projectMetadata,
    JBFundingCycleData calldata _data,
    JBFundingCycleMetadata calldata _metadata,
    uint256 _mustStartAtOrAfter,
    JBGroupedSplits[] memory _groupedSplits,
    JBFundAccessConstraints[] memory _fundAccessConstraints,
    IJBPaymentTerminal[] memory _terminals,
    string calldata _memo
) external returns (uint256 projectId);
launchFundingCyclesFor
function launchFundingCyclesFor(
    uint256 _projectId,
    JBFundingCycleData calldata _data,
    JBFundingCycleMetadata calldata _metadata,
    uint256 _mustStartAtOrAfter,
    JBGroupedSplits[] memory _groupedSplits,
    JBFundAccessConstraints[] memory _fundAccessConstraints,
    IJBPaymentTerminal[] memory _terminals,
    string calldata _memo
) external returns (uint256 configuration);
reconfigureFundingCyclesOf
function reconfigureFundingCyclesOf(
    uint256 _projectId,
    JBFundingCycleData calldata _data,
    JBFundingCycleMetadata calldata _metadata,
    uint256 _mustStartAtOrAfter,
    JBGroupedSplits[] memory _groupedSplits,
    JBFundAccessConstraints[] memory _fundAccessConstraints,
    string calldata _memo
) external returns (uint256);
mintTokensOf
function mintTokensOf(
    uint256 _projectId,
    uint256 _tokenCount,
    address _beneficiary,
    string calldata _memo,
    bool _preferClaimedTokens,
    bool _useReservedRate
) external returns (uint256 beneficiaryTokenCount);
burnTokensOf
function burnTokensOf(
    address _holder,
    uint256 _projectId,
    uint256 _tokenCount,
    string calldata _memo,
    bool _preferClaimedTokens
) external;
distributeReservedTokensOf
function distributeReservedTokensOf(uint256 _projectId, string memory _memo) external returns (uint256);
migrate
function migrate(uint256 _projectId, IJBMigratable _to) external;
Events
LaunchProject
event LaunchProject(uint256 configuration, uint256 projectId, string memo, address caller);
LaunchFundingCycles
event LaunchFundingCycles(uint256 configuration, uint256 projectId, string memo, address caller);
ReconfigureFundingCycles
event ReconfigureFundingCycles(uint256 configuration, uint256 projectId, string memo, address caller);
DistributeReservedTokens
event DistributeReservedTokens(
    uint256 indexed fundingCycleConfiguration,
    uint256 indexed fundingCycleNumber,
    uint256 indexed projectId,
    address beneficiary,
    uint256 tokenCount,
    uint256 beneficiaryTokenCount,
    string memo,
    address caller
);
DistributeToReservedTokenSplit
event DistributeToReservedTokenSplit(
    uint256 indexed projectId,
    uint256 indexed domain,
    uint256 indexed group,
    JBSplit split,
    uint256 tokenCount,
    address caller
);
MintTokens
event MintTokens(
    address indexed beneficiary,
    uint256 indexed projectId,
    uint256 tokenCount,
    uint256 beneficiaryTokenCount,
    string memo,
    uint256 reservedRate,
    address caller
);
BurnTokens
event BurnTokens(address indexed holder, uint256 indexed projectId, uint256 tokenCount, string memo, address caller);
Migrate
event Migrate(uint256 indexed projectId, IJBMigratable to, address caller);
PrepMigration
event PrepMigration(uint256 indexed projectId, address from, address caller);