// *** 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.Vpn.Outputs
{

    [OutputType]
    public sealed class GetGatewaysGatewayResult
    {
        /// <summary>
        /// Whether to automatically propagate BGP routes to the VPC. Valid values: `true`, `false`.
        /// </summary>
        public readonly string AutoPropagate;
        /// <summary>
        /// Limit search to specific business status - valid value is "Normal", "FinancialLocked".
        /// </summary>
        public readonly string BusinessStatus;
        /// <summary>
        /// The creation time of the VPN gateway.
        /// </summary>
        public readonly string CreateTime;
        /// <summary>
        /// The description of the VPN
        /// </summary>
        public readonly string Description;
        /// <summary>
        /// Indicates whether the IPsec-VPN feature is enabled.
        /// </summary>
        public readonly string EnableIpsec;
        /// <summary>
        /// Whether the ssl function is enabled.
        /// </summary>
        public readonly string EnableSsl;
        /// <summary>
        /// The expiration time of the VPN gateway.
        /// </summary>
        public readonly string EndTime;
        /// <summary>
        /// ID of the VPN.
        /// </summary>
        public readonly string Id;
        /// <summary>
        /// The charge type of the VPN gateway.
        /// </summary>
        public readonly string InstanceChargeType;
        /// <summary>
        /// The internet ip of the VPN.
        /// </summary>
        public readonly string InternetIp;
        /// <summary>
        /// The name of the VPN.
        /// </summary>
        public readonly string Name;
        /// <summary>
        /// The network type of the VPN gateway.
        /// </summary>
        public readonly string NetworkType;
        /// <summary>
        /// The Specification of the VPN
        /// </summary>
        public readonly string Specification;
        /// <summary>
        /// Total count of ssl vpn connections.
        /// </summary>
        public readonly int SslConnections;
        /// <summary>
        /// Limit search to specific status - valid value is "Init", "Provisioning", "Active", "Updating", "Deleting".
        /// </summary>
        public readonly string Status;
        /// <summary>
        /// Use the VPC ID as the search key.
        /// </summary>
        public readonly string VpcId;

        [OutputConstructor]
        private GetGatewaysGatewayResult(
            string autoPropagate,

            string businessStatus,

            string createTime,

            string description,

            string enableIpsec,

            string enableSsl,

            string endTime,

            string id,

            string instanceChargeType,

            string internetIp,

            string name,

            string networkType,

            string specification,

            int sslConnections,

            string status,

            string vpcId)
        {
            AutoPropagate = autoPropagate;
            BusinessStatus = businessStatus;
            CreateTime = createTime;
            Description = description;
            EnableIpsec = enableIpsec;
            EnableSsl = enableSsl;
            EndTime = endTime;
            Id = id;
            InstanceChargeType = instanceChargeType;
            InternetIp = internetIp;
            Name = name;
            NetworkType = networkType;
            Specification = specification;
            SslConnections = sslConnections;
            Status = status;
            VpcId = vpcId;
        }
    }
}
