using System.Collections.Generic; using Wino.Core.Domain.Entities.Calendar; using Wino.Core.Domain.Enums; namespace Wino.Core.Domain.Models.Calendar; /// /// Encapsulates the options for preparing calendar operation requests. /// /// Calendar operation to execute (Create, Update, ChangeStartAndEndDate, Delete, Accept, Decline, Tentative). /// Calendar item to operate on. /// List of attendees for the calendar event. /// Optional message to include with event responses (Accept, Decline, Tentative). /// Original calendar item state before update (for revert capability). /// Original attendees list before update (for revert capability). public record CalendarOperationPreparationRequest( CalendarSynchronizerOperation Operation, CalendarItem CalendarItem = null, List Attendees = null, string ResponseMessage = null, CalendarItem OriginalItem = null, List OriginalAttendees = null, CalendarEventComposeResult ComposeResult = null);