* @title Olympics DAO Competition
* @dev ICompetition interface
event PartnerMemberAdded();
event CheckpointCreated();
event CheckpointPassed();
event ParticipantAdded(address indexed _member);
@dev Adds a member of the Olympics DAO to the competition.
access: public (will fail if the signer is not a part of the OlympicsDAO Community)
function join() external;
function addPartnerMemberToCompetition(address member) external;
@dev Creates a checkpoint for the competition. Assigns the off chain metadata to the checkpoint.
@param metadata - off-chain metadata stored on IPFS as a JSON file
access: only core team members
function createCheckpoint(
uint256[3] calldata skills
@dev Returns list of the addresses of the participants
function getParticipants() external returns (address[] memory);
@dev Returns list of the addresses of the partners members
function getPartnerMembers() external returns (address[] memory);
@dev Returns whether a competition is ongoing.
function isOngoing() external view returns (bool);
@return bool if the passed address is a participanting in the competition
function isParticipant(address member) external view returns (bool);
@return bool if the passed address is a partner member in the competition
function isPartner(address member) external view returns (bool);