// *** 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 GetLbNetworkLoadBalancerListenerResult
    {
        public readonly ImmutableArray<Outputs.GetLbNetworkLoadBalancerListenerExternalAddressSpecResult> ExternalAddressSpecs;
        public readonly ImmutableArray<Outputs.GetLbNetworkLoadBalancerListenerInternalAddressSpecResult> InternalAddressSpecs;
        /// <summary>
        /// - Name of the network load balancer.
        /// </summary>
        public readonly string Name;
        /// <summary>
        /// Port for incoming traffic.
        /// </summary>
        public readonly int Port;
        /// <summary>
        /// Protocol for incoming traffic.
        /// </summary>
        public readonly string Protocol;
        /// <summary>
        /// Port of a target. 
        /// * `external_address_spec.0.address` - External IP address of a listener.
        /// * `external_address_spec.0.ip_version` - IP version of the external addresses.
        /// * `internal_address_spec.0.subnet_id` - Subnet ID to which the internal IP address belongs
        /// * `internal_address_spec.0.address` - Internal IP address of a listener.
        /// * `internal_address_spec.0.ip_version` - IP version of the internal addresses.
        /// </summary>
        public readonly int TargetPort;

        [OutputConstructor]
        private GetLbNetworkLoadBalancerListenerResult(
            ImmutableArray<Outputs.GetLbNetworkLoadBalancerListenerExternalAddressSpecResult> externalAddressSpecs,

            ImmutableArray<Outputs.GetLbNetworkLoadBalancerListenerInternalAddressSpecResult> internalAddressSpecs,

            string name,

            int port,

            string protocol,

            int targetPort)
        {
            ExternalAddressSpecs = externalAddressSpecs;
            InternalAddressSpecs = internalAddressSpecs;
            Name = name;
            Port = port;
            Protocol = protocol;
            TargetPort = targetPort;
        }
    }
}
