Spark feed generator template
at main 22 lines 573 B view raw
1import { Event } from "@atp/sync"; 2import { Logger } from "@logtape/logtape"; 3import { Database } from "../db/connection.ts"; 4 5/** Context passed to collection handlers */ 6export interface HandlerContext { 7 db: Database; 8 logger: Logger; 9} 10 11/** Handler for a specific collection's events */ 12export interface CollectionHandler { 13 collection: string; 14 handleInsert?: ( 15 ctx: HandlerContext, 16 evt: Event & { event: "create" | "update" }, 17 ) => Promise<void>; 18 handleDelete?: ( 19 ctx: HandlerContext, 20 evt: Event & { event: "delete" }, 21 ) => Promise<void>; 22}