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

namespace Pulumi.Kops.Outputs
{

    [OutputType]
    public sealed class ClusterKubeControllerManager
    {
        public readonly bool? AllocateNodeCidrs;
        public readonly string? AttachDetachReconcileSyncPeriod;
        public readonly string? AuthenticationKubeconfig;
        public readonly ImmutableArray<string> AuthorizationAlwaysAllowPaths;
        public readonly string? AuthorizationKubeconfig;
        public readonly string? CidrAllocatorType;
        /// <summary>
        /// - cloud_provider_spec - CloudProvider configures the cloud provider to use.
        /// </summary>
        public readonly string? CloudProvider;
        public readonly string? ClusterCidr;
        public readonly string? ClusterName;
        public readonly int? ConcurrentDeploymentSyncs;
        public readonly int? ConcurrentEndpointSyncs;
        public readonly int? ConcurrentNamespaceSyncs;
        public readonly int? ConcurrentRcSyncs;
        public readonly int? ConcurrentReplicasetSyncs;
        public readonly int? ConcurrentResourceQuotaSyncs;
        public readonly int? ConcurrentServiceSyncs;
        public readonly int? ConcurrentServiceaccountTokenSyncs;
        public readonly bool? ConfigureCloudRoutes;
        public readonly ImmutableArray<string> Controllers;
        public readonly bool? DisableAttachDetachReconcileSync;
        public readonly bool? EnableLeaderMigration;
        public readonly bool? EnableProfiling;
        public readonly string? ExperimentalClusterSigningDuration;
        public readonly string? ExternalCloudVolumePlugin;
        public readonly ImmutableDictionary<string, string>? FeatureGates;
        public readonly string? HorizontalPodAutoscalerCpuInitializationPeriod;
        public readonly string? HorizontalPodAutoscalerDownscaleDelay;
        public readonly string? HorizontalPodAutoscalerDownscaleStabilization;
        public readonly string? HorizontalPodAutoscalerInitialReadinessDelay;
        public readonly string? HorizontalPodAutoscalerSyncPeriod;
        public readonly string? HorizontalPodAutoscalerTolerance;
        public readonly string? HorizontalPodAutoscalerUpscaleDelay;
        public readonly bool? HorizontalPodAutoscalerUseRestClients;
        public readonly string? Image;
        public readonly int? KubeApiBurst;
        public readonly string? KubeApiQps;
        public readonly Outputs.ClusterKubeControllerManagerLeaderElection? LeaderElection;
        public readonly string? LogFormat;
        public readonly int? LogLevel;
        public readonly string? Master;
        public readonly string? MinResyncPeriod;
        public readonly int? NodeCidrMaskSize;
        public readonly string? NodeMonitorGracePeriod;
        public readonly string? NodeMonitorPeriod;
        public readonly string? PodEvictionTimeout;
        public readonly string? RootCaFile;
        public readonly string? ServiceAccountPrivateKeyFile;
        public readonly int? TerminatedPodGcThreshold;
        public readonly string? TlsCertFile;
        public readonly ImmutableArray<string> TlsCipherSuites;
        public readonly string? TlsMinVersion;
        public readonly string? TlsPrivateKeyFile;
        public readonly bool? UseServiceAccountCredentials;

