<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 DdosPolicyDdosRuleAntiPly
    {
        /// <summary>
        /// Abnormal connections threshold. Valid value range: 0-4294967295.
        /// </summary>
        public readonly int AbnormalConnectNum;
        /// <summary>
        /// Abnormal syn packet number threshold. Valid value range: 0-65535.
        /// </summary>
        public readonly int AbnormalSynNum;
        /// <summary>
        /// Abnormal syn packet ratio threshold. Valid value range: 0-100.
        /// </summary>
        public readonly int AbnormalSynRatio;
        /// <summary>
        /// Connection timeout detection per second. Valid value range: 0-65535.
        /// </summary>
        public readonly int ConnectTimeout;
        /// <summary>
        /// Limitation of connections to dest port. Valid value range: 0-4294967295.
        /// </summary>
        public readonly int DestinationConnectLimit;
        /// <summary>
        /// Limitation of new connection to dest port per second. Valid value range: 0-4294967295.
        /// </summary>
        public readonly int DestinationCreateLimit;
        /// <summary>
        /// Block ICMP protocol. Valid values: `on`, `off`.
        /// </summary>
        public readonly string DropIcmp;
        /// <summary>
        /// Block other protocols. Valid values: `on`, `off`.
        /// </summary>
        public readonly string DropOther;
        /// <summary>
        /// Block TCP protocol. Valid values: `on`, `off`.
        /// </summary>
        public readonly string DropTcp;
        /// <summary>
        /// Block UDP protocol. Valid values: `on`, `off`.
        /// </summary>
        public readonly string DropUdp;
        /// <summary>
        /// Empty connection protection switch. Valid values: `on`, `off`.
        /// </summary>
        public readonly string EmptyConnectProtect;
        /// <summary>
        /// Limitation of connections to origin site. Valid value range: 0-4294967295.
        /// </summary>
        public readonly int SourceConnectLimit;
        /// <summary>
        /// Limitation of new connection to origin site per second. Valid value range: 0-4294967295.
        /// </summary>
        public readonly int SourceCreateLimit;
        /// <summary>
        /// UDP shard protection switch. Valid values: `on`, `off`.
        /// </summary>
        public readonly string? UdpShard;

        [OutputConstructor]
        private DdosPolicyDdosRuleAntiPly(
            int abnormalConnectNum,

            int abnormalSynNum,

            int abnormalSynRatio,

            int connectTimeout,

            int destinationConnectLimit,

            int destinationCreateLimit,

            string dropIcmp,

            string dropOther,

            string dropTcp,

            string dropUdp,

            string emptyConnectProtect,

            int sourceConnectLimit,

            int sourceCreateLimit,

            string? udpShard)
        {
            AbnormalConnectNum = abnormalConnectNum;
            AbnormalSynNum = abnormalSynNum;
            AbnormalSynRatio = abnormalSynRatio;
            ConnectTimeout = connectTimeout;
            DestinationConnectLimit = destinationConnectLimit;
            DestinationCreateLimit = destinationCreateLimit;
            DropIcmp = dropIcmp;
            DropOther = dropOther;
            DropTcp = dropTcp;
            DropUdp = dropUdp;
            EmptyConnectProtect = emptyConnectProtect;
            SourceConnectLimit = sourceConnectLimit;
            SourceCreateLimit = sourceCreateLimit;
            UdpShard = udpShard;
        }
    }
}
