using Microsoft.Kiota.Abstractions.Serialization; using System; using System.Collections.Generic; using System.IO; using System.Linq; namespace DDNSUpdater.APIs.Ionos.ApiClient.Models { public class DynDnsRequest : IAdditionalDataHolder, IParsable { /// Stores additional data not described in the OpenAPI description found when deserializing. Can be used for serialization as well. public IDictionary AdditionalData { get; set; } /// Dynamic Dns description. #if NETSTANDARD2_1_OR_GREATER || NETCOREAPP3_1_OR_GREATER #nullable enable public string? Description { get; set; } #nullable restore #else public string Description { get; set; } #endif /// The domains property #if NETSTANDARD2_1_OR_GREATER || NETCOREAPP3_1_OR_GREATER #nullable enable public List? Domains { get; set; } #nullable restore #else public List Domains { get; set; } #endif /// /// Instantiates a new DynDnsRequest and sets the default values. /// public DynDnsRequest() { AdditionalData = new Dictionary(); } /// /// Creates a new instance of the appropriate class based on discriminator value /// /// The parse node to use to read the discriminator value and create the object public static DynDnsRequest CreateFromDiscriminatorValue(IParseNode parseNode) { _ = parseNode ?? throw new ArgumentNullException(nameof(parseNode)); return new DynDnsRequest(); } /// /// The deserialization information for the current model /// public IDictionary> GetFieldDeserializers() { return new Dictionary> { {"description", n => { Description = n.GetStringValue(); } }, {"domains", n => { Domains = n.GetCollectionOfPrimitiveValues()?.ToList(); } }, }; } /// /// Serializes information the current object /// /// Serialization writer to use to serialize this model public void Serialize(ISerializationWriter writer) { _ = writer ?? throw new ArgumentNullException(nameof(writer)); writer.WriteStringValue("description", Description); writer.WriteCollectionOfPrimitiveValues("domains", Domains); writer.WriteAdditionalData(AdditionalData); } } }