evtstore
Version:
Event Sourcing with Node.JS
32 lines (31 loc) • 1.11 kB
TypeScript
import { Event, Provider, Ext, Handler, EventMeta, HandlerBookmark, HandlerBody, HandlerHooks, DomainHandlerOpts } from './types';
type Options<E extends Event> = {
stream: string | string[];
bookmark: HandlerBookmark;
provider: Provider<E> | Promise<Provider<E>>;
hooks?: HandlerHooks;
} & DomainHandlerOpts;
export declare class EventHandler<E extends Event> implements Handler<E> {
name: string;
private bookmark;
private streams;
private provider;
private position;
private running;
private tailStream;
private alwaysTailStream;
private continueOnError;
private __handlers;
private hooks;
constructor(opts: Options<E>);
handle: <T extends E["type"]>(type: T, cb: (aggregateId: string, event: Ext<E, T>, meta: EventMeta) => Promise<void>) => void;
handlers: (body: HandlerBody<E>) => void;
start: () => void;
stop: () => void;
reset: () => void;
runOnce: (runningCount?: number) => Promise<number>;
getPosition: () => Promise<any>;
setPosition: () => Promise<void>;
run: () => Promise<void>;
}
export {};