UNPKG

@cashfarm/plow

Version:

Library for validating input data and parameters

21 lines (20 loc) 945 B
import * as EventStore from 'node-eventstore-client'; import { Guid, Type } from '@cashfarm/lang'; import { Identity } from '../../domain'; import { EventEnvelope } from '../eventEnvelope'; import { IEventStore } from '../iEventStore'; import { ESAggregateRoot } from '../../eventSourcing/esAggregateRoot'; export declare class GesEventStore implements IEventStore { private host; private port; private settings; constructor(host?: string, port?: number, settings?: EventStore.ConnectionSettings); save<T extends ESAggregateRoot<Identity<Guid>>>(aggregate: T): Promise<number>; getEventsByAggregate(aggregateType: Type, aggregateId: Identity<Guid>): Promise<EventEnvelope[]>; private convertToEnvelope(event); private saveEvents(aggtType, aggtId, events, expectedVersion); private getEvents(streamName, start, limit?); private withConn<T>(f); private connect(); private getStreamName(type, id); }