namespace Backend.Contracts;

public sealed record NominationEntryRequest(
    string? Name,
    string StreamUrl);

public sealed record CreateNominationRequest(
    int Year,
    int? CategoryId,
    string? CategoryGroupName,
    string TwitchUserId,
    string[]? Nominees,
    NominationEntryRequest[]? Nominations);

public sealed record VoteEntryRequest(
    int CategoryId,
    int CandidateId);

public sealed record CreateVoteRequest(
    int SeasonId,
    string TwitchUserId,
    VoteEntryRequest[] Entries);

public sealed record CreateClipRequest(
    int Year,
    int? CategoryId,
    int? CandidateId,
    string TwitchUserId,
    string ClipUrl,
    string Title,
    string Creator);
