import { MutantCoverage } from '../core/index.js';
import { DryRunStatus } from './dry-run-status.js';
import { TestResult } from './test-result.js';
export type DryRunResult = CompleteDryRunResult | ErrorDryRunResult | TimeoutDryRunResult;
export interface CompleteDryRunResult {
    /**
     * The individual test results.
     */
    tests: TestResult[];
    mutantCoverage?: MutantCoverage;
    /**
     * The status of the run
     */
    status: DryRunStatus.Complete;
}
export interface TimeoutDryRunResult {
    /**
     * The status of the run
     */
    status: DryRunStatus.Timeout;
    /**
     * An optional reason for the timeout
     */
    reason?: string;
}
export interface ErrorDryRunResult {
    /**
     * The status of the run
     */
    status: DryRunStatus.Error;
    /**
     * If `state` is `error`, this collection should contain the error messages
     */
    errorMessage: string;
}
//# sourceMappingURL=dry-run-result.d.ts.map