// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;
using Pulumi;

namespace TencentCloudIAC.PulumiPackage.Tencentcloud.Cynosdb.Outputs
{

    [OutputType]
    public sealed class GetClusterInstanceGroupsInstanceGrpInfoListInstanceSetResult
    {
        /// <summary>
        /// User app id.
        /// </summary>
        public readonly int AppId;
        /// <summary>
        /// Business type.Note: This field may return null, indicating that no valid value can be obtained.
        /// </summary>
        public readonly string BusinessType;
        /// <summary>
        /// The ID of cluster.
        /// </summary>
        public readonly string ClusterId;
        /// <summary>
        /// The name of cluster.
        /// </summary>
        public readonly string ClusterName;
        /// <summary>
        /// Cpu, unit: CORE.
        /// </summary>
        public readonly int Cpu;
        /// <summary>
        /// Create time.
        /// </summary>
        public readonly string CreateTime;
        /// <summary>
        /// Cynos kernel version.
        /// </summary>
        public readonly string CynosVersion;
        /// <summary>
        /// Database type.
        /// </summary>
        public readonly string DbType;
        /// <summary>
        /// Database version.
        /// </summary>
        public readonly string DbVersion;
        /// <summary>
        /// Destroy deadline.
        /// </summary>
        public readonly string DestroyDeadlineText;
        /// <summary>
        /// Instance destroy time.
        /// </summary>
        public readonly string DestroyTime;
        /// <summary>
        /// The id of instance.
        /// </summary>
        public readonly string InstanceId;
        /// <summary>
        /// The name of instance.
        /// </summary>
        public readonly string InstanceName;
        /// <summary>
        /// Instance role.
        /// </summary>
        public readonly string InstanceRole;
        /// <summary>
        /// Instance type.
        /// </summary>
        public readonly string InstanceType;
        /// <summary>
        /// Whether to freeze.Note: This field may return null, indicating that no valid value can be obtained.
        /// </summary>
        public readonly string IsFreeze;
        /// <summary>
        /// Isolate time.
        /// </summary>
        public readonly string IsolateTime;
        /// <summary>
        /// Serverless instance maxmum cpu.
        /// </summary>
        public readonly double MaxCpu;
        /// <summary>
        /// Memory, unit: GB.
        /// </summary>
        public readonly int Memory;
        /// <summary>
        /// Serverless instance minimum cpu.
        /// </summary>
        public readonly double MinCpu;
        /// <summary>
        /// Net type.
        /// </summary>
        public readonly int NetType;
        /// <summary>
        /// Pay mode.
        /// </summary>
        public readonly int PayMode;
        /// <summary>
        /// Instance expiration time.
        /// </summary>
        public readonly string PeriodEndTime;
        /// <summary>
        /// Physical zone.
        /// </summary>
        public readonly string PhysicalZone;
        /// <summary>
        /// Task being processed.
        /// </summary>
        public readonly string ProcessingTask;
        /// <summary>
        /// The id of project.
        /// </summary>
        public readonly int ProjectId;
        /// <summary>
        /// Region.
        /// </summary>
        public readonly string Region;
        /// <summary>
        /// Renew flag.
        /// </summary>
        public readonly int RenewFlag;
        /// <summary>
        /// Resource tags.Note: This field may return null, indicating that no valid value can be obtained.
        /// </summary>
        public readonly ImmutableArray<Outputs.GetClusterInstanceGroupsInstanceGrpInfoListInstanceSetResourceTagResult> ResourceTags;
        /// <summary>
        /// Serverless instance status, optional values:resumepause.
        /// </summary>
        public readonly string ServerlessStatus;
        /// <summary>
        /// Status.
        /// </summary>
        public readonly string Status;
        /// <summary>
        /// Instance state Chinese description.
        /// </summary>
        public readonly string StatusDesc;
        /// <summary>
        /// Storage, unit: GB.
        /// </summary>
        public readonly int Storage;
        /// <summary>
        /// Prepaid Storage Id.Note: This field may return null, indicating that no valid value can be obtained..
        /// </summary>
        public readonly string StorageId;
        /// <summary>
        /// Storage payment type.
        /// </summary>
        public readonly int StoragePayMode;
        /// <summary>
        /// Subnet ID.
        /// </summary>
        public readonly string SubnetId;
        /// <summary>
        /// Task list.Note: This field may return null, indicating that no valid value can be obtained.
        /// </summary>
        public readonly ImmutableArray<Outputs.GetClusterInstanceGroupsInstanceGrpInfoListInstanceSetTaskResult> Tasks;
        /// <summary>
        /// User Uin.
        /// </summary>
        public readonly string Uin;
        /// <summary>
        /// Update time.
        /// </summary>
        public readonly string UpdateTime;
        /// <summary>
        /// Intranet IP.
        /// </summary>
        public readonly string Vip;
        /// <summary>
        /// VPC network ID.
        /// </summary>
        public readonly string VpcId;
        /// <summary>
        /// Intranet port.
        /// </summary>
        public readonly int Vport;
        /// <summary>
        /// Public domain name.
        /// </summary>
        public readonly string WanDomain;
        /// <summary>
        /// Public IP.
        /// </summary>
        public readonly string WanIp;
        /// <summary>
        /// Public port.
        /// </summary>
        public readonly int WanPort;
        /// <summary>
        /// Public status.
        /// </summary>
        public readonly string WanStatus;
        /// <summary>
        /// Availability zone.
        /// </summary>
        public readonly string Zone;

