// *** 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 zscaler.PulumiPackage.Zpa.Inspection.Inputs
{

    public sealed class InspectionProfilePredefinedControlArgs : global::Pulumi.ResourceArgs
    {
        /// <summary>
        /// The action of the predefined control. Supported values: `PASS`, `BLOCK` and `REDIRECT`
        /// </summary>
        [Input("action", required: true)]
        public Input<string> Action { get; set; } = null!;

        /// <summary>
        /// Value for the predefined controls action. This field is only required if the action is set to REDIRECT. This field is only required if the action is set to `REDIRECT`.
        /// </summary>
        [Input("actionValue")]
        public Input<string>? ActionValue { get; set; }

        /// <summary>
        /// (string) Control types. Supported Values: `WEBSOCKET_PREDEFINED`, `WEBSOCKET_CUSTOM`, `CUSTOM`, `PREDEFINED`, `ZSCALER`
        /// </summary>
        [Input("controlType")]
        public Input<string>? ControlType { get; set; }

        /// <summary>
        /// ID of the predefined control
        /// </summary>
        [Input("id", required: true)]
        public Input<string> Id { get; set; } = null!;

        [Input("protocolType")]
        public Input<string>? ProtocolType { get; set; }

        public InspectionProfilePredefinedControlArgs()
        {
        }
        public static new InspectionProfilePredefinedControlArgs Empty => new InspectionProfilePredefinedControlArgs();
    }
}
