using System;
using System.Collections.Generic;
using System.Text.Json.Serialization;

namespace StellaOps.Feedser.Source.Vndr.Oracle.Internal;

internal sealed record OracleDto(
    [property: JsonPropertyName("advisoryId")] string AdvisoryId,
    [property: JsonPropertyName("title")] string Title,
    [property: JsonPropertyName("detailUrl")] string DetailUrl,
    [property: JsonPropertyName("published")] DateTimeOffset Published,
    [property: JsonPropertyName("content")] string Content,
    [property: JsonPropertyName("references")] IReadOnlyList<string> References,
    [property: JsonPropertyName("cveIds")] IReadOnlyList<string> CveIds,
    [property: JsonPropertyName("affected")] IReadOnlyList<OracleAffectedEntry> Affected,
    [property: JsonPropertyName("patchDocuments")] IReadOnlyList<OraclePatchDocument> PatchDocuments);
