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

    [OutputType]
    public sealed class GetScalingGroupsScalingGroupListResult
    {
        /// <summary>
        /// Filter results by launch configuration ID.
        /// </summary>
        public readonly string ConfigurationId;
        /// <summary>
        /// The time when the AS group was created.
        /// </summary>
        public readonly string CreateTime;
        /// <summary>
        /// Default cooldown time of scaling group.
        /// </summary>
        public readonly int DefaultCooldown;
        /// <summary>
        /// The desired number of CVM instances.
        /// </summary>
        public readonly int DesiredCapacity;
        /// <summary>
        /// A list of application clb ids.
        /// </summary>
        public readonly ImmutableArray<Outputs.GetScalingGroupsScalingGroupListForwardBalancerIdResult> ForwardBalancerIds;
        /// <summary>
        /// Number of instance.
        /// </summary>
        public readonly int InstanceCount;
        /// <summary>
        /// A list of traditional clb ids which the CVM instances attached to.
        /// </summary>
        public readonly ImmutableArray<string> LoadBalancerIds;
        /// <summary>
        /// The maximum number of CVM instances.
        /// </summary>
        public readonly int MaxSize;
        /// <summary>
        /// The minimum number of CVM instances.
        /// </summary>
        public readonly int MinSize;
        /// <summary>
        /// Multi zone or subnet strategy, Valid values: PRIORITY and EQUALITY.
        /// </summary>
        public readonly string MultiZoneSubnetPolicy;
        /// <summary>
        /// ID of the project to which the scaling group belongs. Default value is 0.
        /// </summary>
        public readonly int ProjectId;
        /// <summary>
        /// A retry policy can be used when a creation fails.
        /// </summary>
        public readonly string RetryPolicy;
        /// <summary>
        /// A specified scaling group ID used to query.
        /// </summary>
        public readonly string ScalingGroupId;
        /// <summary>
        /// A scaling group name used to query.
        /// </summary>
        public readonly string ScalingGroupName;
        /// <summary>
        /// Current status of a scaling group.
        /// </summary>
        public readonly string Status;
        /// <summary>
        /// A list of subnet IDs.
        /// </summary>
        public readonly ImmutableArray<string> SubnetIds;
        /// <summary>
        /// Tags used to query.
        /// </summary>
        public readonly ImmutableDictionary<string, object> Tags;
        /// <summary>
        /// A policy used to select a CVM instance to be terminated from the scaling group.
        /// </summary>
        public readonly ImmutableArray<string> TerminationPolicies;
        /// <summary>
        /// ID of the vpc with which the instance is associated.
        /// </summary>
        public readonly string VpcId;
        /// <summary>
        /// A list of available zones.
        /// </summary>
        public readonly ImmutableArray<string> Zones;

        [OutputConstructor]
        private GetScalingGroupsScalingGroupListResult(
            string configurationId,

            string createTime,

            int defaultCooldown,

            int desiredCapacity,

            ImmutableArray<Outputs.GetScalingGroupsScalingGroupListForwardBalancerIdResult> forwardBalancerIds,

            int instanceCount,

            ImmutableArray<string> loadBalancerIds,

            int maxSize,

            int minSize,

            string multiZoneSubnetPolicy,

            int projectId,

            string retryPolicy,

            string scalingGroupId,

            string scalingGroupName,

            string status,

            ImmutableArray<string> subnetIds,

            ImmutableDictionary<string, object> tags,

            ImmutableArray<string> terminationPolicies,

            string vpcId,

            ImmutableArray<string> zones)
        {
            ConfigurationId = configurationId;
            CreateTime = createTime;
            DefaultCooldown = defaultCooldown;
            DesiredCapacity = desiredCapacity;
            ForwardBalancerIds = forwardBalancerIds;
            InstanceCount = instanceCount;
            LoadBalancerIds = loadBalancerIds;
            MaxSize = maxSize;
            MinSize = minSize;
            MultiZoneSubnetPolicy = multiZoneSubnetPolicy;
            ProjectId = projectId;
            RetryPolicy = retryPolicy;
            ScalingGroupId = scalingGroupId;
            ScalingGroupName = scalingGroupName;
            Status = status;
            SubnetIds = subnetIds;
            Tags = tags;
            TerminationPolicies = terminationPolicies;
            VpcId = vpcId;
            Zones = zones;
        }
    }
}
