<reponame>Dwonczykj/gember_deploy// *** 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.Dayu.Outputs
{

    [OutputType]
    public sealed class GetL7RulesV2ListResult
    {
        /// <summary>
        /// CC protection status of HTTPS protocol, the value is [0 (off), 1 (on)].
        /// </summary>
        public readonly int CcEnable;
        /// <summary>
        /// CC protection level of HTTPS protocol.
        /// </summary>
        public readonly string CcLevel;
        /// <summary>
        /// CC protection status, value [0(off), 1(on)].
        /// </summary>
        public readonly int CcStatus;
        /// <summary>
        /// CC protection threshold of HTTPS protocol.
        /// </summary>
        public readonly int CcThreshold;
        /// <summary>
        /// The source of the certificate.
        /// </summary>
        public readonly int CertType;
        /// <summary>
        /// Domain of resource.
        /// </summary>
        public readonly string Domain;
        /// <summary>
        /// Whether to enable the Https protocol to use Http back-to-source, take the value [0 (off), 1 (on)], default is off.
        /// </summary>
        public readonly int HttpsToHttpEnable;
        /// <summary>
        /// Id of the resource.
        /// </summary>
        public readonly string Id;
        /// <summary>
        /// Ip of the resource.
        /// </summary>
        public readonly string Ip;
        /// <summary>
        /// Session keep switch, value [0 (session keep closed), 1 (session keep open)].
        /// </summary>
        public readonly int KeepEnable;
        /// <summary>
        /// Session hold time, in seconds.
        /// </summary>
        public readonly int KeepTime;
        /// <summary>
        /// Load balancing mode, the value is [1 (weighted round-robin)].
        /// </summary>
        public readonly int LbType;
        /// <summary>
        /// Modify time of resource.
        /// </summary>
        public readonly string ModifyTime;
        /// <summary>
        /// Protocol of resource, value range [`http`, `https`].
        /// </summary>
        public readonly string Protocol;
        /// <summary>
        /// The area code.
        /// </summary>
        public readonly int Region;
        /// <summary>
        /// Rule description.
        /// </summary>
        public readonly string RuleName;
        /// <summary>
        /// Source list of the rule.
        /// </summary>
        public readonly ImmutableArray<Outputs.GetL7RulesV2ListSourceListResult> SourceLists;
        /// <summary>
        /// Back-to-origin method, value [1 (domain name back-to-source), 2 (IP back-to-source)].
        /// </summary>
        public readonly int SourceType;
        /// <summary>
        /// SSL id of the resource.
        /// </summary>
        public readonly string SslId;
        /// <summary>
        /// Rule status, value [0 (rule configuration is successful), 1 (rule configuration is in effect), 2 (rule configuration fails), 3 (rule deletion is in effect), 5 (rule deletion fails), 6 (rule is waiting to be configured), 7 (rule pending deletion), 8 (rule pending configuration certificate)].
        /// </summary>
        public readonly int Status;
        /// <summary>
        /// Virtual port of resource.
        /// </summary>
        public readonly int VirtualPort;

        [OutputConstructor]
        private GetL7RulesV2ListResult(
            int ccEnable,

            string ccLevel,

            int ccStatus,

            int ccThreshold,

            int certType,

            string domain,

            int httpsToHttpEnable,

            string id,

            string ip,

            int keepEnable,

            int keepTime,

            int lbType,

            string modifyTime,

            string protocol,

            int region,

            string ruleName,

            ImmutableArray<Outputs.GetL7RulesV2ListSourceListResult> sourceLists,

            int sourceType,

            string sslId,

            int status,

            int virtualPort)
        {
            CcEnable = ccEnable;
            CcLevel = ccLevel;
            CcStatus = ccStatus;
            CcThreshold = ccThreshold;
            CertType = certType;
            Domain = domain;
            HttpsToHttpEnable = httpsToHttpEnable;
            Id = id;
            Ip = ip;
            KeepEnable = keepEnable;
            KeepTime = keepTime;
            LbType = lbType;
            ModifyTime = modifyTime;
            Protocol = protocol;
            Region = region;
            RuleName = ruleName;
            SourceLists = sourceLists;
            SourceType = sourceType;
            SslId = sslId;
            Status = status;
            VirtualPort = virtualPort;
        }
    }
}
