UNPKG

@neuralegion/cvss

Version:

The Common Vulnerability Scoring System ([CVSS](https://www.first.org/cvss/)) [score](https://www.first.org/cvss/specification-document#1-2-Scoring) calculator and validator library written in [TypeScript](https://www.typescriptlang.org/).

56 lines (55 loc) 2.78 kB
import { Metric, MetricValue } from './versions/v3/models'; export interface ScoreResult { score: number; impact: number; exploitability: number; metricsMap: Map<string, string>; } export declare const validate: (cvssString: string) => void; /** * Calculate the base score for a CVSS string * @param cvssString - The CVSS vector string * @returns The base score (0-10) */ export declare const calculateBaseScore: (cvssString: string) => number; /** * Calculate the temporal score for a CVSS string * @param cvssString - The CVSS vector string * @returns The temporal score (0-10) */ export declare const calculateTemporalScore: (cvssString: string) => number; /** * Calculate the environmental score for a CVSS string * @param cvssString - The CVSS vector string * @returns The environmental score (0-10) */ export declare const calculateEnvironmentalScore: (cvssString: string) => number; /** * Calculate base score with impact and exploitability * @param cvssString - The CVSS vector string * @returns Score result with impact and exploitability */ export declare const calculateBaseResult: (cvssString: string) => ScoreResult; /** * Calculate temporal score with impact and exploitability * @param cvssString - The CVSS vector string * @returns Score result with impact and exploitability */ export declare const calculateTemporalResult: (cvssString: string) => ScoreResult; /** * Calculate environmental score with impact and exploitability * @param cvssString - The CVSS vector string * @returns Score result with impact and exploitability */ export declare const calculateEnvironmentalResult: (cvssString: string) => ScoreResult; export declare const parseMetricsAsMap: (cvssStr: string) => Map<Metric, MetricValue>; export declare const validateVersion: (versionStr: string | null) => void; /** * Stringify a score into a qualitative severity rating string * @param score */ export declare const humanizeScore: (score: number) => string; export { calculateIss, calculateMiss, calculateExploitability, calculateModifiedExploitability, calculateImpact, calculateModifiedImpact, modifiedMetricsMap, populateTemporalMetricDefaults, populateEnvironmentalMetricDefaults, roundUp } from './versions/v3/calculator'; export { humanizeBaseMetric, humanizeBaseMetricValue } from './versions/v3/humanizer'; export { BaseMetric, TemporalMetric, EnvironmentalMetric, type Metric, type Metrics, type BaseMetricValue, type TemporalMetricValue, type EnvironmentalMetricValue, type MetricValue, type MetricValues, baseMetrics, temporalMetrics, environmentalMetrics, baseMetricValues, temporalMetricValues, environmentalMetricValues } from './versions/v3/models'; export { type KeyValue, parseVector, parseVersion, parseMetrics } from './parser';