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

    [OutputType]
    public sealed class GetRuleEngineSettingsActionPropertyChoicePropertyResult
    {
        /// <summary>
        /// The choices which can be used. This list may be empty.
        /// </summary>
        public readonly ImmutableArray<string> ChoicesValues;
        /// <summary>
        /// Special parameter. Note: This field may return null, indicating that no valid value can be obtained.
        /// </summary>
        public readonly ImmutableArray<Outputs.GetRuleEngineSettingsActionPropertyChoicePropertyExtraParameterResult> ExtraParameters;
        /// <summary>
        /// Whether this property is allowed to set empty.
        /// </summary>
        public readonly bool IsAllowEmpty;
        /// <summary>
        /// Whether this property is allowed to set multiple values.
        /// </summary>
        public readonly bool IsMultiple;
        /// <summary>
        /// Max integer value can bse used when property type is `CUSTOM_NUM`. When `Min` and `Max` both are 0, this field is meaningless.
        /// </summary>
        public readonly int Max;
        /// <summary>
        /// Min integer value can bse used when property type is `CUSTOM_NUM`. When `Min` and `Max` both are 0, this field is meaningless.
        /// </summary>
        public readonly int Min;
        /// <summary>
        /// Property name.
        /// </summary>
        public readonly string Name;
        /// <summary>
        /// Property value type. Valid values:- `CHOICE`: enum type, must select one of the value in `ChoicesValue`.- `TOGGLE`: switch type, must select one of the value in `ChoicesValue`.- `OBJECT`: object type, the `ChoiceProperties` list all properties of the object.- `CUSTOM_NUM`: integer type.- `CUSTOM_STRING`: string type.
        /// </summary>
        public readonly string Type;

        [OutputConstructor]
        private GetRuleEngineSettingsActionPropertyChoicePropertyResult(
            ImmutableArray<string> choicesValues,

            ImmutableArray<Outputs.GetRuleEngineSettingsActionPropertyChoicePropertyExtraParameterResult> extraParameters,

            bool isAllowEmpty,

            bool isMultiple,

            int max,

            int min,

            string name,

            string type)
        {
            ChoicesValues = choicesValues;
            ExtraParameters = extraParameters;
            IsAllowEmpty = isAllowEmpty;
            IsMultiple = isMultiple;
            Max = max;
            Min = min;
            Name = name;
            Type = type;
        }
    }
}
