/** * Severity mapping and utilities with CVSS-like scoring */ export type Severity = 'low' | 'medium' | 'high' | 'critical'; export interface SeverityInfo { level: Severity; score: number; label: string; color: string; description: string; } /** * CVSS-inspired scoring for LLM red team attacks * Based on CVSS v3.1 concepts adapted for AI/LLM context */ export interface CvssScore { /** Base score from 0.0 to 10.0 */ baseScore: number; /** Attack vector - how the attack is delivered */ attackVector: 'network' | 'local'; /** Attack complexity - skill level required */ attackComplexity: 'low' | 'high'; /** Whether special conditions are needed (e.g., conversation history) */ requiresContext: boolean; /** Confidentiality impact - data/secret exposure risk */ confidentialityImpact: 'none' | 'low' | 'high'; /** Integrity impact - response manipulation risk */ integrityImpact: 'none' | 'low' | 'high'; /** Availability impact - service disruption risk */ availabilityImpact: 'none' | 'low' | 'high'; /** LLM-specific: How effectively this bypasses safety measures (0-1) */ evasionEffectiveness: number; /** LLM-specific: How difficult to detect this attack */ detectability: 'easy' | 'moderate' | 'hard'; /** CVSS vector string for reference */ vectorString: string; } export declare class SeverityMapper { private static readonly severities; /** * Get severity info */ static getInfo(severity: Severity): SeverityInfo; /** * Compare two severities */ static compare(a: Severity, b: Severity): number; /** * Get the higher severity */ static max(a: Severity, b: Severity): Severity; /** * Check if severity meets threshold */ static meetsThreshold(severity: Severity, threshold: Severity): boolean; /** * Get all severities in order */ static all(): Severity[]; /** * Calculate aggregate severity from multiple issues */ static aggregate(severities: Severity[]): Severity; /** * Convert CVSS base score to severity level */ static fromCvssScore(score: number): Severity; } /** * Calculator for CVSS-like scores tailored to LLM red team attacks */ export declare class CvssCalculator { /** * Calculate a CVSS-like score from attack parameters */ static calculate(params: { attackVector?: 'network' | 'local'; attackComplexity?: 'low' | 'high'; requiresContext?: boolean; confidentialityImpact?: 'none' | 'low' | 'high'; integrityImpact?: 'none' | 'low' | 'high'; availabilityImpact?: 'none' | 'low' | 'high'; evasionEffectiveness?: number; detectability?: 'easy' | 'moderate' | 'hard'; }): CvssScore; /** * Build a CVSS-like vector string */ private static buildVectorString; /** * Aggregate multiple CVSS scores (takes maximum impact for each dimension) */ static aggregate(scores: CvssScore[]): CvssScore; /** * Get a human-readable description of the score */ static describe(score: CvssScore): string; } /** * Predefined CVSS scores for common mutation types */ export declare const MUTATION_CVSS_SCORES: Record; /** * Predefined CVSS scores for detection categories */ export declare const DETECTION_CVSS_SCORES: Record; //# sourceMappingURL=severity.d.ts.map