@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
TypeScript
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';