woltage
Version:
A CQRS and Event-Sourcing Framework
15 lines (14 loc) • 621 B
TypeScript
import type Projector from './Projector.ts';
import validate from '../validate.ts';
import type { z } from 'zod/v4';
declare abstract class ReadModel<TProjector extends Projector<any> = any> {
static getName(className: string): string;
static toString(): string;
static get<T extends new (...args: any) => ReadModel>(this: T): InstanceType<T>;
abstract readonly projectionName: string;
readonly schemaRegistry: Partial<Record<string, z.ZodType>>;
get store(): TProjector['store'];
call(handlerName: string, query: any): Promise<any>;
validate: typeof validate;
}
export default ReadModel;