evtstore
Version:
Event Sourcing with Node.JS
19 lines (18 loc) • 893 B
TypeScript
import { Event, Aggregate, StorableAggregate, Fold, ProvidedAggregate, Provider } from './types';
type AggOpts<E extends Event, A extends Aggregate, S extends string> = {
stream: S;
create: () => A;
fold: Fold<E, A>;
version?: string;
persistAggregate?: boolean;
};
export declare function createAggregate<E extends Event, A extends Aggregate, S extends string>(opts: AggOpts<E, A, S>): StorableAggregate<E, A, S>;
export declare function createProvidedAggregate<E extends Event, A extends Aggregate>(opts: StorableAggregate<E, A> & {
provider: Provider<E> | Promise<Provider<E>>;
useCache?: boolean;
}): ProvidedAggregate<E, A>;
export declare function createPersistedAggregate<E extends Event, A extends Aggregate>(opts: StorableAggregate<E, A> & {
provider: Provider<E> | Promise<Provider<E>>;
useCache?: boolean;
}): ProvidedAggregate<E, A>;
export {};