types/report.types.ts
types/report.types.ts is a file in GovLab Stats. 70 lines of code and 6 definitions.
import type { Bucket, LargestEntry, State } from "#types/source.types";
import type { ActiveRuleStats } from "#types/rule.types";
import type { AnalysisStats } from "#types/code.types";
import type { AppStats } from "#types/site.types";
import type { DependencyGraph } from "#types/dependency.types";
import type { DocArchStats } from "#types/document.types";
import type { FindingsStats } from "#types/pattern.types";
import type { GitStats } from "#types/vcs.types";
import type { MemoryStats } from "#types/agent.types";
import type { QualityStats } from "#types/catalog.types";
import type { TaxonomyStats } from "#types/taxonomy.types";
import type { TypescriptStats } from "#types/config.types";
import type { WorkspaceStats } from "#types/manifest.types";
export interface VerifyStepStat {
label: string;
ok: boolean;
violations: number | null;
}
export interface VerifyStageStat {
failed: number;
passed: number;
stage: string;
steps: VerifyStepStat[];
violations: number;
}
export interface VerifyTotals {
failed: number;
passed: number;
steps: number;
violations: number;
}
export interface VerifyReportStats {
available: boolean;
generatedAt: string;
label: string;
ok: boolean;
stages: VerifyStageStat[];
totals: VerifyTotals;
}
export interface ReportInput {
state: State;
workspace: WorkspaceStats;
docs: DocArchStats;
git: GitStats | null;
memory: MemoryStats;
graph: DependencyGraph;
packages: string[];
findings: FindingsStats;
app: AppStats;
analysis: AnalysisStats;
quality: QualityStats;
taxonomy: TaxonomyStats;
typescript: TypescriptStats;
verify: VerifyReportStats;
activeRules: ActiveRuleStats;
}
export interface Derived {
areaRows: [string, Bucket][];
authoredFiles: number;
authoredLines: number;
avgLines: number;
emptyFiles: number;
extRows: [string, Bucket][];
largestLines: number;
medianLines: number;
p90Lines: number;
sourceBlank: number;
sourceLines: number;
topLargest: LargestEntry[];
}