using System;

namespace SharedLibraryCore.Events;

public abstract class CoreEvent
{
    public Guid Id { get; } = Guid.NewGuid();
    public Guid? CorrelationId { get; init; }
    public object Source { get; set; }
    public DateTimeOffset CreatedAt { get; } = DateTimeOffset.UtcNow;
    public DateTimeOffset? ProcessedAt { get; set; }
}
