UNPKG

tencentcloud-sdk-nodejs-intl-en

Version:
1,840 lines (1,555 loc) 80.3 kB
/* * Copyright (c) 2018 THL A29 Limited, a Tencent company. All Rights Reserved. * * 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. */ const AbstractModel = require("../../common/abstract_model"); /** * DescribeInternetAddressQuota request structure. * @class */ class DescribeInternetAddressQuotaRequest extends AbstractModel { constructor(){ super(); } /** * @private */ deserialize(params) { if (!params) { return; } } } /** * BGP parameter, including Asn and AuthKey. * @class */ class BgpPeer extends AbstractModel { constructor(){ super(); /** * User-side BGP Asn. * @type {number || null} */ this.Asn = null; /** * User-side BGP key. * @type {string || null} */ this.AuthKey = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Asn = 'Asn' in params ? params.Asn : null; this.AuthKey = 'AuthKey' in params ? params.AuthKey : null; } } /** * RejectDirectConnectTunnel request structure. * @class */ class RejectDirectConnectTunnelRequest extends AbstractModel { constructor(){ super(); /** * None. * @type {string || null} */ this.DirectConnectTunnelId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.DirectConnectTunnelId = 'DirectConnectTunnelId' in params ? params.DirectConnectTunnelId : null; } } /** * Coordinate describing the longitude and latitude. * @class */ class Coordinate extends AbstractModel { constructor(){ super(); /** * Latitude * @type {number || null} */ this.Lat = null; /** * Longitude * @type {number || null} */ this.Lng = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Lat = 'Lat' in params ? params.Lat : null; this.Lng = 'Lng' in params ? params.Lng : null; } } /** * DeleteDirectConnectTunnel request structure. * @class */ class DeleteDirectConnectTunnelRequest extends AbstractModel { constructor(){ super(); /** * Dedicated tunnel ID. * @type {string || null} */ this.DirectConnectTunnelId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.DirectConnectTunnelId = 'DirectConnectTunnelId' in params ? params.DirectConnectTunnelId : null; } } /** * CreateDirectConnect response structure. * @class */ class CreateDirectConnectResponse extends AbstractModel { constructor(){ super(); /** * Connection ID. * @type {Array.<string> || null} */ this.DirectConnectIdSet = null; /** * The unique request ID, which is returned for each request. RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.DirectConnectIdSet = 'DirectConnectIdSet' in params ? params.DirectConnectIdSet : null; this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * Connection information list. * @class */ class DirectConnect extends AbstractModel { constructor(){ super(); /** * Connection ID. * @type {string || null} */ this.DirectConnectId = null; /** * Connection name. * @type {string || null} */ this.DirectConnectName = null; /** * Access point ID of a connection. * @type {string || null} */ this.AccessPointId = null; /** * Connection status. PENDING: Applying. REJECTED: Application rejected. TOPAY: Payment pending. PAID: Paid. ALLOCATED: Constructing. AVAILABLE: Available. DELETING: Deleting. DELETED: Deleted. * @type {string || null} */ this.State = null; /** * Connection creation time. * @type {string || null} */ this.CreatedTime = null; /** * Connection activation time. * @type {string || null} */ this.EnabledTime = null; /** * ISP that provides connections. Valid values: ChinaTelecom (China Telecom), ChinaMobile (China Mobile), ChinaUnicom (China Unicom), In-houseWiring (in-house wiring), ChinaOther (other Chinese ISPs), InternationalOperator (international ISPs). * @type {string || null} */ this.LineOperator = null; /** * Location of a local IDC. * @type {string || null} */ this.Location = null; /** * Connection port bandwidth in Mbps. * @type {number || null} */ this.Bandwidth = null; /** * User-side port type of a connection. Valid values: 100Base-T (100-Megabit electrical Ethernet interface), 1000Base-T (1-Gigabit electrical Ethernet interface; it is the default value), 1000Base-LX (1-Gigabit single-mode optical Ethernet interface; 10 KM), 10GBase-T (10-Gigabit electrical Ethernet interface), 10GBase-LR (10-Gigabit single-mode optical Ethernet interface; 10 KM). * @type {string || null} */ this.PortType = null; /** * Circuit code of a connection, which is provided by the ISP or service provider. Note: this field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.CircuitCode = null; /** * ID of a redundant connection. * @type {string || null} */ this.RedundantDirectConnectId = null; /** * VLAN for connection debugging, which is enabled and automatically assigned by default. Note: this field may return null, indicating that no valid values can be obtained. * @type {number || null} */ this.Vlan = null; /** * Tencent-side IP address for connection debugging. Note: this field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.TencentAddress = null; /** * User-side IP address for connection debugging. Note: this field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.CustomerAddress = null; /** * Name of the connection applicant, which is obtained from the account system by default. Note: this field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.CustomerName = null; /** * Email address of the connection applicant, which is obtained from the account system by default. Note: this field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.CustomerContactMail = null; /** * Contact number of the connection applicant, which is obtained from the account system by default. Note: this field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.CustomerContactNumber = null; /** * Connection expiration time. Note: this field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.ExpiredTime = null; /** * Connection billing mode. NON_RECURRING_CHARGE: One-time charge for accessing service Note: this field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.ChargeType = null; /** * Fault reporting contact person. Note: this field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.FaultReportContactPerson = null; /** * Fault reporting contact number. Note: this field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.FaultReportContactNumber = null; /** * Tag key-value pair Note: this field may return null, indicating that no valid values can be obtained. * @type {Array.<Tag> || null} */ this.TagSet = null; /** * Access point type of a connection. * @type {string || null} */ this.AccessPointType = null; /** * IDC city. Note: this field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.IdcCity = null; /** * Billing status Note: this field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.ChargeState = null; /** * Connection activation time. Note: this field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.StartTime = null; /** * Whether the connection has the service agreement signed. Note: this field may return `null`, indicating that no valid value is obtained. * @type {boolean || null} */ this.SignLaw = null; /** * Whether the connection is an edge zone. Note: this field may return `null`, indicating that no valid value is obtained. * @type {boolean || null} */ this.LocalZone = null; /** * Number of dedicated tunnels with disabled VLAN in the connection Note: this field may return `null`, indicating that no valid value can be found. * @type {number || null} */ this.VlanZeroDirectConnectTunnelCount = null; /** * Number of dedicated tunnels with enabled VLAN in the connection Note: this field may return `null`, indicating that no valid values can be obtained. * @type {number || null} */ this.OtherVlanDirectConnectTunnelCount = null; /** * Minimum bandwidth of the connection Note: this field may return `null`, indicating that no valid values can be obtained. * @type {number || null} */ this.MinBandwidth = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.DirectConnectId = 'DirectConnectId' in params ? params.DirectConnectId : null; this.DirectConnectName = 'DirectConnectName' in params ? params.DirectConnectName : null; this.AccessPointId = 'AccessPointId' in params ? params.AccessPointId : null; this.State = 'State' in params ? params.State : null; this.CreatedTime = 'CreatedTime' in params ? params.CreatedTime : null; this.EnabledTime = 'EnabledTime' in params ? params.EnabledTime : null; this.LineOperator = 'LineOperator' in params ? params.LineOperator : null; this.Location = 'Location' in params ? params.Location : null; this.Bandwidth = 'Bandwidth' in params ? params.Bandwidth : null; this.PortType = 'PortType' in params ? params.PortType : null; this.CircuitCode = 'CircuitCode' in params ? params.CircuitCode : null; this.RedundantDirectConnectId = 'RedundantDirectConnectId' in params ? params.RedundantDirectConnectId : null; this.Vlan = 'Vlan' in params ? params.Vlan : null; this.TencentAddress = 'TencentAddress' in params ? params.TencentAddress : null; this.CustomerAddress = 'CustomerAddress' in params ? params.CustomerAddress : null; this.CustomerName = 'CustomerName' in params ? params.CustomerName : null; this.CustomerContactMail = 'CustomerContactMail' in params ? params.CustomerContactMail : null; this.CustomerContactNumber = 'CustomerContactNumber' in params ? params.CustomerContactNumber : null; this.ExpiredTime = 'ExpiredTime' in params ? params.ExpiredTime : null; this.ChargeType = 'ChargeType' in params ? params.ChargeType : null; this.FaultReportContactPerson = 'FaultReportContactPerson' in params ? params.FaultReportContactPerson : null; this.FaultReportContactNumber = 'FaultReportContactNumber' in params ? params.FaultReportContactNumber : null; if (params.TagSet) { this.TagSet = new Array(); for (let z in params.TagSet) { let obj = new Tag(); obj.deserialize(params.TagSet[z]); this.TagSet.push(obj); } } this.AccessPointType = 'AccessPointType' in params ? params.AccessPointType : null; this.IdcCity = 'IdcCity' in params ? params.IdcCity : null; this.ChargeState = 'ChargeState' in params ? params.ChargeState : null; this.StartTime = 'StartTime' in params ? params.StartTime : null; this.SignLaw = 'SignLaw' in params ? params.SignLaw : null; this.LocalZone = 'LocalZone' in params ? params.LocalZone : null; this.VlanZeroDirectConnectTunnelCount = 'VlanZeroDirectConnectTunnelCount' in params ? params.VlanZeroDirectConnectTunnelCount : null; this.OtherVlanDirectConnectTunnelCount = 'OtherVlanDirectConnectTunnelCount' in params ? params.OtherVlanDirectConnectTunnelCount : null; this.MinBandwidth = 'MinBandwidth' in params ? params.MinBandwidth : null; } } /** * Internet tunnel’s IP address details * @class */ class InternetAddressDetail extends AbstractModel { constructor(){ super(); /** * Internet tunnel’s IP address ID Note: this field may return `null`, indicating that no valid values can be obtained. * @type {string || null} */ this.InstanceId = null; /** * Internet tunnel’s network address Note: this field may return `null`, indicating that no valid values can be obtained. * @type {string || null} */ this.Subnet = null; /** * Mask length of a network address Note: this field may return `null`, indicating that no valid values can be obtained. * @type {number || null} */ this.MaskLen = null; /** * Address type. Valid values: 0: BGP 1: China Telecom 2: China Mobile 3: China Unicom Note: this field may return `null`, indicating that no valid values can be obtained. * @type {number || null} */ this.AddrType = null; /** * Address status. Valid values: 0: in use 1: disabled 2: returned * @type {number || null} */ this.Status = null; /** * Applied at Note: this field may return `null`, indicating that no valid values can be obtained. * @type {string || null} */ this.ApplyTime = null; /** * Disabled at Note: this field may return `null`, indicating that no valid values can be obtained. * @type {string || null} */ this.StopTime = null; /** * Returned at Note: this field may return `null`, indicating that no valid values can be obtained. * @type {string || null} */ this.ReleaseTime = null; /** * Region Note: this field may return `null`, indicating that no valid values can be obtained. * @type {string || null} */ this.Region = null; /** * User ID Note: this field may return `null`, indicating that no valid values can be obtained. * @type {number || null} */ this.AppId = null; /** * Address protocol. Valid values: 0: IPv4; 1: IPv6 Note: this field may return `null`, indicating that no valid values can be obtained. * @type {number || null} */ this.AddrProto = null; /** * Retention period of a released IP address, in days Note: this field may return `null`, indicating that no valid values can be obtained. * @type {number || null} */ this.ReserveTime = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.InstanceId = 'InstanceId' in params ? params.InstanceId : null; this.Subnet = 'Subnet' in params ? params.Subnet : null; this.MaskLen = 'MaskLen' in params ? params.MaskLen : null; this.AddrType = 'AddrType' in params ? params.AddrType : null; this.Status = 'Status' in params ? params.Status : null; this.ApplyTime = 'ApplyTime' in params ? params.ApplyTime : null; this.StopTime = 'StopTime' in params ? params.StopTime : null; this.ReleaseTime = 'ReleaseTime' in params ? params.ReleaseTime : null; this.Region = 'Region' in params ? params.Region : null; this.AppId = 'AppId' in params ? params.AppId : null; this.AddrProto = 'AddrProto' in params ? params.AddrProto : null; this.ReserveTime = 'ReserveTime' in params ? params.ReserveTime : null; } } /** * DescribeAccessPoints response structure. * @class */ class DescribeAccessPointsResponse extends AbstractModel { constructor(){ super(); /** * Access point information. * @type {Array.<AccessPoint> || null} */ this.AccessPointSet = null; /** * Number of eligible access points. * @type {number || null} */ this.TotalCount = null; /** * The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } if (params.AccessPointSet) { this.AccessPointSet = new Array(); for (let z in params.AccessPointSet) { let obj = new AccessPoint(); obj.deserialize(params.AccessPointSet[z]); this.AccessPointSet.push(obj); } } this.TotalCount = 'TotalCount' in params ? params.TotalCount : null; this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * AcceptDirectConnectTunnel response structure. * @class */ class AcceptDirectConnectTunnelResponse extends AbstractModel { constructor(){ super(); /** * The unique request ID, which is returned for each request. RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * DescribeDirectConnectTunnels request structure. * @class */ class DescribeDirectConnectTunnelsRequest extends AbstractModel { constructor(){ super(); /** * Filter conditions: This parameter does not support specifying `DirectConnectTunnelIds` and `Filters` at the same time. <li> direct-connect-tunnel-name: Dedicated tunnel name.</li> <li> direct-connect-tunnel-id: Dedicated tunnel instance ID, such as `dcx-abcdefgh`.</li> <li>direct-connect-id: Connection instance ID, such as `dc-abcdefgh`.</li> * @type {Array.<Filter> || null} */ this.Filters = null; /** * Array of dedicated tunnel IDs. * @type {Array.<string> || null} */ this.DirectConnectTunnelIds = null; /** * Offset. Default value: 0. * @type {number || null} */ this.Offset = null; /** * Number of returned results. Default value: 20. Maximum value: 100. * @type {number || null} */ this.Limit = null; } /** * @private */ deserialize(params) { if (!params) { return; } if (params.Filters) { this.Filters = new Array(); for (let z in params.Filters) { let obj = new Filter(); obj.deserialize(params.Filters[z]); this.Filters.push(obj); } } this.DirectConnectTunnelIds = 'DirectConnectTunnelIds' in params ? params.DirectConnectTunnelIds : null; this.Offset = 'Offset' in params ? params.Offset : null; this.Limit = 'Limit' in params ? params.Limit : null; } } /** * ReleaseInternetAddress request structure. * @class */ class ReleaseInternetAddressRequest extends AbstractModel { constructor(){ super(); /** * ID of the internet tunnel’s public IP address * @type {string || null} */ this.InstanceId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.InstanceId = 'InstanceId' in params ? params.InstanceId : null; } } /** * ModifyDirectConnectTunnelAttribute response structure. * @class */ class ModifyDirectConnectTunnelAttributeResponse extends AbstractModel { constructor(){ super(); /** * The unique request ID, which is returned for each request. RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * User-side IP range. * @class */ class RouteFilterPrefix extends AbstractModel { constructor(){ super(); /** * User-side IP range. * @type {string || null} */ this.Cidr = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Cidr = 'Cidr' in params ? params.Cidr : null; } } /** * ApplyInternetAddress response structure. * @class */ class ApplyInternetAddressResponse extends AbstractModel { constructor(){ super(); /** * ID of the internet tunnel’s public IP address Note: this field may return `null`, indicating that no valid values can be obtained. * @type {string || null} */ this.InstanceId = null; /** * The unique request ID, which is returned for each request. RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.InstanceId = 'InstanceId' in params ? params.InstanceId : null; this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * AcceptDirectConnectTunnel request structure. * @class */ class AcceptDirectConnectTunnelRequest extends AbstractModel { constructor(){ super(); /** * The connection owner accepts an application for sharing the dedicated tunnel * @type {string || null} */ this.DirectConnectTunnelId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.DirectConnectTunnelId = 'DirectConnectTunnelId' in params ? params.DirectConnectTunnelId : null; } } /** * Tag key-value pair * @class */ class Tag extends AbstractModel { constructor(){ super(); /** * Tag key Note: this field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.Key = null; /** * Tag value Note: this field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.Value = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Key = 'Key' in params ? params.Key : null; this.Value = 'Value' in params ? params.Value : null; } } /** * CreateDirectConnectTunnel request structure. * @class */ class CreateDirectConnectTunnelRequest extends AbstractModel { constructor(){ super(); /** * Direct Connect ID, such as `dc-kd7d06of`. * @type {string || null} */ this.DirectConnectId = null; /** * Dedicated tunnel name. * @type {string || null} */ this.DirectConnectTunnelName = null; /** * Connection owner, who is the current customer by default. The developer account ID should be entered for shared connections. * @type {string || null} */ this.DirectConnectOwnerAccount = null; /** * Network type. Valid values: VPC, BMVPC, CCN. Default value: VPC. VPC: Virtual Private Cloud. BMVPC: BM VPC. CCN: Cloud Connect Network. * @type {string || null} */ this.NetworkType = null; /** * Network region. * @type {string || null} */ this.NetworkRegion = null; /** * Unified VPC ID or BMVPC ID. * @type {string || null} */ this.VpcId = null; /** * Direct connect gateway ID, such as `dcg-d545ddf`. * @type {string || null} */ this.DirectConnectGatewayId = null; /** * Direct Connect bandwidth in Mbps. Default value: connection bandwidth value. * @type {number || null} */ this.Bandwidth = null; /** * BGP: BGP routing. STATIC: Static routing. Default value: BGP routing. * @type {string || null} */ this.RouteType = null; /** * BgpPeer, which is BGP information on the user side and includes Asn and AuthKey. * @type {BgpPeer || null} */ this.BgpPeer = null; /** * Static routing, i.e., IP range of the user's IDC. * @type {Array.<RouteFilterPrefix> || null} */ this.RouteFilterPrefixes = null; /** * VLAN. Value range: 0-3,000. 0: sub-interface not enabled. Default value: Non-zero. * @type {number || null} */ this.Vlan = null; /** * TencentAddress: Tencent-side IP address. * @type {string || null} */ this.TencentAddress = null; /** * CustomerAddress: User-side IP address. * @type {string || null} */ this.CustomerAddress = null; /** * TencentBackupAddress, i.e., Tencent-side standby IP address * @type {string || null} */ this.TencentBackupAddress = null; /** * Cloud Attached Connection Service ID * @type {string || null} */ this.CloudAttachId = null; /** * Whether to enable BFD * @type {number || null} */ this.BfdEnable = null; /** * Whether to enable NQA * @type {number || null} */ this.NqaEnable = null; /** * BFD configuration information * @type {BFDInfo || null} */ this.BfdInfo = null; /** * NQA configuration information * @type {NQAInfo || null} */ this.NqaInfo = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.DirectConnectId = 'DirectConnectId' in params ? params.DirectConnectId : null; this.DirectConnectTunnelName = 'DirectConnectTunnelName' in params ? params.DirectConnectTunnelName : null; this.DirectConnectOwnerAccount = 'DirectConnectOwnerAccount' in params ? params.DirectConnectOwnerAccount : null; this.NetworkType = 'NetworkType' in params ? params.NetworkType : null; this.NetworkRegion = 'NetworkRegion' in params ? params.NetworkRegion : null; this.VpcId = 'VpcId' in params ? params.VpcId : null; this.DirectConnectGatewayId = 'DirectConnectGatewayId' in params ? params.DirectConnectGatewayId : null; this.Bandwidth = 'Bandwidth' in params ? params.Bandwidth : null; this.RouteType = 'RouteType' in params ? params.RouteType : null; if (params.BgpPeer) { let obj = new BgpPeer(); obj.deserialize(params.BgpPeer) this.BgpPeer = obj; } if (params.RouteFilterPrefixes) { this.RouteFilterPrefixes = new Array(); for (let z in params.RouteFilterPrefixes) { let obj = new RouteFilterPrefix(); obj.deserialize(params.RouteFilterPrefixes[z]); this.RouteFilterPrefixes.push(obj); } } this.Vlan = 'Vlan' in params ? params.Vlan : null; this.TencentAddress = 'TencentAddress' in params ? params.TencentAddress : null; this.CustomerAddress = 'CustomerAddress' in params ? params.CustomerAddress : null; this.TencentBackupAddress = 'TencentBackupAddress' in params ? params.TencentBackupAddress : null; this.CloudAttachId = 'CloudAttachId' in params ? params.CloudAttachId : null; this.BfdEnable = 'BfdEnable' in params ? params.BfdEnable : null; this.NqaEnable = 'NqaEnable' in params ? params.NqaEnable : null; if (params.BfdInfo) { let obj = new BFDInfo(); obj.deserialize(params.BfdInfo) this.BfdInfo = obj; } if (params.NqaInfo) { let obj = new NQAInfo(); obj.deserialize(params.NqaInfo) this.NqaInfo = obj; } } } /** * DeleteDirectConnect response structure. * @class */ class DeleteDirectConnectResponse extends AbstractModel { constructor(){ super(); /** * The unique request ID, which is returned for each request. RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * EnableInternetAddress response structure. * @class */ class EnableInternetAddressResponse extends AbstractModel { constructor(){ super(); /** * The unique request ID, which is returned for each request. RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * ApplyInternetAddress request structure. * @class */ class ApplyInternetAddressRequest extends AbstractModel { constructor(){ super(); /** * Mask length of a CIDR block * @type {number || null} */ this.MaskLen = null; /** * Address type. Valid values: 0: BGP 1: China Telecom 2: China Mobile 3: China Unicom * @type {number || null} */ this.AddrType = null; /** * Address protocol. Valid values: 0: IPv4 1: IPv6 * @type {number || null} */ this.AddrProto = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.MaskLen = 'MaskLen' in params ? params.MaskLen : null; this.AddrType = 'AddrType' in params ? params.AddrType : null; this.AddrProto = 'AddrProto' in params ? params.AddrProto : null; } } /** * DescribeDirectConnects response structure. * @class */ class DescribeDirectConnectsResponse extends AbstractModel { constructor(){ super(); /** * List of connections. * @type {Array.<DirectConnect> || null} */ this.DirectConnectSet = null; /** * Number of eligible connection lists. * @type {number || null} */ this.TotalCount = null; /** * Whether all connections under the account have the service agreement signed. Note: this field may return `null`, indicating that no valid value is obtained. * @type {boolean || null} */ this.AllSignLaw = null; /** * The unique request ID, which is returned for each request. RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } if (params.DirectConnectSet) { this.DirectConnectSet = new Array(); for (let z in params.DirectConnectSet) { let obj = new DirectConnect(); obj.deserialize(params.DirectConnectSet[z]); this.DirectConnectSet.push(obj); } } this.TotalCount = 'TotalCount' in params ? params.TotalCount : null; this.AllSignLaw = 'AllSignLaw' in params ? params.AllSignLaw : null; this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * DescribeAccessPoints request structure. * @class */ class DescribeAccessPointsRequest extends AbstractModel { constructor(){ super(); /** * Access point region, which can be queried through `DescribeRegions`. You can call `DescribeRegions` to get the region ID. * @type {string || null} */ this.RegionId = null; /** * Offset. Default value: 0. * @type {number || null} */ this.Offset = null; /** * Number of results to be returned. Default value: 20. Maximum value: 100. * @type {number || null} */ this.Limit = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.RegionId = 'RegionId' in params ? params.RegionId : null; this.Offset = 'Offset' in params ? params.Offset : null; this.Limit = 'Limit' in params ? params.Limit : null; } } /** * DescribeDirectConnects request structure. * @class */ class DescribeDirectConnectsRequest extends AbstractModel { constructor(){ super(); /** * Filter conditions: * @type {Array.<Filter> || null} */ this.Filters = null; /** * Array of connection IDs. * @type {Array.<string> || null} */ this.DirectConnectIds = null; /** * Offset. Default value: 0. * @type {number || null} */ this.Offset = null; /** * Number of returned results. Default value: 20. Maximum value: 100. * @type {number || null} */ this.Limit = null; } /** * @private */ deserialize(params) { if (!params) { return; } if (params.Filters) { this.Filters = new Array(); for (let z in params.Filters) { let obj = new Filter(); obj.deserialize(params.Filters[z]); this.Filters.push(obj); } } this.DirectConnectIds = 'DirectConnectIds' in params ? params.DirectConnectIds : null; this.Offset = 'Offset' in params ? params.Offset : null; this.Limit = 'Limit' in params ? params.Limit : null; } } /** * ModifyDirectConnectTunnelAttribute request structure. * @class */ class ModifyDirectConnectTunnelAttributeRequest extends AbstractModel { constructor(){ super(); /** * Dedicated tunnel ID. * @type {string || null} */ this.DirectConnectTunnelId = null; /** * Dedicated tunnel name. * @type {string || null} */ this.DirectConnectTunnelName = null; /** * User-side BGP, including Asn and AuthKey. * @type {BgpPeer || null} */ this.BgpPeer = null; /** * User-side IP range. * @type {Array.<RouteFilterPrefix> || null} */ this.RouteFilterPrefixes = null; /** * Tencent-side IP address. * @type {string || null} */ this.TencentAddress = null; /** * User-side IP address. * @type {string || null} */ this.CustomerAddress = null; /** * Bandwidth value of a dedicated tunnel in Mbps. * @type {number || null} */ this.Bandwidth = null; /** * Tencent-side standby IP address * @type {string || null} */ this.TencentBackupAddress = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.DirectConnectTunnelId = 'DirectConnectTunnelId' in params ? params.DirectConnectTunnelId : null; this.DirectConnectTunnelName = 'DirectConnectTunnelName' in params ? params.DirectConnectTunnelName : null; if (params.BgpPeer) { let obj = new BgpPeer(); obj.deserialize(params.BgpPeer) this.BgpPeer = obj; } if (params.RouteFilterPrefixes) { this.RouteFilterPrefixes = new Array(); for (let z in params.RouteFilterPrefixes) { let obj = new RouteFilterPrefix(); obj.deserialize(params.RouteFilterPrefixes[z]); this.RouteFilterPrefixes.push(obj); } } this.TencentAddress = 'TencentAddress' in params ? params.TencentAddress : null; this.CustomerAddress = 'CustomerAddress' in params ? params.CustomerAddress : null; this.Bandwidth = 'Bandwidth' in params ? params.Bandwidth : null; this.TencentBackupAddress = 'TencentBackupAddress' in params ? params.TencentBackupAddress : null; } } /** * ModifyDirectConnectAttribute request structure. * @class */ class ModifyDirectConnectAttributeRequest extends AbstractModel { constructor(){ super(); /** * Connection ID. * @type {string || null} */ this.DirectConnectId = null; /** * Connection name. * @type {string || null} */ this.DirectConnectName = null; /** * Circuit code of a connection, which is provided by the ISP or connection provider. * @type {string || null} */ this.CircuitCode = null; /** * VLAN for connection debugging. * @type {number || null} */ this.Vlan = null; /** * Tencent-side IP address for connection debugging. * @type {string || null} */ this.TencentAddress = null; /** * User-side IP address for connection debugging. * @type {string || null} */ this.CustomerAddress = null; /** * Name of connection applicant, which is obtained from the account system by default. * @type {string || null} */ this.CustomerName = null; /** * Email address of connection applicant, which is obtained from the account system by default. * @type {string || null} */ this.CustomerContactMail = null; /** * Contact number of connection applicant, which is obtained from the account system by default. * @type {string || null} */ this.CustomerContactNumber = null; /** * Fault reporting contact person. * @type {string || null} */ this.FaultReportContactPerson = null; /** * Fault reporting contact number. * @type {string || null} */ this.FaultReportContactNumber = null; /** * Whether the connection applicant has signed the service agreement. * @type {boolean || null} */ this.SignLaw = null; /** * Connection’s bandwidth * @type {number || null} */ this.Bandwidth = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.DirectConnectId = 'DirectConnectId' in params ? params.DirectConnectId : null; this.DirectConnectName = 'DirectConnectName' in params ? params.DirectConnectName : null; this.CircuitCode = 'CircuitCode' in params ? params.CircuitCode : null; this.Vlan = 'Vlan' in params ? params.Vlan : null; this.TencentAddress = 'TencentAddress' in params ? params.TencentAddress : null; this.CustomerAddress = 'CustomerAddress' in params ? params.CustomerAddress : null; this.CustomerName = 'CustomerName' in params ? params.CustomerName : null; this.CustomerContactMail = 'CustomerContactMail' in params ? params.CustomerContactMail : null; this.CustomerContactNumber = 'CustomerContactNumber' in params ? params.CustomerContactNumber : null; this.FaultReportContactPerson = 'FaultReportContactPerson' in params ? params.FaultReportContactPerson : null; this.FaultReportContactNumber = 'FaultReportContactNumber' in params ? params.FaultReportContactNumber : null; this.SignLaw = 'SignLaw' in params ? params.SignLaw : null; this.Bandwidth = 'Bandwidth' in params ? params.Bandwidth : null; } } /** * DescribeInternetAddress response structure. * @class */ class DescribeInternetAddressResponse extends AbstractModel { constructor(){ super(); /** * Number of public IP addresses for internet tunnels * @type {number || null} */ this.TotalCount = null; /** * List of the public IP addresses for internet tunnels Note: this field may return `null`, indicating that no valid values can be obtained. * @type {Array.<InternetAddressDetail> || null} */ this.Subnets = null; /** * The unique request ID, which is returned for each request. RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.TotalCount = 'TotalCount' in params ? params.TotalCount : null; if (params.Subnets) { this.Subnets = new Array(); for (let z in params.Subnets) { let obj = new InternetAddressDetail(); obj.deserialize(params.Subnets[z]); this.Subnets.push(obj); } } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * Used for conditional filtering queries. * @class */ class Filter extends AbstractModel { constructor(){ super(); /** * Fields to be filtered. * @type {string || null} */ this.Name = null; /** * Filter values of the field. * @type {Array.<string> || null} */ this.Values = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Name = 'Name' in params ? params.Name : null; this.Values = 'Values' in params ? params.Values : null; } } /** * DisableInternetAddress response structure. * @class */ class DisableInternetAddressResponse extends AbstractModel { constructor(){ super(); /** * The unique request ID, which is returned for each request. RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * DescribeInternetAddressStatistics request structure. * @class */ class DescribeInternetAddressStatisticsRequest extends AbstractModel { constructor(){ super(); } /** * @private */ deserialize(params) { if (!params) { return; } } } /** * Public IP address statistics of internet tunnels * @class */ class InternetAddressStatistics extends AbstractModel { constructor(){ super(); /** * Region Note: this field may return `null`, indicating that no valid values can be obtained. * @type {string || null} */ this.Region = null; /** * Number of public IP addresses for internet tunnels Note: this field may return `null`, indicating that no valid values can be obtained. * @type {number || null} */ this.SubnetNum = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Region = 'Region' in params ? params.Region : null; this.SubnetNum = 'SubnetNum' in params ? params.SubnetNum : null; } } /** * CreateDirectConnect request structure. * @class */ class CreateDirectConnectRequest extends AbstractModel { constructor(){ super(); /** * Connection name. * @type {string || null} */ this.DirectConnectName = null; /** * Access point of connection. You can call `DescribeAccessPoints` to get the region ID. The selected access point must exist and be available. * @type {string || null} */ this.AccessPointId = null; /** * ISP that provides connections. Valid values: ChinaTelecom (China Telecom), ChinaMobile (China Mobile), ChinaUnicom (China Unicom), In-houseWiring (in-house wiring), ChinaOther (other Chinese ISPs), InternationalOperator (international ISPs). * @type {string || null} */ this.LineOperator = null; /** * Port type of connection. Valid values: 100Base-T (100-Megabit electrical Ethernet interface), 1000Base-T (1-Gigabit electrical Ethernet interface), 1000Base-LX (1-Gigabit single-module optical Ethernet interface; 10 KM), 10GBase-T (10-Gigabit electrical Ethernet interface), 10GBase-LR (10-Gigabit single-module optical Ethernet interface; 10 KM). Default value: 1000Base-LX. * @type {string || null} */ this.PortType = null; /** * Circuit code of a connection, which is provided by the ISP or connection provider. * @type {string || null} */ this.CircuitCode = null; /** * Local IDC location. * @type {string || null} */ this.Location = null; /** * Connection port bandwidth in Mbps. Value range: [2,10240]. Default value: 1000. * @type {number || null} */ this.Bandwidth = null; /** * ID of redundant connection. * @type {string || null} */ this.RedundantDirectConnectId = null; /** * VLAN for connection debugging, which is enabled and automatically assigned by default. * @type {number || null} */ this.Vlan = null; /** * Tencent-side IP address for connection debugging, which is automatically assigned by default. * @type {string || null} */ this.TencentAddress = null; /** * User-side IP address for connection debugging, which is automatically assigned by default. * @type {string || null} */ this.CustomerAddress = null; /** * Name of connection applicant, which is obtained from the account system by default. * @type {string || null} */ this.CustomerName = null; /** * Email address of connection applicant, which is obtained from the account system by default. * @type {string || null} */