using RegexBot.Common; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; namespace RegexBot.Data; /// /// Represents a moderation log entry. /// [Table("modlogs")] public class ModLogEntry : ISharedEvent { /// /// Gets the ID number for this entry. /// [Key] public int LogId { get; set; } /// /// Gets the date and time when this entry was logged. /// public DateTimeOffset Timestamp { get; set; } /// public ulong GuildId { get; set; } /// /// Gets the ID of the users for which this log entry pertains. /// public ulong UserId { get; set; } /// /// Gets the type of log message this represents. /// public ModLogType LogType { get; set; } /// /// Gets the the entity which issued this log item. /// If it was a user, this value preferably is in the format. /// public string IssuedBy { get; set; } = null!; /// /// Gets any additional message associated with this log entry. /// public string? Message { get; set; } /// /// Gets the associated for this entry. This entity is auto-included. /// public CachedGuildUser User { get; set; } = null!; }