export type ChangeEventType = 'afterInsert' | 'afterUpdate' | 'afterDelete'; interface ChangeEventBase { type: ChangeEventType; tableName: string; schemaName: string; primaryKey: Record; row: Record; } export interface InsertEvent extends ChangeEventBase { type: 'afterInsert'; } export interface UpdateEvent extends ChangeEventBase { type: 'afterUpdate'; changed: Record; } export interface DeleteEvent extends ChangeEventBase { type: 'afterDelete'; } export type ChangeEvent = InsertEvent | UpdateEvent | DeleteEvent; export interface ConnectionEvents extends Record { afterInsert: InsertEvent; afterUpdate: UpdateEvent; afterDelete: DeleteEvent; } export {};