package vpc

//Licensed under the Apache License, Version 2.0 (the "License");
//you may not use this file except in compliance with the License.
//You may obtain a copy of the License at
//
//http://www.apache.org/licenses/LICENSE-2.0
//
//Unless required by applicable law or agreed to in writing, software
//distributed under the License is distributed on an "AS IS" BASIS,
//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
//See the License for the specific language governing permissions and
//limitations under the License.
//
// Code generated by Alibaba Cloud SDK Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is regenerated.

// VpnConnection is a nested struct in vpc response
type VpnConnection struct {
	RemoteSubnet               string                                             `json:"RemoteSubnet" xml:"RemoteSubnet"`
	Name                       string                                             `json:"Name" xml:"Name"`
	AttachType                 string                                             `json:"AttachType" xml:"AttachType"`
	MismatchRemoteParam        string                                             `json:"MismatchRemoteParam" xml:"MismatchRemoteParam"`
	FailedReasonCode           string                                             `json:"FailedReasonCode" xml:"FailedReasonCode"`
	FailedReason               string                                             `json:"FailedReason" xml:"FailedReason"`
	EnableNatTraversal         bool                                               `json:"EnableNatTraversal" xml:"EnableNatTraversal"`
	AttachInstanceId           string                                             `json:"AttachInstanceId" xml:"AttachInstanceId"`
	LocalSubnet                string                                             `json:"LocalSubnet" xml:"LocalSubnet"`
	MismatchLocalParam         string                                             `json:"MismatchLocalParam" xml:"MismatchLocalParam"`
	VpnGatewayId               string                                             `json:"VpnGatewayId" xml:"VpnGatewayId"`
	CreateTime                 int64                                              `json:"CreateTime" xml:"CreateTime"`
	EnableTunnelsBgp           bool                                               `json:"EnableTunnelsBgp" xml:"EnableTunnelsBgp"`
	RemoteCaCertificate        string                                             `json:"RemoteCaCertificate" xml:"RemoteCaCertificate"`
	FailedTime                 int64                                              `json:"FailedTime" xml:"FailedTime"`
	CustomerGatewayId          string                                             `json:"CustomerGatewayId" xml:"CustomerGatewayId"`
	ResourceGroupId            string                                             `json:"ResourceGroupId" xml:"ResourceGroupId"`
	TransitRouterId            string                                             `json:"TransitRouterId" xml:"TransitRouterId"`
	TunnelId                   string                                             `json:"TunnelId" xml:"TunnelId"`
	NetworkType                string                                             `json:"NetworkType" xml:"NetworkType"`
	TransitRouterName          string                                             `json:"TransitRouterName" xml:"TransitRouterName"`
	InternetIp                 string                                             `json:"InternetIp" xml:"InternetIp"`
	EnableDpd                  bool                                               `json:"EnableDpd" xml:"EnableDpd"`
	CrossAccountAuthorized     bool                                               `json:"CrossAccountAuthorized" xml:"CrossAccountAuthorized"`
	SourceLog                  string                                             `json:"SourceLog" xml:"SourceLog"`
	Spec                       string                                             `json:"Spec" xml:"Spec"`
	VpnConnectionId            string                                             `json:"VpnConnectionId" xml:"VpnConnectionId"`
	State                      string                                             `json:"State" xml:"State"`
	Severity                   string                                             `json:"Severity" xml:"Severity"`
	EffectImmediately          bool                                               `json:"EffectImmediately" xml:"EffectImmediately"`
	Status                     string                                             `json:"Status" xml:"Status"`
	VpnBgpConfig               VpnBgpConfig                                       `json:"VpnBgpConfig" xml:"VpnBgpConfig"`
	IpsecConfig                IpsecConfig                                        `json:"IpsecConfig" xml:"IpsecConfig"`
	IkeConfig                  IkeConfig                                          `json:"IkeConfig" xml:"IkeConfig"`
	VcoHealthCheck             VcoHealthCheck                                     `json:"VcoHealthCheck" xml:"VcoHealthCheck"`
	Tag                        TagInDescribeVpnConnections                        `json:"Tag" xml:"Tag"`
	TunnelOptionsSpecification TunnelOptionsSpecificationInDescribeVpnConnections `json:"TunnelOptionsSpecification" xml:"TunnelOptionsSpecification"`
}
