generated/api/Models/TwoFactorAuth.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;

    public partial class TwoFactorAuth :
        Commvault.Powershell.Models.ITwoFactorAuth,
        Commvault.Powershell.Models.ITwoFactorAuthInternal
    {

        /// <summary>Backing field for <see cref="All" /> property.</summary>
        private bool? _all;

        /// <summary>
        /// enable two factor authentication for every entity. if set to false when Two factor authentication is enabled, provide
        /// userGroupId or userGroupName. If both are provided, userGroupId is taken
        /// </summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public bool? All { get => this._all; set => this._all = value; }

        /// <summary>Backing field for <see cref="Enable" /> property.</summary>
        private bool? _enable;

        /// <summary>
        /// enable or disable two factor authentication. if enabled, all or userGroups value should be provided.
        /// </summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public bool? Enable { get => this._enable; set => this._enable = value; }

        /// <summary>Backing field for <see cref="UserGroups" /> property.</summary>
        private Commvault.Powershell.Models.IIdName[] _userGroups;

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public Commvault.Powershell.Models.IIdName[] UserGroups { get => this._userGroups; set => this._userGroups = value; }

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

        }
    }
    public partial interface ITwoFactorAuth :
        Commvault.Powershell.Runtime.IJsonSerializable
    {
        /// <summary>
        /// enable two factor authentication for every entity. if set to false when Two factor authentication is enabled, provide
        /// userGroupId or userGroupName. If both are provided, userGroupId is taken
        /// </summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"enable two factor authentication for every entity. if set to false when Two factor authentication is enabled, provide userGroupId or userGroupName. If both are provided, userGroupId is taken",
        SerializedName = @"all",
        PossibleTypes = new [] { typeof(bool) })]
        bool? All { get; set; }
        /// <summary>
        /// enable or disable two factor authentication. if enabled, all or userGroups value should be provided.
        /// </summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"enable or disable two factor authentication. if enabled, all or userGroups value should be provided.",
        SerializedName = @"enable",
        PossibleTypes = new [] { typeof(bool) })]
        bool? Enable { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"userGroups",
        PossibleTypes = new [] { typeof(Commvault.Powershell.Models.IIdName) })]
        Commvault.Powershell.Models.IIdName[] UserGroups { get; set; }

    }
    internal partial interface ITwoFactorAuthInternal

    {
        /// <summary>
        /// enable two factor authentication for every entity. if set to false when Two factor authentication is enabled, provide
        /// userGroupId or userGroupName. If both are provided, userGroupId is taken
        /// </summary>
        bool? All { get; set; }
        /// <summary>
        /// enable or disable two factor authentication. if enabled, all or userGroups value should be provided.
        /// </summary>
        bool? Enable { get; set; }

        Commvault.Powershell.Models.IIdName[] UserGroups { get; set; }

    }
}