ProjectAres/API/api/src/main/java/tc/oc/api/docs/Participation.java

34 lines
866 B
Java

package tc.oc.api.docs;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
import java.time.Instant;
import tc.oc.api.annotations.Serialize;
import tc.oc.api.docs.virtual.Model;
import tc.oc.api.model.ModelName;
public interface Participation {
interface Partial extends Model {} // Partials always have _id()
@Serialize
interface Start extends Partial {
@Nonnull Instant start();
@Nullable String team_id();
@Nullable String league_team_id();
@Nonnull String player_id();
@Nonnull String family();
@Nonnull String match_id();
@Nonnull String server_id();
@Nonnull String session_id();
}
@Serialize
interface Finish extends Partial {
@Nullable Instant end();
}
@ModelName("Participation")
interface Complete extends Start, Finish {}
}