generated/api/Models/Role.cs

// Code generated by Microsoft (R) AutoRest Code Generator (autorest: 3.8.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>Used to return role details</summary>
    public partial class Role :
        Commvault.Powershell.Models.IRole,
        Commvault.Powershell.Models.IRoleInternal
    {

        /// <summary>Backing field for <see cref="Id" /> property.</summary>
        private long? _id;

        /// <summary>id of the role.</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public long? Id { get => this._id; set => this._id = value; }

        /// <summary>Backing field for <see cref="Name" /> property.</summary>
        private string _name;

        /// <summary>name of the role.</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public string Name { get => this._name; set => this._name = value; }

        /// <summary>Backing field for <see cref="Permissions" /> property.</summary>
        private Commvault.Powershell.Models.IPermissions[] _permissions;

        /// <summary>List of permissions associated with the role.</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public Commvault.Powershell.Models.IPermissions[] Permissions { get => this._permissions; set => this._permissions = value; }

        /// <summary>Backing field for <see cref="Security" /> property.</summary>
        private Commvault.Powershell.Models.ISecurityAssoc[] _security;

        /// <summary>Used to return the security association for the role</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public Commvault.Powershell.Models.ISecurityAssoc[] Security { get => this._security; set => this._security = value; }

        /// <summary>Backing field for <see cref="Status" /> property.</summary>
        private string _status;

        /// <summary>Specifies whether the role has been enabled or disabled.</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public string Status { get => this._status; set => this._status = value; }

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

        /// <summary>Returns if the role is visible to all.</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public bool? VisibleToAll { get => this._visibleToAll; set => this._visibleToAll = value; }

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

        }
    }
    /// Used to return role details
    public partial interface IRole :
        Commvault.Powershell.Runtime.IJsonSerializable
    {
        /// <summary>id of the role.</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"id of the role.",
        SerializedName = @"id",
        PossibleTypes = new [] { typeof(long) })]
        long? Id { get; set; }
        /// <summary>name of the role.</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"name of the role.",
        SerializedName = @"name",
        PossibleTypes = new [] { typeof(string) })]
        string Name { get; set; }
        /// <summary>List of permissions associated with the role.</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"List of permissions associated with the role.",
        SerializedName = @"permissions",
        PossibleTypes = new [] { typeof(Commvault.Powershell.Models.IPermissions) })]
        Commvault.Powershell.Models.IPermissions[] Permissions { get; set; }
        /// <summary>Used to return the security association for the role</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Used to return the security association for the role",
        SerializedName = @"security",
        PossibleTypes = new [] { typeof(Commvault.Powershell.Models.ISecurityAssoc) })]
        Commvault.Powershell.Models.ISecurityAssoc[] Security { get; set; }
        /// <summary>Specifies whether the role has been enabled or disabled.</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Specifies whether the role has been enabled or disabled.",
        SerializedName = @"status",
        PossibleTypes = new [] { typeof(string) })]
        string Status { get; set; }
        /// <summary>Returns if the role is visible to all.</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Returns if the role is visible to all.",
        SerializedName = @"visibleToAll",
        PossibleTypes = new [] { typeof(bool) })]
        bool? VisibleToAll { get; set; }

    }
    /// Used to return role details
    internal partial interface IRoleInternal

    {
        /// <summary>id of the role.</summary>
        long? Id { get; set; }
        /// <summary>name of the role.</summary>
        string Name { get; set; }
        /// <summary>List of permissions associated with the role.</summary>
        Commvault.Powershell.Models.IPermissions[] Permissions { get; set; }
        /// <summary>Used to return the security association for the role</summary>
        Commvault.Powershell.Models.ISecurityAssoc[] Security { get; set; }
        /// <summary>Specifies whether the role has been enabled or disabled.</summary>
        string Status { get; set; }
        /// <summary>Returns if the role is visible to all.</summary>
        bool? VisibleToAll { get; set; }

    }
}