<reponame>Dwonczykj/gember_deploy// *** 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.Clb.Outputs
{

    [OutputType]
    public sealed class GetInstancesClbListResult
    {
        /// <summary>
        /// IP version, only applicable to open CLB. Valid values are `IPV4`, `IPV6` and `IPv6FullChain`.
        /// </summary>
        public readonly string AddressIpVersion;
        /// <summary>
        /// ID of the CLB to be queried.
        /// </summary>
        public readonly string ClbId;
        /// <summary>
        /// Name of the CLB to be queried.
        /// </summary>
        public readonly string ClbName;
        /// <summary>
        /// The virtual service address table of the CLB.
        /// </summary>
        public readonly ImmutableArray<string> ClbVips;
        /// <summary>
        /// Create time of the CLB.
        /// </summary>
        public readonly string CreateTime;
        /// <summary>
        /// Max bandwidth out, only applicable to open CLB. Valid value ranges is [1, 2048]. Unit is MB.
        /// </summary>
        public readonly int InternetBandwidthMaxOut;
        /// <summary>
        /// Internet charge type, only applicable to open CLB. Valid values are `TRAFFIC_POSTPAID_BY_HOUR`, `BANDWIDTH_POSTPAID_BY_HOUR` and `BANDWIDTH_PACKAGE`.
        /// </summary>
        public readonly string InternetChargeType;
        /// <summary>
        /// Whether this available zone is local zone, This field maybe null, means cannot get a valid value.
        /// </summary>
        public readonly bool LocalZone;
        /// <summary>
        /// Type of CLB instance, and available values include `OPEN` and `INTERNAL`.
        /// </summary>
        public readonly string NetworkType;
        /// <summary>
        /// Project ID of the CLB.
        /// </summary>
        public readonly int ProjectId;
        /// <summary>
        /// ID set of the security groups.
        /// </summary>
        public readonly ImmutableArray<string> SecurityGroups;
        /// <summary>
        /// The status of CLB.
        /// </summary>
        public readonly int Status;
        /// <summary>
        /// Latest state transition time of CLB.
        /// </summary>
        public readonly string StatusTime;
        /// <summary>
        /// ID of the subnet.
        /// </summary>
        public readonly string SubnetId;
        /// <summary>
        /// The available tags within this CLB.
        /// </summary>
        public readonly ImmutableDictionary<string, object> Tags;
        /// <summary>
        /// Region information of backend service are attached the CLB.
        /// </summary>
        public readonly string TargetRegionInfoRegion;
        /// <summary>
        /// VpcId information of backend service are attached the CLB.
        /// </summary>
        public readonly string TargetRegionInfoVpcId;
        /// <summary>
        /// Network operator, only applicable to open CLB. Valid values are `CMCC`(China Mobile), `CTCC`(Telecom), `CUCC`(China Unicom) and `BGP`. If this ISP is specified, network billing method can only use the bandwidth package billing (BANDWIDTH_PACKAGE).
        /// </summary>
        public readonly string VipIsp;
        /// <summary>
        /// ID of the VPC.
        /// </summary>
        public readonly string VpcId;
        /// <summary>
        /// Available zone unique id(string representation), This field maybe null, means cannot get a valid value.
        /// </summary>
        public readonly string Zone;
        /// <summary>
        /// Available zone unique id(numerical representation), This field maybe null, means cannot get a valid value.
        /// </summary>
        public readonly int ZoneId;
        /// <summary>
        /// Available zone name, This field maybe null, means cannot get a valid value.
        /// </summary>
        public readonly string ZoneName;
        /// <summary>
        /// Region that this available zone belong to, This field maybe null, means cannot get a valid value.
        /// </summary>
        public readonly string ZoneRegion;

        [OutputConstructor]
        private GetInstancesClbListResult(
            string addressIpVersion,

            string clbId,

            string clbName,

            ImmutableArray<string> clbVips,

            string createTime,

            int internetBandwidthMaxOut,

            string internetChargeType,

            bool localZone,

            string networkType,

            int projectId,

            ImmutableArray<string> securityGroups,

            int status,

            string statusTime,

            string subnetId,

            ImmutableDictionary<string, object> tags,

            string targetRegionInfoRegion,

            string targetRegionInfoVpcId,

            string vipIsp,

            string vpcId,

            string zone,

            int zoneId,

            string zoneName,

            string zoneRegion)
        {
            AddressIpVersion = addressIpVersion;
            ClbId = clbId;
            ClbName = clbName;
            ClbVips = clbVips;
            CreateTime = createTime;
            InternetBandwidthMaxOut = internetBandwidthMaxOut;
            InternetChargeType = internetChargeType;
            LocalZone = localZone;
            NetworkType = networkType;
            ProjectId = projectId;
            SecurityGroups = securityGroups;
            Status = status;
            StatusTime = statusTime;
            SubnetId = subnetId;
            Tags = tags;
            TargetRegionInfoRegion = targetRegionInfoRegion;
            TargetRegionInfoVpcId = targetRegionInfoVpcId;
            VipIsp = vipIsp;
            VpcId = vpcId;
            Zone = zone;
            ZoneId = zoneId;
            ZoneName = zoneName;
            ZoneRegion = zoneRegion;
        }
    }
}
