29 lines
857 B
C#
29 lines
857 B
C#
using System;
|
|
using Svrnty.CQRS.Events.Abstractions.EventStore;
|
|
|
|
namespace Svrnty.CQRS.Events.Abstractions.EventStore;
|
|
|
|
/// <summary>
|
|
/// Base interface for all events that can be correlated to a command execution.
|
|
/// Events are emitted during command processing and can be subscribed to by clients.
|
|
/// </summary>
|
|
public interface ICorrelatedEvent
|
|
{
|
|
/// <summary>
|
|
/// Unique identifier for this event occurrence.
|
|
/// </summary>
|
|
string EventId { get; }
|
|
|
|
/// <summary>
|
|
/// Correlation ID linking this event to the command that caused it.
|
|
/// Multiple events can share the same correlation ID.
|
|
/// Set by the framework after event emission.
|
|
/// </summary>
|
|
string CorrelationId { get; set; }
|
|
|
|
/// <summary>
|
|
/// UTC timestamp when this event occurred.
|
|
/// </summary>
|
|
DateTimeOffset OccurredAt { get; }
|
|
}
|