/**
 * Coverage Validator
 *
 * Validates test coverage against configured targets during sw:done execution.
 * Supports multiple coverage formats: Istanbul, c8, Jest, lcov.
 *
 * @module qa/coverage-validator
 */
/** Supported coverage report formats */
export type CoverageFormat = 'istanbul' | 'c8' | 'jest' | 'lcov' | 'cobertura';
/** Test mode from increment metadata */
export type TestMode = 'TDD' | 'test-after' | 'manual' | 'none';
/** Options for coverage validation */
export interface CoverageValidationOptions {
    /** Project root directory */
    projectRoot: string;
    /** Target coverage percentage (0-100) */
    coverageTarget: number;
    /** Test mode from increment metadata */
    testMode: TestMode;
    /** Optional specific coverage file path */
    coveragePath?: string;
}
/** Coverage metrics breakdown */
export interface CoverageMetrics {
    /** Line coverage percentage */
    lines: number;
    /** Statement coverage percentage */
    statements: number;
    /** Function coverage percentage */
    functions: number;
    /** Branch coverage percentage */
    branches: number;
    /** Overall coverage (typically lines or average) */
    overall: number;
}
/** Result of coverage validation */
export interface CoverageValidationResult {
    /** Whether coverage meets the target */
    passed: boolean;
    /** Whether validation was skipped */
    skipped: boolean;
    /** Target coverage percentage */
    target: number;
    /** Actual coverage percentage */
    actual: number;
    /** Reason for result (skip, pass, fail) */
    reason: string;
    /** Detailed coverage metrics */
    details: CoverageMetrics | null;
    /** Path to coverage file found */
    coverageFile: string | null;
    /** Format of coverage data */
    format: CoverageFormat | null;
}
/** Coverage file location info */
export interface CoverageLocation {
    /** Path to coverage file */
    path: string;
    /** Format of coverage data */
    format: CoverageFormat;
}
/** Common coverage file locations (exported for extensibility) */
export declare const COVERAGE_LOCATIONS: ReadonlyArray<{
    pattern: string;
    format: CoverageFormat;
}>;
/**
 * Validate test coverage against configured target.
 *
 * @param options - Validation options
 * @returns Validation result with pass/fail status and details
 */
export declare function validateCoverage(options: CoverageValidationOptions): Promise<CoverageValidationResult>;
/**
 * Find coverage data file in project.
 *
 * @param projectRoot - Project root directory
 * @returns Coverage file location or null if not found
 */
export declare function findCoverageData(projectRoot: string): CoverageLocation | null;
/**
 * Parse coverage report based on format.
 *
 * @param content - Coverage report content
 * @param format - Coverage format
 * @returns Parsed coverage metrics
 */
export declare function parseCoverageReport(content: string, format: CoverageFormat): CoverageMetrics;
//# sourceMappingURL=coverage-validator.d.ts.map