<filename>sdk/dotnet/Alb/Outputs/GetRulesRuleResult.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.Alb.Outputs
{

    [OutputType]
    public sealed class GetRulesRuleResult
    {
        /// <summary>
        /// The ID of the Rule.
        /// </summary>
        public readonly string Id;
        /// <summary>
        /// The ID of the listener to which the forwarding rule belongs.
        /// </summary>
        public readonly string ListenerId;
        /// <summary>
        /// The ID of the Application Load Balancer (ALB) instance to which the forwarding rule belongs.
        /// </summary>
        public readonly string LoadBalancerId;
        /// <summary>
        /// The priority of the rule. Valid values: 1 to 10000. A smaller value indicates a higher priority.  Note The priority of each rule within the same listener must be unique.
        /// </summary>
        public readonly int Priority;
        /// <summary>
        /// The actions of the forwarding rules.
        /// </summary>
        public readonly ImmutableArray<Outputs.GetRulesRuleRuleActionResult> RuleActions;
        /// <summary>
        /// The conditions of the forwarding rule.
        /// </summary>
        public readonly ImmutableArray<Outputs.GetRulesRuleRuleConditionResult> RuleConditions;
        /// <summary>
        /// The first ID of the resource.
        /// </summary>
        public readonly string RuleId;
        /// <summary>
        /// The name of the forwarding rule. The name must be 2 to 128 characters in length, and can contain letters, digits, periods (.), underscores (_), and hyphens (-). The name must start with a letter.
        /// </summary>
        public readonly string RuleName;
        /// <summary>
        /// The status of the resource.
        /// </summary>
        public readonly string Status;

        [OutputConstructor]
        private GetRulesRuleResult(
            string id,

            string listenerId,

            string loadBalancerId,

            int priority,

            ImmutableArray<Outputs.GetRulesRuleRuleActionResult> ruleActions,

            ImmutableArray<Outputs.GetRulesRuleRuleConditionResult> ruleConditions,

            string ruleId,

            string ruleName,

            string status)
        {
            Id = id;
            ListenerId = listenerId;
            LoadBalancerId = loadBalancerId;
            Priority = priority;
            RuleActions = ruleActions;
            RuleConditions = ruleConditions;
            RuleId = ruleId;
            RuleName = ruleName;
            Status = status;
        }
    }
}
