| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | // SPDX-License-Identifier: BlueOak-1.0.0
pragma solidity 0.8.17;
import "./IMain.sol";
import "./IVersioned.sol";
/**
* @title IComponent
* @notice A Component is the central building block of all our system contracts. Components
* contain important state that must be migrated during upgrades, and they delegate
* their ownership to Main's owner.
*/
interface IComponent is IVersioned {
function main() external view returns (IMain);
}
|