// *** 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;

namespace Pulumi.Tctest.Tke.Outputs
{

    [OutputType]
    public sealed class AsScalingGroupAutoScalingConfig
    {
        public readonly string ConfigurationName;
        public readonly ImmutableArray<Outputs.AsScalingGroupAutoScalingConfigDataDisk> DataDisks;
        public readonly bool? EnhancedMonitorService;
        public readonly bool? EnhancedSecurityService;
        public readonly ImmutableDictionary<string, object>? InstanceTags;
        public readonly string InstanceType;
        public readonly string? InternetChargeType;
        public readonly int? InternetMaxBandwidthOut;
        public readonly ImmutableArray<string> KeyIds;
        public readonly string? Password;
        public readonly int? ProjectId;
        public readonly bool? PublicIpAssigned;
        public readonly ImmutableArray<string> SecurityGroupIds;
        public readonly int? SystemDiskSize;
        public readonly string? SystemDiskType;

        [OutputConstructor]
        private AsScalingGroupAutoScalingConfig(
            string configurationName,

            ImmutableArray<Outputs.AsScalingGroupAutoScalingConfigDataDisk> dataDisks,

            bool? enhancedMonitorService,

            bool? enhancedSecurityService,

            ImmutableDictionary<string, object>? instanceTags,

            string instanceType,

            string? internetChargeType,

            int? internetMaxBandwidthOut,

            ImmutableArray<string> keyIds,

            string? password,

            int? projectId,

            bool? publicIpAssigned,

            ImmutableArray<string> securityGroupIds,

            int? systemDiskSize,

            string? systemDiskType)
        {
            ConfigurationName = configurationName;
            DataDisks = dataDisks;
            EnhancedMonitorService = enhancedMonitorService;
            EnhancedSecurityService = enhancedSecurityService;
            InstanceTags = instanceTags;
            InstanceType = instanceType;
            InternetChargeType = internetChargeType;
            InternetMaxBandwidthOut = internetMaxBandwidthOut;
            KeyIds = keyIds;
            Password = password;
            ProjectId = projectId;
            PublicIpAssigned = publicIpAssigned;
            SecurityGroupIds = securityGroupIds;
            SystemDiskSize = systemDiskSize;
            SystemDiskType = systemDiskType;
        }
    }
}
