UNPKG

tencentcloud-sdk-nodejs-intl-en

Version:
1,979 lines (1,660 loc) 298 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"); /** * CreateDefaultAlarmThreshold request structure. * @class */ class CreateDefaultAlarmThresholdRequest extends AbstractModel { constructor(){ super(); /** * Default alarm threshold configuration * @type {DefaultAlarmThreshold || null} */ this.DefaultAlarmConfig = null; /** * Product category. Valid values: `bgp`: Anti-DDoS Pro `bgpip`: Anti-DDoS Advanced ] * @type {string || null} */ this.InstanceType = null; } /** * @private */ deserialize(params) { if (!params) { return; } if (params.DefaultAlarmConfig) { let obj = new DefaultAlarmThreshold(); obj.deserialize(params.DefaultAlarmConfig) this.DefaultAlarmConfig = obj; } this.InstanceType = 'InstanceType' in params ? params.InstanceType : null; } } /** * DescribeListBGPIPInstances response structure. * @class */ class DescribeListBGPIPInstancesResponse extends AbstractModel { constructor(){ super(); /** * Total number of lists * @type {number || null} */ this.Total = null; /** * List of Anti-DDoS Advanced instances * @type {Array.<BGPIPInstance> || null} */ this.InstanceList = 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; } this.Total = 'Total' in params ? params.Total : null; if (params.InstanceList) { this.InstanceList = new Array(); for (let z in params.InstanceList) { let obj = new BGPIPInstance(); obj.deserialize(params.InstanceList[z]); this.InstanceList.push(obj); } } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * ModifyNewDomainRules request structure. * @class */ class ModifyNewDomainRulesRequest extends AbstractModel { constructor(){ super(); /** * Anti-DDoS service type (`bgpip`: Anti-DDoS Advanced). * @type {string || null} */ this.Business = null; /** * Anti-DDoS instance ID. * @type {string || null} */ this.Id = null; /** * Domain name forwarding rule. * @type {NewL7RuleEntry || null} */ this.Rule = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Business = 'Business' in params ? params.Business : null; this.Id = 'Id' in params ? params.Id : null; if (params.Rule) { let obj = new NewL7RuleEntry(); obj.deserialize(params.Rule) this.Rule = obj; } } } /** * DeleteCCLevelPolicy request structure. * @class */ class DeleteCCLevelPolicyRequest extends AbstractModel { constructor(){ super(); /** * Instance ID * @type {string || null} */ this.InstanceId = null; /** * Target IP of the policy * @type {string || null} */ this.Ip = null; /** * Domain name * @type {string || null} */ this.Domain = null; /** * Value: `http` * @type {string || null} */ this.Protocol = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.InstanceId = 'InstanceId' in params ? params.InstanceId : null; this.Ip = 'Ip' in params ? params.Ip : null; this.Domain = 'Domain' in params ? params.Domain : null; this.Protocol = 'Protocol' in params ? params.Protocol : null; } } /** * Forwarding type * @class */ class ProxyTypeInfo extends AbstractModel { constructor(){ super(); /** * List of forwarding listening ports. Value range: 1–65535. * @type {Array.<number> || null} */ this.ProxyPorts = null; /** * Forwarding protocol: `http`: HTTP protocol `https`: HTTPS protocol ] * @type {string || null} */ this.ProxyType = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.ProxyPorts = 'ProxyPorts' in params ? params.ProxyPorts : null; this.ProxyType = 'ProxyType' in params ? params.ProxyType : null; } } /** * CreateBoundIP request structure. * @class */ class CreateBoundIPRequest extends AbstractModel { constructor(){ super(); /** * Anti-DDoS service type. `bgp`: Anti-DDoS Pro (Single IP); `bgp-multip`: Anti-DDoS Pro (Multi-IP) * @type {string || null} */ this.Business = null; /** * Anti-DDoS instance ID * @type {string || null} */ this.Id = null; /** * Array of IPs to bind to the Anti-DDoS instance. For Anti-DDoS Pro Single IP instance, the array contains only one IP. If there are no IPs to bind, it is empty; however, either `BoundDevList` or `UnBoundDevList` must not be empty. * @type {Array.<BoundIpInfo> || null} */ this.BoundDevList = null; /** * Array of IPs to unbind from the Anti-DDoS instance. For Anti-DDoS Pro Single IP instance, the array contains only one IP; if there are no IPs to unbind, it is empty; however, either `BoundDevList` or `UnBoundDevList` must not be empty. * @type {Array.<BoundIpInfo> || null} */ this.UnBoundDevList = null; /** * Disused * @type {string || null} */ this.CopyPolicy = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Business = 'Business' in params ? params.Business : null; this.Id = 'Id' in params ? params.Id : null; if (params.BoundDevList) { this.BoundDevList = new Array(); for (let z in params.BoundDevList) { let obj = new BoundIpInfo(); obj.deserialize(params.BoundDevList[z]); this.BoundDevList.push(obj); } } if (params.UnBoundDevList) { this.UnBoundDevList = new Array(); for (let z in params.UnBoundDevList) { let obj = new BoundIpInfo(); obj.deserialize(params.UnBoundDevList[z]); this.UnBoundDevList.push(obj); } } this.CopyPolicy = 'CopyPolicy' in params ? params.CopyPolicy : null; } } /** * Configuration fields of CC frequency limit policies * @class */ class CCReqLimitPolicyRecord extends AbstractModel { constructor(){ super(); /** * Sampling interval (in seconds). Valid values: `1`, `10`, `30`, and `60`. * @type {number || null} */ this.Period = null; /** * Number of requests. Value range: 1-2000. * @type {number || null} */ this.RequestNum = null; /** * Action of limiting request frequency. Valid values: `alg` (limit request frequency via verification codes) and `drop`(drop requests). * @type {string || null} */ this.Action = null; /** * Sets an interval of the frequency limit policy. Value range: 1-86400 (in seconds). * @type {number || null} */ this.ExecuteDuration = null; /** * Filters values of configuration fields. `include`: The value is included. `equal`: The value matches the configuration field. * @type {string || null} */ this.Mode = null; /** * URI, which cannot be used together with `User-Agent` and `Cookie`. * @type {string || null} */ this.Uri = null; /** * User-Agent, which cannot be used together with `Uri` and `Cookie`. * @type {string || null} */ this.UserAgent = null; /** * Cookie, which cannot be used together with `Uri` and `User-Agent`. * @type {string || null} */ this.Cookie = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Period = 'Period' in params ? params.Period : null; this.RequestNum = 'RequestNum' in params ? params.RequestNum : null; this.Action = 'Action' in params ? params.Action : null; this.ExecuteDuration = 'ExecuteDuration' in params ? params.ExecuteDuration : null; this.Mode = 'Mode' in params ? params.Mode : null; this.Uri = 'Uri' in params ? params.Uri : null; this.UserAgent = 'UserAgent' in params ? params.UserAgent : null; this.Cookie = 'Cookie' in params ? params.Cookie : null; } } /** * DescribeListSchedulingDomain request structure. * @class */ class DescribeListSchedulingDomainRequest extends AbstractModel { constructor(){ super(); /** * Starting offset of the page. Value: (number of pages – 1) * items per page. * @type {number || null} */ this.Offset = null; /** * Number of items per page. The default value is 20 when `Limit = 0`. The maximum value is 100. * @type {number || null} */ this.Limit = null; /** * Scheduling domain name filter * @type {string || null} */ this.FilterDomain = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Offset = 'Offset' in params ? params.Offset : null; this.Limit = 'Limit' in params ? params.Limit : null; this.FilterDomain = 'FilterDomain' in params ? params.FilterDomain : null; } } /** * CreateWaterPrintConfig request structure. * @class */ class CreateWaterPrintConfigRequest extends AbstractModel { constructor(){ super(); /** * Anti-DDoS instance ID * @type {string || null} */ this.InstanceId = null; /** * Watermark configuration * @type {WaterPrintConfig || null} */ this.WaterPrintConfig = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.InstanceId = 'InstanceId' in params ? params.InstanceId : null; if (params.WaterPrintConfig) { let obj = new WaterPrintConfig(); obj.deserialize(params.WaterPrintConfig) this.WaterPrintConfig = obj; } } } /** * Anti-DDoS region blocking configuration * @class */ class DDoSGeoIPBlockConfig extends AbstractModel { constructor(){ super(); /** * Region type. Valid values: `oversea`: Outside the Chinese mainland `china`: The Chinese mainland `customized`: User-specified region ] * @type {string || null} */ this.RegionType = null; /** * Blocking action. Valid values: `drop`: the request is blocked. `trans`: the request is allowed. ] * @type {string || null} */ this.Action = null; /** * Configuration ID, which is generated after a configuration is added. This field is only required to modify or delete a configuration. * @type {string || null} */ this.Id = null; /** * When `RegionType = customized`, AreaList is required and contains up to 128 areas. * @type {Array.<number> || null} */ this.AreaList = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.RegionType = 'RegionType' in params ? params.RegionType : null; this.Action = 'Action' in params ? params.Action : null; this.Id = 'Id' in params ? params.Id : null; this.AreaList = 'AreaList' in params ? params.AreaList : null; } } /** * CreateBlackWhiteIpList response structure. * @class */ class CreateBlackWhiteIpListResponse extends AbstractModel { constructor(){ super(); /** * 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; } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * Single IP alarm threshold configuration * @class */ class IPAlarmThresholdRelation extends AbstractModel { constructor(){ super(); /** * Alarm threshold type. Valid values: `1`: alarm threshold for inbound traffic `2`: alarm threshold for cleansing attack traffic ] * @type {number || null} */ this.AlarmType = null; /** * Alarm threshold (Mbps). The value should be greater than or equal to 0. Note that the alarm threshold configuration will be removed if you pass the parameter for input and set it to 0. * @type {number || null} */ this.AlarmThreshold = null; /** * Anti-DDoS instance configured * @type {Array.<InstanceRelation> || null} */ this.InstanceDetailList = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.AlarmType = 'AlarmType' in params ? params.AlarmType : null; this.AlarmThreshold = 'AlarmThreshold' in params ? params.AlarmThreshold : null; if (params.InstanceDetailList) { this.InstanceDetailList = new Array(); for (let z in params.InstanceDetailList) { let obj = new InstanceRelation(); obj.deserialize(params.InstanceDetailList[z]); this.InstanceDetailList.push(obj); } } } } /** * ModifyDDoSGeoIPBlockConfig request structure. * @class */ class ModifyDDoSGeoIPBlockConfigRequest extends AbstractModel { constructor(){ super(); /** * Anti-DDoS instance ID * @type {string || null} */ this.InstanceId = null; /** * Region blocking configuration. The configuration ID cannot be empty when you set this parameter. * @type {DDoSGeoIPBlockConfig || null} */ this.DDoSGeoIPBlockConfig = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.InstanceId = 'InstanceId' in params ? params.InstanceId : null; if (params.DDoSGeoIPBlockConfig) { let obj = new DDoSGeoIPBlockConfig(); obj.deserialize(params.DDoSGeoIPBlockConfig) this.DDoSGeoIPBlockConfig = obj; } } } /** * DescribeL7RulesBySSLCertId response structure. * @class */ class DescribeL7RulesBySSLCertIdResponse extends AbstractModel { constructor(){ super(); /** * Certificate rule set * @type {Array.<CertIdInsL7Rules> || null} */ this.CertSet = 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.CertSet) { this.CertSet = new Array(); for (let z in params.CertSet) { let obj = new CertIdInsL7Rules(); obj.deserialize(params.CertSet[z]); this.CertSet.push(obj); } } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * DescribeListDDoSSpeedLimitConfig request structure. * @class */ class DescribeListDDoSSpeedLimitConfigRequest extends AbstractModel { constructor(){ super(); /** * Starting offset of the page. Value: (number of pages – 1) * items per page. * @type {number || null} */ this.Offset = null; /** * Number of items per page. The default value is 20 when Limit = 0. The maximum value is 100. * @type {number || null} */ this.Limit = null; /** * Anti-DDoS instance ID filter. Anti-DDoS instance prefix wildcard search is supported. For example, you can filter Anti-DDoS Pro instances by `bgp-*`. * @type {string || null} */ this.FilterInstanceId = null; /** * IP filter * @type {string || null} */ this.FilterIp = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Offset = 'Offset' in params ? params.Offset : null; this.Limit = 'Limit' in params ? params.Limit : null; this.FilterInstanceId = 'FilterInstanceId' in params ? params.FilterInstanceId : null; this.FilterIp = 'FilterIp' in params ? params.FilterIp : null; } } /** * Instance IP information * @class */ class InstanceRelation extends AbstractModel { constructor(){ super(); /** * Instance IP * @type {Array.<string> || null} */ this.EipList = null; /** * Instance ID * @type {string || null} */ this.InstanceId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.EipList = 'EipList' in params ? params.EipList : null; this.InstanceId = 'InstanceId' in params ? params.InstanceId : null; } } /** * Region information. * @class */ class RegionInfo extends AbstractModel { constructor(){ super(); /** * Region name, such as `ap-guangzhou` * @type {string || null} */ this.Region = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Region = 'Region' in params ? params.Region : null; } } /** * DescribeListProtocolBlockConfig response structure. * @class */ class DescribeListProtocolBlockConfigResponse extends AbstractModel { constructor(){ super(); /** * Total number of lists * @type {number || null} */ this.Total = null; /** * Protocol blocking configuration * @type {Array.<ProtocolBlockRelation> || null} */ this.ConfigList = 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; } this.Total = 'Total' in params ? params.Total : null; if (params.ConfigList) { this.ConfigList = new Array(); for (let z in params.ConfigList) { let obj = new ProtocolBlockRelation(); obj.deserialize(params.ConfigList[z]); this.ConfigList.push(obj); } } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * DescribeListBGPInstances request structure. * @class */ class DescribeListBGPInstancesRequest extends AbstractModel { constructor(){ super(); /** * Starting offset of the page. Value: (number of pages – 1) * items per page. * @type {number || null} */ this.Offset = null; /** * Number of items per page. The default value is 20 when `Limit = 0`. The maximum value is 100. * @type {number || null} */ this.Limit = null; /** * Filters by IP. * @type {string || null} */ this.FilterIp = null; /** * Anti-DDoS instance ID filter. For example, `bgp-00000001`. * @type {string || null} */ this.FilterInstanceId = null; /** * Filters by region. For example, `ap-guangzhou`. * @type {string || null} */ this.FilterRegion = null; /** * Filters by name. * @type {string || null} */ this.FilterName = null; /** * Line filter. Valid values: 1: BGP; 2: Non-BGP. * @type {number || null} */ this.FilterLine = null; /** * Filters by instance status. `idle`: Running; `attacking`: Being attacked; `blocking`: Being blocked. * @type {string || null} */ this.FilterStatus = null; /** * Filters by binding status. `bounding`: The instance is bound; `failed`: The binding failed. * @type {string || null} */ this.FilterBoundStatus = null; /** * Array of instance IDs * @type {Array.<string> || null} */ this.FilterInstanceIdList = null; /** * Enterprise edition. Values: `1` (the Convoy package included), `2` (the Convoy package not included) * @type {number || null} */ this.FilterEnterpriseFlag = null; /** * Whether it’s a Lighthouse edition * @type {number || null} */ this.FilterLightFlag = null; /** * Whether it’s a Channel edition * @type {number || null} */ this.FilterChannelFlag = null; /** * Filters by tag * @type {TagFilter || null} */ this.FilterTag = null; /** * Filters out trial instances. Values: `1` (emergency protection instances), `2` (PLG instances) * @type {number || null} */ this.FilterTrialFlag = null; /** * Filters out Convoy instances * @type {number || null} */ this.FilterConvoy = null; /** * Whether to exclude the advanced information (such as `InstanceList[0].Usage`). Values: `true` (exclude), `false` (do not exclude). The default value is `false`. * @type {boolean || null} */ this.ExcludeAdvancedInfo = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Offset = 'Offset' in params ? params.Offset : null; this.Limit = 'Limit' in params ? params.Limit : null; this.FilterIp = 'FilterIp' in params ? params.FilterIp : null; this.FilterInstanceId = 'FilterInstanceId' in params ? params.FilterInstanceId : null; this.FilterRegion = 'FilterRegion' in params ? params.FilterRegion : null; this.FilterName = 'FilterName' in params ? params.FilterName : null; this.FilterLine = 'FilterLine' in params ? params.FilterLine : null; this.FilterStatus = 'FilterStatus' in params ? params.FilterStatus : null; this.FilterBoundStatus = 'FilterBoundStatus' in params ? params.FilterBoundStatus : null; this.FilterInstanceIdList = 'FilterInstanceIdList' in params ? params.FilterInstanceIdList : null; this.FilterEnterpriseFlag = 'FilterEnterpriseFlag' in params ? params.FilterEnterpriseFlag : null; this.FilterLightFlag = 'FilterLightFlag' in params ? params.FilterLightFlag : null; this.FilterChannelFlag = 'FilterChannelFlag' in params ? params.FilterChannelFlag : null; if (params.FilterTag) { let obj = new TagFilter(); obj.deserialize(params.FilterTag) this.FilterTag = obj; } this.FilterTrialFlag = 'FilterTrialFlag' in params ? params.FilterTrialFlag : null; this.FilterConvoy = 'FilterConvoy' in params ? params.FilterConvoy : null; this.ExcludeAdvancedInfo = 'ExcludeAdvancedInfo' in params ? params.ExcludeAdvancedInfo : null; } } /** * Status of the IP * @class */ class KeyValue extends AbstractModel { constructor(){ super(); /** * IP * @type {string || null} */ this.Key = null; /** * Status of the IP. Values: `1` (blocked); `2` (normal); `3` (being attacked) * @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; } } /** * ModifyCcBlackWhiteIpList request structure. * @class */ class ModifyCcBlackWhiteIpListRequest extends AbstractModel { constructor(){ super(); /** * Instance ID * @type {string || null} */ this.InstanceId = null; /** * List of IPs * @type {Array.<IpSegment> || null} */ this.IpList = null; /** * IP type. Valid values: `black` (blocklisted IP), `white`(allowlisted IP). * @type {string || null} */ this.Type = null; /** * Policy ID * @type {string || null} */ this.PolicyId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.InstanceId = 'InstanceId' in params ? params.InstanceId : null; if (params.IpList) { this.IpList = new Array(); for (let z in params.IpList) { let obj = new IpSegment(); obj.deserialize(params.IpList[z]); this.IpList.push(obj); } } this.Type = 'Type' in params ? params.Type : null; this.PolicyId = 'PolicyId' in params ? params.PolicyId : null; } } /** * DeleteDDoSSpeedLimitConfig request structure. * @class */ class DeleteDDoSSpeedLimitConfigRequest extends AbstractModel { constructor(){ super(); /** * Anti-DDoS instance ID * @type {string || null} */ this.InstanceId = null; /** * Access rate limit configuration. The configuration ID cannot be empty when you set this parameter. * @type {DDoSSpeedLimitConfig || null} */ this.DDoSSpeedLimitConfig = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.InstanceId = 'InstanceId' in params ? params.InstanceId : null; if (params.DDoSSpeedLimitConfig) { let obj = new DDoSSpeedLimitConfig(); obj.deserialize(params.DDoSSpeedLimitConfig) this.DDoSSpeedLimitConfig = obj; } } } /** * CreatePacketFilterConfig response structure. * @class */ class CreatePacketFilterConfigResponse extends AbstractModel { constructor(){ super(); /** * 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; } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * CreateCCReqLimitPolicy response structure. * @class */ class CreateCCReqLimitPolicyResponse extends AbstractModel { constructor(){ super(); /** * 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; } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * DescribeListWaterPrintConfig request structure. * @class */ class DescribeListWaterPrintConfigRequest extends AbstractModel { constructor(){ super(); /** * Starting offset of the page. Value: (number of pages – 1) * items per page. * @type {number || null} */ this.Offset = null; /** * Number of items per page. The default value is 20 when `Limit = 0`. The maximum value is 100. * @type {number || null} */ this.Limit = null; /** * Anti-DDoS instance ID filter. Anti-DDoS instance prefix wildcard search is supported. For example, you can filter Anti-DDoS Pro instances by `bgp-*`. * @type {string || null} */ this.FilterInstanceId = null; /** * IP filter * @type {string || null} */ this.FilterIp = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Offset = 'Offset' in params ? params.Offset : null; this.Limit = 'Limit' in params ? params.Limit : null; this.FilterInstanceId = 'FilterInstanceId' in params ? params.FilterInstanceId : null; this.FilterIp = 'FilterIp' in params ? params.FilterIp : null; } } /** * CreateL7RuleCerts request structure. * @class */ class CreateL7RuleCertsRequest extends AbstractModel { constructor(){ super(); /** * SSL certificate ID * @type {string || null} */ this.CertId = null; /** * List of Layer-7 domain name forwarding rules * @type {Array.<InsL7Rules> || null} */ this.L7Rules = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.CertId = 'CertId' in params ? params.CertId : null; if (params.L7Rules) { this.L7Rules = new Array(); for (let z in params.L7Rules) { let obj = new InsL7Rules(); obj.deserialize(params.L7Rules[z]); this.L7Rules.push(obj); } } } } /** * CreateCCPrecisionPolicy response structure. * @class */ class CreateCCPrecisionPolicyResponse extends AbstractModel { constructor(){ super(); /** * 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; } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * DeleteDDoSGeoIPBlockConfig request structure. * @class */ class DeleteDDoSGeoIPBlockConfigRequest extends AbstractModel { constructor(){ super(); /** * Anti-DDoS instance ID * @type {string || null} */ this.InstanceId = null; /** * Region blocking configuration. The configuration ID cannot be empty when you set this parameter. * @type {DDoSGeoIPBlockConfig || null} */ this.DDoSGeoIPBlockConfig = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.InstanceId = 'InstanceId' in params ? params.InstanceId : null; if (params.DDoSGeoIPBlockConfig) { let obj = new DDoSGeoIPBlockConfig(); obj.deserialize(params.DDoSGeoIPBlockConfig) this.DDoSGeoIPBlockConfig = obj; } } } /** * DescribeCcBlackWhiteIpList response structure. * @class */ class DescribeCcBlackWhiteIpListResponse extends AbstractModel { constructor(){ super(); /** * Number of policy lists * @type {number || null} */ this.Total = null; /** * Information of the policy list * @type {Array.<CcBlackWhiteIpPolicy> || null} */ this.CcBlackWhiteIpList = 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; } this.Total = 'Total' in params ? params.Total : null; if (params.CcBlackWhiteIpList) { this.CcBlackWhiteIpList = new Array(); for (let z in params.CcBlackWhiteIpList) { let obj = new CcBlackWhiteIpPolicy(); obj.deserialize(params.CcBlackWhiteIpList[z]); this.CcBlackWhiteIpList.push(obj); } } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * CreateIPAlarmThresholdConfig request structure. * @class */ class CreateIPAlarmThresholdConfigRequest extends AbstractModel { constructor(){ super(); /** * List of IP alarm threshold configurations * @type {Array.<IPAlarmThresholdRelation> || null} */ this.IpAlarmThresholdConfigList = null; } /** * @private */ deserialize(params) { if (!params) { return; } if (params.IpAlarmThresholdConfigList) { this.IpAlarmThresholdConfigList = new Array(); for (let z in params.IpAlarmThresholdConfigList) { let obj = new IPAlarmThresholdRelation(); obj.deserialize(params.IpAlarmThresholdConfigList[z]); this.IpAlarmThresholdConfigList.push(obj); } } } } /** * CreateCcBlackWhiteIpList response structure. * @class */ class CreateCcBlackWhiteIpListResponse extends AbstractModel { constructor(){ super(); /** * 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; } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * DescribeDefaultAlarmThreshold response structure. * @class */ class DescribeDefaultAlarmThresholdResponse extends AbstractModel { constructor(){ super(); /** * Default alarm threshold configuration * @type {Array.<DefaultAlarmThreshold> || null} */ this.DefaultAlarmConfigList = 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.DefaultAlarmConfigList) { this.DefaultAlarmConfigList = new Array(); for (let z in params.DefaultAlarmConfigList) { let obj = new DefaultAlarmThreshold(); obj.deserialize(params.DefaultAlarmConfigList[z]); this.DefaultAlarmConfigList.push(obj); } } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * CreateNewL7Rules response structure. * @class */ class CreateNewL7RulesResponse extends AbstractModel { constructor(){ super(); /** * Success code * @type {SuccessCode || null} */ this.Success = 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.Success) { let obj = new SuccessCode(); obj.deserialize(params.Success) this.Success = obj; } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * CreateDDoSAI request structure. * @class */ class CreateDDoSAIRequest extends AbstractModel { constructor(){ super(); /** * List of Anti-DDoS instance IDs * @type {Array.<string> || null} */ this.InstanceIdList = null; /** * AI protection switch. Valid values: `on`: enabled `off`: disabled ] * @type {string || null} */ this.DDoSAI = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.InstanceIdList = 'InstanceIdList' in params ? params.InstanceIdList : null; this.DDoSAI = 'DDoSAI' in params ? params.DDoSAI : null; } } /** * ModifyNewDomainRules response structure. * @class */ class ModifyNewDomainRulesResponse extends AbstractModel { constructor(){ super(); /** * Success code. * @type {SuccessCode || null} */ this.Success = 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.Success) { let obj = new SuccessCode(); obj.deserialize(params.Success) this.Success = obj; } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * Layer-4 access control list * @class */ class CcBlackWhiteIpPolicy extends AbstractModel { constructor(){ super(); /** * Policy ID * @type {string || null} */ this.PolicyId = null; /** * Instance ID * @type {string || null} */ this.InstanceId = null; /** * IP address * @type {string || null} */ this.Ip = null; /** * Domain name * @type {string || null} */ this.Domain = null; /** * Protocol * @type {string || null} */ this.Protocol = null; /** * IP type. Valid values: `black` (blocklisted IP), `white`(allowlisted IP). * @type {string || null} */ this.Type = null; /** * Blocklist/Allowlist IP address * @type {string || null} */ this.BlackWhiteIp = null; /** * Mask * @type {number || null} */ this.Mask = null; /** * Creation time * @type {string || null} */ this.CreateTime = null; /** * Modification time * @type {string || null} */ this.ModifyTime = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.PolicyId = 'PolicyId' in params ? params.PolicyId : null; this.InstanceId = 'InstanceId' in params ? params.InstanceId : null; this.Ip = 'Ip' in params ? params.Ip : null; this.Domain = 'Domain' in params ? params.Domain : null; this.Protocol = 'Protocol' in params ? params.Protocol : null; this.Type = 'Type' in params ? params.Type : null; this.BlackWhiteIp = 'BlackWhiteIp' in params ? params.BlackWhiteIp : null; this.Mask = 'Mask' in params ? params.Mask : null; this.CreateTime = 'CreateTime' in params ? params.CreateTime : null; this.ModifyTime = 'ModifyTime' in params ? params.ModifyTime : null; } } /** * Health check parameters of layer-7 forwarding rules * @class */ class L7RuleHealth extends AbstractModel { constructor(){ super(); /** * Configuration status. Values: `0` (normal), `1` (configuration in progress) and `2` (configuration failed). * @type {number || null} */ this.Status = null; /** * Switch. Values: `1`: Enable; `0`: Disable. * @type {number || null} */ this.Enable = null; /** * ID of the rule * @type {string || null} */ this.RuleId = null; /** * HTTP request path. The default value is /. * @type {string || null} */ this.Url = null; /** * Health check interval. Unit: second. * @type {number || null} */ this.Interval = null; /** * Healthy threshold, which specifies the number of consecutive successful health checks. * @type {number || null} */ this.AliveNum = null; /** * Unhealthy threshold, which specifies the number of consecutive failed health checks. * @type {number || null} */ this.KickNum = null; /** * HTTP request method. Values: `HEAD` and `GET`. * @type {string || null} */ this.Method = null; /** * Status code that signifies a normal state. Values: `1` (1xx), `2` (2xx), `4` (3xx), `8` (4xx), and `16` (5xx). * @type {number || null} */ this.StatusCode = null; /** * Whether to deploy both HTTP and HTTPS health check rules * @type {number || null} */ this.ProtocolFlag = null; /** * Enables passive detection. Values: `1` (enable) and `0` (disable). * @type {number || null} */ this.PassiveEnable = null; /** * Blocking period in the passive detection configuration * @type {number || null} */ this.BlockInter = null; /** * Time interval between passive detections * @type {number || null} */ this.FailedCountInter = null; /** * Unhealthy threshold in the passive detection configuration * @type {number || null} */ this.FailedThreshold = null; /** * Status code that signals that the passive detection considers the status normal. Values: `1` (1xx), `2` (2xx), `4` (3xx), `8` (4xx), and `16` (5xx). * @type {number || null} */ this.PassiveStatusCode = null; /** * Configuration status of the passive health check. Values: `0` (Normal), `1` (configuration in progress) and `2` (configuration failed). * @type {number || null} */ this.PassiveStatus = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Status = 'Status' in params ? params.Status : null; this.Enable = 'Enable' in params ? params.Enable : null; this.RuleId = 'RuleId' in params ? params.RuleId : null; this.Url = 'Url' in params ? params.Url : null; this.Interval = 'Interval' in params ? params.Interval : null; this.AliveNum = 'AliveNum' in params ? params.AliveNum : null; this.KickNum = 'KickNum' in params ? params.KickNum : null; this.Method = 'Method' in params ? params.Method : null; this.StatusCode = 'StatusCode' in params ? params.StatusCode : null; this.ProtocolFlag = 'ProtocolFlag' in params ? params.ProtocolFlag : null; this.PassiveEnable = 'PassiveEnable' in params ? params.PassiveEnable : null; this.BlockInter = 'BlockInter' in params ? params.BlockInter : null; this.FailedCountInter = 'FailedCountInter' in params ? params.FailedCountInter : null; this.FailedThreshold = 'FailedThreshold' in params ? params.FailedThreshold : null; this.PassiveStatusCode = 'PassiveStatusCode' in params ? params.PassiveStatusCode : null; this.PassiveStatus = 'PassiveStatus' in params ? params.PassiveStatus : null; } } /** * DescribeCCLevelPolicy request structure. * @class */ class DescribeCCLevelPolicyRequest extends AbstractModel { constructor(){ super(); /** * Instance ID * @type {string || null} */ this.InstanceId = null; /** * IP * @type {string || null} */ this.Ip = null; /** * Domain name * @type {string || null} */ this.Domain = null; /** * Protocol. Values: `HTTP`,`HTTPS` * @type {string || null} */ this.Protocol = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.InstanceId = 'InstanceId' in params ? params.InstanceId : null; this.Ip = 'Ip' in params ? params.Ip : null; this.Domain = 'Domain' in params ? params.Domain : null; this.Protocol = 'Protocol' in params ? params.Protocol : null; } } /** * CreateWaterPrintConfig response structure. * @class */ class CreateWaterPrintConfigResponse extends AbstractModel { constructor(){ super(); /** * 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; } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * * @class */ class IpBlockData extends AbstractModel { constructor(){ super(); /** * * @type {string || null} */ this.Status = null; /** * * @type {string || null} */ this.Ip = null; /** * * @type {string || null} */ this.BlockTime = null; /** * * @type {string || null} */ this.UnBlockTime = null; /** * * @type {string || null} */ this.ActionType = null; /** * * @type {number || null} */ this.ProtectFlag = null; } /** * @private */ deserialize(params) { if (!params) { ret