Skip to content

IAggregateRoot

Defined in: packages/ddd-core/domain/interfaces/aggregate-root.interface.ts:28

The event-buffering contract of an aggregate root, matching NestJS CQRS 12’s IAggregateRoot, so an aggregate built on either class satisfies it.

A dispatcher context is any value the publisher understands, such as { transaction }; undefined lets the publisher choose its default.

EventBase extends IEvent = IEvent

autoCommit: boolean

Defined in: packages/ddd-core/domain/interfaces/aggregate-root.interface.ts:30

When true, apply() publishes each event at once instead of buffering it.

apply<T>(event, isFromHistory?): void

Defined in: packages/ddd-core/domain/interfaces/aggregate-root.interface.ts:49

T extends IEvent = EventBase

T

boolean

void

apply<T>(event, options?): void

Defined in: packages/ddd-core/domain/interfaces/aggregate-root.interface.ts:53

T extends IEvent = EventBase

T

ApplyEventOptions

void


commit(dispatcherContext?): unknown

Defined in: packages/ddd-core/domain/interfaces/aggregate-root.interface.ts:45

Hands the buffered events to publishAll() and clears the buffer once it returns, before an asynchronous publisher settles; returns its result.

unknown

unknown


getUncommittedEvents(): EventBase[]

Defined in: packages/ddd-core/domain/interfaces/aggregate-root.interface.ts:47

EventBase[]


loadFromHistory(history): void

Defined in: packages/ddd-core/domain/interfaces/aggregate-root.interface.ts:48

EventBase[]

void


publish<T>(event, dispatcherContext?): unknown

Defined in: packages/ddd-core/domain/interfaces/aggregate-root.interface.ts:32

Returns what the connected publisher returns, or undefined when none is.

T extends IEvent = EventBase

T

unknown

unknown


publishAll<T>(events, dispatcherContext?): unknown

Defined in: packages/ddd-core/domain/interfaces/aggregate-root.interface.ts:37

Returns what the connected publisher returns, or undefined when none is.

T extends IEvent = EventBase

T[]

unknown

unknown


uncommit(): void

Defined in: packages/ddd-core/domain/interfaces/aggregate-root.interface.ts:46

void