test: add TS checks and fix issues
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
import type DomainProjection from "./DomainProjection";
|
||||
import ApplicationUpdates from "./projections/ApplicationUpdates";
|
||||
|
||||
export default class AppProjections {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
interface DomainEvent<T> {
|
||||
export default interface DomainEvent<T> {
|
||||
readonly type: string;
|
||||
readonly createdAt: Date;
|
||||
readonly payload: T;
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
interface DomainProjection {
|
||||
import type DomainEvent from "./DomainEvent";
|
||||
export default interface DomainProjection {
|
||||
handle(event: DomainEvent<any>): void;
|
||||
}
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
import DomainEvent from "./DomainEvent";
|
||||
import DomainProjection from "./DomainProjection";
|
||||
|
||||
export default interface EventStore {
|
||||
append(event: DomainEvent<any>): void;
|
||||
subscribe(projection: DomainProjection): void;
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
import DomainEvent from "../DomainEvent";
|
||||
|
||||
type ApplicationUpdateStartedPayload = {
|
||||
id: string;
|
||||
newVersion: string;
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
import DomainEvent from "../DomainEvent";
|
||||
import DomainProjection from "../DomainProjection";
|
||||
|
||||
export type UpdateDefinition = {
|
||||
id: string;
|
||||
newVersion: string;
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
import AppProjections from "../AppProjections";
|
||||
import AppQueries from "../AppQueries";
|
||||
import DomainEvent from "../DomainEvent";
|
||||
import DomainProjection from "../DomainProjection";
|
||||
import EventStore from "../EventStore";
|
||||
|
||||
export class TestApp {
|
||||
|
||||
Reference in New Issue
Block a user