UNPKG

@nestjs-cqrs-eventsourcing/core

Version:

Event sourcing for nestjs CQRS

36 lines (35 loc) 2.11 kB
import { EventEmitter } from 'events'; import { EventMappings, EventStoreOptions, EventStoreWrapper, EventStream, EventStreamType, EventType, Query, SnapshotType, StorableEvent } from '@nestjs-cqrs-eventsourcing/core'; export declare class Eventstore extends EventEmitter implements EventStoreWrapper { private readonly options; eventMappings: Record<string, string>; private publisher; private dispatcher; private store; constructor(options: EventStoreOptions); useEventPublisher(fn: (e: StorableEvent) => Promise<void>): this; defineEventMappings(mappings: EventMappings): this; init(): Promise<void>; streamEvents(query: Query | string | number, skip: number, limit: number): Promise<EventStreamType>; streamEventsSince(commitStamp: Date, skip: number, limit: number): Promise<EventStreamType>; streamEventsByRevision(query: Query | string, revMin: number, revMax: number): Promise<EventStreamType>; getEvents(query: Query | string, skip?: number, limit?: number): Promise<EventType[]>; countEvents(query: Query | string): Promise<number>; getEvent(index: number): Promise<EventType | null>; getEventsSince(commitStamp: Date, skip?: number, limit?: number): Promise<EventType[]>; getEventsByRevision(query: Query | string, revMin?: number, revMax?: number): Promise<EventType[]>; getEventStream(query: Query | string, revMin?: number, revMax?: number): Promise<EventStream>; getFromSnapshot(query: Query | string, revMax?: number): Promise<[SnapshotType | null, EventStream]>; createSnapshot(obj: SnapshotType & { revision: number | string; }): Promise<void>; commit(eventStream: EventStreamType): Promise<void>; getUndispatchedEvents(query: Query | string): Promise<EventType[] | null>; getLastEvent(query: Query | string): Promise<EventType | null>; getLastEventAsStream(query: Query | string): Promise<EventStream>; setEventToDispatched(evtOrId: { id: number; } | number): Promise<void>; getNewId(): string; createSequence(name: string, startValue: number): Promise<void>; }