mQuark Interface
struct Entity {
// The creator address of the entity
address creator;
// The createed contract address of the entity's creator
address contractAddress;
// The unique ID of the entity
uint256 id;
// The name of the entity
string name;
// The description of the entity
string description;
// The thumbnail image of the entity
string thumbnail;
// The default URI for the entity's tokens
string entitySlotDefaultURI;
}
function setControllerAddress(address controller) external;
function setSubscriberAddress(address subscriber) external;
function setImplementationAddress(uint8 id, address implementation) external;
function registerEntity(
string calldata entityName,
string calldata description,
string calldata thumbnail,
string calldata entitySlotDefaultURI,
uint256 subscriptionPrice
) external returns (address);
function getEntityId(address contractAddress) external view returns (uint256);
function getEntityAddress(uint256 entityId) external view returns (address);
function getRegisteredEntity(
uint256 entityId
)
external
view
returns (
address contractAddress,
address creator,
uint256 id,
string memory name,
string memory description,
string memory thumbnail,
string memory entitySlotDefaultURI
);
function getSubscriber() external view returns (address);
function getController() external view returns (address);
function getEntitySubscriptionPrice(uint256 entityId) external view returns (uint256);
function getLastEntityId() external view returns (uint256);
function getImplementation(uint8 implementation) external view returns (address);
function getControllerAndSubscriber() external view returns (address, address);
function getEntityIsRegistered(address contractAddress) external view returns (bool);