all files / contracts/v1.0.1/core/interfaces/ IDAOFactory.sol

100% Statements 0/0
100% Branches 0/0
100% Functions 0/0
100% Lines 0/0
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30                                                           
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
 
import "./IDAOModule.sol";
 
interface IDAOFactory {
    function getCoreImplementation(string calldata version)
        external
        view
        returns (
            address daoImpl,
            address tokenImpl,
            address treasuryImpl,
            address stakingImpl
        );
 
    function getModuleImplementation(
        IDAOModule.ModuleType moduleType,
        string calldata version
    ) external view returns (address implementation);
 
    function getModuleVersions(IDAOModule.ModuleType moduleType) 
        external view returns (string[] memory);
 
    function getLatestModuleVersion(IDAOModule.ModuleType moduleType) 
        external view returns (string memory);
 
    function getAvailableVersions() external view returns (string[] memory);
}