// *** 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.Cvm.Outputs
{

    [OutputType]
    public sealed class GetChcHostsChcHostSetResult
    {
        /// <summary>
        /// Out-of-band network IPNote: This field may return null, indicating that no valid values can be obtained.
        /// </summary>
        public readonly string BmcIp;
        /// <summary>
        /// MAC address assigned under the out-of-band networkNote: This field may return null, indicating that no valid values can be obtained.
        /// </summary>
        public readonly string BmcMac;
        /// <summary>
        /// Out-of-band network security group IDNote: This field may return null, indicating that no valid values can be obtained.
        /// </summary>
        public readonly ImmutableArray<string> BmcSecurityGroupIds;
        /// <summary>
        /// Out-of-band networkNote: This field may return null, indicating that no valid values can be obtained.
        /// </summary>
        public readonly ImmutableArray<Outputs.GetChcHostsChcHostSetBmcVirtualPrivateCloudResult> BmcVirtualPrivateClouds;
        /// <summary>
        /// CHC host ID.
        /// </summary>
        public readonly string ChcId;
        /// <summary>
        /// CPU cores of the CHC hostNote: This field may return null, indicating that no valid values can be obtained.
        /// </summary>
        public readonly int Cpu;
        /// <summary>
        /// Server creation time.
        /// </summary>
        public readonly string CreatedTime;
        /// <summary>
        /// ID of the associated CVMNote: This field may return null, indicating that no valid values can be obtained.
        /// </summary>
        public readonly string CvmInstanceId;
        /// <summary>
        /// Deployment network IPNote: This field may return null, indicating that no valid values can be obtained.
        /// </summary>
        public readonly string DeployIp;
        /// <summary>
        /// MAC address assigned under the deployment networkNote: This field may return null, indicating that no valid values can be obtained.
        /// </summary>
        public readonly string DeployMac;
        /// <summary>
        /// Deployment network security group IDNote: This field may return null, indicating that no valid values can be obtained.
        /// </summary>
        public readonly ImmutableArray<string> DeploySecurityGroupIds;
        /// <summary>
        /// Deployment networkNote: This field may return null, indicating that no valid values can be obtained.
        /// </summary>
        public readonly ImmutableArray<Outputs.GetChcHostsChcHostSetDeployVirtualPrivateCloudResult> DeployVirtualPrivateClouds;
        /// <summary>
        /// Device typeNote: This field may return null, indicating that no valid values can be obtained.
        /// </summary>
        public readonly string DeviceType;
        /// <summary>
        /// Disk capacity of the CHC hostNote: This field may return null, indicating that no valid values can be obtained.
        /// </summary>
        public readonly string Disk;
        /// <summary>
        /// Instance hardware description, including CPU cores, memory capacity and disk capacity.Note: This field may return null, indicating that no valid values can be obtained.
        /// </summary>
        public readonly string HardwareDescription;
        /// <summary>
        /// Instance name.
        /// </summary>
        public readonly string InstanceName;
        /// <summary>
        /// CHC host status&amp;lt;br/&amp;gt;&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;REGISTERED: The CHC host is registered, but the out-of-band network and deployment network are not configured.&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;VPC_READY: The out-of-band network and deployment network are configured.&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;PREPARED: It&amp;#39;s ready and can be associated with a CVM.&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;ONLINE: It&amp;#39;s already associated with a CVM.&amp;lt;/li&amp;gt;&amp;lt;/ul&amp;gt;.
        /// </summary>
        public readonly string InstanceState;
        /// <summary>
        /// Memory capacity of the CHC host (unit: GB)Note: This field may return null, indicating that no valid values can be obtained.
        /// </summary>
        public readonly int Memory;
        /// <summary>
        /// Availability zone.
        /// </summary>
        public readonly ImmutableArray<Outputs.GetChcHostsChcHostSetPlacementResult> Placements;
        /// <summary>
        /// Server serial number.
        /// </summary>
        public readonly string SerialNumber;
        /// <summary>
        /// Management typeHOSTING: HostingTENANT: LeasingNote: This field may return null, indicating that no valid values can be obtained.
        /// </summary>
        public readonly string TenantType;

        [OutputConstructor]
        private GetChcHostsChcHostSetResult(
            string bmcIp,

            string bmcMac,

            ImmutableArray<string> bmcSecurityGroupIds,

            ImmutableArray<Outputs.GetChcHostsChcHostSetBmcVirtualPrivateCloudResult> bmcVirtualPrivateClouds,

            string chcId,

            int cpu,

            string createdTime,

            string cvmInstanceId,

            string deployIp,

            string deployMac,

            ImmutableArray<string> deploySecurityGroupIds,

            ImmutableArray<Outputs.GetChcHostsChcHostSetDeployVirtualPrivateCloudResult> deployVirtualPrivateClouds,

            string deviceType,

            string disk,

            string hardwareDescription,

            string instanceName,

            string instanceState,

            int memory,

            ImmutableArray<Outputs.GetChcHostsChcHostSetPlacementResult> placements,

            string serialNumber,

            string tenantType)
        {
            BmcIp = bmcIp;
            BmcMac = bmcMac;
            BmcSecurityGroupIds = bmcSecurityGroupIds;
            BmcVirtualPrivateClouds = bmcVirtualPrivateClouds;
            ChcId = chcId;
            Cpu = cpu;
            CreatedTime = createdTime;
            CvmInstanceId = cvmInstanceId;
            DeployIp = deployIp;
            DeployMac = deployMac;
            DeploySecurityGroupIds = deploySecurityGroupIds;
            DeployVirtualPrivateClouds = deployVirtualPrivateClouds;
            DeviceType = deviceType;
            Disk = disk;
            HardwareDescription = hardwareDescription;
            InstanceName = instanceName;
            InstanceState = instanceState;
            Memory = memory;
            Placements = placements;
            SerialNumber = serialNumber;
            TenantType = tenantType;
        }
    }
}
