evtstore
Version:
Event Sourcing with Node.JS
26 lines (25 loc) • 895 B
TypeScript
import { EventHandler } from './event-handler';
import { HandlerBookmark, Provider, StreamsHandler, Event, HandlerBody, DomainHandlerOpts } from './types';
type Options<Body extends {
[key: string]: Event;
}> = {
bookmark: HandlerBookmark;
streams: Array<keyof Body>;
provider: Provider<Event> | Promise<Provider<Event>>;
} & DomainHandlerOpts;
export declare function createHandler<Body extends {
[key: string]: Event;
}>(options: Options<Body>): {
handle: StreamsHandler<Body>;
handleStream: <S extends keyof Body>(stream: S, handlers: HandlerBody<Body[S]>) => void;
start: () => void;
stop: () => void;
runOnce: (runningCount?: number) => Promise<number>;
run: () => Promise<void>;
setPosition: () => Promise<void>;
getPosition: () => Promise<any>;
reset: () => void;
__handler: EventHandler<Event>;
name: string;
};
export {};