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

    [OutputType]
    public sealed class GetTrafficMirrorSessionsSessionResult
    {
        /// <summary>
        /// Indicates whether traffic mirror sessions are enabled. default to `false`.
        /// </summary>
        public readonly bool Enabled;
        /// <summary>
        /// The ID of the Traffic Mirror Session.
        /// </summary>
        public readonly string Id;
        /// <summary>
        /// The maximum transmission unit (MTU).
        /// </summary>
        public readonly int PacketLength;
        /// <summary>
        /// The priority of the traffic mirror session. A smaller value indicates a higher priority.
        /// </summary>
        public readonly int Priority;
        /// <summary>
        /// The state of the traffic mirror session. Valid values: `Creating`, `Created`, `Modifying` and `Deleting`.
        /// </summary>
        public readonly string Status;
        /// <summary>
        /// The ID of the filter.
        /// </summary>
        public readonly string TrafficMirrorFilterId;
        /// <summary>
        /// The state of the traffic mirror session. Valid values: `Normal` or `FinancialLocked`. `Normal`: working as expected. `FinancialLocked`: locked due to overdue payments.
        /// </summary>
        public readonly string TrafficMirrorSessionBusinessStatus;
        /// <summary>
        /// The description of the traffic mirror session.
        /// </summary>
        public readonly string TrafficMirrorSessionDescription;
        /// <summary>
        /// The first ID of the resource.
        /// </summary>
        public readonly string TrafficMirrorSessionId;
        /// <summary>
        /// The name of the traffic mirror session.
        /// </summary>
        public readonly string TrafficMirrorSessionName;
        /// <summary>
        /// The ID of the mirror source.
        /// </summary>
        public readonly ImmutableArray<string> TrafficMirrorSourceIds;
        /// <summary>
        /// The ID of the mirror destination. You can specify only an ENI or a Server Load Balancer (SLB) instance as a mirror destination.
        /// </summary>
        public readonly string TrafficMirrorTargetId;
        /// <summary>
        /// The type of the mirror destination. Valid values: `NetworkInterface` or `SLB`. `NetworkInterface`: an ENI. `SLB`: an internal-facing SLB instance
        /// </summary>
        public readonly string TrafficMirrorTargetType;
        /// <summary>
        /// You can specify VNIs to distinguish different mirrored traffic.
        /// </summary>
        public readonly int VirtualNetworkId;

        [OutputConstructor]
        private GetTrafficMirrorSessionsSessionResult(
            bool enabled,

            string id,

            int packetLength,

            int priority,

            string status,

            string trafficMirrorFilterId,

            string trafficMirrorSessionBusinessStatus,

            string trafficMirrorSessionDescription,

            string trafficMirrorSessionId,

            string trafficMirrorSessionName,

            ImmutableArray<string> trafficMirrorSourceIds,

            string trafficMirrorTargetId,

            string trafficMirrorTargetType,

            int virtualNetworkId)
        {
            Enabled = enabled;
            Id = id;
            PacketLength = packetLength;
            Priority = priority;
            Status = status;
            TrafficMirrorFilterId = trafficMirrorFilterId;
            TrafficMirrorSessionBusinessStatus = trafficMirrorSessionBusinessStatus;
            TrafficMirrorSessionDescription = trafficMirrorSessionDescription;
            TrafficMirrorSessionId = trafficMirrorSessionId;
            TrafficMirrorSessionName = trafficMirrorSessionName;
            TrafficMirrorSourceIds = trafficMirrorSourceIds;
            TrafficMirrorTargetId = trafficMirrorTargetId;
            TrafficMirrorTargetType = trafficMirrorTargetType;
            VirtualNetworkId = virtualNetworkId;
        }
    }
}
