Base class for aggregate roots in Domain-Driven Design.
Base class for domain entities.
Base value object for entity identifiers.
Factory interface for creating domain entities.
Repository interface for persisting and retrieving entities.
A common EntityId implementation that uses UUID strings as identifiers. This class can be extended by entities that require a unique identifier.