import type { QualityIntelligence } from "@oscharko-dev/keiko-contracts";
export type QualityIntelligenceWorkflowId = "qi:test-design" | "qi:coverage-review" | "qi:validation" | "qi:artifact-refinement";
export interface QualityIntelligenceWorkflowLimits {
    /** Wall-clock soft limit per stage (advisory, used to bound dispatcher waits). */
    readonly stageTimeoutMs: number;
    /** Total candidates a single test-design run may emit (truncated past). */
    readonly maxCandidatesPerRun: number;
    /** Total findings a single validation run may emit (truncated past). */
    readonly maxFindingsPerRun: number;
    /**
     * Maximum model gateway dispatches the GENERATION stage(s) may make per run. The adversarial
     * test-quality judge (Epic #736) is governed by its own `maxJudgeCallsPerRun` budget instead,
     * because it makes one dispatch per candidate and must score every candidate (Issue #747).
     */
    readonly maxModelCallsPerRun: number;
    /**
     * Maximum model gateway dispatches the adversarial test-quality judge may make per run
     * (Epic #736, Issue #747). One dispatch per candidate; defaults to the candidate cap so a
     * realistic run is judged in full while a pathological run can never dispatch an unbounded
     * number of judge calls. Candidates beyond this ceiling are left unjudged (excluded from the
     * run quality score rather than counted as weak).
     */
    readonly maxJudgeCallsPerRun: number;
}
export declare const QUALITY_INTELLIGENCE_DEFAULT_WORKFLOW_LIMITS: QualityIntelligenceWorkflowLimits;
export interface QualityIntelligenceWorkflowDescriptor {
    readonly workflowId: QualityIntelligenceWorkflowId;
    readonly displayName: string;
    readonly description: string;
    readonly stageNames: readonly string[];
    readonly emittedEventKinds: readonly QualityIntelligence.QualityIntelligenceRunEventKind[];
    readonly defaultLimits: QualityIntelligenceWorkflowLimits;
    readonly preferredCostClass: "low" | "medium" | "high";
}
export declare const QI_TEST_DESIGN_WORKFLOW_DESCRIPTOR: QualityIntelligenceWorkflowDescriptor;
export declare const QI_COVERAGE_REVIEW_WORKFLOW_DESCRIPTOR: QualityIntelligenceWorkflowDescriptor;
export declare const QI_VALIDATION_WORKFLOW_DESCRIPTOR: QualityIntelligenceWorkflowDescriptor;
export declare const QI_ARTIFACT_REFINEMENT_WORKFLOW_DESCRIPTOR: QualityIntelligenceWorkflowDescriptor;
export declare const QUALITY_INTELLIGENCE_WORKFLOW_DESCRIPTORS: readonly QualityIntelligenceWorkflowDescriptor[];
export declare function findQualityIntelligenceWorkflowDescriptor(workflowId: QualityIntelligenceWorkflowId): QualityIntelligenceWorkflowDescriptor;
//# sourceMappingURL=descriptors.d.ts.map