hardhat
Version:
Hardhat is an extensible developer tool that helps smart contract developers increase productivity by reliably bringing together the tools they want.
67 lines • 2 kB
TypeScript
import type { CoverageData, CoverageManager, CoverageMetadata, Statement } from "./types.js";
type Line = number;
/**
* @private exposed for testing purposes only
*/
export interface FileReport {
lineExecutionCounts: Map<Line, number>;
executedStatementsCount: number;
unexecutedStatementsCount: number;
executedLinesCount: number;
unexecutedLines: Set<Line>;
}
export interface Report {
[relativePath: string]: FileReport;
}
type FilesMetadata = Map<string, // relative path
Map<string, // composite key
Statement>>;
export declare class CoverageManagerImplementation implements CoverageManager {
#private;
/**
* @private exposed for testing purposes only
*/
filesMetadata: FilesMetadata;
/**
* @private exposed for testing purposes only
*/
data: CoverageData;
constructor(coveragePath: string);
addData(data: CoverageData): Promise<void>;
addMetadata(metadata: CoverageMetadata): Promise<void>;
clearData(id: string): Promise<void>;
saveData(id: string): Promise<void>;
report(...ids: string[]): Promise<void>;
enableReport(): void;
disableReport(): void;
/**
* @private exposed for testing purposes only
*/
loadData(...ids: string[]): Promise<void>;
/**
* @private exposed for testing purposes only
*/
getReport(): Promise<Report>;
/**
* @private exposed for testing purposes only
*/
formatLcovReport(report: Report): string;
/**
* @private exposed for testing purposes only
*/
formatRelativePath(relativePath: string): string;
/**
* @private exposed for testing purposes only
*/
formatCoverage(coverage: number): string;
/**
* @private exposed for testing purposes only
*/
formatLines(lines: Set<number>): string;
/**
* @private exposed for testing purposes only
*/
formatMarkdownReport(report: Report): string;
}
export {};
//# sourceMappingURL=coverage-manager.d.ts.map