import { defineDebug } from "./pi-ext-debug.ts"; type DebugFields = Partial<{ mode: "interactive" | "json" | "print" | "rpc" | "tui"; count: number; status: "wrapped" | "outside" | "missing" | "empty" | "not_text"; type: "clone" | "readpath"; }>; type DebugEvent = "session.start" | "session.shutdown"; type DebugSpan = "clone" | "read.spotlight"; export const { dbg, span, closeDebug, }: { dbg: ((event: DebugEvent, details?: DebugFields) => void) | undefined; span: | (( event: DebugSpan, details?: DebugFields, ) => (outcome?: "finish" | "error", details?: DebugFields) => void) | undefined; closeDebug: () => void; } = defineDebug({ events: ["session.start", "session.shutdown"], spans: ["clone", "read.spotlight"], fields: { mode: ["interactive", "json", "print", "rpc", "tui"], count: "number", status: ["wrapped", "outside", "missing", "empty", "not_text"], type: ["clone", "readpath"], }, } as const);