/**
 * Evaluation mode types.
 *
 * Shared between eval (pipeline orchestrator) and studio (GROQ filters, UI).
 * A new mode added here is immediately visible to both packages.
 */
/**
 * The evaluation modes supported by the pipeline.
 *
 * Canonical mode names identify the KIND of evaluation:
 *   - `literacy` — documentation effectiveness (gold + baseline prompts)
 *   - `knowledge-probe` — raw model knowledge without docs
 *   - `mcp-server` — MCP server tool-call correctness
 *   - `agent-harness` — sandboxed agent coding evaluation
 *   - `custom` — user-provided handler
 *
 * Legacy variant names are accepted by the CLI for backward compatibility
 * and normalized at the CLI boundary to `mode: "literacy"` + `variant`:
 *   - `baseline` → `mode: "literacy", variant: "baseline"`
 *   - `agentic`  → `mode: "literacy", variant: "agentic"`
 *   - `observed` → `mode: "literacy", variant: "observed"`
 *   - `full`     → `mode: "literacy", variant: "full"`
 */
export type EvalMode = "agent-harness" | "custom" | "knowledge-probe" | "literacy" | "mcp-server";
/**
 * Raw eval mode — includes both canonical and legacy names.
 *
 * This is the type that Zod schemas parse from user input (CLI, config, API).
 * Values must pass through `normalizeMode()` before entering typed pipeline
 * code that expects `EvalMode`.
 */
export type RawEvalMode = EvalMode | "agentic" | "baseline" | "full" | "observed";
/**
 * The 5 canonical evaluation modes.
 * Single source of truth — normalizeMode() and Zod schemas derive from these.
 */
export declare const CANONICAL_EVAL_MODES: readonly ["literacy", "mcp-server", "agent-harness", "knowledge-probe", "custom"];
/** Legacy CLI aliases that map to `mode: "literacy"` + variant. */
export declare const LEGACY_EVAL_MODE_ALIASES: readonly ["baseline", "agentic", "observed", "full"];
/**
 * Literacy mode variant names — each is a distinct evaluation strategy.
 *
 * These are the valid values for the `variant` field in PipelineRequest
 * when `mode` is `"literacy"`. They match LEGACY_EVAL_MODE_ALIASES because
 * variants were originally exposed as top-level mode names.
 *
 *   - `baseline` — with-docs / without-docs comparison (gold + floor)
 *   - `agentic`  — model uses tools to find docs (gold only)
 *   - `observed` — HTTP-instrumented behavior observation
 *   - `full`     — combined baseline + agentic
 */
export declare const LITERACY_VARIANTS: readonly ["baseline", "agentic", "observed", "full"];
/** Union of all literacy variant string values. */
export type LiteracyVariant = (typeof LITERACY_VARIANTS)[number];
/** Type guard for `LiteracyVariant` — true when `value` is one of the closed set. */
export declare function isLiteracyVariant(value: unknown): value is LiteracyVariant;
/**
 * All accepted mode names for Zod enum construction.
 * Canonical modes first, then legacy aliases.
 */
export declare const RAW_EVAL_MODES: readonly ["literacy", "mcp-server", "agent-harness", "knowledge-probe", "custom", "baseline", "agentic", "observed", "full"];