        [OutputConstructor]
        private ClusterKubeControllerManager(
            bool? allocateNodeCidrs,

            string? attachDetachReconcileSyncPeriod,

            string? authenticationKubeconfig,

            ImmutableArray<string> authorizationAlwaysAllowPaths,

            string? authorizationKubeconfig,

            string? cidrAllocatorType,

            string? cloudProvider,

            string? clusterCidr,

            string? clusterName,

            int? concurrentDeploymentSyncs,

            int? concurrentEndpointSyncs,

            int? concurrentNamespaceSyncs,

            int? concurrentRcSyncs,

            int? concurrentReplicasetSyncs,

            int? concurrentResourceQuotaSyncs,

            int? concurrentServiceSyncs,

            int? concurrentServiceaccountTokenSyncs,

            bool? configureCloudRoutes,

            ImmutableArray<string> controllers,

            bool? disableAttachDetachReconcileSync,

            bool? enableLeaderMigration,

            bool? enableProfiling,

            string? experimentalClusterSigningDuration,

            string? externalCloudVolumePlugin,

            ImmutableDictionary<string, string>? featureGates,

            string? horizontalPodAutoscalerCpuInitializationPeriod,

            string? horizontalPodAutoscalerDownscaleDelay,

            string? horizontalPodAutoscalerDownscaleStabilization,

            string? horizontalPodAutoscalerInitialReadinessDelay,

            string? horizontalPodAutoscalerSyncPeriod,

            string? horizontalPodAutoscalerTolerance,

            string? horizontalPodAutoscalerUpscaleDelay,

            bool? horizontalPodAutoscalerUseRestClients,

            string? image,

            int? kubeApiBurst,

            string? kubeApiQps,

            Outputs.ClusterKubeControllerManagerLeaderElection? leaderElection,

            string? logFormat,

            int? logLevel,

            string? master,

            string? minResyncPeriod,

            int? nodeCidrMaskSize,

            string? nodeMonitorGracePeriod,

            string? nodeMonitorPeriod,

            string? podEvictionTimeout,

            string? rootCaFile,

            string? serviceAccountPrivateKeyFile,

            int? terminatedPodGcThreshold,

            string? tlsCertFile,

            ImmutableArray<string> tlsCipherSuites,

            string? tlsMinVersion,

            string? tlsPrivateKeyFile,

            bool? useServiceAccountCredentials)
        {
            AllocateNodeCidrs = allocateNodeCidrs;
            AttachDetachReconcileSyncPeriod = attachDetachReconcileSyncPeriod;
            AuthenticationKubeconfig = authenticationKubeconfig;
            AuthorizationAlwaysAllowPaths = authorizationAlwaysAllowPaths;
            AuthorizationKubeconfig = authorizationKubeconfig;
            CidrAllocatorType = cidrAllocatorType;
            CloudProvider = cloudProvider;
            ClusterCidr = clusterCidr;
            ClusterName = clusterName;
            ConcurrentDeploymentSyncs = concurrentDeploymentSyncs;
            ConcurrentEndpointSyncs = concurrentEndpointSyncs;
            ConcurrentNamespaceSyncs = concurrentNamespaceSyncs;
            ConcurrentRcSyncs = concurrentRcSyncs;
            ConcurrentReplicasetSyncs = concurrentReplicasetSyncs;
            ConcurrentResourceQuotaSyncs = concurrentResourceQuotaSyncs;
            ConcurrentServiceSyncs = concurrentServiceSyncs;
            ConcurrentServiceaccountTokenSyncs = concurrentServiceaccountTokenSyncs;
            ConfigureCloudRoutes = configureCloudRoutes;
            Controllers = controllers;
            DisableAttachDetachReconcileSync = disableAttachDetachReconcileSync;
            EnableLeaderMigration = enableLeaderMigration;
            EnableProfiling = enableProfiling;
            ExperimentalClusterSigningDuration = experimentalClusterSigningDuration;
            ExternalCloudVolumePlugin = externalCloudVolumePlugin;
            FeatureGates = featureGates;
            HorizontalPodAutoscalerCpuInitializationPeriod = horizontalPodAutoscalerCpuInitializationPeriod;
            HorizontalPodAutoscalerDownscaleDelay = horizontalPodAutoscalerDownscaleDelay;
            HorizontalPodAutoscalerDownscaleStabilization = horizontalPodAutoscalerDownscaleStabilization;
            HorizontalPodAutoscalerInitialReadinessDelay = horizontalPodAutoscalerInitialReadinessDelay;
            HorizontalPodAutoscalerSyncPeriod = horizontalPodAutoscalerSyncPeriod;
            HorizontalPodAutoscalerTolerance = horizontalPodAutoscalerTolerance;
            HorizontalPodAutoscalerUpscaleDelay = horizontalPodAutoscalerUpscaleDelay;
            HorizontalPodAutoscalerUseRestClients = horizontalPodAutoscalerUseRestClients;
            Image = image;
            KubeApiBurst = kubeApiBurst;
            KubeApiQps = kubeApiQps;
            LeaderElection = leaderElection;
            LogFormat = logFormat;
            LogLevel = logLevel;
            Master = master;
            MinResyncPeriod = minResyncPeriod;
            NodeCidrMaskSize = nodeCidrMaskSize;
            NodeMonitorGracePeriod = nodeMonitorGracePeriod;
            NodeMonitorPeriod = nodeMonitorPeriod;
            PodEvictionTimeout = podEvictionTimeout;
            RootCaFile = rootCaFile;
            ServiceAccountPrivateKeyFile = serviceAccountPrivateKeyFile;
            TerminatedPodGcThreshold = terminatedPodGcThreshold;
            TlsCertFile = tlsCertFile;
            TlsCipherSuites = tlsCipherSuites;
            TlsMinVersion = tlsMinVersion;
            TlsPrivateKeyFile = tlsPrivateKeyFile;
            UseServiceAccountCredentials = useServiceAccountCredentials;
        }
    }
}
