import { z } from "zod"; import { type ToolEpisodeEvent } from "@openpond/evals/tool-learning"; export declare const ToolLearningEpisodeAssemblySchema: z.ZodObject<{ state: z.ZodEnum<{ ambiguous: "ambiguous"; awaiting_owner_review: "awaiting_owner_review"; incomplete: "incomplete"; }>; issues: z.ZodArray>; groups: z.ZodArray; server: z.ZodNullable; }, z.core.$strict>; environmentFingerprints: z.ZodArray; attempts: z.ZodArray>; }, z.core.$strict>>; }, z.core.$strict>; /** Structural assembly of retained calls, never recovery verification or label * approval. Conflicting observations remain visible instead of selecting the * most recently received answer. Recovery/verifier claims retain their separate * owner authority and are not promoted by this read projection. */ export declare function assembleToolLearningEpisode(raw: readonly ToolEpisodeEvent[]): { state: "ambiguous" | "awaiting_owner_review" | "incomplete"; issues: ("completion_not_observed" | "conflicting_event" | "conflicting_observations" | "lineage_mismatch" | "missing_attempt" | "missing_observation" | "mixed_scope" | "reference_mismatch")[]; groups: { key: string; application: string; applicationVersion: string; tool: { name: string; version: string | null; server: string | null; }; environmentFingerprints: string[]; attempts: { id: string; contentHash: string; }[]; }[]; }; //# sourceMappingURL=tool-learning-episodes.d.ts.map