namespace TrackQrApi.Models;

public enum EventType
{
    Click,
    Scan
}

public class Event
{
    public long Id { get; set; }
    public Guid WorkspaceId { get; set; }
    public Guid ShortLinkId { get; set; }
    public Guid? QRCodeId { get; set; }
    public EventType Type { get; set; }
    public DateTime Timestamp { get; set; }
    public string? IpHash { get; set; }
    public string? UserAgent { get; set; }
    public string? Referrer { get; set; }
    public string? CountryCode { get; set; }
    public string? DeviceType { get; set; }
    public string? DedupeKey { get; set; }

    // Navigation properties
    public Workspace Workspace { get; set; } = null!;
    public ShortLink ShortLink { get; set; } = null!;
    public QRCodeDesign? QRCode { get; set; }
}