import type { TransitionEvidence } from "../../core/planning/index.js";
import type { EvidenceKind, ConfidenceResult, ConfidenceSignals } from "./confidence.js";
import type { ImprovementStateDocument } from "./improvement-state.js";
export type ImprovementHeuristicVersion = 1 | 2;
/** Optional scout-origin fields merged into improvement task metadata when present. */
export type ScoutProposalMeta = {
    primaryLens?: string;
    adversarialLens?: string;
    findingType?: string;
    evidenceAnchors?: string[];
    riskNotes?: string;
    noveltyHint?: string;
};
export type IngestCandidate = {
    evidenceKind: EvidenceKind;
    evidenceKey: string;
    title: string;
    provenanceRefs: Record<string, string>;
    signals: ConfidenceSignals;
    confidence: ConfidenceResult;
    scoutMeta?: ScoutProposalMeta;
};
export declare function ingestAgentTranscripts(workspacePath: string, transcriptsRootRel: string, state: ImprovementStateDocument, heuristicVersion?: ImprovementHeuristicVersion): Promise<IngestCandidate[]>;
export declare function ingestGitDiffBetweenTags(workspacePath: string, fromTag: string, toTag: string, heuristicVersion?: ImprovementHeuristicVersion): IngestCandidate | null;
export declare function ingestPolicyDenials(workspacePath: string, state: ImprovementStateDocument, heuristicVersion?: ImprovementHeuristicVersion, effectiveConfig?: Record<string, unknown>): Promise<IngestCandidate[]>;
export declare function ingestConfigMutations(workspacePath: string, state: ImprovementStateDocument, heuristicVersion?: ImprovementHeuristicVersion): Promise<IngestCandidate[]>;
export declare function ingestTaskTransitionFriction(transitionLog: TransitionEvidence[], state: ImprovementStateDocument, heuristicVersion?: ImprovementHeuristicVersion): IngestCandidate[];
/**
 * @deprecated New recommendations allocate the next **`T###`** (`allocateNextTaskNumericId` in task-engine).
 * Kept for tests and any external callers that still derive stable ids from evidence keys.
 */
export declare function taskIdForEvidenceKey(evidenceKey: string): string;
