/* * File: D:\shadowed-realms-mobile\ShadowedRealmsMobile\src\server\ShadowedRealms.Shared\DTOs\Alliance\HostSelectionResponseDto.cs * Created: 2025-10-22 * Last Modified: 2025-10-22 * Description: Response DTO for KvK host selection and democratic leadership * Last Edit Notes: Initial creation following established Alliance DTO patterns */ namespace ShadowedRealms.Shared.DTOs.Alliance { /// /// Response DTO for KvK host selection and democratic leadership /// public class HostSelectionResponseDto { /// /// Unique identifier for the host selection process /// public int SelectionId { get; set; } /// /// KvK event this selection is for /// public int KvKEventId { get; set; } /// /// Current host alliance (if selected) /// public int? HostAllianceId { get; set; } /// /// Name of the host alliance /// public string? HostAllianceName { get; set; } /// /// Alliances eligible to be hosts /// public List> EligibleHosts { get; set; } = new(); /// /// Current voting results /// public Dictionary VotingResults { get; set; } = new(); /// /// Alliances that have voted /// public List> VotingParticipants { get; set; } = new(); /// /// Selection criteria and requirements /// public Dictionary SelectionCriteria { get; set; } = new(); /// /// Time remaining for voting /// public TimeSpan? VotingTimeRemaining { get; set; } /// /// Minimum votes required for selection /// public int MinimumVotes { get; set; } /// /// Selection status (Nominating, Voting, Completed, Failed) /// public string SelectionStatus { get; set; } = string.Empty; /// /// Host responsibilities and privileges /// public Dictionary HostResponsibilities { get; set; } = new(); /// /// When the selection process started /// public DateTime SelectionStarted { get; set; } /// /// When this selection information was last updated /// public DateTime LastUpdated { get; set; } = DateTime.UtcNow; } }