Skip to content

EventStore

API reference for EventStore

@delta-base/toolkit


Unified EventStore interface combining the best patterns from all packages

This is the canonical interface for all event store implementations

StreamVersion = StreamPosition

aggregateStream<State, EventType>(streamId, options): Promise<AggregateStreamResult<State, StreamVersion>>

Aggregate events from a stream to rebuild state

State

EventType extends Readonly<{ data: EventData; metadata?: PlatformEventMetadata; type: string; }>

string

AggregateStreamOptions<State, EventType, StreamVersion>

Promise<AggregateStreamResult<State, StreamVersion>>


appendToStream<EventType>(streamId, events, options?): Promise<AppendToStreamResult<StreamVersion>>

Append events to a stream with optimistic concurrency control

EventType extends Readonly<{ data: EventData; metadata?: PlatformEventMetadata; type: string; }>

string

EventType[]

AppendToStreamOptions<StreamVersion>

Promise<AppendToStreamResult<StreamVersion>>


queryEvents<EventType>(options?): Promise<QueryEventsResult<EventType>>

Query events across streams with flexible filtering options

EventType extends Readonly<{ data: EventData; metadata?: PlatformEventMetadata; type: string; }>

QueryEventsOptions

Promise<QueryEventsResult<EventType>>


readStream<EventType>(streamId, options?): Promise<ReadStreamResult<EventType, StreamVersion>>

Read events from a stream with filtering and pagination

EventType extends Readonly<{ data: EventData; metadata?: PlatformEventMetadata; type: string; }>

string

ReadStreamOptions<StreamVersion>

Promise<ReadStreamResult<EventType, StreamVersion>>