import { ComponentCategory, CvssVector, MultiScoreResult, VectorComponent, VectorComponentValue } from "../CvssVector";
export declare class Cvss2 extends CvssVector<MultiScoreResult> {
    constructor(initialVector?: string);
    getRegisteredComponents(): Map<ComponentCategory, VectorComponent<VectorComponentValue>[]>;
    getVectorPrefix(): string;
    getVectorName(): string;
    fillAverageVector(): void;
    fillRandomBaseVector(): void;
    protected calculateScoresInternal(normalize?: boolean): MultiScoreResult;
    private calculateExactBaseScore;
    private calculateExactImpactScore;
    private calculateExactExploitabilityScore;
    private calculateExactTemporalScore;
    private calculateExactAdjustedBaseScore;
    private calculateExactAdjustedTemporalScore;
    private calculateExactEnvironmentalScore;
    private calculateExactAdjustedImpactScore;
    private calculateExactOverallScore;
    isBaseFullyDefined(): boolean;
    isTemporalFullyDefined(): boolean;
    isEnvironmentalFullyDefined(): boolean;
    isAnyBaseDefined(): boolean;
    isAnyTemporalDefined(): boolean;
    isAnyEnvironmentalDefined(): boolean;
    private f;
    createJsonSchema(): JSONSchemaForCommonVulnerabilityScoringSystemVersion20;
}
export type AccessVectorType = "NETWORK" | "ADJACENT_NETWORK" | "LOCAL";
export type AccessComplexityType = "HIGH" | "MEDIUM" | "LOW";
export type AuthenticationType = "MULTIPLE" | "SINGLE" | "NONE";
export type CiaType = "NONE" | "PARTIAL" | "COMPLETE";
export type ScoreType = number;
export type ExploitabilityType = "UNPROVEN" | "PROOF_OF_CONCEPT" | "FUNCTIONAL" | "HIGH" | "NOT_DEFINED";
export type RemediationLevelType = "OFFICIAL_FIX" | "TEMPORARY_FIX" | "WORKAROUND" | "UNAVAILABLE" | "NOT_DEFINED";
export type ReportConfidenceType = "UNCONFIRMED" | "UNCORROBORATED" | "CONFIRMED" | "NOT_DEFINED";
export type CollateralDamagePotentialType = "NONE" | "LOW" | "LOW_MEDIUM" | "MEDIUM_HIGH" | "HIGH" | "NOT_DEFINED";
export type TargetDistributionType = "NONE" | "LOW" | "MEDIUM" | "HIGH" | "NOT_DEFINED";
export type CiaRequirementType = "LOW" | "MEDIUM" | "HIGH" | "NOT_DEFINED";
export interface JSONSchemaForCommonVulnerabilityScoringSystemVersion20 {
    /**
     * CVSS Version
     */
    version: "2.0";
    vectorString: string;
    baseScore: ScoreType;
    temporalScore?: ScoreType;
    environmentalScore?: ScoreType;
    accessVector?: AccessVectorType;
    accessComplexity?: AccessComplexityType;
    authentication?: AuthenticationType;
    confidentialityImpact?: CiaType;
    integrityImpact?: CiaType;
    availabilityImpact?: CiaType;
    exploitability?: ExploitabilityType;
    remediationLevel?: RemediationLevelType;
    reportConfidence?: ReportConfidenceType;
    collateralDamagePotential?: CollateralDamagePotentialType;
    targetDistribution?: TargetDistributionType;
    confidentialityRequirement?: CiaRequirementType;
    integrityRequirement?: CiaRequirementType;
    availabilityRequirement?: CiaRequirementType;
    [k: string]: unknown;
}
