/**
 * regression-vs-baseline card — LLM-driven run comparison card.
 *
 * Model: claude-opus-4-6 (high-stakes per AI-SPEC §4 model routing)
 * Version: regression-vs-baseline@0.1.0
 *
 * DIAG-05: emits ONLY when `ctx.baseline` is set. When baseline is absent,
 * returns `status: "missing", reason: "no --compare baseline supplied"`.
 *
 * Mitigations:
 * - failure-mode #1: `buildRegressionVsBaselinePrompt` computes deltas in JS
 *   BEFORE the LLM call; schema refine asserts sign-consistency (R3)
 *
 * Schema is in the D0045 trust-boundary scan root; `satisfies` clause is
 * mandatory.
 *
 * @see .planning/phases/05-diagnosis-engine-cli-llm-cards/05-AI-SPEC.md §3 lines 603-664
 */
import { z } from "zod";
import type { CardGenerator } from "../../diagnosis-runner.js";
/**
 * Module-level static shape only. Per-call adds:
 * - sign-consistency refine (R3): Math.sign(pointsDelta) === directionSign(direction)
 */
export declare const RegressionVsBaselineBodySchema: z.ZodObject<{
    summary: z.ZodString;
    deltas: z.ZodArray<z.ZodObject<{
        area: z.ZodString;
        direction: z.ZodEnum<{
            improved: "improved";
            regressed: "regressed";
            unchanged: "unchanged";
        }>;
        pointsDelta: z.ZodNumber;
        drivers: z.ZodArray<z.ZodString>;
    }, z.core.$strip>>;
    overallTrend: z.ZodEnum<{
        "net-improved": "net-improved";
        "net-regressed": "net-regressed";
        mixed: "mixed";
        stable: "stable";
    }>;
}, z.core.$strip>;
export declare const generateRegressionVsBaseline: CardGenerator;
