/**
 * pipeline/retrieval-metrics.ts
 *
 * Computes retrieval precision and recall by comparing agent-retrieved
 * doc slugs against canonical_docs defined in task definitions.
 *
 * This is a pure computation module — no file I/O beyond reading task files.
 */
import type { RetrievalMetrics, TaskRetrievalMetrics } from "./types.js";
export interface AgenticBehaviorData {
    /** Feature area (from detectFeatureArea) */
    area: string;
    /** Test description (used to match tasks) */
    description: string;
    /** Doc slugs the agent actually visited */
    docSlugsVisited: string[];
    /** Task ID (extracted from description if possible) */
    taskId?: string;
}
/**
 * Compute retrieval metrics from agentic behavior data.
 *
 * @param rootDir  Package root (to find tasks/*.yaml)
 * @param behaviors  Agentic behavior data per task
 * @returns RetrievalMetrics or null if no canonical docs or behavior data
 */
export declare function computeRetrievalMetrics(rootDir: string, behaviors: AgenticBehaviorData[]): null | RetrievalMetrics;
/**
 * Compute retrieval metrics for a single task.
 */
export declare function computeTaskMetrics(taskId: string, area: string, retrieved: string[], canonical: Set<string>): TaskRetrievalMetrics;
/**
 * Load canonical docs from *.task.ts files in tasks/literacy/.
 * Returns a map of taskId → { slugs: Set<string>, area: string }.
 */
export declare function loadCanonicalDocs(rootDir: string): Map<string, {
    area: string;
    slugs: Set<string>;
}>;
