UNPKG

tencentcloud-sdk-nodejs-intl-en

Version:
2,089 lines (1,761 loc) • 439 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"); /** * Smart compression * @class */ class Compression extends AbstractModel { constructor(){ super(); /** * Whether to enable Smart compression `on`: Enable `off`: Disable * @type {string || null} */ this.Switch = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Switch = 'Switch' in params ? params.Switch : null; } } /** * Web attack log data * @class */ class WebLogData extends AbstractModel { constructor(){ super(); /** * Data Note: This field may return null, indicating that no valid values can be obtained. * @type {Array.<WebLogs> || null} */ this.List = null; /** * Current page Note: This field may return null, indicating that no valid values can be obtained. * @type {number || null} */ this.PageNo = null; /** * Number of items per page Note: This field may return null, indicating that no valid values can be obtained. * @type {number || null} */ this.PageSize = null; /** * Total number of pages Note: This field may return null, indicating that no valid values can be obtained. * @type {number || null} */ this.Pages = null; /** * Total number of items Note: This field may return null, indicating that no valid values can be obtained. * @type {number || null} */ this.TotalSize = null; } /** * @private */ deserialize(params) { if (!params) { return; } if (params.List) { this.List = new Array(); for (let z in params.List) { let obj = new WebLogs(); obj.deserialize(params.List[z]); this.List.push(obj); } } this.PageNo = 'PageNo' in params ? params.PageNo : null; this.PageSize = 'PageSize' in params ? params.PageSize : null; this.Pages = 'Pages' in params ? params.Pages : null; this.TotalSize = 'TotalSize' in params ? params.TotalSize : null; } } /** * Certificate configurations for domain names * @class */ class HostCertSetting extends AbstractModel { constructor(){ super(); /** * Domain name Note: This field may return `null`, indicating that no valid value can be obtained. * @type {string || null} */ this.Host = null; /** * Server certificate configuration Note: This field may return `null`, indicating that no valid value can be obtained. * @type {Array.<ServerCertInfo> || null} */ this.CertInfo = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Host = 'Host' in params ? params.Host : null; if (params.CertInfo) { this.CertInfo = new Array(); for (let z in params.CertInfo) { let obj = new ServerCertInfo(); obj.deserialize(params.CertInfo[z]); this.CertInfo.push(obj); } } } } /** * Custom ACL rule * @class */ class ACLUserRule extends AbstractModel { constructor(){ super(); /** * Name of the rule * @type {string || null} */ this.RuleName = null; /** * Action * @type {string || null} */ this.Action = null; /** * Status of the rule * @type {string || null} */ this.RuleStatus = null; /** * ACL rule * @type {Array.<ACLCondition> || null} */ this.Conditions = null; /** * Priority of the rule * @type {number || null} */ this.RulePriority = null; /** * ID of the rule Note: This field may return `null`, indicating that no valid value can be obtained. * @type {number || null} */ this.RuleID = null; /** * Update time Note: This field may return `null`, indicating that no valid value can be obtained. * @type {string || null} */ this.UpdateTime = null; /** * IP blocking time Note: This field may return `null`, indicating that no valid value can be obtained. * @type {number || null} */ this.PunishTime = null; /** * IP blocking time unit Note: This field may return `null`, indicating that no valid value can be obtained. * @type {string || null} */ this.PunishTimeUnit = null; /** * Name of the custom block page Note: This field may return `null`, indicating that no valid value can be obtained. * @type {string || null} */ this.Name = null; /** * ID of the custom block page Note: This field may return `null`, indicating that no valid value can be obtained. * @type {number || null} */ this.PageId = null; /** * Redirection URL, which must be a subdomain name of the site Note: This field may return `null`, indicating that no valid value can be obtained. * @type {string || null} */ this.RedirectUrl = null; /** * Return code configured on the custom block page Note: This field may return `null`, indicating that no valid value can be obtained. * @type {number || null} */ this.ResponseCode = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.RuleName = 'RuleName' in params ? params.RuleName : null; this.Action = 'Action' in params ? params.Action : null; this.RuleStatus = 'RuleStatus' in params ? params.RuleStatus : null; if (params.Conditions) { this.Conditions = new Array(); for (let z in params.Conditions) { let obj = new ACLCondition(); obj.deserialize(params.Conditions[z]); this.Conditions.push(obj); } } this.RulePriority = 'RulePriority' in params ? params.RulePriority : null; this.RuleID = 'RuleID' in params ? params.RuleID : null; this.UpdateTime = 'UpdateTime' in params ? params.UpdateTime : null; this.PunishTime = 'PunishTime' in params ? params.PunishTime : null; this.PunishTimeUnit = 'PunishTimeUnit' in params ? params.PunishTimeUnit : null; this.Name = 'Name' in params ? params.Name : null; this.PageId = 'PageId' in params ? params.PageId : null; this.RedirectUrl = 'RedirectUrl' in params ? params.RedirectUrl : null; this.ResponseCode = 'ResponseCode' in params ? params.ResponseCode : null; } } /** * ModifyDefaultCertificate request structure. * @class */ class ModifyDefaultCertificateRequest extends AbstractModel { constructor(){ super(); /** * ID of the site * @type {string || null} */ this.ZoneId = null; /** * Certificate ID * @type {string || null} */ this.CertId = null; /** * Certificate status `deployed`: The certificate is deployed. `disabled`: The certificate is disabled. If the deployment fails, you can pass in `Status = deployed` again. * @type {string || null} */ this.Status = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.ZoneId = 'ZoneId' in params ? params.ZoneId : null; this.CertId = 'CertId' in params ? params.CertId : null; this.Status = 'Status' in params ? params.Status : null; } } /** * DescribeWebManagedRulesTopData response structure. * @class */ class DescribeWebManagedRulesTopDataResponse extends AbstractModel { constructor(){ super(); /** * Top N data * @type {Array.<TopNEntry> || null} */ this.Data = null; /** * Status. 1: failed; 0: succeeded * @type {number || null} */ this.Status = null; /** * Returned message * @type {string || null} */ this.Msg = 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.Data) { this.Data = new Array(); for (let z in params.Data) { let obj = new TopNEntry(); obj.deserialize(params.Data[z]); this.Data.push(obj); } } this.Status = 'Status' in params ? params.Status : null; this.Msg = 'Msg' in params ? params.Msg : null; this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * DescribeOriginGroup response structure. * @class */ class DescribeOriginGroupResponse extends AbstractModel { constructor(){ super(); /** * Origin group information * @type {Array.<OriginGroup> || null} */ this.Data = null; /** * Total number of records * @type {number || null} */ this.TotalCount = 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.Data) { this.Data = new Array(); for (let z in params.Data) { let obj = new OriginGroup(); obj.deserialize(params.Data[z]); this.Data.push(obj); } } this.TotalCount = 'TotalCount' in params ? params.TotalCount : null; this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * DescribeWebManagedRulesAttackEvents response structure. * @class */ class DescribeWebManagedRulesAttackEventsResponse extends AbstractModel { constructor(){ super(); /** * Web attack event data * @type {WebEventData || null} */ this.Data = null; /** * Status. 1: failed; 0: succeeded * @type {number || null} */ this.Status = null; /** * Returned data * @type {string || null} */ this.Msg = 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.Data) { let obj = new WebEventData(); obj.deserialize(params.Data) this.Data = obj; } this.Status = 'Status' in params ? params.Status : null; this.Msg = 'Msg' in params ? params.Msg : null; this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * DescribeTopL7CacheData request structure. * @class */ class DescribeTopL7CacheDataRequest extends AbstractModel { constructor(){ super(); /** * Start time of the query (client time in RFC 3339) * @type {string || null} */ this.StartTime = null; /** * End time of the query (client time in RFC 3339) * @type {string || null} */ this.EndTime = null; /** * Metric for time-series data query * @type {string || null} */ this.MetricName = null; /** * Specifies the number of data records to return. If `0` is passed in, all data is returned. * @type {number || null} */ this.Limit = null; /** * Time interval. Values: {min, 5min, hour, day, week}. This field is optional. * @type {string || null} */ this.Interval = null; /** * Array of site IDs * @type {Array.<string> || null} */ this.ZoneIds = null; /** * Filter condition * @type {Array.<Filter> || null} */ this.Filters = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.StartTime = 'StartTime' in params ? params.StartTime : null; this.EndTime = 'EndTime' in params ? params.EndTime : null; this.MetricName = 'MetricName' in params ? params.MetricName : null; this.Limit = 'Limit' in params ? params.Limit : null; this.Interval = 'Interval' in params ? params.Interval : null; this.ZoneIds = 'ZoneIds' in params ? params.ZoneIds : null; 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); } } } } /** * DeleteApplicationProxy response structure. * @class */ class DeleteApplicationProxyResponse extends AbstractModel { constructor(){ super(); /** * Proxy ID * @type {string || null} */ this.ProxyId = 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.ProxyId = 'ProxyId' in params ? params.ProxyId : null; this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * Domain name HTTPS acceleration configuration. This is disabled by default. * @class */ class Https extends AbstractModel { constructor(){ super(); /** * HTTP2 configuration switch `on`: Enable `off`: Disable Note: This field may return `null`, indicating that no valid value can be obtained. * @type {string || null} */ this.Http2 = null; /** * OCSP configuration switch `on`: Enable `off`: Disable It is disabled by default. Note: This field may return `null`, indicating that no valid value can be obtained. * @type {string || null} */ this.OcspStapling = null; /** * TLS version settings. Valid values: `TLSv1`, `TLSV1.1`, `TLSV1.2`, and `TLSv1.3`. Only consecutive versions can be enabled at the same time. Note: This field may return `null`, indicating that no valid value can be obtained. * @type {Array.<string> || null} */ this.TlsVersion = null; /** * HSTS Configuration Note: This field may return `null`, indicating that no valid value can be obtained. * @type {Hsts || null} */ this.Hsts = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Http2 = 'Http2' in params ? params.Http2 : null; this.OcspStapling = 'OcspStapling' in params ? params.OcspStapling : null; this.TlsVersion = 'TlsVersion' in params ? params.TlsVersion : null; if (params.Hsts) { let obj = new Hsts(); obj.deserialize(params.Hsts) this.Hsts = obj; } } } /** * Protected resource * @class */ class SecurityEntity extends AbstractModel { constructor(){ super(); /** * User APPID * @type {number || null} */ this.AppId = null; /** * Top-level domain name * @type {string || null} */ this.ZoneId = null; /** * Second-level domain name * @type {string || null} */ this.Entity = null; /** * Type of protected resource. Values: `domain` and `application`. * @type {string || null} */ this.EntityType = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.AppId = 'AppId' in params ? params.AppId : null; this.ZoneId = 'ZoneId' in params ? params.ZoneId : null; this.Entity = 'Entity' in params ? params.Entity : null; this.EntityType = 'EntityType' in params ? params.EntityType : null; } } /** * The filter parameter to query origin groups * @class */ class OriginFilter extends AbstractModel { constructor(){ super(); /** * Field to be filtered. Supported field: name * @type {string || null} */ this.Name = null; /** * Value of the field * @type {string || null} */ this.Value = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Name = 'Name' in params ? params.Name : null; this.Value = 'Value' in params ? params.Value : null; } } /** * Block log in rate-limiting policy * @class */ class BotLogData extends AbstractModel { constructor(){ super(); /** * Data set of bot attack logs Note: This field may return null, indicating that no valid values can be obtained. * @type {Array.<BotLog> || null} */ this.List = null; /** * Current page Note: This field may return null, indicating that no valid values can be obtained. * @type {number || null} */ this.PageNo = null; /** * Number of items per page Note: This field may return null, indicating that no valid values can be obtained. * @type {number || null} */ this.PageSize = null; /** * Total number of pages Note: This field may return null, indicating that no valid values can be obtained. * @type {number || null} */ this.Pages = null; /** * Total number of items Note: This field may return null, indicating that no valid values can be obtained. * @type {number || null} */ this.TotalSize = null; } /** * @private */ deserialize(params) { if (!params) { return; } if (params.List) { this.List = new Array(); for (let z in params.List) { let obj = new BotLog(); obj.deserialize(params.List[z]); this.List.push(obj); } } this.PageNo = 'PageNo' in params ? params.PageNo : null; this.PageSize = 'PageSize' in params ? params.PageSize : null; this.Pages = 'Pages' in params ? params.Pages : null; this.TotalSize = 'TotalSize' in params ? params.TotalSize : null; } } /** * DescribeZones request structure. * @class */ class DescribeZonesRequest extends AbstractModel { constructor(){ super(); /** * Pagination parameter, which specifies the offset. * @type {number || null} */ this.Offset = null; /** * Pagination parameter, which specifies the number of sites returned in each page. * @type {number || null} */ this.Limit = null; /** * Query condition filter, which supports complex type. * @type {Array.<ZoneFilter> || null} */ this.Filters = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Offset = 'Offset' in params ? params.Offset : null; this.Limit = 'Limit' in params ? params.Limit : null; if (params.Filters) { this.Filters = new Array(); for (let z in params.Filters) { let obj = new ZoneFilter(); obj.deserialize(params.Filters[z]); this.Filters.push(obj); } } } } /** * Rate limit template * @class */ class RateLimitTemplate extends AbstractModel { constructor(){ super(); /** * Template name Note: This field may return `null`, indicating that no valid value can be obtained. * @type {string || null} */ this.Mode = null; /** * Template details Note: This field may return `null`, indicating that no valid value can be obtained. * @type {RateLimitTemplateDetail || null} */ this.Detail = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Mode = 'Mode' in params ? params.Mode : null; if (params.Detail) { let obj = new RateLimitTemplateDetail(); obj.deserialize(params.Detail) this.Detail = obj; } } } /** * DDoS mitigation configuration * @class */ class ShieldArea extends AbstractModel { constructor(){ super(); /** * ID of the site (top-level domain name) * @type {string || null} */ this.ZoneId = null; /** * Policy ID * @type {number || null} */ this.PolicyId = null; /** * Type of protected resource. Values: `domain` and `application`. * @type {string || null} */ this.Type = null; /** * Layer-4 proxy name Note: This field may return `null`, indicating that no valid value can be obtained. * @type {string || null} */ this.EntityName = null; /** * Layer-7 domain name parameters Note: This field may return `null`, indicating that no valid value can be obtained. * @type {Array.<DDoSApplication> || null} */ this.Application = null; /** * Number of layer-4 TCP forwarding rules Note: This field may return `null`, indicating that no valid value can be obtained. * @type {number || null} */ this.TcpNum = null; /** * Number of layer-4 UDP forwarding rules Note: This field may return `null`, indicating that no valid value can be obtained. * @type {number || null} */ this.UdpNum = null; /** * Name of the protected resource Note: This field may return `null`, indicating that no valid value can be obtained. * @type {string || null} */ this.Entity = null; /** * Whether the shared resource is used. Values: `true` (yes) and `false` (no). The proxy mode cannot be switched when the shared resource is used. Note: This field may return `null`, indicating that no valid value can be obtained. * @type {boolean || null} */ this.Share = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.ZoneId = 'ZoneId' in params ? params.ZoneId : null; this.PolicyId = 'PolicyId' in params ? params.PolicyId : null; this.Type = 'Type' in params ? params.Type : null; this.EntityName = 'EntityName' in params ? params.EntityName : null; if (params.Application) { this.Application = new Array(); for (let z in params.Application) { let obj = new DDoSApplication(); obj.deserialize(params.Application[z]); this.Application.push(obj); } } this.TcpNum = 'TcpNum' in params ? params.TcpNum : null; this.UdpNum = 'UdpNum' in params ? params.UdpNum : null; this.Entity = 'Entity' in params ? params.Entity : null; this.Share = 'Share' in params ? params.Share : null; } } /** * DDoS mitigation configuration * @class */ class DdosRule extends AbstractModel { constructor(){ super(); /** * DDoS mitigation level Note: This field may return `null`, indicating that no valid value can be obtained. * @type {DDoSStatusInfo || null} */ this.DdosStatusInfo = null; /** * DDoS regional blocking Note: This field may return `null`, indicating that no valid value can be obtained. * @type {DDoSGeoIp || null} */ this.DdosGeoIp = null; /** * DDoS blocklist/allowlist Note: This field may return `null`, indicating that no valid value can be obtained. * @type {DdosAllowBlock || null} */ this.DdosAllowBlock = null; /** * Protocol blocking and null session protection Note: This field may return `null`, indicating that no valid value can be obtained. * @type {DDoSAntiPly || null} */ this.DdosAntiPly = null; /** * DDoS feature filtering Note: This field may return `null`, indicating that no valid value can be obtained. * @type {DdosPacketFilter || null} */ this.DdosPacketFilter = null; /** * DDoS port filtering Note: This field may return `null`, indicating that no valid value can be obtained. * @type {DdosAcls || null} */ this.DdosAcl = null; /** * DDoS mitigation switch. `on`: Enable; `off`: Disable. Note: This field may return `null`, indicating that no valid value can be obtained. * @type {string || null} */ this.Switch = null; /** * Whether to enable UDP fragmentation. `on`: Enable; `off`: Disable. Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.UdpShardOpen = null; } /** * @private */ deserialize(params) { if (!params) { return; } if (params.DdosStatusInfo) { let obj = new DDoSStatusInfo(); obj.deserialize(params.DdosStatusInfo) this.DdosStatusInfo = obj; } if (params.DdosGeoIp) { let obj = new DDoSGeoIp(); obj.deserialize(params.DdosGeoIp) this.DdosGeoIp = obj; } if (params.DdosAllowBlock) { let obj = new DdosAllowBlock(); obj.deserialize(params.DdosAllowBlock) this.DdosAllowBlock = obj; } if (params.DdosAntiPly) { let obj = new DDoSAntiPly(); obj.deserialize(params.DdosAntiPly) this.DdosAntiPly = obj; } if (params.DdosPacketFilter) { let obj = new DdosPacketFilter(); obj.deserialize(params.DdosPacketFilter) this.DdosPacketFilter = obj; } if (params.DdosAcl) { let obj = new DdosAcls(); obj.deserialize(params.DdosAcl) this.DdosAcl = obj; } this.Switch = 'Switch' in params ? params.Switch : null; this.UdpShardOpen = 'UdpShardOpen' in params ? params.UdpShardOpen : null; } } /** * ModifyLoadBalancingStatus response structure. * @class */ class ModifyLoadBalancingStatusResponse extends AbstractModel { constructor(){ super(); /** * CLB instance ID * @type {string || null} */ this.LoadBalancingId = 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.LoadBalancingId = 'LoadBalancingId' in params ? params.LoadBalancingId : null; this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * DescribePrefetchTasks response structure. * @class */ class DescribePrefetchTasksResponse extends AbstractModel { constructor(){ super(); /** * Total entries that match the specified query condition * @type {number || null} */ this.TotalCount = null; /** * List of tasks returned * @type {Array.<Task> || null} */ this.Tasks = 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.Tasks) { this.Tasks = new Array(); for (let z in params.Tasks) { let obj = new Task(); obj.deserialize(params.Tasks[z]); this.Tasks.push(obj); } } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * DescribeDDosAttackEvent response structure. * @class */ class DescribeDDosAttackEventResponse extends AbstractModel { constructor(){ super(); /** * DDoS attack event data * @type {DDosAttackEventData || null} */ this.Data = null; /** * Status. 1: failed; 0: succeeded * @type {number || null} */ this.Status = null; /** * Returned message * @type {string || null} */ this.Msg = 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.Data) { let obj = new DDosAttackEventData(); obj.deserialize(params.Data) this.Data = obj; } this.Status = 'Status' in params ? params.Status : null; this.Msg = 'Msg' in params ? params.Msg : null; this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * DeleteApplicationProxy request structure. * @class */ class DeleteApplicationProxyRequest extends AbstractModel { constructor(){ super(); /** * Site ID * @type {string || null} */ this.ZoneId = null; /** * Proxy ID * @type {string || null} */ this.ProxyId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.ZoneId = 'ZoneId' in params ? params.ZoneId : null; this.ProxyId = 'ProxyId' in params ? params.ProxyId : null; } } /** * CreateCustomErrorPage response structure. * @class */ class CreateCustomErrorPageResponse extends AbstractModel { constructor(){ super(); /** * ID of the custom page * @type {number || null} */ this.PageId = 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.PageId = 'PageId' in params ? params.PageId : null; this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * ReclaimZone response structure. * @class */ class ReclaimZoneResponse extends AbstractModel { constructor(){ super(); /** * Site name * @type {string || null} */ this.Name = 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.Name = 'Name' in params ? params.Name : null; this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * DescribeZoneSetting request structure. * @class */ class DescribeZoneSettingRequest extends AbstractModel { constructor(){ super(); /** * Site ID * @type {string || null} */ this.ZoneId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.ZoneId = 'ZoneId' in params ? params.ZoneId : null; } } /** * ModifyZoneStatus request structure. * @class */ class ModifyZoneStatusRequest extends AbstractModel { constructor(){ super(); /** * Site ID * @type {string || null} */ this.Id = null; /** * Site status. - `false`: Enable the site. - `true`: Disable the site. * @type {boolean || null} */ this.Paused = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Id = 'Id' in params ? params.Id : null; this.Paused = 'Paused' in params ? params.Paused : null; } } /** * ModifyDnsRecord request structure. * @class */ class ModifyDnsRecordRequest extends AbstractModel { constructor(){ super(); /** * Record ID * @type {string || null} */ this.Id = null; /** * Site ID * @type {string || null} */ this.ZoneId = null; /** * Record type * @type {string || null} */ this.Type = null; /** * Record name * @type {string || null} */ this.Name = null; /** * Record content * @type {string || null} */ this.Content = null; /** * * @type {number || null} */ this.Ttl = null; /** * Priority * @type {number || null} */ this.Priority = null; /** * Proxy mode * @type {string || null} */ this.Mode = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Id = 'Id' in params ? params.Id : null; this.ZoneId = 'ZoneId' in params ? params.ZoneId : null; this.Type = 'Type' in params ? params.Type : null; this.Name = 'Name' in params ? params.Name : null; this.Content = 'Content' in params ? params.Content : null; this.Ttl = 'Ttl' in params ? params.Ttl : null; this.Priority = 'Priority' in params ? params.Priority : null; this.Mode = 'Mode' in params ? params.Mode : null; } } /** * DDoS port filtering configuration * @class */ class DDoSAcl extends AbstractModel { constructor(){ super(); /** * Destination port used as the end port * @type {number || null} */ this.DportEnd = null; /** * Destination port used as the start port * @type {number || null} */ this.DportStart = null; /** * Source port used as the end port * @type {number || null} */ this.SportEnd = null; /** * Source port used as the start port * @type {number || null} */ this.SportStart = null; /** * Protocol. Values: `tcp`, `udp`, and `all`. * @type {string || null} */ this.Protocol = null; /** * Action. Values: `drop` (Drop the request); `transmit` (Allow the request); `forward` (Continue to offer protection). * @type {string || null} */ this.Action = null; /** * Whether it is a system configuration. Values: `0` (manual configuration); `1` (system configuration). * @type {number || null} */ this.Default = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.DportEnd = 'DportEnd' in params ? params.DportEnd : null; this.DportStart = 'DportStart' in params ? params.DportStart : null; this.SportEnd = 'SportEnd' in params ? params.SportEnd : null; this.SportStart = 'SportStart' in params ? params.SportStart : null; this.Protocol = 'Protocol' in params ? params.Protocol : null; this.Action = 'Action' in params ? params.Action : null; this.Default = 'Default' in params ? params.Default : null; } } /** * ModifySecurityPolicy request structure. * @class */ class ModifySecurityPolicyRequest extends AbstractModel { constructor(){ super(); /** * Top-level domain name * @type {string || null} */ this.ZoneId = null; /** * Subdomain name/layer-4 proxy * @type {string || null} */ this.Entity = null; /** * Security configuration * @type {SecurityConfig || null} */ this.Config = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.ZoneId = 'ZoneId' in params ? params.ZoneId : null; this.Entity = 'Entity' in params ? params.Entity : null; if (params.Config) { let obj = new SecurityConfig(); obj.deserialize(params.Config) this.Config = obj; } } } /** * CreateApplicationProxyRules request structure. * @class */ class CreateApplicationProxyRulesRequest extends AbstractModel { constructor(){ super(); /** * Site ID * @type {string || null} */ this.ZoneId = null; /** * Proxy ID * @type {string || null} */ this.ProxyId = null; /** * Rule list * @type {Array.<ApplicationProxyRule> || null} */ this.Rule = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.ZoneId = 'ZoneId' in params ? params.ZoneId : null; this.ProxyId = 'ProxyId' in params ? params.ProxyId : null; if (params.Rule) { this.Rule = new Array(); for (let z in params.Rule) { let obj = new ApplicationProxyRule(); obj.deserialize(params.Rule[z]); this.Rule.push(obj); } } } } /** * CLB information * @class */ class LoadBalancing extends AbstractModel { constructor(){ super(); /** * CLB instance ID * @type {string || null} */ this.LoadBalancingId = null; /** * Site ID * @type {string || null} */ this.ZoneId = null; /** * Subdomain name. You can use @ to represent the root domain. * @type {string || null} */ this.Host = null; /** * Proxy mode. Valid values: `dns_only`: Only DNS `proxied`: Enable proxy * @type {string || null} */ this.Type = null; /** * Indicates DNS TTL time when `Type=dns_only` * @type {number || null} */ this.TTL = null; /** * ID of the origin group used * @type {Array.<string> || null} */ this.OriginId = null; /** * Information of the origin server used * @type {Array.<OriginGroup> || null} */ this.Origin = null; /** * Update time * @type {string || null} */ this.UpdateTime = null; /** * Status * @type {string || null} */ this.Status = null; /** * Schedules domain names Note: This field may return `null`, indicating that no valid value can be obtained. * @type {string || null} */ this.Cname = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.LoadBalancingId = 'LoadBalancingId' in params ? params.LoadBalancingId : null; this.ZoneId = 'ZoneId' in params ? params.ZoneId : null; this.Host = 'Host' in params ? params.Host : null; this.Type = 'Type' in params ? params.Type : null; this.TTL = 'TTL' in params ? params.TTL : null; this.OriginId = 'OriginId' in params ? params.OriginId : null; if (params.Origin) { this.Origin = new Array(); for (let z in params.Origin) { let obj = new OriginGroup(); obj.deserialize(params.Origin[z]); this.Origin.push(obj); } } this.UpdateTime = 'UpdateTime' in params ? params.UpdateTime : null; this.Status = 'Status' in params ? params.Status : null; this.Cname = 'Cname' in params ? params.Cname : null; } } /** * ModifyDnssec request structure. * @class */ class ModifyDnssecRequest extends AbstractModel { constructor(){ super(); /** * Site ID * @type {string || null} */ this.Id = null; /** * DNSSEC status - `enabled`: Enabled - `disabled`: Disabled * @type {string || null} */ this.Status = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Id = 'Id' in params ? params.Id : null; this.Status = 'Status' in params ? params.Status : null; } } /** * ModifyZoneSetting request structure. * @class */ class ModifyZoneSettingRequest extends AbstractModel { constructor(){ super(); /** * ID of the site to be modified * @type {string || null} */ this.ZoneId = null; /** * Cache expiration time * @type {CacheConfig || null} */ this.Cache = null; /** * Node cache key * @type {CacheKey || null} */ this.CacheKey = null; /** * Browser cache configuration * @type {MaxAge || null} */ this.MaxAge = null; /** * Offline cache * @type {OfflineCache || null} */ this.OfflineCache = null; /** * QUIC access * @type {Quic || null} */ this.Quic = null; /** * Maximum size of files transferred over POST request * @type {PostMaxSize || null} */ this.PostMaxSize = null; /** * Smart compression configuration * @type {Compression || null} */ this.Compression = null; /** * HTTP2 origin-pull configuration * @type {UpstreamHttp2 || null} */ this.UpstreamHttp2 = null; /** * Force HTTPS redirect configuration * @type {ForceRedirect || null} */ this.ForceRedirect = null; /** * HTTPS acceleration configuration * @type {Https || null} */ this.Https = null; /** * Origin server configuration * @type {Origin || null} */ this.Origin = null; /** * Smart acceleration configuration * @type {SmartRouting || null} */ this.SmartRouting = null; /** * WebSocket configuration * @type {WebSocket || null} */ this.WebSocket = null; /** * Origin-pull client IP header configuration * @type {ClientIp || null} */ this.ClientIpHeader = null; /** * Cache prefresh configuration * @type {CachePrefresh || null} */ this.CachePrefresh = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.ZoneId = 'ZoneId' in params ? params.ZoneId : null; if (params.Cache) { let obj = new CacheConfig(); obj.deserialize(params.Cache) this.Cache = obj; } if (params.CacheKey) { let obj = new CacheKey(); obj.deserialize(params.CacheKey) this.CacheKey = obj; } if (params.MaxAge) { let obj = new MaxAge(); obj.deserialize(params.MaxAge) this.MaxAge = obj; } if (params.OfflineCache) { let obj = new OfflineCache(); obj.deserialize(params.OfflineCache) this.OfflineCache = obj; } if (params.Quic) { let obj = new Quic(); obj.deserialize(params.Quic) this.Quic = obj; } if (params.PostMaxSize) { let obj = new PostMaxSize(); obj.deserialize(params.PostMaxSize) this.PostMaxSize = obj; } if (params.Compression) { let obj = new Compression(); obj.deserialize(params.Compression) this.Compression = obj; } if (params.UpstreamHttp2) { let obj = new UpstreamHttp2(); obj.deserialize(params.UpstreamHttp2) this.UpstreamHttp2 = obj; } if (params.ForceRedirect) { let obj = new ForceRedirect(); obj.deserialize(params.ForceRedirect) this.ForceRedirect = obj; } if (params.Https) { let obj = new Https(); obj.deserialize(params.Https) this.Https = obj; } if (params.Origin) { let obj = new Origin(); obj.deserialize(params.Origin) this.Origin = obj; } if (params.SmartRouting) { let obj = new SmartRouting(); obj.deserialize(params.SmartRouting) this.SmartRouting = obj; } if (params.WebSocket) { let obj = new WebSocket(); obj.deserialize(params.WebSocket) this.WebSocket = obj; } if (params.ClientIpHeader) { let obj = new ClientIp(); obj.deserialize(params.ClientIpHeader) this.ClientIpHeader = obj; } if (params.CachePrefresh) { let obj = new CachePrefresh(); obj.deserialize(params.CachePrefresh) this.CachePrefresh = obj; } } } /** * DDoS feature filtering * @class */ class DdosPacketFilter extends AbstractModel { constructor(){ super(); /** * Whether to remove all settings when empty strings are passed in. Default value: `off` (remove) * @type {string || null} */ this.Switch = null; /** * Array of objects in feature filtering configuration * @type {Array.<DDoSFeaturesFilter> || null} */ this.PacketFilter = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Switch = 'Switch' in params ? params.Switch : null; if (params.PacketFilter) { this.PacketFilter = new Array(); for (let z in params.PacketFilter) { let obj = new DDoSFeaturesFilter(); obj.deserialize(params.PacketFilter[z]); this.PacketFilter.push(obj); } } } } /** * CreateApplicationProxy response structure. * @class */ class CreateApplicationProxyResponse extends AbstractModel { constructor(){ super(); /** * Layer-4 application proxy ID * @type {string || null} */ this.ProxyId = null; /** * The unique request ID, which