/**
 * Phase 2 Quality Gate: SPARC Output Validator
 *
 * Validates SPARC specification + pseudocode before DDD generation.
 * Prevents empty entity types by ensuring pseudocode contains:
 * - dataStructures with typed fields (not just type names)
 * - Algorithm steps (not empty arrays)
 * - Service definitions with API signatures
 *
 * Error codes:
 *   ECLI-P2-040  SPARC output quality too low for DDD generation
 *   ECLI-P2-041  SPARC output not available on context
 */
import type { Phase2Context, Phase2StageOutput, Phase2SPARCOutput } from '../types.js';
export interface SPARCQualityReport {
    readonly passed: boolean;
    readonly score: number;
    readonly issues: string[];
    readonly servicesWithPseudocode: number;
    readonly totalServices: number;
    readonly modulesWithDataStructures: number;
    readonly modulesWithAlgorithms: number;
    readonly totalModules: number;
    readonly apisWithSignatures: number;
    readonly truncatedContentDetected: boolean;
    readonly errorMessagesDetected: boolean;
}
/**
 * Validate SPARC output quality and produce a detailed report.
 */
export declare function validateSPARCQuality(sparc: Phase2SPARCOutput): SPARCQualityReport;
/**
 * Execute the SPARC quality gate as a Phase 2 pipeline stage.
 *
 * Reads the SPARC output from context stage outputs, validates it,
 * and returns a stage output indicating pass or fail.
 *
 * @throws Error with ECLI-P2-041 if SPARC output is not on context
 */
export declare function executeSPARCQualityGate(context: Phase2Context): Promise<Phase2StageOutput>;
//# sourceMappingURL=sparc-quality-gate.d.ts.map