export interface CoverageSummary { lines: CoverageInfo; statements: CoverageInfo; functions: CoverageInfo; branches: CoverageInfo; isNewFile: boolean; } export interface CoverageInfo { total: number; covered: number; skipped: number; pct: number; } export interface JsonSummary { [key: string]: CoverageSummary; } export interface CoverageDiffOutput { diff: JsonSummary; results: string; regression: boolean; belowThreshold: boolean; } export declare type Criteria = 'lines' | 'branches' | 'functions' | 'statements'; export interface ConfigOptions { checkCriteria?: Array; coverageThreshold?: number; coverageDecreaseThreshold?: number; newFileCoverageThreshold?: number; customFormatter?: (files: FilesResults, totals: FileResultFormat) => string; } export interface DiffCheckResults { files: FilesResults; totals: FileResultFormat; diff: JsonSummary; regression: boolean; belowThreshold: boolean; } export interface FilesResults { [key: string]: FileResultFormat; } export interface FileResultFormat { deltas: FileResultFields; pcts: FileResultFields; decreased: boolean; belowThreshold: boolean; isNewFile: boolean; } export interface FileResultFields { lines: number; functions: number; statements: number; branches: number; }