using System.ComponentModel.DataAnnotations;
using System.Text.Json.Serialization;
using Cleanuparr.Domain.Enums;
namespace Cleanuparr.Persistence.Models.Events;
///
/// Stores structured data for SearchTriggered events.
/// One record per searched item.
///
public class SearchEventData
{
[Key]
public Guid Id { get; set; } = Guid.CreateVersion7();
public Guid AppEventId { get; set; }
[JsonIgnore]
public AppEvent AppEvent { get; set; } = null!;
[MaxLength(500)]
public string ItemTitle { get; set; } = string.Empty;
public SeekerSearchType SearchType { get; set; }
public SeekerSearchReason SearchReason { get; set; }
///
/// Titles of items grabbed after search completion, populated by SeekerCommandMonitor.
///
public List GrabbedItems { get; set; } = [];
}