UNPKG

woltage

Version:

A CQRS and Event-Sourcing Framework

44 lines (43 loc) 1.28 kB
import { z } from 'zod/v4'; import type Projector from './Projector.ts'; import Event from '../Event.ts'; import type { IStore } from '../adapters/Store.ts'; declare const configDefinition: { _woltage: { key: z.ZodObject<{ projectionId: z.ZodString; }, z.core.$strip>; schema: z.ZodObject<{ position: z.ZodBigInt; }, z.core.$strip>; }; }; declare class Projection { #private; static getId(name: string, version: number): string; readonly id: string; readonly name: string; readonly version: number; storeName?: string; projector: Projector<typeof configDefinition>; constructor(name: string, version: number, ProjectorClass: typeof Projector, store: IStore<typeof configDefinition>); get isReplaying(): boolean; get isLiveTracking(): boolean; init(): Promise<void>; onEvent(event: Event): Promise<void>; stop(): Promise<void>; toJSON(): { id: string; name: string; version: number; storeName: string | undefined; isReplaying: boolean; isLiveTracking: boolean; latestPosition: string; projector: { name: string; version: number; }; }; } export default Projection;