import { BaseMetric, Metric, MetricValue } from './models';
export declare const calculateIss: (metricsMap: Map<Metric, MetricValue>) => number;
export declare const calculateMiss: (metricsMap: Map<Metric, MetricValue>) => number;
export declare const calculateImpact: (metricsMap: Map<Metric, MetricValue>, iss: number) => number;
export declare const calculateModifiedImpact: (metricsMap: Map<Metric, MetricValue>, miss: number, versionStr: string | null) => number;
export declare const calculateExploitability: (metricsMap: Map<Metric, MetricValue>) => number;
export declare const calculateModifiedExploitability: (metricsMap: Map<Metric, MetricValue>) => number;
export declare const modifiedMetricsMap: {
    [key: string]: BaseMetric;
};
export declare const populateTemporalMetricDefaults: (metricsMap: Map<Metric, MetricValue>) => Map<Metric, MetricValue>;
export declare const populateEnvironmentalMetricDefaults: (metricsMap: Map<Metric, MetricValue>) => Map<Metric, MetricValue>;
export declare type ScoreResult = {
    score: number;
    impact: number;
    exploitability: number;
    metricsMap: Map<Metric, MetricValue>;
};
export declare const calculateBaseResult: (cvssString: string) => ScoreResult;
export declare const calculateBaseScore: (cvssString: string) => number;
export declare const calculateEnvironmentalResult: (cvssString: string) => ScoreResult;
export declare const calculateEnvironmentalScore: (cvssString: string) => number;
export declare const calculateTemporalResult: (cvssString: string) => ScoreResult;
export declare const calculateTemporalScore: (cvssString: string) => number;
