using System.Collections.Immutable; using System.Text.Json.Serialization; namespace StellaOps.Feedser.Source.Ru.Nkcki.Internal; internal sealed record RuNkckiVulnerabilityDto( string? FstecId, string? MitreId, DateTimeOffset? DatePublished, DateTimeOffset? DateUpdated, string? CvssRating, bool? PatchAvailable, string? Description, RuNkckiCweDto? Cwe, string? ProductCategory, string? Mitigation, string? VulnerableSoftwareText, bool? VulnerableSoftwareHasCpe, double? CvssScore, string? CvssVector, double? CvssScoreV4, string? CvssVectorV4, string? Impact, string? MethodOfExploitation, bool? UserInteraction, ImmutableArray Urls) { [JsonIgnore] public string AdvisoryKey => !string.IsNullOrWhiteSpace(FstecId) ? FstecId! : !string.IsNullOrWhiteSpace(MitreId) ? MitreId! : Guid.NewGuid().ToString(); } internal sealed record RuNkckiCweDto(int? Number, string? Description);