        [OutputConstructor]
        private GetClusterInstanceGroupsInstanceGrpInfoListInstanceSetResult(
            int appId,

            string businessType,

            string clusterId,

            string clusterName,

            int cpu,

            string createTime,

            string cynosVersion,

            string dbType,

            string dbVersion,

            string destroyDeadlineText,

            string destroyTime,

            string instanceId,

            string instanceName,

            string instanceRole,

            string instanceType,

            string isFreeze,

            string isolateTime,

            double maxCpu,

            int memory,

            double minCpu,

            int netType,

            int payMode,

            string periodEndTime,

            string physicalZone,

            string processingTask,

            int projectId,

            string region,

            int renewFlag,

            ImmutableArray<Outputs.GetClusterInstanceGroupsInstanceGrpInfoListInstanceSetResourceTagResult> resourceTags,

            string serverlessStatus,

            string status,

            string statusDesc,

            int storage,

            string storageId,

            int storagePayMode,

            string subnetId,

            ImmutableArray<Outputs.GetClusterInstanceGroupsInstanceGrpInfoListInstanceSetTaskResult> tasks,

            string uin,

            string updateTime,

            string vip,

            string vpcId,

            int vport,

            string wanDomain,

            string wanIp,

            int wanPort,

            string wanStatus,

            string zone)
        {
            AppId = appId;
            BusinessType = businessType;
            ClusterId = clusterId;
            ClusterName = clusterName;
            Cpu = cpu;
            CreateTime = createTime;
            CynosVersion = cynosVersion;
            DbType = dbType;
            DbVersion = dbVersion;
            DestroyDeadlineText = destroyDeadlineText;
            DestroyTime = destroyTime;
            InstanceId = instanceId;
            InstanceName = instanceName;
            InstanceRole = instanceRole;
            InstanceType = instanceType;
            IsFreeze = isFreeze;
            IsolateTime = isolateTime;
            MaxCpu = maxCpu;
            Memory = memory;
            MinCpu = minCpu;
            NetType = netType;
            PayMode = payMode;
            PeriodEndTime = periodEndTime;
            PhysicalZone = physicalZone;
            ProcessingTask = processingTask;
            ProjectId = projectId;
            Region = region;
            RenewFlag = renewFlag;
            ResourceTags = resourceTags;
            ServerlessStatus = serverlessStatus;
            Status = status;
            StatusDesc = statusDesc;
            Storage = storage;
            StorageId = storageId;
            StoragePayMode = storagePayMode;
            SubnetId = subnetId;
            Tasks = tasks;
            Uin = uin;
            UpdateTime = updateTime;
            Vip = vip;
            VpcId = vpcId;
            Vport = vport;
            WanDomain = wanDomain;
            WanIp = wanIp;
            WanPort = wanPort;
            WanStatus = wanStatus;
            Zone = zone;
        }
    }
}
