using EventFlow.Aggregates;

namespace Books.Api.Domain.Orders.Events;

/// <summary>
/// Raised when a confirmed order is reverted back to draft status.
/// </summary>
public class OrderRevertedToDraftEvent(
    string revertedBy,
    DateTimeOffset revertedAt,
    string? reason) : AggregateEvent<OrderAggregate, OrderId>
{
    public string RevertedBy { get; } = revertedBy;
    public DateTimeOffset RevertedAt { get; } = revertedAt;
    public string? Reason { get; } = reason;
}
