import type { BugReportInput } from "./types.js";
import type { BugInvestigationEvent, BugWorkflowEventSink } from "./events.js";
export declare function computeBugFingerprint(report: BugReportInput, modelId: string): string;
type EnvelopeFields = "schemaVersion" | "runId" | "fingerprint" | "seq" | "ts";
export type BugEventBody = {
    [E in BugInvestigationEvent as E["type"]]: Omit<E, EnvelopeFields>;
}[BugInvestigationEvent["type"]];
export interface BugEventEmitter {
    readonly emit: (body: BugEventBody) => void;
}
export declare function createBugEventEmitter(sink: BugWorkflowEventSink, runId: string, fingerprint: string, now: () => number): BugEventEmitter;
export {};
//# sourceMappingURL=emit.d.ts.map