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

    [OutputType]
    public sealed class MdbMongodbClusterHost
    {
        /// <summary>
        /// -(Optional)  Should this host have assigned public IP assigned. Can be either `true` or `false`.
        /// </summary>
        public readonly bool? AssignPublicIp;
        /// <summary>
        /// The health of the host.
        /// </summary>
        public readonly string? Health;
        /// <summary>
        /// The fully qualified domain name of the host. Computed on server side.
        /// </summary>
        public readonly string? Name;
        /// <summary>
        /// The role of the cluster (either PRIMARY or SECONDARY).
        /// </summary>
        public readonly string? Role;
        /// <summary>
        /// The name of the shard to which the host belongs.
        /// </summary>
        public readonly string? ShardName;
        /// <summary>
        /// The ID of the subnet, to which the host belongs. The subnet must
        /// be a part of the network to which the cluster belongs.
        /// </summary>
        public readonly string SubnetId;
        /// <summary>
        /// Type of maintenance window. Can be either `ANYTIME` or `WEEKLY`. A day and hour of window need to be specified with weekly window.
        /// </summary>
        public readonly string? Type;
        /// <summary>
        /// The availability zone where the MongoDB host will be created.
        /// For more information see [the official documentation](https://cloud.yandex.com/docs/overview/concepts/geo-scope).
        /// </summary>
        public readonly string ZoneId;

        [OutputConstructor]
        private MdbMongodbClusterHost(
            bool? assignPublicIp,

            string? health,

            string? name,

            string? role,

            string? shardName,

            string subnetId,

            string? type,

            string zoneId)
        {
            AssignPublicIp = assignPublicIp;
            Health = health;
            Name = name;
            Role = role;
            ShardName = shardName;
            SubnetId = subnetId;
            Type = type;
            ZoneId = zoneId;
        }
    }
}
