<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;

namespace Pulumi.Yandex.Inputs
{

    public sealed class ComputeInstanceGroupHealthCheckArgs : global::Pulumi.ResourceArgs
    {
        /// <summary>
        /// The number of successful health checks before the managed instance is declared healthy.
        /// </summary>
        [Input("healthyThreshold")]
        public Input<int>? HealthyThreshold { get; set; }

        [Input("httpOptions")]
        private InputList<Inputs.ComputeInstanceGroupHealthCheckHttpOptionArgs>? _httpOptions;

        /// <summary>
        /// HTTP check options. The structure is documented below.
        /// </summary>
        public InputList<Inputs.ComputeInstanceGroupHealthCheckHttpOptionArgs> HttpOptions
        {
            get => _httpOptions ?? (_httpOptions = new InputList<Inputs.ComputeInstanceGroupHealthCheckHttpOptionArgs>());
            set => _httpOptions = value;
        }

        /// <summary>
        /// The interval to wait between health checks in seconds.
        /// </summary>
        [Input("interval")]
        public Input<int>? Interval { get; set; }

        /// <summary>
        /// TCP check options. The structure is documented below.
        /// </summary>
        [Input("tcpOptions")]
        public Input<Inputs.ComputeInstanceGroupHealthCheckTcpOptionsArgs>? TcpOptions { get; set; }

        /// <summary>
        /// The length of time to wait for a response before the health check times out in seconds.
        /// </summary>
        [Input("timeout")]
        public Input<int>? Timeout { get; set; }

        /// <summary>
        /// The number of failed health checks before the managed instance is declared unhealthy.
        /// </summary>
        [Input("unhealthyThreshold")]
        public Input<int>? UnhealthyThreshold { get; set; }

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