/* tslint:disable */ /* eslint-disable */ /** * Sonatype Lifecycle Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * The version of the OpenAPI document: 1.207.0-01 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { mapValues } from '../runtime'; import type { SecurityVulnerabilitySeverityDTO } from './SecurityVulnerabilitySeverityDTO'; import { SecurityVulnerabilitySeverityDTOFromJSON, SecurityVulnerabilitySeverityDTOFromJSONTyped, SecurityVulnerabilitySeverityDTOToJSON, SecurityVulnerabilitySeverityDTOToJSONTyped, } from './SecurityVulnerabilitySeverityDTO'; import type { SecurityVulnerabilityWeaknessDTO } from './SecurityVulnerabilityWeaknessDTO'; import { SecurityVulnerabilityWeaknessDTOFromJSON, SecurityVulnerabilityWeaknessDTOFromJSONTyped, SecurityVulnerabilityWeaknessDTOToJSON, SecurityVulnerabilityWeaknessDTOToJSONTyped, } from './SecurityVulnerabilityWeaknessDTO'; import type { SecurityVulnerabilityCustomDataDTO } from './SecurityVulnerabilityCustomDataDTO'; import { SecurityVulnerabilityCustomDataDTOFromJSON, SecurityVulnerabilityCustomDataDTOFromJSONTyped, SecurityVulnerabilityCustomDataDTOToJSON, SecurityVulnerabilityCustomDataDTOToJSONTyped, } from './SecurityVulnerabilityCustomDataDTO'; import type { EpssData } from './EpssData'; import { EpssDataFromJSON, EpssDataFromJSONTyped, EpssDataToJSON, EpssDataToJSONTyped, } from './EpssData'; import type { ReferenceLinkDTO } from './ReferenceLinkDTO'; import { ReferenceLinkDTOFromJSON, ReferenceLinkDTOFromJSONTyped, ReferenceLinkDTOToJSON, ReferenceLinkDTOToJSONTyped, } from './ReferenceLinkDTO'; import type { RootCauseDTO } from './RootCauseDTO'; import { RootCauseDTOFromJSON, RootCauseDTOFromJSONTyped, RootCauseDTOToJSON, RootCauseDTOToJSONTyped, } from './RootCauseDTO'; import type { VulnerabilitySourceDTO } from './VulnerabilitySourceDTO'; import { VulnerabilitySourceDTOFromJSON, VulnerabilitySourceDTOFromJSONTyped, VulnerabilitySourceDTOToJSON, VulnerabilitySourceDTOToJSONTyped, } from './VulnerabilitySourceDTO'; import type { KevData } from './KevData'; import { KevDataFromJSON, KevDataFromJSONTyped, KevDataToJSON, KevDataToJSONTyped, } from './KevData'; /** * * @export * @interface SecurityVulnerabilityDataDTO */ export interface SecurityVulnerabilityDataDTO { /** * * @type {Array} * @memberof SecurityVulnerabilityDataDTO */ advisories?: Array; /** * * @type {Array} * @memberof SecurityVulnerabilityDataDTO */ categories?: Array; /** * * @type {string} * @memberof SecurityVulnerabilityDataDTO */ componentDetectionMarkdown?: string; /** * * @type {string} * @memberof SecurityVulnerabilityDataDTO */ componentExplanationMarkdown?: string; /** * * @type {string} * @memberof SecurityVulnerabilityDataDTO */ componentRecommendationMarkdown?: string; /** * * @type {SecurityVulnerabilityCustomDataDTO} * @memberof SecurityVulnerabilityDataDTO */ customData?: SecurityVulnerabilityCustomDataDTO; /** * * @type {string} * @memberof SecurityVulnerabilityDataDTO */ description?: string; /** * * @type {string} * @memberof SecurityVulnerabilityDataDTO */ detectionMarkdown?: string; /** * * @type {string} * @memberof SecurityVulnerabilityDataDTO */ detectionType?: string; /** * * @type {EpssData} * @memberof SecurityVulnerabilityDataDTO */ epssData?: EpssData; /** * * @type {string} * @memberof SecurityVulnerabilityDataDTO */ explanationMarkdown?: string; /** * * @type {string} * @memberof SecurityVulnerabilityDataDTO */ identificationSource?: string; /** * * @type {string} * @memberof SecurityVulnerabilityDataDTO */ identifier?: string; /** * * @type {boolean} * @memberof SecurityVulnerabilityDataDTO */ isAdvancedVulnerabilityDetection?: boolean; /** * * @type {KevData} * @memberof SecurityVulnerabilityDataDTO */ kevData?: KevData; /** * * @type {SecurityVulnerabilitySeverityDTO} * @memberof SecurityVulnerabilityDataDTO */ mainSeverity?: SecurityVulnerabilitySeverityDTO; /** * * @type {string} * @memberof SecurityVulnerabilityDataDTO */ recommendationMarkdown?: string; /** * * @type {string} * @memberof SecurityVulnerabilityDataDTO */ researchType?: SecurityVulnerabilityDataDTOResearchTypeEnum; /** * * @type {Array} * @memberof SecurityVulnerabilityDataDTO */ rootCauses?: Array; /** * * @type {Array} * @memberof SecurityVulnerabilityDataDTO */ severityScores?: Array; /** * * @type {VulnerabilitySourceDTO} * @memberof SecurityVulnerabilityDataDTO */ source?: VulnerabilitySourceDTO; /** * * @type {Array} * @memberof SecurityVulnerabilityDataDTO */ vulnIds?: Array; /** * * @type {string} * @memberof SecurityVulnerabilityDataDTO */ vulnerabilityLink?: string; /** * * @type {Array} * @memberof SecurityVulnerabilityDataDTO */ vulnerableVersionRanges?: Array; /** * * @type {SecurityVulnerabilityWeaknessDTO} * @memberof SecurityVulnerabilityDataDTO */ weakness?: SecurityVulnerabilityWeaknessDTO; } /** * @export */ export const SecurityVulnerabilityDataDTOResearchTypeEnum = { FastTrack: 'FAST_TRACK', DeepDive: 'DEEP_DIVE', PublicResearch: 'PUBLIC_RESEARCH', VendorResearch: 'VENDOR_RESEARCH' } as const; export type SecurityVulnerabilityDataDTOResearchTypeEnum = typeof SecurityVulnerabilityDataDTOResearchTypeEnum[keyof typeof SecurityVulnerabilityDataDTOResearchTypeEnum]; /** * Check if a given object implements the SecurityVulnerabilityDataDTO interface. */ export function instanceOfSecurityVulnerabilityDataDTO(value: object): value is SecurityVulnerabilityDataDTO { return true; } export function SecurityVulnerabilityDataDTOFromJSON(json: any): SecurityVulnerabilityDataDTO { return SecurityVulnerabilityDataDTOFromJSONTyped(json, false); } export function SecurityVulnerabilityDataDTOFromJSONTyped(json: any, ignoreDiscriminator: boolean): SecurityVulnerabilityDataDTO { if (json == null) { return json; } return { 'advisories': json['advisories'] == null ? undefined : ((json['advisories'] as Array).map(ReferenceLinkDTOFromJSON)), 'categories': json['categories'] == null ? undefined : json['categories'], 'componentDetectionMarkdown': json['componentDetectionMarkdown'] == null ? undefined : json['componentDetectionMarkdown'], 'componentExplanationMarkdown': json['componentExplanationMarkdown'] == null ? undefined : json['componentExplanationMarkdown'], 'componentRecommendationMarkdown': json['componentRecommendationMarkdown'] == null ? undefined : json['componentRecommendationMarkdown'], 'customData': json['customData'] == null ? undefined : SecurityVulnerabilityCustomDataDTOFromJSON(json['customData']), 'description': json['description'] == null ? undefined : json['description'], 'detectionMarkdown': json['detectionMarkdown'] == null ? undefined : json['detectionMarkdown'], 'detectionType': json['detectionType'] == null ? undefined : json['detectionType'], 'epssData': json['epssData'] == null ? undefined : EpssDataFromJSON(json['epssData']), 'explanationMarkdown': json['explanationMarkdown'] == null ? undefined : json['explanationMarkdown'], 'identificationSource': json['identificationSource'] == null ? undefined : json['identificationSource'], 'identifier': json['identifier'] == null ? undefined : json['identifier'], 'isAdvancedVulnerabilityDetection': json['isAdvancedVulnerabilityDetection'] == null ? undefined : json['isAdvancedVulnerabilityDetection'], 'kevData': json['kevData'] == null ? undefined : KevDataFromJSON(json['kevData']), 'mainSeverity': json['mainSeverity'] == null ? undefined : SecurityVulnerabilitySeverityDTOFromJSON(json['mainSeverity']), 'recommendationMarkdown': json['recommendationMarkdown'] == null ? undefined : json['recommendationMarkdown'], 'researchType': json['researchType'] == null ? undefined : json['researchType'], 'rootCauses': json['rootCauses'] == null ? undefined : ((json['rootCauses'] as Array).map(RootCauseDTOFromJSON)), 'severityScores': json['severityScores'] == null ? undefined : ((json['severityScores'] as Array).map(SecurityVulnerabilitySeverityDTOFromJSON)), 'source': json['source'] == null ? undefined : VulnerabilitySourceDTOFromJSON(json['source']), 'vulnIds': json['vulnIds'] == null ? undefined : json['vulnIds'], 'vulnerabilityLink': json['vulnerabilityLink'] == null ? undefined : json['vulnerabilityLink'], 'vulnerableVersionRanges': json['vulnerableVersionRanges'] == null ? undefined : json['vulnerableVersionRanges'], 'weakness': json['weakness'] == null ? undefined : SecurityVulnerabilityWeaknessDTOFromJSON(json['weakness']), }; } export function SecurityVulnerabilityDataDTOToJSON(json: any): SecurityVulnerabilityDataDTO { return SecurityVulnerabilityDataDTOToJSONTyped(json, false); } export function SecurityVulnerabilityDataDTOToJSONTyped(value?: SecurityVulnerabilityDataDTO | null, ignoreDiscriminator: boolean = false): any { if (value == null) { return value; } return { 'advisories': value['advisories'] == null ? undefined : ((value['advisories'] as Array).map(ReferenceLinkDTOToJSON)), 'categories': value['categories'], 'componentDetectionMarkdown': value['componentDetectionMarkdown'], 'componentExplanationMarkdown': value['componentExplanationMarkdown'], 'componentRecommendationMarkdown': value['componentRecommendationMarkdown'], 'customData': SecurityVulnerabilityCustomDataDTOToJSON(value['customData']), 'description': value['description'], 'detectionMarkdown': value['detectionMarkdown'], 'detectionType': value['detectionType'], 'epssData': EpssDataToJSON(value['epssData']), 'explanationMarkdown': value['explanationMarkdown'], 'identificationSource': value['identificationSource'], 'identifier': value['identifier'], 'isAdvancedVulnerabilityDetection': value['isAdvancedVulnerabilityDetection'], 'kevData': KevDataToJSON(value['kevData']), 'mainSeverity': SecurityVulnerabilitySeverityDTOToJSON(value['mainSeverity']), 'recommendationMarkdown': value['recommendationMarkdown'], 'researchType': value['researchType'], 'rootCauses': value['rootCauses'] == null ? undefined : ((value['rootCauses'] as Array).map(RootCauseDTOToJSON)), 'severityScores': value['severityScores'] == null ? undefined : ((value['severityScores'] as Array).map(SecurityVulnerabilitySeverityDTOToJSON)), 'source': VulnerabilitySourceDTOToJSON(value['source']), 'vulnIds': value['vulnIds'], 'vulnerabilityLink': value['vulnerabilityLink'], 'vulnerableVersionRanges': value['vulnerableVersionRanges'], 'weakness': SecurityVulnerabilityWeaknessDTOToJSON(value['weakness']), }; }