Abstract base class for domain events.
Implements IDomainEvent<T>. Auto-generates id and occurredOn from
IRuntimeServices (never Date.now()). Optional aggregateId/version
are omitted from the object when not supplied (honors exactOptionalPropertyTypes).
readonly
id: string
Unique event ID.
readonly
occurredOn: Date
When the event occurred.
abstract
readonly
type: string
Event type name (e.g. "UserCreated").