import { CoverageMap, CoverageMapData } from 'istanbul-lib-coverage'; import { Watermarks } from 'istanbul-lib-report'; import { ReportType } from 'istanbul-reports'; import Reporter, { ReporterProperties } from './Reporter'; import Node from '../executors/Node'; export { ReportType }; export default abstract class Coverage extends Reporter implements CoverageProperties { abstract readonly reportType: ReportType; readonly executor: Node; filename?: string; directory?: string; watermarks?: Watermarks; constructor(executor: Node, options?: CoverageOptions); getReporterOptions(): { [key: string]: any; }; createCoverageReport(type: ReportType, data: CoverageMapData | CoverageMap): Promise; runEnd(): void | Promise; } export interface CoverageProperties extends ReporterProperties { filename?: string; directory?: string; watermarks?: Watermarks; } export declare type CoverageOptions = Partial;