<filename>sdk/dotnet/Ddos/Outputs/GetDdosCooDomainResourcesResourceResult.cs// *** 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.AliCloud.Ddos.Outputs
{

    [OutputType]
    public sealed class GetDdosCooDomainResourcesResourceResult
    {
        /// <summary>
        /// The IP addresses in the blacklist for the domain name.
        /// </summary>
        public readonly ImmutableArray<string> BlackLists;
        /// <summary>
        /// Whether frequency control guard (CC guard) is enabled. Values: `True`: Opened, `False`: Not enabled.
        /// </summary>
        public readonly bool CcEnabled;
        /// <summary>
        /// Whether custom frequency control guard (CC guard) is enabled. Values: `True`: Opened, `False`: Not enabled.
        /// </summary>
        public readonly bool CcRuleEnabled;
        /// <summary>
        /// The mode of the Frequency Control policy.
        /// </summary>
        public readonly string CcTemplate;
        /// <summary>
        /// The name of the certificate.
        /// </summary>
        public readonly string CertName;
        /// <summary>
        /// The domain name of the website that you want to add to the instance.
        /// </summary>
        public readonly string Domain;
        /// <summary>
        /// Whether Http2.0 is enabled.
        /// </summary>
        public readonly bool Http2Enable;
        /// <summary>
        /// The advanced HTTPS settings.
        /// </summary>
        public readonly string HttpsExt;
        /// <summary>
        /// The ID of the Domain Resource.
        /// </summary>
        public readonly string Id;
        /// <summary>
        /// A list ID of instance that you want to associate.
        /// </summary>
        public readonly ImmutableArray<string> InstanceIds;
        /// <summary>
        /// The type of backload algorithm.
        /// </summary>
        public readonly string PolicyMode;
        /// <summary>
        /// Whether the website service forwarding rules have been turned on.
        /// </summary>
        public readonly bool ProxyEnabled;
        /// <summary>
        /// Protocol type and port number information.
        /// </summary>
        public readonly ImmutableArray<Outputs.GetDdosCooDomainResourcesResourceProxyTypeResult> ProxyTypes;
        /// <summary>
        /// Server address information of the source station.
        /// </summary>
        public readonly ImmutableArray<string> RealServers;
        /// <summary>
        /// Server address type.
        /// </summary>
        public readonly int RsType;
        /// <summary>
        /// The type of the cipher suite.
        /// </summary>
        public readonly string SslCiphers;
        /// <summary>
        /// The version of the TLS protocol.
        /// </summary>
        public readonly string SslProtocols;
        /// <summary>
        /// The IP addresses in the whitelist for the domain name.
        /// </summary>
        public readonly ImmutableArray<string> WhiteLists;

        [OutputConstructor]
        private GetDdosCooDomainResourcesResourceResult(
            ImmutableArray<string> blackLists,

            bool ccEnabled,

            bool ccRuleEnabled,

            string ccTemplate,

            string certName,

            string domain,

            bool http2Enable,

            string httpsExt,

            string id,

            ImmutableArray<string> instanceIds,

            string policyMode,

            bool proxyEnabled,

            ImmutableArray<Outputs.GetDdosCooDomainResourcesResourceProxyTypeResult> proxyTypes,

            ImmutableArray<string> realServers,

            int rsType,

            string sslCiphers,

            string sslProtocols,

            ImmutableArray<string> whiteLists)
        {
            BlackLists = blackLists;
            CcEnabled = ccEnabled;
            CcRuleEnabled = ccRuleEnabled;
            CcTemplate = ccTemplate;
            CertName = certName;
            Domain = domain;
            Http2Enable = http2Enable;
            HttpsExt = httpsExt;
            Id = id;
            InstanceIds = instanceIds;
            PolicyMode = policyMode;
            ProxyEnabled = proxyEnabled;
            ProxyTypes = proxyTypes;
            RealServers = realServers;
            RsType = rsType;
            SslCiphers = sslCiphers;
            SslProtocols = sslProtocols;
            WhiteLists = whiteLists;
        }
    }
}
