/** * Security Vulnerability Checker * * Evaluates plugins for known security vulnerabilities. * * @since v1.66.0 */ import { type HealthComponent, type HealthIssue, type SecurityVulnerability } from './health-types.js'; /** * Security status */ export type SecurityStatus = 'secure' | 'low_risk' | 'medium_risk' | 'high_risk' | 'critical_risk' | 'unknown'; /** * Security check result */ export interface SecurityCheckResult { /** Security status */ status: SecurityStatus; /** Score (0-100) */ score: number; /** Human-readable description */ description: string; /** List of vulnerabilities */ vulnerabilities: SecurityVulnerability[]; /** Whether a fix is available for vulnerabilities */ fixAvailable: boolean; /** Version that fixes vulnerabilities (if any) */ fixVersion?: string; } /** * Calculate security score based on vulnerabilities */ export declare function calculateSecurityScore(vulnerabilities: SecurityVulnerability[]): number; /** * Determine security status from vulnerabilities */ export declare function getSecurityStatus(vulnerabilities: SecurityVulnerability[]): SecurityStatus; /** * Get security description */ export declare function getSecurityDescription(status: SecurityStatus, vulnerabilities: SecurityVulnerability[], fixAvailable: boolean): string; /** * Check if a fix is available */ export declare function checkFixAvailable(vulnerabilities: SecurityVulnerability[], currentVersion: string): { available: boolean; fixVersion?: string; }; /** * Check security and return health component */ export declare function checkSecurityHealth(vulnerabilities: SecurityVulnerability[], currentVersion: string): HealthComponent; /** * Full security check */ export declare function checkSecurity(vulnerabilities: SecurityVulnerability[], currentVersion: string): SecurityCheckResult; /** * Generate health issues from security vulnerabilities */ export declare function generateSecurityIssues(vulnerabilities: SecurityVulnerability[], pluginName: string): HealthIssue[]; /** * Create a mock vulnerability for testing */ export declare function createMockVulnerability(id: string, severity: SecurityVulnerability['severity'], description: string, fixedInVersion?: string): SecurityVulnerability; /** * Filter vulnerabilities that affect a specific version */ export declare function filterVulnerabilitiesForVersion(vulnerabilities: SecurityVulnerability[], currentVersion: string): SecurityVulnerability[]; //# sourceMappingURL=security-checker.d.ts.map