using System;
using SQLite;
using Wino.Core.Domain.Enums;
namespace Wino.Core.Domain.Entities.Calendar;
///
/// Represents metadata for calendar event attachments.
/// Actual file content is downloaded on-demand.
///
public class CalendarAttachment
{
[PrimaryKey]
public Guid Id { get; set; }
///
/// The calendar item this attachment belongs to.
///
public Guid CalendarItemId { get; set; }
///
/// Remote identifier for the attachment from the provider (Outlook, Gmail, etc.).
///
public string RemoteAttachmentId { get; set; }
///
/// File name of the attachment.
///
public string FileName { get; set; }
///
/// Size of the attachment in bytes.
///
public long Size { get; set; }
///
/// MIME content type (e.g., "application/pdf", "image/png").
///
public string ContentType { get; set; }
///
/// Whether the attachment has been downloaded to local storage.
///
public bool IsDownloaded { get; set; }
///
/// Local file path where the attachment is stored (if downloaded).
///
public string LocalFilePath { get; set; }
///
/// When the attachment was last modified.
///
public DateTimeOffset LastModified { get; set; }
}