@syntropysoft/praetorian
Version:
Praetorian CLI – A universal multi-environment configuration validator for DevSecOps teams. Validate, compare, and secure YAML/ENV files with ease.
72 lines • 2.39 kB
TypeScript
/**
* Audit Calculator - Functional Programming
*
* Single Responsibility: Calculate audit metrics and scores from validation results
* Pure functions, no state, no side effects
*/
import { ValidationResult, AuditSummary } from '../../shared/types';
/**
* Audit metrics interface
*/
export interface AuditMetrics {
totalChecks: number;
passedChecks: number;
failedChecks: number;
warnings: number;
criticalIssues: number;
securityIssues: number;
complianceIssues: number;
}
/**
* Pure function to calculate audit summary from validation results
*/
export declare const calculateAuditSummary: (results: ValidationResult[]) => AuditSummary;
/**
* Pure function to calculate metrics from validation results
*/
export declare const calculateMetrics: (results: ValidationResult[]) => AuditMetrics;
/**
* Pure function to calculate score based on passed vs total checks
*/
export declare const calculateScore: (metrics: AuditMetrics) => number;
/**
* Pure function to calculate grade based on score
*/
export declare const calculateGrade: (score: number) => "A" | "B" | "C" | "D" | "F";
/**
* Pure function to generate recommendations based on validation results
*/
export declare const generateRecommendations: (results: ValidationResult[]) => string[];
/**
* Pure function to create empty audit summary
*/
export declare const createEmptyAuditSummary: () => AuditSummary;
/**
* Pure function to create empty metrics
*/
export declare const createEmptyMetrics: () => AuditMetrics;
/**
* Pure function to get score description
*/
export declare const getScoreDescription: (score: number) => string;
/**
* Pure function to check if score is passing
*/
export declare const isScorePassing: (score: number, threshold?: number) => boolean;
/**
* Pure function to get grade color
*/
export declare const getGradeColor: (grade: "A" | "B" | "C" | "D" | "F") => string;
/**
* Pure function to get audit health status
*/
export declare const getAuditHealthStatus: (metrics: AuditMetrics) => "healthy" | "warning" | "critical";
/**
* Pure function to get audit priority
*/
export declare const getAuditPriority: (metrics: AuditMetrics) => "low" | "medium" | "high";
/**
* Pure function to calculate audit efficiency
*/
export declare const calculateAuditEfficiency: (metrics: AuditMetrics) => number;
//# sourceMappingURL=AuditCalculator.d.ts.map