generated/api/Models/VMGroupCommonProperties.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 VMGroupCommonProperties :
        Commvault.Powershell.Models.IVMGroupCommonProperties,
        Commvault.Powershell.Models.IVMGroupCommonPropertiesInternal
    {

        /// <summary>true if Backup is enabled</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public bool? ActivityControlEnableBackup { get => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).ActivityControlEnableBackup; set => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).ActivityControlEnableBackup = value ?? default(bool); }

        /// <summary>true if Restore is enabled</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public bool? ActivityControlEnableRestore { get => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).ActivityControlEnableRestore; set => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).ActivityControlEnableRestore = value ?? default(bool); }

        /// <summary>Delayed by n Hrs</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string BackupActivityControlOptionDelayTime { get => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).BackupActivityControlOptionDelayTime; set => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).BackupActivityControlOptionDelayTime = value ?? null; }

        /// <summary>True if the activity will be enabled after a delay time interval</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public bool? BackupActivityControlOptionEnableAfterDelay { get => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).BackupActivityControlOptionEnableAfterDelay; set => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).BackupActivityControlOptionEnableAfterDelay = value ?? default(bool); }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public long? BackupActivityControlOptionsTimeZoneId { get => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).BackupActivityControlOptionsTimeZoneId; set => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).BackupActivityControlOptionsTimeZoneId = value ?? default(long); }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string BackupActivityControlOptionsTimeZoneName { get => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).BackupActivityControlOptionsTimeZoneName; set => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).BackupActivityControlOptionsTimeZoneName = value ?? null; }

        /// <summary>Backing field for <see cref="Backupset" /> property.</summary>
        private Commvault.Powershell.Models.IIdName _backupset;

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.IIdName Backupset { get => (this._backupset = this._backupset ?? new Commvault.Powershell.Models.IdName()); set => this._backupset = value; }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public long? BackupsetId { get => ((Commvault.Powershell.Models.IIdNameInternal)Backupset).Id; set => ((Commvault.Powershell.Models.IIdNameInternal)Backupset).Id = value ?? default(long); }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string BackupsetName { get => ((Commvault.Powershell.Models.IIdNameInternal)Backupset).Name; set => ((Commvault.Powershell.Models.IIdNameInternal)Backupset).Name = value ?? null; }

        /// <summary>Internal Acessors for ActivityControlBackupActivityControlOptions</summary>
        Commvault.Powershell.Models.IBackupActivityControlOptionsProp Commvault.Powershell.Models.IVMGroupCommonPropertiesInternal.ActivityControlBackupActivityControlOptions { get => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).ActivityControlBackupActivityControlOptions; set => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).ActivityControlBackupActivityControlOptions = value; }

        /// <summary>Internal Acessors for ActivityControlRestoreActivityControlOptions</summary>
        Commvault.Powershell.Models.IBackupActivityControlOptionsProp Commvault.Powershell.Models.IVMGroupCommonPropertiesInternal.ActivityControlRestoreActivityControlOptions { get => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).ActivityControlRestoreActivityControlOptions; set => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).ActivityControlRestoreActivityControlOptions = value; }

        /// <summary>Internal Acessors for BackupActivityControlOptionTimeZone</summary>
        Commvault.Powershell.Models.IIdName Commvault.Powershell.Models.IVMGroupCommonPropertiesInternal.BackupActivityControlOptionTimeZone { get => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).BackupActivityControlOptionTimeZone; set => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).BackupActivityControlOptionTimeZone = value; }

        /// <summary>Internal Acessors for Backupset</summary>
        Commvault.Powershell.Models.IIdName Commvault.Powershell.Models.IVMGroupCommonPropertiesInternal.Backupset { get => (this._backupset = this._backupset ?? new Commvault.Powershell.Models.IdName()); set { {_backupset = value;} } }

        /// <summary>Internal Acessors for DataBackupStoragePolicy</summary>
        Commvault.Powershell.Models.IIdName Commvault.Powershell.Models.IVMGroupCommonPropertiesInternal.DataBackupStoragePolicy { get => (this._dataBackupStoragePolicy = this._dataBackupStoragePolicy ?? new Commvault.Powershell.Models.IdName()); set { {_dataBackupStoragePolicy = value;} } }

        /// <summary>Internal Acessors for Hypervisor</summary>
        Commvault.Powershell.Models.IHypervisorvmGroupCommonProp Commvault.Powershell.Models.IVMGroupCommonPropertiesInternal.Hypervisor { get => (this._hypervisor = this._hypervisor ?? new Commvault.Powershell.Models.HypervisorvmGroupCommonProp()); set { {_hypervisor = value;} } }

        /// <summary>Internal Acessors for HypervisorActivityControl</summary>
        Commvault.Powershell.Models.IActivityControlOptions Commvault.Powershell.Models.IVMGroupCommonPropertiesInternal.HypervisorActivityControl { get => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).ActivityControl; set => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).ActivityControl = value; }

        /// <summary>Internal Acessors for IDataAgent</summary>
        Commvault.Powershell.Models.IIdName Commvault.Powershell.Models.IVMGroupCommonPropertiesInternal.IDataAgent { get => (this._iDataAgent = this._iDataAgent ?? new Commvault.Powershell.Models.IdName()); set { {_iDataAgent = value;} } }

        /// <summary>Internal Acessors for IndexingInfo</summary>
        Commvault.Powershell.Models.IIndexingInfo Commvault.Powershell.Models.IVMGroupCommonPropertiesInternal.IndexingInfo { get => (this._indexingInfo = this._indexingInfo ?? new Commvault.Powershell.Models.IndexingInfo()); set { {_indexingInfo = value;} } }

        /// <summary>Internal Acessors for Instance</summary>
        Commvault.Powershell.Models.IIdName Commvault.Powershell.Models.IVMGroupCommonPropertiesInternal.Instance { get => (this._instance = this._instance ?? new Commvault.Powershell.Models.IdName()); set { {_instance = value;} } }

        /// <summary>Internal Acessors for RestoreActivityControlOptionTimeZone</summary>
        Commvault.Powershell.Models.IIdName Commvault.Powershell.Models.IVMGroupCommonPropertiesInternal.RestoreActivityControlOptionTimeZone { get => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).RestoreActivityControlOptionTimeZone; set => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).RestoreActivityControlOptionTimeZone = value; }

        /// <summary>Backing field for <see cref="DataBackupStoragePolicy" /> property.</summary>
        private Commvault.Powershell.Models.IIdName _dataBackupStoragePolicy;

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.IIdName DataBackupStoragePolicy { get => (this._dataBackupStoragePolicy = this._dataBackupStoragePolicy ?? new Commvault.Powershell.Models.IdName()); set => this._dataBackupStoragePolicy = value; }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public long? DataBackupStoragePolicyId { get => ((Commvault.Powershell.Models.IIdNameInternal)DataBackupStoragePolicy).Id; set => ((Commvault.Powershell.Models.IIdNameInternal)DataBackupStoragePolicy).Id = value ?? default(long); }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string DataBackupStoragePolicyName { get => ((Commvault.Powershell.Models.IIdNameInternal)DataBackupStoragePolicy).Name; set => ((Commvault.Powershell.Models.IIdNameInternal)DataBackupStoragePolicy).Name = value ?? null; }

        /// <summary>Backing field for <see cref="Hypervisor" /> property.</summary>
        private Commvault.Powershell.Models.IHypervisorvmGroupCommonProp _hypervisor;

        /// <summary>Common properties of hypervisor in vmgroup</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.IHypervisorvmGroupCommonProp Hypervisor { get => (this._hypervisor = this._hypervisor ?? new Commvault.Powershell.Models.HypervisorvmGroupCommonProp()); set => this._hypervisor = value; }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public long? HypervisorId { get => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).Id; set => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).Id = value ?? default(long); }

        /// <summary>Name of the hypervisor client</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string HypervisorName { get => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).Name; set => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).Name = value ?? null; }

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

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public string HypervisorType { get => this._hypervisorType; set => this._hypervisorType = value; }

        /// <summary>Backing field for <see cref="IDataAgent" /> property.</summary>
        private Commvault.Powershell.Models.IIdName _iDataAgent;

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.IIdName IDataAgent { get => (this._iDataAgent = this._iDataAgent ?? new Commvault.Powershell.Models.IdName()); set => this._iDataAgent = value; }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public long? IDataAgentId { get => ((Commvault.Powershell.Models.IIdNameInternal)IDataAgent).Id; set => ((Commvault.Powershell.Models.IIdNameInternal)IDataAgent).Id = value ?? default(long); }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string IDataAgentName { get => ((Commvault.Powershell.Models.IIdNameInternal)IDataAgent).Name; set => ((Commvault.Powershell.Models.IIdNameInternal)IDataAgent).Name = value ?? null; }

        /// <summary>Backing field for <see cref="IndexingInfo" /> property.</summary>
        private Commvault.Powershell.Models.IIndexingInfo _indexingInfo;

        /// <summary>indexingInfo</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.IIndexingInfo IndexingInfo { get => (this._indexingInfo = this._indexingInfo ?? new Commvault.Powershell.Models.IndexingInfo()); set => this._indexingInfo = value; }

        /// <summary>Indexing Message</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string IndexingInfoMessage { get => ((Commvault.Powershell.Models.IIndexingInfoInternal)IndexingInfo).Message; set => ((Commvault.Powershell.Models.IIndexingInfoInternal)IndexingInfo).Message = value ?? null; }

        /// <summary>Type of indexing status.</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string IndexingInfoStatus { get => ((Commvault.Powershell.Models.IIndexingInfoInternal)IndexingInfo).Status; set => ((Commvault.Powershell.Models.IIndexingInfoInternal)IndexingInfo).Status = value ?? null; }

        /// <summary>Backing field for <see cref="Instance" /> property.</summary>
        private Commvault.Powershell.Models.IIdName _instance;

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.IIdName Instance { get => (this._instance = this._instance ?? new Commvault.Powershell.Models.IdName()); set => this._instance = value; }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public long? InstanceId { get => ((Commvault.Powershell.Models.IIdNameInternal)Instance).Id; set => ((Commvault.Powershell.Models.IIdNameInternal)Instance).Id = value ?? default(long); }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string InstanceName { get => ((Commvault.Powershell.Models.IIdNameInternal)Instance).Name; set => ((Commvault.Powershell.Models.IIdNameInternal)Instance).Name = value ?? null; }

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

        /// <summary>True if the hypervisor is deleted</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public bool? IsDeletedHypervisor { get => this._isDeletedHypervisor; set => this._isDeletedHypervisor = value; }

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

        /// <summary>True if this is a ETCD Subclient</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public bool? IsEtcdSubclient { get => this._isEtcdSubclient; set => this._isEtcdSubclient = value; }

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

        /// <summary>true if the hypervisor has been deconfigured</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public bool? IsHypervisorDeconfigured { get => this._isHypervisorDeconfigured; set => this._isHypervisorDeconfigured = value; }

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

        /// <summary>True if Indexing version is 2</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public bool? IsIndexingV2 { get => this._isIndexingV2; set => this._isIndexingV2 = value; }

        /// <summary>Delayed by n Hrs</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string RestoreActivityControlOptionDelayTime { get => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).RestoreActivityControlOptionDelayTime; set => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).RestoreActivityControlOptionDelayTime = value ?? null; }

        /// <summary>True if the activity will be enabled after a delay time interval</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public bool? RestoreActivityControlOptionEnableAfterDelay { get => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).RestoreActivityControlOptionEnableAfterDelay; set => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).RestoreActivityControlOptionEnableAfterDelay = value ?? default(bool); }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public long? RestoreActivityControlOptionsTimeZoneId { get => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).RestoreActivityControlOptionsTimeZoneId; set => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).RestoreActivityControlOptionsTimeZoneId = value ?? default(long); }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string RestoreActivityControlOptionsTimeZoneName { get => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).RestoreActivityControlOptionsTimeZoneName; set => ((Commvault.Powershell.Models.IHypervisorvmGroupCommonPropInternal)Hypervisor).RestoreActivityControlOptionsTimeZoneName = value ?? null; }

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

        /// <summary>True if we need to show full backup level</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public bool? ShowFullBackupLevel { get => this._showFullBackupLevel; set => this._showFullBackupLevel = value; }

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

        }
    }
    public partial interface IVMGroupCommonProperties :
        Commvault.Powershell.Runtime.IJsonSerializable
    {
        /// <summary>true if Backup is enabled</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"true if Backup is enabled",
        SerializedName = @"enableBackup",
        PossibleTypes = new [] { typeof(bool) })]
        bool? ActivityControlEnableBackup { get; set; }
        /// <summary>true if Restore is enabled</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"true if Restore is enabled",
        SerializedName = @"enableRestore",
        PossibleTypes = new [] { typeof(bool) })]
        bool? ActivityControlEnableRestore { get; set; }
        /// <summary>Delayed by n Hrs</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Delayed by n Hrs",
        SerializedName = @"delayTime",
        PossibleTypes = new [] { typeof(string) })]
        string BackupActivityControlOptionDelayTime { get; set; }
        /// <summary>True if the activity will be enabled after a delay time interval</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"True if the activity will be enabled after a delay time interval",
        SerializedName = @"enableAfterDelay",
        PossibleTypes = new [] { typeof(bool) })]
        bool? BackupActivityControlOptionEnableAfterDelay { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"id",
        PossibleTypes = new [] { typeof(long) })]
        long? BackupActivityControlOptionsTimeZoneId { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"name",
        PossibleTypes = new [] { typeof(string) })]
        string BackupActivityControlOptionsTimeZoneName { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"id",
        PossibleTypes = new [] { typeof(long) })]
        long? BackupsetId { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"name",
        PossibleTypes = new [] { typeof(string) })]
        string BackupsetName { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"id",
        PossibleTypes = new [] { typeof(long) })]
        long? DataBackupStoragePolicyId { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"name",
        PossibleTypes = new [] { typeof(string) })]
        string DataBackupStoragePolicyName { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"id",
        PossibleTypes = new [] { typeof(long) })]
        long? HypervisorId { get; set; }
        /// <summary>Name of the hypervisor client</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Name of the hypervisor client",
        SerializedName = @"name",
        PossibleTypes = new [] { typeof(string) })]
        string HypervisorName { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"hypervisorType",
        PossibleTypes = new [] { typeof(string) })]
        string HypervisorType { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"id",
        PossibleTypes = new [] { typeof(long) })]
        long? IDataAgentId { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"name",
        PossibleTypes = new [] { typeof(string) })]
        string IDataAgentName { get; set; }
        /// <summary>Indexing Message</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Indexing Message",
        SerializedName = @"message",
        PossibleTypes = new [] { typeof(string) })]
        string IndexingInfoMessage { get; set; }
        /// <summary>Type of indexing status.</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Type of indexing status.",
        SerializedName = @"status",
        PossibleTypes = new [] { typeof(string) })]
        string IndexingInfoStatus { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"id",
        PossibleTypes = new [] { typeof(long) })]
        long? InstanceId { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"name",
        PossibleTypes = new [] { typeof(string) })]
        string InstanceName { get; set; }
        /// <summary>True if the hypervisor is deleted</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"True if the hypervisor is deleted",
        SerializedName = @"isDeletedHypervisor",
        PossibleTypes = new [] { typeof(bool) })]
        bool? IsDeletedHypervisor { get; set; }
        /// <summary>True if this is a ETCD Subclient</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"True if this is a ETCD Subclient",
        SerializedName = @"isETCDSubclient",
        PossibleTypes = new [] { typeof(bool) })]
        bool? IsEtcdSubclient { get; set; }
        /// <summary>true if the hypervisor has been deconfigured</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"true if the hypervisor has been deconfigured",
        SerializedName = @"isHypervisorDeconfigured",
        PossibleTypes = new [] { typeof(bool) })]
        bool? IsHypervisorDeconfigured { get; set; }
        /// <summary>True if Indexing version is 2</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"True if Indexing version is 2",
        SerializedName = @"isIndexingV2",
        PossibleTypes = new [] { typeof(bool) })]
        bool? IsIndexingV2 { get; set; }
        /// <summary>Delayed by n Hrs</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Delayed by n Hrs",
        SerializedName = @"delayTime",
        PossibleTypes = new [] { typeof(string) })]
        string RestoreActivityControlOptionDelayTime { get; set; }
        /// <summary>True if the activity will be enabled after a delay time interval</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"True if the activity will be enabled after a delay time interval",
        SerializedName = @"enableAfterDelay",
        PossibleTypes = new [] { typeof(bool) })]
        bool? RestoreActivityControlOptionEnableAfterDelay { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"id",
        PossibleTypes = new [] { typeof(long) })]
        long? RestoreActivityControlOptionsTimeZoneId { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"name",
        PossibleTypes = new [] { typeof(string) })]
        string RestoreActivityControlOptionsTimeZoneName { get; set; }
        /// <summary>True if we need to show full backup level</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"True if we need to show full backup level",
        SerializedName = @"showFullBackupLevel",
        PossibleTypes = new [] { typeof(bool) })]
        bool? ShowFullBackupLevel { get; set; }

    }
    internal partial interface IVMGroupCommonPropertiesInternal

    {
        Commvault.Powershell.Models.IBackupActivityControlOptionsProp ActivityControlBackupActivityControlOptions { get; set; }
        /// <summary>true if Backup is enabled</summary>
        bool? ActivityControlEnableBackup { get; set; }
        /// <summary>true if Restore is enabled</summary>
        bool? ActivityControlEnableRestore { get; set; }

        Commvault.Powershell.Models.IBackupActivityControlOptionsProp ActivityControlRestoreActivityControlOptions { get; set; }
        /// <summary>Delayed by n Hrs</summary>
        string BackupActivityControlOptionDelayTime { get; set; }
        /// <summary>True if the activity will be enabled after a delay time interval</summary>
        bool? BackupActivityControlOptionEnableAfterDelay { get; set; }

        Commvault.Powershell.Models.IIdName BackupActivityControlOptionTimeZone { get; set; }

        long? BackupActivityControlOptionsTimeZoneId { get; set; }

        string BackupActivityControlOptionsTimeZoneName { get; set; }

        Commvault.Powershell.Models.IIdName Backupset { get; set; }

        long? BackupsetId { get; set; }

        string BackupsetName { get; set; }

        Commvault.Powershell.Models.IIdName DataBackupStoragePolicy { get; set; }

        long? DataBackupStoragePolicyId { get; set; }

        string DataBackupStoragePolicyName { get; set; }
        /// <summary>Common properties of hypervisor in vmgroup</summary>
        Commvault.Powershell.Models.IHypervisorvmGroupCommonProp Hypervisor { get; set; }

        Commvault.Powershell.Models.IActivityControlOptions HypervisorActivityControl { get; set; }

        long? HypervisorId { get; set; }
        /// <summary>Name of the hypervisor client</summary>
        string HypervisorName { get; set; }

        string HypervisorType { get; set; }

        Commvault.Powershell.Models.IIdName IDataAgent { get; set; }

        long? IDataAgentId { get; set; }

        string IDataAgentName { get; set; }
        /// <summary>indexingInfo</summary>
        Commvault.Powershell.Models.IIndexingInfo IndexingInfo { get; set; }
        /// <summary>Indexing Message</summary>
        string IndexingInfoMessage { get; set; }
        /// <summary>Type of indexing status.</summary>
        string IndexingInfoStatus { get; set; }

        Commvault.Powershell.Models.IIdName Instance { get; set; }

        long? InstanceId { get; set; }

        string InstanceName { get; set; }
        /// <summary>True if the hypervisor is deleted</summary>
        bool? IsDeletedHypervisor { get; set; }
        /// <summary>True if this is a ETCD Subclient</summary>
        bool? IsEtcdSubclient { get; set; }
        /// <summary>true if the hypervisor has been deconfigured</summary>
        bool? IsHypervisorDeconfigured { get; set; }
        /// <summary>True if Indexing version is 2</summary>
        bool? IsIndexingV2 { get; set; }
        /// <summary>Delayed by n Hrs</summary>
        string RestoreActivityControlOptionDelayTime { get; set; }
        /// <summary>True if the activity will be enabled after a delay time interval</summary>
        bool? RestoreActivityControlOptionEnableAfterDelay { get; set; }

        Commvault.Powershell.Models.IIdName RestoreActivityControlOptionTimeZone { get; set; }

        long? RestoreActivityControlOptionsTimeZoneId { get; set; }

        string RestoreActivityControlOptionsTimeZoneName { get; set; }
        /// <summary>True if we need to show full backup level</summary>
        bool? ShowFullBackupLevel { get; set; }

    }
}