generated/api/Models/AlertDetailsSummary.cs

// Code generated by Microsoft (R) AutoRest Code Generator (autorest: 3.9.4, generator: @autorest/powershell@3.0.415)
// Changes may cause incorrect behavior and will be lost if the code is regenerated.

namespace Commvault.Powershell.Models
{
    using static Commvault.Powershell.Runtime.Extensions;

    /// <summary>AlertDetailsSummary</summary>
    public partial class AlertDetailsSummary :
        Commvault.Powershell.Models.IAlertDetailsSummary,
        Commvault.Powershell.Models.IAlertDetailsSummaryInternal
    {

        /// <summary>Backing field for <see cref="Category" /> property.</summary>
        private Commvault.Powershell.Models.IAlertCategoryIdName1 _category;

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.IAlertCategoryIdName1 Category { get => (this._category = this._category ?? new Commvault.Powershell.Models.AlertCategoryIdName1()); set => this._category = value; }

        /// <summary>id of the category of the alert definition</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public long? CategoryId { get => ((Commvault.Powershell.Models.IAlertCategoryIdName1Internal)Category).Id; set => ((Commvault.Powershell.Models.IAlertCategoryIdName1Internal)Category).Id = value ?? default(long); }

        /// <summary>category of the alert definition</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string CategoryName { get => ((Commvault.Powershell.Models.IAlertCategoryIdName1Internal)Category).Name; set => ((Commvault.Powershell.Models.IAlertCategoryIdName1Internal)Category).Name = value ?? null; }

        /// <summary>Internal Acessors for Category</summary>
        Commvault.Powershell.Models.IAlertCategoryIdName1 Commvault.Powershell.Models.IAlertDetailsSummaryInternal.Category { get => (this._category = this._category ?? new Commvault.Powershell.Models.AlertCategoryIdName1()); set { {_category = value;} } }

        /// <summary>Internal Acessors for Criteria</summary>
        Commvault.Powershell.Models.IAlertCriteriaIdName1 Commvault.Powershell.Models.IAlertDetailsSummaryInternal.Criteria { get => (this._criteria = this._criteria ?? new Commvault.Powershell.Models.AlertCriteriaIdName1()); set { {_criteria = value;} } }

        /// <summary>Internal Acessors for Type</summary>
        Commvault.Powershell.Models.IAlertTypeIdName1 Commvault.Powershell.Models.IAlertDetailsSummaryInternal.Type { get => (this._type = this._type ?? new Commvault.Powershell.Models.AlertTypeIdName1()); set { {_type = value;} } }

        /// <summary>Backing field for <see cref="Criteria" /> property.</summary>
        private Commvault.Powershell.Models.IAlertCriteriaIdName1 _criteria;

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.IAlertCriteriaIdName1 Criteria { get => (this._criteria = this._criteria ?? new Commvault.Powershell.Models.AlertCriteriaIdName1()); set => this._criteria = value; }

        /// <summary>id of the criteria of detection for the alert definition</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public long? CriterionId { get => ((Commvault.Powershell.Models.IAlertCriteriaIdName1Internal)Criteria).Id; set => ((Commvault.Powershell.Models.IAlertCriteriaIdName1Internal)Criteria).Id = value ?? default(long); }

        /// <summary>criteria of detection for the alert definition</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string CriterionName { get => ((Commvault.Powershell.Models.IAlertCriteriaIdName1Internal)Criteria).Name; set => ((Commvault.Powershell.Models.IAlertCriteriaIdName1Internal)Criteria).Name = value ?? null; }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public Commvault.Powershell.Models.IAlertDefinitionsCriteriaParams[] CriterionParamsList { get => ((Commvault.Powershell.Models.IAlertCriteriaIdName1Internal)Criteria).ParamsList; set => ((Commvault.Powershell.Models.IAlertCriteriaIdName1Internal)Criteria).ParamsList = value ?? null /* arrayOf */; }

        /// <summary>Backing field for <see cref="Type" /> property.</summary>
        private Commvault.Powershell.Models.IAlertTypeIdName1 _type;

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.IAlertTypeIdName1 Type { get => (this._type = this._type ?? new Commvault.Powershell.Models.AlertTypeIdName1()); set => this._type = value; }

        /// <summary>id of the alert definition</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public long? TypeId { get => ((Commvault.Powershell.Models.IAlertTypeIdName1Internal)Type).Id; set => ((Commvault.Powershell.Models.IAlertTypeIdName1Internal)Type).Id = value ?? default(long); }

        /// <summary>type of the alert definitions</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string TypeName { get => ((Commvault.Powershell.Models.IAlertTypeIdName1Internal)Type).Name; set => ((Commvault.Powershell.Models.IAlertTypeIdName1Internal)Type).Name = value ?? null; }

        /// <summary>Creates an new <see cref="AlertDetailsSummary" /> instance.</summary>
        public AlertDetailsSummary()
        {

        }
    }
    /// AlertDetailsSummary
    public partial interface IAlertDetailsSummary :
        Commvault.Powershell.Runtime.IJsonSerializable
    {
        /// <summary>id of the category of the alert definition</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"id of the category of the alert definition",
        SerializedName = @"id",
        PossibleTypes = new [] { typeof(long) })]
        long? CategoryId { get; set; }
        /// <summary>category of the alert definition</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"category of the alert definition",
        SerializedName = @"name",
        PossibleTypes = new [] { typeof(string) })]
        string CategoryName { get; set; }
        /// <summary>id of the criteria of detection for the alert definition</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"id of the criteria of detection for the alert definition",
        SerializedName = @"id",
        PossibleTypes = new [] { typeof(long) })]
        long? CriterionId { get; set; }
        /// <summary>criteria of detection for the alert definition</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"criteria of detection for the alert definition",
        SerializedName = @"name",
        PossibleTypes = new [] { typeof(string) })]
        string CriterionName { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"paramsList",
        PossibleTypes = new [] { typeof(Commvault.Powershell.Models.IAlertDefinitionsCriteriaParams) })]
        Commvault.Powershell.Models.IAlertDefinitionsCriteriaParams[] CriterionParamsList { get; set; }
        /// <summary>id of the alert definition</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"id of the alert definition",
        SerializedName = @"id",
        PossibleTypes = new [] { typeof(long) })]
        long? TypeId { get; set; }
        /// <summary>type of the alert definitions</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"type of the alert definitions",
        SerializedName = @"name",
        PossibleTypes = new [] { typeof(string) })]
        string TypeName { get; set; }

    }
    /// AlertDetailsSummary
    internal partial interface IAlertDetailsSummaryInternal

    {
        Commvault.Powershell.Models.IAlertCategoryIdName1 Category { get; set; }
        /// <summary>id of the category of the alert definition</summary>
        long? CategoryId { get; set; }
        /// <summary>category of the alert definition</summary>
        string CategoryName { get; set; }

        Commvault.Powershell.Models.IAlertCriteriaIdName1 Criteria { get; set; }
        /// <summary>id of the criteria of detection for the alert definition</summary>
        long? CriterionId { get; set; }
        /// <summary>criteria of detection for the alert definition</summary>
        string CriterionName { get; set; }

        Commvault.Powershell.Models.IAlertDefinitionsCriteriaParams[] CriterionParamsList { get; set; }

        Commvault.Powershell.Models.IAlertTypeIdName1 Type { get; set; }
        /// <summary>id of the alert definition</summary>
        long? TypeId { get; set; }
        /// <summary>type of the alert definitions</summary>
        string TypeName { get; set; }

    }
}