import { z } from 'zod'; import type { CockpitEvent } from './diff.js'; export declare const CockpitEventSchema: z.ZodObject<{ type: z.ZodLiteral<"issue-transition">; ts: z.ZodString; repo: z.ZodString; kind: z.ZodEnum<["issue", "pr"]>; number: z.ZodNumber; from: z.ZodUnion<[z.ZodEnum<["pending", "active", "waiting", "error", "terminal", "stage-complete", "unknown"]>, z.ZodNull]>; to: z.ZodUnion<[z.ZodEnum<["pending", "active", "waiting", "error", "terminal", "stage-complete", "unknown"]>, z.ZodNull]>; sourceLabel: z.ZodNullable; url: z.ZodString; event: z.ZodEnum<["label-change", "issue-closed", "pr-merged", "pr-closed", "pr-checks"]>; labels: z.ZodArray; initial: z.ZodOptional>; checks: z.ZodOptional>; }, "strip", z.ZodTypeAny, { number: number; event: "label-change" | "issue-closed" | "pr-merged" | "pr-closed" | "pr-checks"; repo: string; from: "error" | "pending" | "unknown" | "active" | "waiting" | "terminal" | "stage-complete" | null; to: "error" | "pending" | "unknown" | "active" | "waiting" | "terminal" | "stage-complete" | null; type: "issue-transition"; url: string; sourceLabel: string | null; labels: string[]; kind: "issue" | "pr"; ts: string; checks?: "pending" | "green" | "red" | undefined; initial?: true | undefined; }, { number: number; event: "label-change" | "issue-closed" | "pr-merged" | "pr-closed" | "pr-checks"; repo: string; from: "error" | "pending" | "unknown" | "active" | "waiting" | "terminal" | "stage-complete" | null; to: "error" | "pending" | "unknown" | "active" | "waiting" | "terminal" | "stage-complete" | null; type: "issue-transition"; url: string; sourceLabel: string | null; labels: string[]; kind: "issue" | "pr"; ts: string; checks?: "pending" | "green" | "red" | undefined; initial?: true | undefined; }>; export type CockpitEventValidated = z.infer; export interface EmitOptions { stdout?: { write(chunk: string): boolean | void; }; skipValidate?: boolean; } /** * Emit one NDJSON-encoded line per CockpitEvent. * * Validation runs by default (dev-time defense). Writes via a single * `process.stdout.write` (no `console.log` — that interleaves under high * concurrency). */ export declare function emit(event: CockpitEvent, opts?: EmitOptions): void; //# sourceMappingURL=emit.d.ts.map