<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.Teo.Outputs
{

    [OutputType]
    public sealed class DdosPolicyDdosRule
    {
        /// <summary>
        /// DDoS ACL rule configuration.
        /// </summary>
        public readonly Outputs.DdosPolicyDdosRuleAcl? Acl;
        /// <summary>
        /// DDoS black-white list.
        /// </summary>
        public readonly Outputs.DdosPolicyDdosRuleAllowBlock? AllowBlock;
        /// <summary>
        /// DDoS protocol and connection protection.
        /// </summary>
        public readonly Outputs.DdosPolicyDdosRuleAntiPly? AntiPly;
        /// <summary>
        /// DDoS Protection by Geo Info.
        /// </summary>
        public readonly Outputs.DdosPolicyDdosRuleGeoIp? GeoIp;
        /// <summary>
        /// DDoS feature filtering configuration.
        /// </summary>
        public readonly Outputs.DdosPolicyDdosRulePacketFilter? PacketFilter;
        /// <summary>
        /// DDoS access origin site speed limit configuration.
        /// </summary>
        public readonly Outputs.DdosPolicyDdosRuleSpeedLimit? SpeedLimit;
        /// <summary>
        /// DDoS protection level.
        /// </summary>
        public readonly Outputs.DdosPolicyDdosRuleStatusInfo? StatusInfo;
        /// <summary>
        /// DDoS protection switch. Valid values:- `on`: Enable.- `off`: Disable.
        /// </summary>
        public readonly string? Switch;

        [OutputConstructor]
        private DdosPolicyDdosRule(
            Outputs.DdosPolicyDdosRuleAcl? acl,

            Outputs.DdosPolicyDdosRuleAllowBlock? allowBlock,

            Outputs.DdosPolicyDdosRuleAntiPly? antiPly,

            Outputs.DdosPolicyDdosRuleGeoIp? geoIp,

            Outputs.DdosPolicyDdosRulePacketFilter? packetFilter,

            Outputs.DdosPolicyDdosRuleSpeedLimit? speedLimit,

            Outputs.DdosPolicyDdosRuleStatusInfo? statusInfo,

            string? @switch)
        {
            Acl = acl;
            AllowBlock = allowBlock;
            AntiPly = antiPly;
            GeoIp = geoIp;
            PacketFilter = packetFilter;
            SpeedLimit = speedLimit;
            StatusInfo = statusInfo;
            Switch = @switch;
        }
    }
}
