import { V8Coverage } from 'collect-v8-coverage';
import { Context } from './types';
export interface FileCoverage {
    path: string;
    functions: FunctionCoverage[];
    lineRanges: CoverageLineRange[];
    linesCovered: number;
    linesTotal: number;
}
export interface FunctionCoverage {
    name: string;
    covered: boolean;
}
export interface CoverageLineRange {
    start: number;
    end: number;
}
export declare function getCoverage(coverage: V8Coverage, ctx: Context): Promise<FileCoverage[]>;
export declare function getCoverageTotalLines(sourceContent: string): number;
export declare function mergeCoverage(coverages: FileCoverage[]): FileCoverage[];
export declare function mergeFunctionCoverage(functions: FunctionCoverage[]): FunctionCoverage[];
export declare function mergeCoverageRanges(ranges: CoverageLineRange[]): CoverageLineRange[];
export declare function getCoveredLines(ranges: CoverageLineRange[]): number;
export declare function computeCoveredLines(coverage: FileCoverage[]): FileCoverage[];
export declare function getEmptyCoverageFromFiles(match: string | string[], baseDir: string, ignore: string | string[]): Promise<FileCoverage[]>;
