UNPKG

@chassisjs/hermes

Version:

Production-Ready TypeScript Outbox Pattern

13 lines (12 loc) 429 B
import { DefaultRecord } from './common.js'; type Event<EventType extends string = string, EventData extends DefaultRecord = DefaultRecord, EventMetaData extends DefaultRecord | undefined = undefined> = Readonly<EventMetaData extends undefined ? { type: EventType; data: EventData; } : { type: EventType; data: EventData; metadata: EventMetaData; }> & { readonly kind?: 'Event'; }; export type { Event };