tencentcloud-sdk-nodejs-intl-en
Version:
9,465 lines • 246 kB
JavaScript
/*
* 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");
/**
* DescribeInstancesTrafficPackages request structure.
* @class
*/
class DescribeInstancesTrafficPackagesRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID list. Each request can contain up to 100 instances at a time. You can get an instance ID from the `InstanceId` returned by the [DescribeInstances](https://intl.cloud.tencent.com/document/api/1207/47573?from_cn_redirect=1) API.
* @type {Array.<string> || null}
*/
this.InstanceIds = 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;
}
this.InstanceIds = 'InstanceIds' in params ? params.InstanceIds : null;
this.Offset = 'Offset' in params ? params.Offset : null;
this.Limit = 'Limit' in params ? params.Limit : null;
}
}
/**
* AssociateInstancesKeyPairs response structure.
* @class
*/
class AssociateInstancesKeyPairsResponse 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;
}
}
/**
* RenewInstances request structure.
* @class
*/
class RenewInstancesRequest extends AbstractModel {
constructor(){
super();
/**
* IDs of one or more instances to be operated. The value can be obtained from the `InstanceId` parameter returned by the [DescribeInstances](https://intl.cloud.tencent.com/document/api/1207/47573?from_cn_redirect=1) API. Up to 100 instances can be requested at a time.
* @type {Array.<string> || null}
*/
this.InstanceIds = null;
/**
* Prepaid mode, i.e., monthly subscription. This parameter can specify the purchase period and other attributes such as auto-renewal. It is required for prepaid instances.
* @type {InstanceChargePrepaid || null}
*/
this.InstanceChargePrepaid = null;
/**
* Whether to renew elastic data disks. Values:
`TRUE`: Renew the elastic data disks attached to the instance as well when the related instance is renewed.
`FALSE`: Do not renew the elastic data disks attached to the instance as well when the related instance is renewed.
Default: `TRUE`
* @type {boolean || null}
*/
this.RenewDataDisk = null;
/**
* Whether to automatically use vouchers. Values:
`TRUE`: Use vouchers for payment automatically.
`FALSE`: Do not use vouchers for payment automatically.
Default: `FALSE`.
* @type {boolean || null}
*/
this.AutoVoucher = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceIds = 'InstanceIds' in params ? params.InstanceIds : null;
if (params.InstanceChargePrepaid) {
let obj = new InstanceChargePrepaid();
obj.deserialize(params.InstanceChargePrepaid)
this.InstanceChargePrepaid = obj;
}
this.RenewDataDisk = 'RenewDataDisk' in params ? params.RenewDataDisk : null;
this.AutoVoucher = 'AutoVoucher' in params ? params.AutoVoucher : null;
}
}
/**
* DescribeDisksDeniedActions request structure.
* @class
*/
class DescribeDisksDeniedActionsRequest extends AbstractModel {
constructor(){
super();
/**
* List of cloud disk IDs.
* @type {Array.<string> || null}
*/
this.DiskIds = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.DiskIds = 'DiskIds' in params ? params.DiskIds : null;
}
}
/**
* InquirePriceCreateBlueprint request structure.
* @class
*/
class InquirePriceCreateBlueprintRequest extends AbstractModel {
constructor(){
super();
/**
* Number of custom images. Default value: 1.
* @type {number || null}
*/
this.BlueprintCount = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.BlueprintCount = 'BlueprintCount' in params ? params.BlueprintCount : null;
}
}
/**
* DescribeInstancesTrafficPackages response structure.
* @class
*/
class DescribeInstancesTrafficPackagesResponse extends AbstractModel {
constructor(){
super();
/**
* Number of eligible instance traffic package details.
* @type {number || null}
*/
this.TotalCount = null;
/**
* List of instance traffic package details.
* @type {Array.<InstanceTrafficPackage> || null}
*/
this.InstanceTrafficPackageSet = 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.InstanceTrafficPackageSet) {
this.InstanceTrafficPackageSet = new Array();
for (let z in params.InstanceTrafficPackageSet) {
let obj = new InstanceTrafficPackage();
obj.deserialize(params.InstanceTrafficPackageSet[z]);
this.InstanceTrafficPackageSet.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DescribeInstancesDeniedActions request structure.
* @class
*/
class DescribeInstancesDeniedActionsRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID list. Each request can contain up to 100 instances at a time. You can get an instance ID from the `InstanceId` returned by the [DescribeInstances](https://intl.cloud.tencent.com/document/api/1207/47573?from_cn_redirect=1) API.
* @type {Array.<string> || null}
*/
this.InstanceIds = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceIds = 'InstanceIds' in params ? params.InstanceIds : null;
}
}
/**
* DeleteKeyPairs response structure.
* @class
*/
class DeleteKeyPairsResponse 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;
}
}
/**
* AttachCcn request structure.
* @class
*/
class AttachCcnRequest extends AbstractModel {
constructor(){
super();
/**
* CCN instance ID.
* @type {string || null}
*/
this.CcnId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.CcnId = 'CcnId' in params ? params.CcnId : null;
}
}
/**
* CreateInstances request structure.
* @class
*/
class CreateInstancesRequest extends AbstractModel {
constructor(){
super();
/**
* Bundle ID. You can get it via the [DescribeBundles](https://intl.cloud.tencent.com/document/api/1207/47575?from_cn_redirect=1) API.
* @type {string || null}
*/
this.BundleId = null;
/**
* Image ID. You can get it via the [DescribeBlueprints](https://intl.cloud.tencent.com/document/api/1207/47689?from_cn_redirect=1) API.
* @type {string || null}
*/
this.BlueprintId = null;
/**
* Monthly subscription information for the instance, including the purchase period, setting of auto-renewal, etc.
* @type {InstanceChargePrepaid || null}
*/
this.InstanceChargePrepaid = null;
/**
* Instance display name.
* @type {string || null}
*/
this.InstanceName = null;
/**
* Number of the instances to purchase. For monthly subscribed instances, the value can be 1 to 30. The default value is `1`. Note that this number can not exceed the remaining quota under the current account.
* @type {number || null}
*/
this.InstanceCount = null;
/**
* List of availability zones. A random AZ is selected by default.
* @type {Array.<string> || null}
*/
this.Zones = null;
/**
* Whether the request is a dry run only.
`true`: dry run only. The request will not create instance(s). A dry run can check whether all the required parameters are specified, whether the request format is right, whether the request exceeds service limits, and whether the specified CVMs are available.
If the dry run fails, the corresponding error code will be returned.
If the dry run succeeds, the RequestId will be returned.
`false` (default value): send a normal request and create instance(s) if all the requirements are met.
* @type {boolean || null}
*/
this.DryRun = null;
/**
* A unique string supplied by the client to ensure that the request is idempotent. Its maximum length is 64 ASCII characters. If this parameter is not specified, the idem-potency of the request cannot be guaranteed.
* @type {string || null}
*/
this.ClientToken = null;
/**
* Login password of the instance. It’s only available for Windows instances. If it’s not specified, it means that the user choose to set the login password after the instance creation.
* @type {LoginConfiguration || null}
*/
this.LoginConfiguration = null;
/**
* Configuration of the containers to create
* @type {Array.<DockerContainerConfiguration> || null}
*/
this.Containers = null;
/**
* Whether to use the vouchers automatically. It defaults to No.
* @type {boolean || null}
*/
this.AutoVoucher = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.BundleId = 'BundleId' in params ? params.BundleId : null;
this.BlueprintId = 'BlueprintId' in params ? params.BlueprintId : null;
if (params.InstanceChargePrepaid) {
let obj = new InstanceChargePrepaid();
obj.deserialize(params.InstanceChargePrepaid)
this.InstanceChargePrepaid = obj;
}
this.InstanceName = 'InstanceName' in params ? params.InstanceName : null;
this.InstanceCount = 'InstanceCount' in params ? params.InstanceCount : null;
this.Zones = 'Zones' in params ? params.Zones : null;
this.DryRun = 'DryRun' in params ? params.DryRun : null;
this.ClientToken = 'ClientToken' in params ? params.ClientToken : null;
if (params.LoginConfiguration) {
let obj = new LoginConfiguration();
obj.deserialize(params.LoginConfiguration)
this.LoginConfiguration = obj;
}
if (params.Containers) {
this.Containers = new Array();
for (let z in params.Containers) {
let obj = new DockerContainerConfiguration();
obj.deserialize(params.Containers[z]);
this.Containers.push(obj);
}
}
this.AutoVoucher = 'AutoVoucher' in params ? params.AutoVoucher : null;
}
}
/**
* DescribeZones request structure.
* @class
*/
class DescribeZonesRequest extends AbstractModel {
constructor(){
super();
/**
* Sorting field. Valid values:
<li>`ZONE`: Sort by the availability zone.
<li>`INSTANCE_DISPLAY_LABEL`: Sort by visibility labels (`HIDDEN`, `NORMAL` and `SELECTED`). Default: ['HIDDEN', 'NORMAL', 'SELECTED'].
The default value is `ZONE`.
* @type {string || null}
*/
this.OrderField = null;
/**
* Specifies how availability zones are listed. Valid values:
<li>ASC: Ascending sort.
<li>DESC: Descending sort.
The default value is `ASC`.
* @type {string || null}
*/
this.Order = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.OrderField = 'OrderField' in params ? params.OrderField : null;
this.Order = 'Order' in params ? params.Order : null;
}
}
/**
* Region information.
* @class
*/
class RegionInfo extends AbstractModel {
constructor(){
super();
/**
* Region name, such as `ap-guangzhou`.
* @type {string || null}
*/
this.Region = null;
/**
* Region description, such as South China (Guangzhou).
* @type {string || null}
*/
this.RegionName = null;
/**
* Region availability status. Its value can only be `AVAILABLE`.
* @type {string || null}
*/
this.RegionState = null;
/**
* Whether the region is in the Chinese mainland
* @type {boolean || null}
*/
this.IsChinaMainland = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Region = 'Region' in params ? params.Region : null;
this.RegionName = 'RegionName' in params ? params.RegionName : null;
this.RegionState = 'RegionState' in params ? params.RegionState : null;
this.IsChinaMainland = 'IsChinaMainland' in params ? params.IsChinaMainland : null;
}
}
/**
* DescribeBlueprintInstances response structure.
* @class
*/
class DescribeBlueprintInstancesResponse extends AbstractModel {
constructor(){
super();
/**
* Number of eligible image instances.
* @type {number || null}
*/
this.TotalCount = null;
/**
* Image instance list information.
* @type {Array.<BlueprintInstance> || null}
*/
this.BlueprintInstanceSet = 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.BlueprintInstanceSet) {
this.BlueprintInstanceSet = new Array();
for (let z in params.BlueprintInstanceSet) {
let obj = new BlueprintInstance();
obj.deserialize(params.BlueprintInstanceSet[z]);
this.BlueprintInstanceSet.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* List of instance operation limits.
* @class
*/
class InstanceDeniedActions extends AbstractModel {
constructor(){
super();
/**
* Instance ID.
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.InstanceId = null;
/**
* List of operation limits.
* @type {Array.<DeniedAction> || null}
*/
this.DeniedActions = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
if (params.DeniedActions) {
this.DeniedActions = new Array();
for (let z in params.DeniedActions) {
let obj = new DeniedAction();
obj.deserialize(params.DeniedActions[z]);
this.DeniedActions.push(obj);
}
}
}
}
/**
* InquirePriceCreateDisks request structure.
* @class
*/
class InquirePriceCreateDisksRequest extends AbstractModel {
constructor(){
super();
/**
* Cloud disk size in GB.
* @type {number || null}
*/
this.DiskSize = null;
/**
* Cloud disk media type. Valid values: "CLOUD_PREMIUM" (premium cloud storage), "CLOUD_SSD" (SSD cloud disk).
* @type {string || null}
*/
this.DiskType = null;
/**
* Parameter settings for purchasing the monthly subscribed cloud disk.
* @type {DiskChargePrepaid || null}
*/
this.DiskChargePrepaid = null;
/**
* Number of cloud disks. Default value: 1.
* @type {number || null}
*/
this.DiskCount = null;
/**
* Specify the quota of disk backups. No quota if it’s left empty. Only one quota is allowed.
* @type {number || null}
*/
this.DiskBackupQuota = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.DiskSize = 'DiskSize' in params ? params.DiskSize : null;
this.DiskType = 'DiskType' in params ? params.DiskType : null;
if (params.DiskChargePrepaid) {
let obj = new DiskChargePrepaid();
obj.deserialize(params.DiskChargePrepaid)
this.DiskChargePrepaid = obj;
}
this.DiskCount = 'DiskCount' in params ? params.DiskCount : null;
this.DiskBackupQuota = 'DiskBackupQuota' in params ? params.DiskBackupQuota : null;
}
}
/**
* Changeable packages for the instance.
* @class
*/
class ModifyBundle extends AbstractModel {
constructor(){
super();
/**
* Price difference that you need to pay for the new instance package after change.
* @type {Price || null}
*/
this.ModifyPrice = null;
/**
* Package change status. Valid values:
<li>SOLD_OUT: packages are sold out</li>
<li>AVAILABLE: packages can be changed</li>
<li>UNAVAILABLE: packages cannot be changed currently</li>
* @type {string || null}
*/
this.ModifyBundleState = null;
/**
* Package information.
* @type {Bundle || null}
*/
this.Bundle = null;
/**
* The reason of package changing failure. It’s empty if the package change status is `AVAILABLE`.
Note: This field may return `null`, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.NotSupportModifyMessage = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.ModifyPrice) {
let obj = new Price();
obj.deserialize(params.ModifyPrice)
this.ModifyPrice = obj;
}
this.ModifyBundleState = 'ModifyBundleState' in params ? params.ModifyBundleState : null;
if (params.Bundle) {
let obj = new Bundle();
obj.deserialize(params.Bundle)
this.Bundle = obj;
}
this.NotSupportModifyMessage = 'NotSupportModifyMessage' in params ? params.NotSupportModifyMessage : null;
}
}
/**
* DetachCcn response structure.
* @class
*/
class DetachCcnResponse 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;
}
}
/**
* BlueprintPrice Custom image price parameter.
* @class
*/
class BlueprintPrice extends AbstractModel {
constructor(){
super();
/**
* Original image unit price in USD.
* @type {number || null}
*/
this.OriginalBlueprintPrice = null;
/**
* Original image total price in USD.
* @type {number || null}
*/
this.OriginalPrice = null;
/**
* Discount.
* @type {number || null}
*/
this.Discount = null;
/**
* Discounted image total price in USD.
* @type {number || null}
*/
this.DiscountPrice = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.OriginalBlueprintPrice = 'OriginalBlueprintPrice' in params ? params.OriginalBlueprintPrice : null;
this.OriginalPrice = 'OriginalPrice' in params ? params.OriginalPrice : null;
this.Discount = 'Discount' in params ? params.Discount : null;
this.DiscountPrice = 'DiscountPrice' in params ? params.DiscountPrice : null;
}
}
/**
* DescribeScenes response structure.
* @class
*/
class DescribeScenesResponse extends AbstractModel {
constructor(){
super();
/**
* List of scenes
* @type {Array.<Scene> || null}
*/
this.SceneSet = null;
/**
* Total number of scenes
* @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.SceneSet) {
this.SceneSet = new Array();
for (let z in params.SceneSet) {
let obj = new Scene();
obj.deserialize(params.SceneSet[z]);
this.SceneSet.push(obj);
}
}
this.TotalCount = 'TotalCount' in params ? params.TotalCount : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* InquirePriceRenewInstances response structure.
* @class
*/
class InquirePriceRenewInstancesResponse extends AbstractModel {
constructor(){
super();
/**
* Price information. It defaults to the price information of the first instance in the list.
* @type {Price || null}
*/
this.Price = null;
/**
* List of data disk price information.
Note: This field may return null, indicating that no valid values can be obtained.
* @type {Array.<DataDiskPrice> || null}
*/
this.DataDiskPriceSet = null;
/**
* Price list of the instances to be renewed.
Note: This field may return `null`, indicating that no valid value was found.
* @type {Array.<InstancePriceDetail> || null}
*/
this.InstancePriceDetailSet = null;
/**
* Total price
* @type {TotalPrice || null}
*/
this.TotalPrice = 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.Price) {
let obj = new Price();
obj.deserialize(params.Price)
this.Price = obj;
}
if (params.DataDiskPriceSet) {
this.DataDiskPriceSet = new Array();
for (let z in params.DataDiskPriceSet) {
let obj = new DataDiskPrice();
obj.deserialize(params.DataDiskPriceSet[z]);
this.DataDiskPriceSet.push(obj);
}
}
if (params.InstancePriceDetailSet) {
this.InstancePriceDetailSet = new Array();
for (let z in params.InstancePriceDetailSet) {
let obj = new InstancePriceDetail();
obj.deserialize(params.InstancePriceDetailSet[z]);
this.InstancePriceDetailSet.push(obj);
}
}
if (params.TotalPrice) {
let obj = new TotalPrice();
obj.deserialize(params.TotalPrice)
this.TotalPrice = obj;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DeleteFirewallRules response structure.
* @class
*/
class DeleteFirewallRulesResponse 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;
}
}
/**
* ModifyInstancesAttribute request structure.
* @class
*/
class ModifyInstancesAttributeRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID list. Each request can contain up to 100 instances at a time. You can get an instance ID from the `InstanceId` returned by the [DescribeInstances](https://intl.cloud.tencent.com/document/api/1207/47573?from_cn_redirect=1) API.
* @type {Array.<string> || null}
*/
this.InstanceIds = null;
/**
* Instance name, which is customizable and can contain up to 60 characters.
* @type {string || null}
*/
this.InstanceName = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceIds = 'InstanceIds' in params ? params.InstanceIds : null;
this.InstanceName = 'InstanceName' in params ? params.InstanceName : null;
}
}
/**
* DescribeInstances response structure.
* @class
*/
class DescribeInstancesResponse extends AbstractModel {
constructor(){
super();
/**
* Number of eligible instances.
* @type {number || null}
*/
this.TotalCount = null;
/**
* List of instance details
* @type {Array.<Instance> || null}
*/
this.InstanceSet = 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.InstanceSet) {
this.InstanceSet = new Array();
for (let z in params.InstanceSet) {
let obj = new Instance();
obj.deserialize(params.InstanceSet[z]);
this.InstanceSet.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DeleteKeyPairs request structure.
* @class
*/
class DeleteKeyPairsRequest extends AbstractModel {
constructor(){
super();
/**
* Key pair ID list. Each request can contain up to 10 key pairs.
* @type {Array.<string> || null}
*/
this.KeyIds = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.KeyIds = 'KeyIds' in params ? params.KeyIds : null;
}
}
/**
* Information on the block device where the operating system is installed, namely the system disk.
* @class
*/
class SystemDisk extends AbstractModel {
constructor(){
super();
/**
* System disk type.
Valid values:
<li> LOCAL_BASIC: local disk</li><li> LOCAL_SSD: local SSD disk</li><li> CLOUD_BASIC: HDD cloud disk</li><li> CLOUD_SSD: SSD cloud disk</li><li> CLOUD_PREMIUM: Premium Cloud Storage</li>
* @type {string || null}
*/
this.DiskType = null;
/**
* System disk size in GB.
* @type {number || null}
*/
this.DiskSize = null;
/**
* System disk ID.
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.DiskId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.DiskType = 'DiskType' in params ? params.DiskType : null;
this.DiskSize = 'DiskSize' in params ? params.DiskSize : null;
this.DiskId = 'DiskId' in params ? params.DiskId : null;
}
}
/**
* Image reset information
* @class
*/
class ResetInstanceBlueprint extends AbstractModel {
constructor(){
super();
/**
* Image details
* @type {Blueprint || null}
*/
this.BlueprintInfo = null;
/**
* Whether the image can be reset as the target image
* @type {boolean || null}
*/
this.IsResettable = null;
/**
* Non-Resettable flag. If the image is resettable, it will be ""
* @type {string || null}
*/
this.NonResettableMessage = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.BlueprintInfo) {
let obj = new Blueprint();
obj.deserialize(params.BlueprintInfo)
this.BlueprintInfo = obj;
}
this.IsResettable = 'IsResettable' in params ? params.IsResettable : null;
this.NonResettableMessage = 'NonResettableMessage' in params ? params.NonResettableMessage : null;
}
}
/**
* DescribeBundles response structure.
* @class
*/
class DescribeBundlesResponse extends AbstractModel {
constructor(){
super();
/**
* List of package details.
* @type {Array.<Bundle> || null}
*/
this.BundleSet = null;
/**
* Total number of eligible packages, which is used for pagination.
* @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.BundleSet) {
this.BundleSet = new Array();
for (let z in params.BundleSet) {
let obj = new Bundle();
obj.deserialize(params.BundleSet[z]);
this.BundleSet.push(obj);
}
}
this.TotalCount = 'TotalCount' in params ? params.TotalCount : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* ModifyInstancesBundle request structure.
* @class
*/
class ModifyInstancesBundleRequest extends AbstractModel {
constructor(){
super();
/**
* IDs of target instances. You can get the IDs from the `InstanceId` parameter returned by the `DescribeInstances` API. Up to 15 instances can be specified at the same time.
* @type {Array.<string> || null}
*/
this.InstanceIds = null;
/**
* ID of bundles to change. You can get the IDs from the `BundleId` returned by the [DescribeBundles](https://intl.cloud.tencent.com/document/api/1207/47575?from_cn_redirect=1).
* @type {string || null}
*/
this.BundleId = null;
/**
* Whether to use existing vouchers under the current account automatically. Valid values:
`true`: Deduct from existing vouchers automatically
`false`: Do not deduct from existing vouchers automatically
Default value: `false`.
* @type {boolean || null}
*/
this.AutoVoucher = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceIds = 'InstanceIds' in params ? params.InstanceIds : null;
this.BundleId = 'BundleId' in params ? params.BundleId : null;
this.AutoVoucher = 'AutoVoucher' in params ? params.AutoVoucher : null;
}
}
/**
* Instance price details
* @class
*/
class InstancePriceDetail extends AbstractModel {
constructor(){
super();
/**
* Instance ID.
Note: This field may return `null`, indicating that no valid value was found.
* @type {string || null}
*/
this.InstanceId = null;
/**
* Price query information.
Note: This field may return `null`, indicating that no valid value was found.
* @type {InstancePrice || null}
*/
this.InstancePrice = null;
/**
* Tiered-pricing details. The information of each tier includes the billable period, discount percentage, total price, discounted price, and discount details (`UserDiscount`, `CommonDiscount` and `FinalDiscount`).
Note: This field may return `null`, indicating that no valid values can be obtained.
* @type {Array.<DiscountDetail> || null}
*/
this.DiscountDetail = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
if (params.InstancePrice) {
let obj = new InstancePrice();
obj.deserialize(params.InstancePrice)
this.InstancePrice = obj;
}
if (params.DiscountDetail) {
this.DiscountDetail = new Array();
for (let z in params.DiscountDetail) {
let obj = new DiscountDetail();
obj.deserialize(params.DiscountDetail[z]);
this.DiscountDetail.push(obj);
}
}
}
}
/**
* InquirePriceRenewInstances request structure.
* @class
*/
class InquirePriceRenewInstancesRequest extends AbstractModel {
constructor(){
super();
/**
* IDs of the instances to be renewed. Each request can contain up to 50 instances at a time. You can get an instance ID from the `InstanceId` returned by the [DescribeInstances](https://intl.cloud.tencent.com/document/api/1207/47573?from_cn_redirect=1) API.
* @type {Array.<string> || null}
*/
this.InstanceIds = null;
/**
* Parameter setting for prepaid mode. This parameter can specify the renewal period, whether to enable auto-renewal, and other attributes of the monthly subscribed instances.
* @type {InstanceChargePrepaid || null}
*/
this.InstanceChargePrepaid = null;
/**
* Whether to renew the data disk. Default: `false`.
* @type {boolean || null}
*/
this.RenewDataDisk = null;
/**
* Whether to align the data disk expiration with the instance expiration time. Default: `false`.
* @type {boolean || null}
*/
this.AlignInstanceExpiredTime = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceIds = 'InstanceIds' in params ? params.InstanceIds : null;
if (params.InstanceChargePrepaid) {
let obj = new InstanceChargePrepaid();
obj.deserialize(params.InstanceChargePrepaid)
this.InstanceChargePrepaid = obj;
}
this.RenewDataDisk = 'RenewDataDisk' in params ? params.RenewDataDisk : null;
this.AlignInstanceExpiredTime = 'AlignInstanceExpiredTime' in params ? params.AlignInstanceExpiredTime : null;
}
}
/**
* Package discount details (only returned for price query APIs called in the console).
* @class
*/
class DiscountDetail extends AbstractModel {
constructor(){
super();
/**
* Billing duration.
* @type {number || null}
*/
this.TimeSpan = null;
/**
* Billing unit.
* @type {string || null}
*/
this.TimeUnit = null;
/**
* Total price.
* @type {number || null}
*/
this.TotalCost = null;
/**
* Discounted total price.
* @type {number || null}
*/
this.RealTotalCost = null;
/**
* Discount.
* @type {number || null}
*/
this.Discount = null;
/**
* Discount details.
* @type {PolicyDetail || null}
*/
this.PolicyDetail = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.TimeSpan = 'TimeSpan' in params ? params.TimeSpan : null;
this.TimeUnit = 'TimeUnit' in params ? params.TimeUnit : null;
this.TotalCost = 'TotalCost' in params ? params.TotalCost : null;
this.RealTotalCost = 'RealTotalCost' in params ? params.RealTotalCost : null;
this.Discount = 'Discount' in params ? params.Discount : null;
if (params.PolicyDetail) {
let obj = new PolicyDetail();
obj.deserialize(params.PolicyDetail)
this.PolicyDetail = obj;
}
}
}
/**
* DescribeDiskConfigs request structure.
* @class
*/
class DescribeDiskConfigsRequest extends AbstractModel {
constructor(){
super();
/**
* Filter list.
<li>zone</li>Filter by availability zone.
Type: String
Required: no
* @type {Array.<Filter> || null}
*/
this.Filters = 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);
}
}
}
}
/**
* DescribeRegions response structure.
* @class
*/
class DescribeRegionsResponse extends AbstractModel {
constructor(){
super();
/**
* Number of regions.
* @type {number || null}
*/
this.TotalCount = null;
/**
* Region information list.
* @type {Array.<RegionInfo> || null}
*/
this.RegionSet = 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.RegionSet) {
this.RegionSet = new Array();
for (let z in params.RegionSet) {
let obj = new RegionInfo();
obj.deserialize(params.RegionSet[z]);
this.RegionSet.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* AssociateInstancesKeyPairs request structure.
* @class
*/
class AssociateInstancesKeyPairsRequest extends AbstractModel {
constructor(){
super();
/**
* Key pair ID list. Each request can contain up to 100 key pairs.
* @type {Array.<string> || null}
*/
this.KeyIds = null;
/**
* Instance ID list. Each request can contain up to 100 instances at a time. You can get an instance ID from the `InstanceId` returned by the [DescribeInstances](https://intl.cloud.tencent.com/document/api/1207/47573?from_cn_redirect=1) API.
* @type {Array.<string> || null}
*/
this.InstanceIds = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.KeyIds = 'KeyIds' in params ? params.KeyIds : null;
this.InstanceIds = 'InstanceIds' in params ? params.InstanceIds : null;
}
}
/**
* AttachCcn response structure.
* @class
*/
class AttachCcnResponse 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;
}
}
/**
* RebootInstances request structure.
* @class
*/
class RebootInstancesRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID list. Each request can contain up to 100 instances at a time. You can get an instance ID from the `InstanceId` returned by the [DescribeInstances](https://intl.cloud.tencent.com/document/api/1207/47573?from_cn_redirect=1) API.
* @type {Array.<string> || null}
*/
this.InstanceIds = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceIds = 'InstanceIds' in params ? params.InstanceIds : null;
}
}
/**
* ResetAttachCcn request structure.
* @class
*/
class ResetAttachCcnRequest extends AbstractModel {
constructor(){
super();
/**
* CCN instance ID.
* @type {string || null}
*/
this.CcnId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.CcnId = 'CcnId' in params ? params.CcnId : null;
}
}
/**
* CreateDisks request structure.
* @class
*/
class CreateDisksRequest extends AbstractModel {
constructor(){
super();
/**
* Availability zone. You can call [DescribeZones](https://intl.cloud.tencent.com/document/product/1207/57513?from_cn_redirect=1) and get the information in the `Zone` parameter re
* @type {string || null}
*/
this.Zone = null;
/**
* Cloud disk size in GB.
* @type {number || null}
*/
this.DiskSize = null;
/**
* Cloud disk media type. Valid values: "CLOUD_PREMIUM" (premium cloud disk), "CLOUD_SSD" (SSD cloud disk).
* @type {string || null}
*/
this.DiskType = null;
/**
* Parameters of monthly subscribed cloud disks
* @type {DiskChargePrepaid || null}
*/
this.DiskChargePrepaid = null;
/**
* Image name, which can contain up to 60 characters.
* @type {string || null}
*/
this.DiskName = null;
/**
* Number of cloud disks. Range: [1, 30]. Default value: 1.
* @type {number || null}
*/
this.DiskCount = null;
/**
* Specify the quota of disk backups. No quota if it’s left empty. Only one quota is allowed.
* @type {number || null}
*/
this.DiskBackupQuota = null;
/**
* Whether to use the vouchers automatically. It defaults to No.
* @type {boolean || null}
*/
this.AutoVoucher = null;
/**
* Automatically mount and initialize the data disk.
* @type {AutoMountConfiguration || null}
*/
this.AutoMountConfiguration = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Zone = 'Zone' in params ? params.Zone : null;
this.DiskSize = 'DiskSize' in params ? params.DiskSize : null;
this.DiskType = 'DiskType' in params ? params.DiskType : null;
if (params.DiskChargePrepaid) {
let obj = new DiskChargePrepaid();
obj.deserialize(params.DiskChargePrepaid)
this.DiskChargePrepaid = obj;
}
this.DiskName = 'DiskName' in params ? params.DiskName : null;
this.DiskCount = 'DiskCount' in params ? params.DiskCount : null;
this.DiskBackupQuota = 'DiskBackupQuota' in params ? params.DiskBackupQuota : null;
this.AutoVoucher = 'AutoVoucher' in params ? params.AutoVoucher : null;
if (params.AutoMountConfiguration) {
let obj = new AutoMountConfiguration();
obj.deserialize(params.AutoMountConfiguration)
this.AutoMountConfiguration = obj;
}
}
}
/**
* AttachDisks request structure.
* @class
*/
class AttachDisksRequest extends AbstractModel {
constructor(){
super();
/**
* List of cloud disk IDs.
* @type {Array.<string> || null}
*/
this.DiskIds = null;
/**
* Instance ID.
* @type {string || null}
*/
this.InstanceId = null;
/**
* Specify whether to renew an instance automatically when it expires. Values:
`NOTIFY_AND_AUTO_RENEW`: Trigger expiration notification and renew automatically; `NOTIFY_AND_MANUAL_RENEW`: Trigger expiration notification but do not renew; `DISABLE_NOTIFY_AND_MANUAL_RENEW`: Do not trigger the notification and do not renew.
Default: `NOTIFY_AND_MANUAL_RENEW`. If `NOTIFY_AND_AUTO_RENEW` is specified, the instance is automatically renewed on a monthly basis when the account balance is sufficient.
* @type {string || null}
*/
this.RenewFlag = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.DiskIds = 'DiskIds' in params ? params.DiskIds : null;
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.RenewFlag = 'RenewFlag' in params ? params.RenewFlag : null;
}
}
/**
* ImportKeyPair response structure.
* @class
*/
class ImportKeyPairResponse extends AbstractModel {
constructor(){
super();
/**
* Key pair ID.
* @type {string || null}
*/
this.KeyId = 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.KeyId = 'KeyId' in params ? params.KeyId : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DescribeSnapshots request structure.
* @class
*/
class DescribeSnapshotsRequest extends AbstractModel {
constructor(){
super();
/**
* List of IDs of snapshots to be queried.
You cannot specify `SnapshotIds` and `Filters` at the same time.
* @type {Array.<string> || null}
*/
this.SnapshotIds = null;
/**
* Filter list.
<li>snapshot-id</li>Filter by **snapshot ID**.
Type: String
Required: no
<li>disk-id</li>Filter by **disk ID**.
Type: String
Required: no
<li>snapshot-name</li>Filter by **snapshot name**.
Type: String
Required: no
<li>instance-id</li>Filter by **instance ID**.
Type: String
Required: no
Each request can contain up to 10 `Filters` and 5 `Filter.Values`. You cannot specify both `SnapshotIds` and `Filters` at the same time.
* @type {Array.<Filter> || null}
*/
this.Filters = 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;
}
this.SnapshotIds = 'SnapshotIds' in params ? params.SnapshotIds : 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);
}
}
this.Offset = 'Offset' in params ? params.Offset : null;
this.Limit = 'Limit' in params ? params.Limit : null;
}
}
/**
* TerminateDisks response structure.
* @class
*/
class TerminateDisksResponse 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;
}
}
/**
* Key pair information.
* @class
*/
class KeyPair extends AbstractModel {
constructor(){
super();
/**
* Key pair ID, which is the unique identifier of a key pair.
* @type {string || null}
*/
this.KeyId = null;
/**
* Key pair name.
* @type {string || null}
*/
this.KeyName = null;
/**
* Public key (in plain text) of key pair.
* @type {string || null}
*/
this.PublicKey = null;
/**
* List of IDs of instances associated with the key pair.
Note: this field may return null, indicating that no valid values can be obtained.
* @type {Array.<string> || null}
*/
this.AssociatedInstanceIds = null;
/**
* Creation time in the format of YYYY-MM-DDThh:mm:ssZ according to ISO 8601 standard. UTC time is used
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.CreatedTime = null;
/**
* Private key of key pair.
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.PrivateKey = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.KeyId = 'KeyId' in params ? params.KeyId : null;
this.KeyName = 'KeyName' in params ? params.KeyName : null;
this.PublicKey = 'PublicKey' in params ? params.PublicKey : null;
this.AssociatedInstanceIds = 'AssociatedInstanceIds' in params ? params.AssociatedInstanceIds : null;
this.CreatedTime = 'CreatedTime' in params ? params.CreatedTime : null;
this.PrivateKey = 'PrivateKey' in params ? params.PrivateKey : null;
}
}
/**
* DescribeFirewallRulesTemplate request structure.
* @class
*/
class DescribeFirewallRulesTemplateRequest extends AbstractModel {
constructor(){
super();
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
}
}
/**
* DescribeKeyPairs response structure.
* @class
*/
class DescribeKeyPairsResponse extends AbstractModel {
constructor(){
super();
/**
* Number of eligible key pairs.
* @type {number || null}
*/
this.TotalCount = null;
/**
* List of key pair details.
* @type {Array.<KeyPair> || null}
*/
this.KeyPairSet = 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.KeyPairSet) {
this.KeyPairSet = new Array();
for (let z in params.KeyPairSet) {
let obj = new KeyPair();
obj.deserialize(params.KeyPairSet[z]);
this.KeyPairSet.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* ModifyBlueprintAttribute request structure.
* @class
*/
class ModifyBlueprintAttributeRequest extends AbstractModel {
constructor(){
super();
/**
* Image ID, which can be obtained from the `BlueprintId` returned by the [DescribeBlueprints](https://intl.cloud.tencent.com/document/product/1207/47689?from_cn_redirect=1) API.
* @type {string || null}
*/
this.BlueprintId = null;
/**
* New image name, which can contain up to 60 characters.
* @type {string || null}
*/
this.BlueprintName = null;
/**
* New image description, which can contain up to 60 characters.
* @type {string || null}
*/
this.Description = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.BlueprintId = 'BlueprintId' in params ? params.BlueprintId : null;
this.BlueprintName = 'BlueprintName' in params ? params.BlueprintName : null;
this.Description = 'Description' in params ? params.Description : null;
}
}
/**
* InquirePriceRenewDisks request structure.
* @class
*/
class InquirePriceRenewDisksRequest extends AbstractModel {
constructor(){
super();
/**
* List of cloud disk IDs.
* @type {Array.<string> || null}
*/
this.DiskIds = null;
/**
* Parameter settings for renewing the monthly subscribed cloud disk.
* @type {RenewDiskChargePrepaid || null}
*/
this.RenewDiskChargePrepaid = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.DiskIds = 'DiskIds' in params ? params.DiskIds : null;
if (params.RenewDiskChargePrepaid) {
let obj = new RenewDiskChargePrepaid();
obj.deserialize(params.RenewDiskChargePrepaid)
this.RenewDiskChargePrepaid = obj;
}
}
}
/**
* Disk information
* @class
*/
class Disk extends AbstractModel {
constructor(){
super();
/**
* Disk ID
* @type {string || null}
*/
this.DiskId = null;
/**
* Instance ID
* @type {string || null}
*/
this.InstanceId = null;
/**
* Availability zone
* @type {string || null}
*/
this.Zone = null;
/**
* Disk name
* @type {string || null}
*/
this.DiskName = null;
/**
* Disk type
* @type {string || null}
*/
this.DiskUsage = null;
/**
* Disk media type
* @type {string || null}
*/
this.DiskType = null;
/**
* Disk payment type
* @type {string || null}
*/
this.DiskChargeType = null;
/**
* Disk size
* @type {number || null}
*/
this.DiskSize = null;
/**
* Renewal flag
* @type {string || null}
*/
this.RenewFlag = null;
/**
* Disk status. Values:
<li>`PENDING`: Creating</li>
<li>`UNATTACHED`: Not attached</li>
<li>`ATTACHING`: Attaching</li>
<li>`ATTACHED`: Attached</li>
<li>`DETACHING`: Detaching</li>
<li>`SHUTDOWN`: Isolated</li>
<li>`CREATED_FAILED`: Failed to create</li>
<li>`TERMINATING`: Terminating</li>
<li>`DELETING`: Deleting</li>
<li>`FREEZING`: Freezing</li>
* @type {string || null}
*/
this.DiskState = null;
/**
* Whether the disk is attached to an instance
* @type {boolean || null}
*/
this.Attached = null;
/**
* Whether to release the disk along with the instance
* @type {boolean || null}
*/
this.DeleteWithInstance = null;
/**
* Last operation
* @type {string || null}
*/
this.LatestOperation = null;
/**
* Last operation status
* @type {string || null}
*/
this.LatestOperationState = null;
/**
* Last request ID
* @type {string || null}
*/
this.LatestOperationRequestId = null;
/**
* Creation time according to ISO 8601 standard. UTC time is used.
Format: YYYY-MM-DDThh:mm:ssZ.
Note: This field may return `null`, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.CreatedTime = null;
/**
* Expiration time according to ISO 8601 standard. UTC time is used.
Format: YYYY-MM-DDThh:mm:ssZ.
Note: This field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.ExpiredTime = null;
/**
* Isolation time according to ISO 8601 standard. UTC time is used.
Format: YYYY-MM-DDThh:mm:ssZ.
Note: This field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.IsolatedTime = null;
/**
* Total disk backups
* @type {number || null}
*/
this.DiskBackupCount = null;
/**
* Disk backup quota
* @type {number || null}
*/
this.DiskBackupQuota = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.DiskId = 'DiskId' in params ? params.DiskId : null;
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.Zone = 'Zone' in params ? params.Zone : null;
this.DiskName = 'DiskName' in params ? params.DiskName : null;
this.DiskUsage = 'DiskUsage' in params ? params.DiskUsage : null;
this.DiskType = 'DiskType' in params ? params.DiskType : null;
this.DiskChargeType = 'DiskChargeType' in params ? params.DiskChargeType : null;
this.DiskSize = 'DiskSize' in params ? params.DiskSize : null;
this.RenewFlag = 'RenewFlag' in params ? params.RenewFlag : null;
this.DiskState = 'DiskState' in params ? params.DiskState : null;
this.Attached = 'Attached' in params ? params.Attached : null;
this.DeleteWithInstance = 'DeleteWithInstance' in params ? params.DeleteWithInstance : null;
this.LatestOperation = 'LatestOperation' in params ? params.LatestOperation : null;
this.LatestOperationState = 'LatestOperationState' in params ? params.LatestOperationState : null;
this.LatestOperationRequestId = 'LatestOperationRequestId' in params ? params.LatestOperationRequestId : null;
this.CreatedTime = 'CreatedTime' in params ? params.CreatedTime : null;
this.ExpiredTime = 'ExpiredTime' in params ? params.ExpiredTime : null;
this.IsolatedTime = 'IsolatedTime' in params ? params.IsolatedTime : null;
this.DiskBackupCount = 'DiskBackupCount' in params ? params.DiskBackupCount : null;
this.DiskBackupQuota = 'DiskBackupQuota' in params ? params.DiskBackupQuota : null;
}
}
/**
* AZ details
* @class
*/
class ZoneInfo extends AbstractModel {
constructor(){
super();
/**
* AZ
* @type {string || null}
*/
this.Zone = null;
/**
* Chinese name of AZ
* @type {string || null}
*/
this.ZoneName = null;
/**
* AZ tags on instance purchase page
* @type {string || null}
*/
this.InstanceDisplayLabel = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Zone = 'Zone' in params ? params.Zone : null;
this.ZoneName = 'ZoneName' in params ? params.ZoneName : null;
this.InstanceDisplayLabel = 'InstanceDisplayLabel' in params ? params.InstanceDisplayLabel : null;
}
}
/**
* DescribeBlueprintInstances request structure.
* @class
*/
class DescribeBlueprintInstancesRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID list, which currently can contain only one instance.
* @type {Array.<string> || null}
*/
this.InstanceIds = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceIds = 'InstanceIds' in params ? params.InstanceIds : null;
}
}
/**
* ApplyInstanceSnapshot response structure.
* @class
*/
class ApplyInstanceSnapshotResponse 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;
}
}
/**
* DetachDisks request structure.
* @class
*/
class DetachDisksRequest extends AbstractModel {
constructor(){
super();
/**
* List of cloud disk IDs.
* @type {Array.<string> || null}
*/
this.DiskIds = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.DiskIds = 'DiskIds' in params ? params.DiskIds : null;
}
}
/**
* ModifyFirewallRules request structure.
* @class
*/
class ModifyFirewallRulesRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID.
* @type {string || null}
*/
this.InstanceId = null;
/**
* Firewall rule list.
* @type {Array.<FirewallRule> || null}
*/
this.FirewallRules = null;
/**
* Current firewall version number. Every time you update the firewall rule version, it will be automatically increased by 1 to prevent the rule from expiring. If it is left empty, conflicts will not be considered.
* @type {number || null}
*/
this.FirewallVersion = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
if (params.FirewallRules) {
this.FirewallRules = new Array();
for (let z in params.FirewallRules) {
let obj = new FirewallRule();
obj.deserialize(params.FirewallRules[z]);
this.FirewallRules.push(obj);
}
}
this.FirewallVersion = 'FirewallVersion' in params ? params.FirewallVersion : null;
}
}
/**
* CreateBlueprint request structure.
* @class
*/
class CreateBlueprintRequest extends AbstractModel {
constructor(){
super();
/**
* Image name, which can contain up to 60 characters.
* @type {string || null}
*/
this.BlueprintName = null;
/**
* Image description, which can contain up to 60 characters.
* @type {string || null}
*/
this.Description = null;
/**
* ID of the instance for which to make an image.
* @type {string || null}
*/
this.InstanceId = null;
/**
* Whether to forcibly shut down the instance before creating the image
Valid values:
`True`: Shut down and instance first
`False`: Create the image when the instance is running
Default: `True`
Note that if you create an image when the instance is running, there might be data loss.
* @type {boolean || null}
*/
this.ForcePowerOff = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.BlueprintName = 'BlueprintName' in params ? params.BlueprintName : null;
this.Description = 'Description' in params ? params.Description : null;
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.ForcePowerOff = 'ForcePowerOff' in params ? params.ForcePowerOff : null;
}
}
/**
* DeleteFirewallRules request structure.
* @class
*/
class DeleteFirewallRulesRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID.
* @type {string || null}
*/
this.InstanceId = null;
/**
* Firewall rule list.
* @type {Array.<FirewallRule> || null}
*/
this.FirewallRules = null;
/**
* Current firewall version number. Every time you update the firewall rule version, it will be automatically increased by 1 to prevent the rule from expiring. If it is left empty, conflicts will not be considered.
* @type {number || null}
*/
this.FirewallVersion = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
if (params.FirewallRules) {
this.FirewallRules = new Array();
for (let z in params.FirewallRules) {
let obj = new FirewallRule();
obj.deserialize(params.FirewallRules[z]);
this.FirewallRules.push(obj);
}
}
this.FirewallVersion = 'FirewallVersion' in params ? params.FirewallVersion : null;
}
}
/**
* DescribeInstanceVncUrl request structure.
* @class
*/
class DescribeInstanceVncUrlRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID, which can be obtained from the `InstanceId` returned by the [DescribeInstances](https://intl.cloud.tencent.com/document/api/1207/47573?from_cn_redirect=1) API.
* @type {string || null}
*/
this.InstanceId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
}
}
/**
* ModifyFirewallRuleDescription request structure.
* @class
*/
class ModifyFirewallRuleDescriptionRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID.
* @type {string || null}
*/
this.InstanceId = null;
/**
* Firewall rule.
* @type {FirewallRule || null}
*/
this.FirewallRule = null;
/**
* Current firewall version number. Every time you update the firewall rule version, it will be automatically increased by 1 to prevent the rule from expiring. If it is left empty, conflicts will not be considered.
* @type {number || null}
*/
this.FirewallVersion = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
if (params.FirewallRule) {
let obj = new FirewallRule();
obj.deserialize(params.FirewallRule)
this.FirewallRule = obj;
}
this.FirewallVersion = 'FirewallVersion' in params ? params.FirewallVersion : null;
}
}
/**
* Instance traffic package details
* @class
*/
class InstanceTrafficPackage extends AbstractModel {
constructor(){
super();
/**
* Instance ID.
* @type {string || null}
*/
this.InstanceId = null;
/**
* List of traffic package details.
* @type {Array.<TrafficPackage> || null}
*/
this.TrafficPackageSet = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
if (params.TrafficPackageSet) {
this.TrafficPackageSet = new Array();
for (let z in params.TrafficPackageSet) {
let obj = new TrafficPackage();
obj.deserialize(params.TrafficPackageSet[z]);
this.TrafficPackageSet.push(obj);
}
}
}
}
/**
* StartInstances response structure.
* @class
*/
class StartInstancesResponse 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;
}
}
/**
* TerminateInstances response structure.
* @class
*/
class TerminateInstancesResponse 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;
}
}
/**
* Traffic package details.
* @class
*/
class TrafficPackage extends AbstractModel {
constructor(){
super();
/**
* Traffic package ID.
* @type {string || null}
*/
this.TrafficPackageId = null;
/**
* Used traffic in bytes during traffic package validity period.
* @type {number || null}
*/
this.TrafficUsed = null;
/**
* Total traffic in bytes during traffic package validity period.
* @type {number || null}
*/
this.TrafficPackageTotal = null;
/**
* Remaining traffic in bytes during traffic package validity period.
* @type {number || null}
*/
this.TrafficPackageRemaining = null;
/**
* Traffic exceeding package amount in bytes during traffic package validity period.
* @type {number || null}
*/
this.TrafficOverflow = null;
/**
* Start time of traffic package validity period according to ISO 8601 standard. UTC time is used.
Format: YYYY-MM-DDThh:mm:ssZ.
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.StartTime = null;
/**
* End time of traffic package validity period according to ISO 8601 standard. UTC time is used.
Format: YYYY-MM-DDThh:mm:ssZ.
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.EndTime = null;
/**
* Traffic package expiration time according to ISO 8601 standard. UTC time is used.
Format: YYYY-MM-DDThh:mm:ssZ.
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.Deadline = null;
/**
* Traffic package status:
<li>NETWORK_NORMAL: normal</li>
<li>OVERDUE_NETWORK_DISABLED: the network is disconnected due to overdue payments</li>
* @type {string || null}
*/
this.Status = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.TrafficPackageId = 'TrafficPackageId' in params ? params.TrafficPackageId : null;
this.TrafficUsed = 'TrafficUsed' in params ? params.TrafficUsed : null;
this.TrafficPackageTotal = 'TrafficPackageTotal' in params ? params.TrafficPackageTotal : null;
this.TrafficPackageRemaining = 'TrafficPackageRemaining' in params ? params.TrafficPackageRemaining : null;
this.TrafficOverflow = 'TrafficOverflow' in params ? params.TrafficOverflow : null;
this.StartTime = 'StartTime' in params ? params.StartTime : null;
this.EndTime = 'EndTime' in params ? params.EndTime : null;
this.Deadline = 'Deadline' in params ? params.Deadline : null;
this.Status = 'Status' in params ? params.Status : null;
}
}
/**
* DescribeInstancesDiskNum request structure.
* @class
*/
class DescribeInstancesDiskNumRequest extends AbstractModel {
constructor(){
super();
/**
* List of instance IDs.
* @type {Array.<string> || null}
*/
this.InstanceIds = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceIds = 'InstanceIds' in params ? params.InstanceIds : null;
}
}
/**
* Billable items
* @class
*/
class DetailPrice extends AbstractModel {
constructor(){
super();
/**
* Values:
<li>"DiskSpace": Cloud disk space</li>
<li>"DiskBackupQuota": Cloud disk backups</li>
* @type {string || null}
*/
this.PriceName = null;
/**
* Official unit price of the billable item
* @type {number || null}
*/
this.OriginUnitPrice = null;
/**
* Official total price of the billable item
* @type {number || null}
*/
this.OriginalPrice = null;
/**
* Discount of the billable item
* @type {number || null}
*/
this.Discount = null;
/**
* Discounted total price of the billable item
* @type {number || null}
*/
this.DiscountPrice = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.PriceName = 'PriceName' in params ? params.PriceName : null;
this.OriginUnitPrice = 'OriginUnitPrice' in params ? params.OriginUnitPrice : null;
this.OriginalPrice = 'OriginalPrice' in params ? params.OriginalPrice : null;
this.Discount = 'Discount' in params ? params.Discount : null;
this.DiscountPrice = 'DiscountPrice' in params ? params.DiscountPrice : null;
}
}
/**
* DescribeBlueprints request structure.
* @class
*/
class DescribeBlueprintsRequest extends AbstractModel {
constructor(){
super();
/**
* Image ID list.
* @type {Array.<string> || null}
*/
this.BlueprintIds = null;
/**
* Offset. Default value: 0. For more information on `Offset`, please see the relevant section in [Overview](https://intl.cloud.tencent.com/document/product/1207/47578?from_cn_redirect=1).
* @type {number || null}
*/
this.Offset = null;
/**
* Number of returned results. Default value: 20. Maximum value: 100. For more information on `Limit`, please see the relevant section in the API [Overview](https://intl.cloud.tencent.com/document/product/1207/47578?from_cn_redirect=1).
* @type {number || null}
*/
this.Limit = null;
/**
* Filter list.
<li>blueprint-id</li>Filter by the **image ID**.
Type: String
Required: no
<li>blueprint-type</li>Filter by the **image type**.
Valid values: `APP_OS` (application image), `PURE_OS` (system image), `DOCKER` (Docker container image), `PRIVATE` (custom image), `SHARED` (shared image)
Type: String
Required: no
<li>platform-type</li>Filter by the **image operating system**.
Valid values: `LINUX_UNIX` (Linux or Unix), `WINDOWS` (Windows)
Type: String
Required: no
<li>blueprint-name</li>Filter by the **image name**.
Type: String
Required: no
<li>blueprint-state</li>Filter by the **image status**.
Type: String
Required: no
<li>scene-id</li>Filter by the **scene ID**.
Type: String
Required: no
Each request can contain up to 10 `Filters`, each of which can contain up to 100 `Filter.Values`. `BlueprintIds` and `Filters` cannot be specified at the same time.
* @type {Array.<Filter> || null}
*/
this.Filters = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.BlueprintIds = 'BlueprintIds' in params ? params.BlueprintIds : null;
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 Filter();
obj.deserialize(params.Filters[z]);
this.Filters.push(obj);
}
}
}
}
/**
* Whether the instance can be returned.
* @class
*/
class InstanceReturnable extends AbstractModel {
constructor(){
super();
/**
* Instance ID.
* @type {string || null}
*/
this.InstanceId = null;
/**
* Whether the instance can be returned.
* @type {boolean || null}
*/
this.IsReturnable = null;
/**
* Error code of instance return failure.
* @type {number || null}
*/
this.ReturnFailCode = null;
/**
* Error message of instance return failure.
* @type {string || null}
*/
this.ReturnFailMessage = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.IsReturnable = 'IsReturnable' in params ? params.IsReturnable : null;
this.ReturnFailCode = 'ReturnFailCode' in params ? params.ReturnFailCode : null;
this.ReturnFailMessage = 'ReturnFailMessage' in params ? params.ReturnFailMessage : null;
}
}
/**
* DescribeInstancesDeniedActions response structure.
* @class
*/
class DescribeInstancesDeniedActionsResponse extends AbstractModel {
constructor(){
super();
/**
* List of instance operation limit details.
* @type {Array.<InstanceDeniedActions> || null}
*/
this.InstanceDeniedActionSet = 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.InstanceDeniedActionSet) {
this.InstanceDeniedActionSet = new Array();
for (let z in params.InstanceDeniedActionSet) {
let obj = new InstanceDeniedActions();
obj.deserialize(params.InstanceDeniedActionSet[z]);
this.InstanceDeniedActionSet.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* RenewDisks request structure.
* @class
*/
class RenewDisksRequest extends AbstractModel {
constructor(){
super();
/**
* IDs of cloud disks. The value can be obtained from the `DiskId` parameter returned by the [DescribeDisks](https://intl.cloud.tencent.com/document/product/1207/66093?from_cn_redirect=1) API. Up to 50 disks can be requested at a time.
* @type {Array.<string> || null}
*/
this.DiskIds = null;
/**
* Parameter settings for renewing the monthly subscribed cloud disk.
* @type {RenewDiskChargePrepaid || null}
*/
this.RenewDiskChargePrepaid = null;
/**
* Whether to use the vouchers automatically. It defaults to No.
* @type {boolean || null}
*/
this.AutoVoucher = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.DiskIds = 'DiskIds' in params ? params.DiskIds : null;
if (params.RenewDiskChargePrepaid) {
let obj = new RenewDiskChargePrepaid();
obj.deserialize(params.RenewDiskChargePrepaid)
this.RenewDiskChargePrepaid = obj;
}
this.AutoVoucher = 'AutoVoucher' in params ? params.AutoVoucher : null;
}
}
/**
* ModifyDisksAttribute request structure.
* @class
*/
class ModifyDisksAttributeRequest extends AbstractModel {
constructor(){
super();
/**
* List of cloud disk IDs.
* @type {Array.<string> || null}
*/
this.DiskIds = null;
/**
* Cloud disk name.
* @type {string || null}
*/
this.DiskName = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.DiskIds = 'DiskIds' in params ? params.DiskIds : null;
this.DiskName = 'DiskName' in params ? params.DiskName : null;
}
}
/**
* Port mapping of the Docker container
* @class
*/
class DockerContainerPublishPort extends AbstractModel {
constructor(){
super();
/**
* Host port
* @type {number || null}
*/
this.HostPort = null;
/**
* Container port
* @type {number || null}
*/
this.ContainerPort = null;
/**
* External IP. It defaults to 0.0.0.0.
Note: This field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.Ip = null;
/**
* The protocol defaults to `tcp`. Valid values: `tcp`, `udp` and `sctp`.
Note: This field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.Protocol = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.HostPort = 'HostPort' in params ? params.HostPort : null;
this.ContainerPort = 'ContainerPort' in params ? params.ContainerPort : null;
this.Ip = 'Ip' in params ? params.Ip : null;
this.Protocol = 'Protocol' in params ? params.Protocol : null;
}
}
/**
* DescribeSnapshotsDeniedActions response structure.
* @class
*/
class DescribeSnapshotsDeniedActionsResponse extends AbstractModel {
constructor(){
super();
/**
* List of snapshot operation limit details.
* @type {Array.<SnapshotDeniedActions> || null}
*/
this.SnapshotDeniedActionSet = 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.SnapshotDeniedActionSet) {
this.SnapshotDeniedActionSet = new Array();
for (let z in params.SnapshotDeniedActionSet) {
let obj = new SnapshotDeniedActions();
obj.deserialize(params.SnapshotDeniedActionSet[z]);
this.SnapshotDeniedActionSet.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DescribeScenes request structure.
* @class
*/
class DescribeScenesRequest extends AbstractModel {
constructor(){
super();
/**
* List of scene IDs
* @type {Array.<string> || null}
*/
this.SceneIds = 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;
}
this.SceneIds = 'SceneIds' in params ? params.SceneIds : null;
this.Offset = 'Offset' in params ? params.Offset : null;
this.Limit = 'Limit' in params ? params.Limit : null;
}
}
/**
* StartInstances request structure.
* @class
*/
class StartInstancesRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID list. Each request can contain up to 100 instances at a time. You can get an instance ID from the `InstanceId` returned by the [DescribeInstances](https://intl.cloud.tencent.com/document/api/1207/47573?from_cn_redirect=1) API.
* @type {Array.<string> || null}
*/
this.InstanceIds = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceIds = 'InstanceIds' in params ? params.InstanceIds : null;
}
}
/**
* List of snapshot operation limits.
* @class
*/
class SnapshotDeniedActions extends AbstractModel {
constructor(){
super();
/**
* Snapshot ID.
* @type {string || null}
*/
this.SnapshotId = null;
/**
* List of operation limits.
* @type {Array.<DeniedAction> || null}
*/
this.DeniedActions = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.SnapshotId = 'SnapshotId' in params ? params.SnapshotId : null;
if (params.DeniedActions) {
this.DeniedActions = new Array();
for (let z in params.DeniedActions) {
let obj = new DeniedAction();
obj.deserialize(params.DeniedActions[z]);
this.DeniedActions.push(obj);
}
}
}
}
/**
* DeleteSnapshots request structure.
* @class
*/
class DeleteSnapshotsRequest extends AbstractModel {
constructor(){
super();
/**
* List of IDs of snapshots to be deleted, which can be queried through `DescribeSnapshots`.
* @type {Array.<string> || null}
*/
this.SnapshotIds = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.SnapshotIds = 'SnapshotIds' in params ? params.SnapshotIds : null;
}
}
/**
* ModifyDisksRenewFlag response structure.
* @class
*/
class ModifyDisksRenewFlagResponse 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;
}
}
/**
* ModifySnapshotAttribute request structure.
* @class
*/
class ModifySnapshotAttributeRequest extends AbstractModel {
constructor(){
super();
/**
* Snapshot ID, which can be queried through `DescribeSnapshots`.
* @type {string || null}
*/
this.SnapshotId = null;
/**
* New snapshot name, which can contain up to 60 characters.
* @type {string || null}
*/
this.SnapshotName = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.SnapshotId = 'SnapshotId' in params ? params.SnapshotId : null;
this.SnapshotName = 'SnapshotName' in params ? params.SnapshotName : null;
}
}
/**
* DeleteSnapshots response structure.
* @class
*/
class DeleteSnapshotsResponse 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;
}
}
/**
* DescribeDisks response structure.
* @class
*/
class DescribeDisksResponse extends AbstractModel {
constructor(){
super();
/**
* List of cloud disk information.
* @type {Array.<Disk> || null}
*/
this.DiskSet = null;
/**
* Number of eligible cloud disks.
* @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.DiskSet) {
this.DiskSet = new Array();
for (let z in params.DiskSet) {
let obj = new Disk();
obj.deserialize(params.DiskSet[z]);
this.DiskSet.push(obj);
}
}
this.TotalCount = 'TotalCount' in params ? params.TotalCount : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DescribeBundleDiscount response structure.
* @class
*/
class DescribeBundleDiscountResponse extends AbstractModel {
constructor(){
super();
/**
* Currency: CNY, USD.
* @type {string || null}
*/
this.Currency = null;
/**
* Discount tier details. The information of each tier includes the duration, discounted quantity, total price, discounted price, and discount details (user discount, official website discount, or final discount).
* @type {Array.<DiscountDetail> || null}
*/
this.DiscountDetail = 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.Currency = 'Currency' in params ? params.Currency : null;
if (params.DiscountDetail) {
this.DiscountDetail = new Array();
for (let z in params.DiscountDetail) {
let obj = new DiscountDetail();
obj.deserialize(params.DiscountDetail[z]);
this.DiscountDetail.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DescribeAllScenes request structure.
* @class
*/
class DescribeAllScenesRequest extends AbstractModel {
constructor(){
super();
/**
* List of scene IDs
* @type {Array.<string> || null}
*/
this.SceneIds = 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;
}
this.SceneIds = 'SceneIds' in params ? params.SceneIds : null;
this.Offset = 'Offset' in params ? params.Offset : null;
this.Limit = 'Limit' in params ? params.Limit : null;
}
}
/**
* ModifyDisksRenewFlag request structure.
* @class
*/
class ModifyDisksRenewFlagRequest extends AbstractModel {
constructor(){
super();
/**
* List of cloud disk IDs.
* @type {Array.<string> || null}
*/
this.DiskIds = null;
/**
* Whether Auto-Renewal is enabled
* @type {string || null}
*/
this.RenewFlag = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.DiskIds = 'DiskIds' in params ? params.DiskIds : null;
this.RenewFlag = 'RenewFlag' in params ? params.RenewFlag : null;
}
}
/**
* DisassociateInstancesKeyPairs request structure.
* @class
*/
class DisassociateInstancesKeyPairsRequest extends AbstractModel {
constructor(){
super();
/**
* Key pair ID list. Each request can contain up to 100 key pairs.
* @type {Array.<string> || null}
*/
this.KeyIds = null;
/**
* Instance ID list. Each request can contain up to 100 instances at a time. You can get an instance ID from the `InstanceId` returned by the [DescribeInstances](https://intl.cloud.tencent.com/document/api/1207/47573?from_cn_redirect=1) API.
* @type {Array.<string> || null}
*/
this.InstanceIds = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.KeyIds = 'KeyIds' in params ? params.KeyIds : null;
this.InstanceIds = 'InstanceIds' in params ? params.InstanceIds : null;
}
}
/**
* Data disk price
* @class
*/
class DataDiskPrice extends AbstractModel {
constructor(){
super();
/**
* Cloud disk ID.
* @type {string || null}
*/
this.DiskId = null;
/**
* Cloud disk unit price.
* @type {number || null}
*/
this.OriginalDiskPrice = null;
/**
* Total price of cloud disk
* @type {number || null}
*/
this.OriginalPrice = null;
/**
* Discount.
* @type {number || null}
*/
this.Discount = null;
/**
* Discounted total price.
* @type {number || null}
*/
this.DiscountPrice = null;
/**
* ID of the instance to which the data disk is mounted.
Note: This field may return `null`, indicating that no valid value was found.
* @type {string || null}
*/
this.InstanceId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.DiskId = 'DiskId' in params ? params.DiskId : null;
this.OriginalDiskPrice = 'OriginalDiskPrice' in params ? params.OriginalDiskPrice : null;
this.OriginalPrice = 'OriginalPrice' in params ? params.OriginalPrice : null;
this.Discount = 'Discount' in params ? params.Discount : null;
this.DiscountPrice = 'DiscountPrice' in params ? params.DiscountPrice : null;
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
}
}
/**
* Scene information
* @class
*/
class SceneInfo extends AbstractModel {
constructor(){
super();
/**
* Scene ID
* @type {string || null}
*/
this.SceneId = null;
/**
* Display name of the scene
* @type {string || null}
*/
this.DisplayName = null;
/**
* Scene description
* @type {string || null}
*/
this.Description = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.SceneId = 'SceneId' in params ? params.SceneId : null;
this.DisplayName = 'DisplayName' in params ? params.DisplayName : null;
this.Description = 'Description' in params ? params.Description : null;
}
}
/**
* ImportKeyPair request structure.
* @class
*/
class ImportKeyPairRequest extends AbstractModel {
constructor(){
super();
/**
* Key pair name, which can contain up to 25 digits, letters, and underscores.
* @type {string || null}
*/
this.KeyName = null;
/**
* Public key content of the key pair, which is in the OpenSSH RSA format.
* @type {string || null}
*/
this.PublicKey = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.KeyName = 'KeyName' in params ? params.KeyName : null;
this.PublicKey = 'PublicKey' in params ? params.PublicKey : null;
}
}
/**
* DeleteBlueprints response structure.
* @class
*/
class DeleteBlueprintsResponse 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;
}
}
/**
* ModifyInstancesLoginKeyPairAttribute request structure.
* @class
*/
class ModifyInstancesLoginKeyPairAttributeRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID list. Each request can contain up to 100 instances at a time.
* @type {Array.<string> || null}
*/
this.InstanceIds = null;
/**
* Whether to allow login with the default key pair. Valid values: YES: yes; NO: no.
* @type {string || null}
*/
this.PermitLogin = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceIds = 'InstanceIds' in params ? params.InstanceIds : null;
this.PermitLogin = 'PermitLogin' in params ? params.PermitLogin : null;
}
}
/**
* IsolateInstances request structure.
* @class
*/
class IsolateInstancesRequest extends AbstractModel {
constructor(){
super();
/**
* IDs of target instances. You can get the IDs from the `InstanceId` parameter returned by the `DescribeInstances` API. Up to 20 instances can be specified at the same time.
* @type {Array.<string> || null}
*/
this.InstanceIds = null;
/**
* Whether to return data disks mounted on the instance together with the instance. Valid values:
`TRUE`: Return the mounted data disks at the same time
`FALSE`: Do not return the mounted data disks at the same time
Default value: `TRUE`.
* @type {boolean || null}
*/
this.IsolateDataDisk = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceIds = 'InstanceIds' in params ? params.InstanceIds : null;
this.IsolateDataDisk = 'IsolateDataDisk' in params ? params.IsolateDataDisk : null;
}
}
/**
* StopInstances response structure.
* @class
*/
class StopInstancesResponse 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;
}
}
/**
* CreateInstances response structure.
* @class
*/
class CreateInstancesResponse extends AbstractModel {
constructor(){
super();
/**
* List of IDs created by using this API. The returning of IDs does not mean that the instances are created successfully.
You can call `DescribeInstances` API, and find the instance ID in the `InstancesSet` returned to check its status. If the `status` is `running`, the instance is created successfully.
* @type {Array.<string> || null}
*/
this.InstanceIdSet = 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.InstanceIdSet = 'InstanceIdSet' in params ? params.InstanceIdSet : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* ModifyBlueprintAttribute response structure.
* @class
*/
class ModifyBlueprintAttributeResponse 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;
}
}
/**
* DescribeFirewallRulesTemplate response structure.
* @class
*/
class DescribeFirewallRulesTemplateResponse extends AbstractModel {
constructor(){
super();
/**
* Number of eligible firewall rules.
* @type {number || null}
*/
this.TotalCount = null;
/**
* Firewall rule details list.
* @type {Array.<FirewallRuleInfo> || null}
*/
this.FirewallRuleSet = 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.FirewallRuleSet) {
this.FirewallRuleSet = new Array();
for (let z in params.FirewallRuleSet) {
let obj = new FirewallRuleInfo();
obj.deserialize(params.FirewallRuleSet[z]);
this.FirewallRuleSet.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DescribeRegions request structure.
* @class
*/
class DescribeRegionsRequest extends AbstractModel {
constructor(){
super();
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
}
}
/**
* DescribeInstancesDiskNum response structure.
* @class
*/
class DescribeInstancesDiskNumResponse extends AbstractModel {
constructor(){
super();
/**
* Information of all attached disks
* @type {Array.<AttachDetail> || null}
*/
this.AttachDetailSet = null;
/**
* Number of attached cloud disks
* @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.AttachDetailSet) {
this.AttachDetailSet = new Array();
for (let z in params.AttachDetailSet) {
let obj = new AttachDetail();
obj.deserialize(params.AttachDetailSet[z]);
this.AttachDetailSet.push(obj);
}
}
this.TotalCount = 'TotalCount' in params ? params.TotalCount : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* InquirePriceCreateBlueprint response structure.
* @class
*/
class InquirePriceCreateBlueprintResponse extends AbstractModel {
constructor(){
super();
/**
* Custom image price.
* @type {BlueprintPrice || null}
*/
this.BlueprintPrice = 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.BlueprintPrice) {
let obj = new BlueprintPrice();
obj.deserialize(params.BlueprintPrice)
this.BlueprintPrice = obj;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DescribeInstancesReturnable request structure.
* @class
*/
class DescribeInstancesReturnableRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID list. Each request can contain up to 100 instances at a time. You can get an instance ID from the `InstanceId` returned by the [DescribeInstances](https://intl.cloud.tencent.com/document/api/1207/47573?from_cn_redirect=1) API.
* @type {Array.<string> || null}
*/
this.InstanceIds = 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;
}
this.InstanceIds = 'InstanceIds' in params ? params.InstanceIds : null;
this.Offset = 'Offset' in params ? params.Offset : null;
this.Limit = 'Limit' in params ? params.Limit : null;
}
}
/**
* Details of the returnable cloud disk
* @class
*/
class DiskReturnable extends AbstractModel {
constructor(){
super();
/**
* Cloud disk ID.
* @type {string || null}
*/
this.DiskId = null;
/**
* Whether the cloud disk can be returned.
* @type {boolean || null}
*/
this.IsReturnable = null;
/**
* Error code of cloud disk return failure.
* @type {number || null}
*/
this.ReturnFailCode = null;
/**
* Error message of cloud disk return failure.
* @type {string || null}
*/
this.ReturnFailMessage = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.DiskId = 'DiskId' in params ? params.DiskId : null;
this.IsReturnable = 'IsReturnable' in params ? params.IsReturnable : null;
this.ReturnFailCode = 'ReturnFailCode' in params ? params.ReturnFailCode : null;
this.ReturnFailMessage = 'ReturnFailMessage' in params ? params.ReturnFailMessage : null;
}
}
/**
* DescribeBlueprints response structure.
* @class
*/
class DescribeBlueprintsResponse extends AbstractModel {
constructor(){
super();
/**
* Number of eligible images.
* @type {number || null}
*/
this.TotalCount = null;
/**
* Image details list.
* @type {Array.<Blueprint> || null}
*/
this.BlueprintSet = 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.BlueprintSet) {
this.BlueprintSet = new Array();
for (let z in params.BlueprintSet) {
let obj = new Blueprint();
obj.deserialize(params.BlueprintSet[z]);
this.BlueprintSet.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DescribeKeyPairs request structure.
* @class
*/
class DescribeKeyPairsRequest extends AbstractModel {
constructor(){
super();
/**
* Key pair ID list.
* @type {Array.<string> || null}
*/
this.KeyIds = 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;
/**
* Filter list.
<li>key-id</li>Filter by **key pair ID**.
Type: String
Required: no
<li>key-name</li>Filter by the **key pair name**. Fuzzy match is supported.
Type: String
Required: no
Each request can contain up to 10 `Filters` and up to 5 `Filter.Values` for each filter. `KeyIds` and `Filters` cannot be specified at the same time.
* @type {Array.<Filter> || null}
*/
this.Filters = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.KeyIds = 'KeyIds' in params ? params.KeyIds : null;
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 Filter();
obj.deserialize(params.Filters[z]);
this.Filters.push(obj);
}
}
}
}
/**
* DescribeCcnAttachedInstances request structure.
* @class
*/
class DescribeCcnAttachedInstancesRequest extends AbstractModel {
constructor(){
super();
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
}
}
/**
* ResetInstancesPassword response structure.
* @class
*/
class ResetInstancesPasswordResponse 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;
}
}
/**
* Describes login settings of an instance.
* @class
*/
class LoginSettings extends AbstractModel {
constructor(){
super();
/**
* Key ID list. After a key is associated, you can use it to access the instance. Note: this field may return [], indicating that no valid values can be obtained.
* @type {Array.<string> || null}
*/
this.KeyIds = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.KeyIds = 'KeyIds' in params ? params.KeyIds : null;
}
}
/**
* Instance information.
* @class
*/
class Instance extends AbstractModel {
constructor(){
super();
/**
* Instance ID.
* @type {string || null}
*/
this.InstanceId = null;
/**
* Package ID.
* @type {string || null}
*/
this.BundleId = null;
/**
* Image ID.
* @type {string || null}
*/
this.BlueprintId = null;
/**
* Number of instance CPU cores.
* @type {number || null}
*/
this.CPU = null;
/**
* Instance memory capacity in GB.
* @type {number || null}
*/
this.Memory = null;
/**
* Instance name.
* @type {string || null}
*/
this.InstanceName = null;
/**
* Instance billing mode. Valid values:
PREPAID: prepaid (i.e., monthly subscription).
* @type {string || null}
*/
this.InstanceChargeType = null;
/**
* Instance system disk information.
* @type {SystemDisk || null}
*/
this.SystemDisk = null;
/**
* Private IP of instance primary ENI.
Note: this field may return null, indicating that no valid values can be obtained.
* @type {Array.<string> || null}
*/
this.PrivateAddresses = null;
/**
* Public IP of instance primary ENI.
Note: this field may return null, indicating that no valid values can be obtained.
* @type {Array.<string> || null}
*/
this.PublicAddresses = null;
/**
* Instance bandwidth information.
* @type {InternetAccessible || null}
*/
this.InternetAccessible = null;
/**
* Auto-Renewal flag. Valid values:
NOTIFY_AND_MANUAL_RENEW: notify upon expiration but do not renew automatically
NOTIFY_AND_AUTO_RENEW: notify upon expiration and renew automatically.
* @type {string || null}
*/
this.RenewFlag = null;
/**
* Instance login settings.
* @type {LoginSettings || null}
*/
this.LoginSettings = null;
/**
* Instance status. Valid values:
<li>PENDING: Creating</li><li>LAUNCH_FAILED: Failed to create</li><li>RUNNING: Running</li><li>STOPPED: Shut down</li><li>STARTING: Starting up</li><li>STOPPING: Shutting down</li><li>REBOOTING: Restarting</li><li>SHUTDOWN: Shutdown and to be terminated</li><li>TERMINATING: Terminating</li><li>DELETING: Deleting</li><li>FREEZING: Frozen</li><li>ENTER_RESCUE_MODE: Entering the rescue mode</li><li>RESCUE_MODE: Rescue mode</li><li>EXIT_RESCUE_MODE: Exiting from the rescue mode</li>
* @type {string || null}
*/
this.InstanceState = null;
/**
* Globally unique ID of instance.
* @type {string || null}
*/
this.Uuid = null;
/**
* Last instance operation, such as `StopInstances` and `ResetInstance`. Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.LatestOperation = null;
/**
* Last instance operation status. Valid values:
SUCCESS: operation succeeded
OPERATING: the operation is being executed
FAILED: operation failed
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.LatestOperationState = null;
/**
* Unique request ID for the last operation of the instance.
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.LatestOperationRequestId = null;
/**
* Isolation time according to ISO 8601 standard. UTC time is used.
Format: YYYY-MM-DDThh:mm:ssZ.
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.IsolatedTime = null;
/**
* Creation time according to ISO 8601 standard. UTC time is used.
Format: YYYY-MM-DDThh:mm:ssZ.
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.CreatedTime = null;
/**
* Expiration time according to ISO 8601 standard. UTC time is used.
Format: YYYY-MM-DDThh:mm:ssZ.
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.ExpiredTime = null;
/**
* OS type, such as LINUX_UNIX and WINDOWS.
* @type {string || null}
*/
this.PlatformType = null;
/**
* OS type.
* @type {string || null}
*/
this.Platform = null;
/**
* OS name.
* @type {string || null}
*/
this.OsName = null;
/**
* AZ.
* @type {string || null}
*/
this.Zone = null;
/**
* The list of tags associated with the instance
* @type {Array.<Tag> || null}
*/
this.Tags = null;
/**
* Obtain instance status
<li>NORMAL: The instance is normal</li><li>NETWORK_RESTRICT: The instance is blocked from the network.</li>
* @type {string || null}
*/
this.InstanceRestrictState = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.BundleId = 'BundleId' in params ? params.BundleId : null;
this.BlueprintId = 'BlueprintId' in params ? params.BlueprintId : null;
this.CPU = 'CPU' in params ? params.CPU : null;
this.Memory = 'Memory' in params ? params.Memory : null;
this.InstanceName = 'InstanceName' in params ? params.InstanceName : null;
this.InstanceChargeType = 'InstanceChargeType' in params ? params.InstanceChargeType : null;
if (params.SystemDisk) {
let obj = new SystemDisk();
obj.deserialize(params.SystemDisk)
this.SystemDisk = obj;
}
this.PrivateAddresses = 'PrivateAddresses' in params ? params.PrivateAddresses : null;
this.PublicAddresses = 'PublicAddresses' in params ? params.PublicAddresses : null;
if (params.InternetAccessible) {
let obj = new InternetAccessible();
obj.deserialize(params.InternetAccessible)
this.InternetAccessible = obj;
}
this.RenewFlag = 'RenewFlag' in params ? params.RenewFlag : null;
if (params.LoginSettings) {
let obj = new LoginSettings();
obj.deserialize(params.LoginSettings)
this.LoginSettings = obj;
}
this.InstanceState = 'InstanceState' in params ? params.InstanceState : null;
this.Uuid = 'Uuid' in params ? params.Uuid : null;
this.LatestOperation = 'LatestOperation' in params ? params.LatestOperation : null;
this.LatestOperationState = 'LatestOperationState' in params ? params.LatestOperationState : null;
this.LatestOperationRequestId = 'LatestOperationRequestId' in params ? params.LatestOperationRequestId : null;
this.IsolatedTime = 'IsolatedTime' in params ? params.IsolatedTime : null;
this.CreatedTime = 'CreatedTime' in params ? params.CreatedTime : null;
this.ExpiredTime = 'ExpiredTime' in params ? params.ExpiredTime : null;
this.PlatformType = 'PlatformType' in params ? params.PlatformType : null;
this.Platform = 'Platform' in params ? params.Platform : null;
this.OsName = 'OsName' in params ? params.OsName : null;
this.Zone = 'Zone' in params ? params.Zone : null;
if (params.Tags) {
this.Tags = new Array();
for (let z in params.Tags) {
let obj = new Tag();
obj.deserialize(params.Tags[z]);
this.Tags.push(obj);
}
}
this.InstanceRestrictState = 'InstanceRestrictState' in params ? params.InstanceRestrictState : null;
}
}
/**
* Docker container mount volume
* @class
*/
class DockerContainerVolume extends AbstractModel {
constructor(){
super();
/**
* Container path
* @type {string || null}
*/
this.ContainerPath = null;
/**
* Host path
* @type {string || null}
*/
this.HostPath = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.ContainerPath = 'ContainerPath' in params ? params.ContainerPath : null;
this.HostPath = 'HostPath' in params ? params.HostPath : null;
}
}
/**
* IsolateInstances response structure.
* @class
*/
class IsolateInstancesResponse 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;
}
}
/**
* CreateKeyPair response structure.
* @class
*/
class CreateKeyPairResponse extends AbstractModel {
constructor(){
super();
/**
* Key pair information.
* @type {KeyPair || null}
*/
this.KeyPair = 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.KeyPair) {
let obj = new KeyPair();
obj.deserialize(params.KeyPair)
this.KeyPair = obj;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DescribeInstanceVncUrl response structure.
* @class
*/
class DescribeInstanceVncUrlResponse extends AbstractModel {
constructor(){
super();
/**
* Instance VNC URL.
* @type {string || null}
*/
this.InstanceVncUrl = 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.InstanceVncUrl = 'InstanceVncUrl' in params ? params.InstanceVncUrl : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* ModifyFirewallRules response structure.
* @class
*/
class ModifyFirewallRulesResponse 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;
}
}
/**
* Cloud disk price
* @class
*/
class DiskPrice extends AbstractModel {
constructor(){
super();
/**
* Cloud disk unit price.
* @type {number || null}
*/
this.OriginalDiskPrice = null;
/**
* Total cloud disk price.
* @type {number || null}
*/
this.OriginalPrice = null;
/**
* Discount.
* @type {number || null}
*/
this.Discount = null;
/**
* Discounted total price.
* @type {number || null}
*/
this.DiscountPrice = null;
/**
* Detailed billing items
* @type {Array.<DetailPrice> || null}
*/
this.DetailPrices = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.OriginalDiskPrice = 'OriginalDiskPrice' in params ? params.OriginalDiskPrice : null;
this.OriginalPrice = 'OriginalPrice' in params ? params.OriginalPrice : null;
this.Discount = 'Discount' in params ? params.Discount : null;
this.DiscountPrice = 'DiscountPrice' in params ? params.DiscountPrice : null;
if (params.DetailPrices) {
this.DetailPrices = new Array();
for (let z in params.DetailPrices) {
let obj = new DetailPrice();
obj.deserialize(params.DetailPrices[z]);
this.DetailPrices.push(obj);
}
}
}
}
/**
* DescribeCcnAttachedInstances response structure.
* @class
*/
class DescribeCcnAttachedInstancesResponse extends AbstractModel {
constructor(){
super();
/**
* List of instances associated with the CCN instance.
Note: this field may return null, indicating that no valid values can be obtained.
* @type {Array.<CcnAttachedInstance> || null}
*/
this.CcnAttachedInstanceSet = 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.CcnAttachedInstanceSet) {
this.CcnAttachedInstanceSet = new Array();
for (let z in params.CcnAttachedInstanceSet) {
let obj = new CcnAttachedInstance();
obj.deserialize(params.CcnAttachedInstanceSet[z]);
this.CcnAttachedInstanceSet.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DescribeBundles request structure.
* @class
*/
class DescribeBundlesRequest extends AbstractModel {
constructor(){
super();
/**
* Package ID list.
* @type {Array.<string> || null}
*/
this.BundleIds = null;
/**
* Offset. Default value: 0. For more information on `Offset`, please see the relevant section in [Overview](https://intl.cloud.tencent.com/document/product/1207/47578?from_cn_redirect=1).
* @type {number || null}
*/
this.Offset = null;
/**
* Number of returned results. Default value: 20. Maximum value: 100. For more information on `Limit`, please see the relevant section in the API [Overview](https://intl.cloud.tencent.com/document/product/1207/47578?from_cn_redirect=1).
* @type {number || null}
*/
this.Limit = null;
/**
* Filter list.
<li>bundle-id</li>Filter by the **bundle ID**.
Type: String
Required: No
<li>`support-platform-type`<li>Filter by the **system type**.
Values: `LINUX_UNIX` (Linux/Unix), `WINDOWS` (Windows).
Type: String
Required: No
<li>bundle-type</li>Filter by the **bundle type**.
Values: `GENERAL_BUNDLE` (General bundle), `STORAGE_BUNDLE` (Storage bundle), `ENTERPRISE_BUNDLE` (Enterprise bundle), `EXCLUSIVE_BUNDLE` (Dedicated bundle), `BEFAST_BUNDLE` (BeFast bundle), `STARTER_BUNDLE` (Beginner bundle); `CAREFREE_BUNDLE` (Carefree bundle);
Type: String
Required: No
<li>bundle-state</li>Filter by the **bundle status**.
Values: `ONLINE`, `OFFLINE`
Type: String
Required: No
Each request can contain up to 10 `Filters` and 5 `Filter.Values`. You cannot specify both `BundleIds` and `Filters` at the same time.
* @type {Array.<Filter> || null}
*/
this.Filters = null;
/**
* AZ list, which contains all AZs by default.
* @type {Array.<string> || null}
*/
this.Zones = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.BundleIds = 'BundleIds' in params ? params.BundleIds : null;
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 Filter();
obj.deserialize(params.Filters[z]);
this.Filters.push(obj);
}
}
this.Zones = 'Zones' in params ? params.Zones : null;
}
}
/**
* Image information.
* @class
*/
class Blueprint extends AbstractModel {
constructor(){
super();
/**
* Image ID, which is the unique identifier of `Blueprint`.
* @type {string || null}
*/
this.BlueprintId = null;
/**
* Image title to be displayed.
* @type {string || null}
*/
this.DisplayTitle = null;
/**
* Image version to be displayed.
* @type {string || null}
*/
this.DisplayVersion = null;
/**
* Image description information.
Note: This field may return `null`, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.Description = null;
/**
* OS name.
* @type {string || null}
*/
this.OsName = null;
/**
* OS type.
* @type {string || null}
*/
this.Platform = null;
/**
* OS type, such as LINUX_UNIX and WINDOWS.
* @type {string || null}
*/
this.PlatformType = null;
/**
* Image type, such as APP_OS, PURE_OS, and PRIVATE.
* @type {string || null}
*/
this.BlueprintType = null;
/**
* Image picture URL.
* @type {string || null}
*/
this.ImageUrl = null;
/**
* System disk size required by image in GB.
* @type {number || null}
*/
this.RequiredSystemDiskSize = null;
/**
* Image status.
* @type {string || null}
*/
this.BlueprintState = null;
/**
* Creation time according to ISO 8601 standard. UTC time is used.
Format: YYYY-MM-DDThh:mm:ssZ.
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.CreatedTime = null;
/**
* Image name.
* @type {string || null}
*/
this.BlueprintName = null;
/**
* Whether the image supports automation tools.
* @type {boolean || null}
*/
this.SupportAutomationTools = null;
/**
* Memory size required by image in GB.
* @type {number || null}
*/
this.RequiredMemorySize = null;
/**
* ID of the Lighthouse image shared from a CVM image
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.ImageId = null;
/**
* URL of official website of the open-source project
* @type {string || null}
*/
this.CommunityUrl = null;
/**
* Guide documentation URL
* @type {string || null}
*/
this.GuideUrl = null;
/**
* Array of IDs of scenes associated with an image
Note: This field may return `null`, indicating that no valid values can be obtained.
* @type {Array.<string> || null}
*/
this.SceneIdSet = null;
/**
* Docker version.
Note: This field may return `null`, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.DockerVersion = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.BlueprintId = 'BlueprintId' in params ? params.BlueprintId : null;
this.DisplayTitle = 'DisplayTitle' in params ? params.DisplayTitle : null;
this.DisplayVersion = 'DisplayVersion' in params ? params.DisplayVersion : null;
this.Description = 'Description' in params ? params.Description : null;
this.OsName = 'OsName' in params ? params.OsName : null;
this.Platform = 'Platform' in params ? params.Platform : null;
this.PlatformType = 'PlatformType' in params ? params.PlatformType : null;
this.BlueprintType = 'BlueprintType' in params ? params.BlueprintType : null;
this.ImageUrl = 'ImageUrl' in params ? params.ImageUrl : null;
this.RequiredSystemDiskSize = 'RequiredSystemDiskSize' in params ? params.RequiredSystemDiskSize : null;
this.BlueprintState = 'BlueprintState' in params ? params.BlueprintState : null;
this.CreatedTime = 'CreatedTime' in params ? params.CreatedTime : null;
this.BlueprintName = 'BlueprintName' in params ? params.BlueprintName : null;
this.SupportAutomationTools = 'SupportAutomationTools' in params ? params.SupportAutomationTools : null;
this.RequiredMemorySize = 'RequiredMemorySize' in params ? params.RequiredMemorySize : null;
this.ImageId = 'ImageId' in params ? params.ImageId : null;
this.CommunityUrl = 'CommunityUrl' in params ? params.CommunityUrl : null;
this.GuideUrl = 'GuideUrl' in params ? params.GuideUrl : null;
this.SceneIdSet = 'SceneIdSet' in params ? params.SceneIdSet : null;
this.DockerVersion = 'DockerVersion' in params ? params.DockerVersion : null;
}
}
/**
* Total price information
* @class
*/
class TotalPrice extends AbstractModel {
constructor(){
super();
/**
* Total original price
Note: This field may return `null`, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.OriginalPrice = null;
/**
* Total discounted price
Note: This field may return `null`, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.DiscountPrice = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.OriginalPrice = 'OriginalPrice' in params ? params.OriginalPrice : null;
this.DiscountPrice = 'DiscountPrice' in params ? params.DiscountPrice : null;
}
}
/**
* Restricted operation.
* @class
*/
class DeniedAction extends AbstractModel {
constructor(){
super();
/**
* Restricted operation name.
* @type {string || null}
*/
this.Action = null;
/**
* Restricted operation message code.
* @type {string || null}
*/
this.Code = null;
/**
* Restricted operation message.
* @type {string || null}
*/
this.Message = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Action = 'Action' in params ? params.Action : null;
this.Code = 'Code' in params ? params.Code : null;
this.Message = 'Message' in params ? params.Message : null;
}
}
/**
* DescribeAllScenes response structure.
* @class
*/
class DescribeAllScenesResponse extends AbstractModel {
constructor(){
super();
/**
* List of scenes
* @type {Array.<SceneInfo> || null}
*/
this.SceneInfoSet = null;
/**
* Total count of scenes
* @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.SceneInfoSet) {
this.SceneInfoSet = new Array();
for (let z in params.SceneInfoSet) {
let obj = new SceneInfo();
obj.deserialize(params.SceneInfoSet[z]);
this.SceneInfoSet.push(obj);
}
}
this.TotalCount = 'TotalCount' in params ? params.TotalCount : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* ModifyInstancesLoginKeyPairAttribute response structure.
* @class
*/
class ModifyInstancesLoginKeyPairAttributeResponse 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;
}
}
/**
* InquirePriceRenewDisks response structure.
* @class
*/
class InquirePriceRenewDisksResponse extends AbstractModel {
constructor(){
super();
/**
* Cloud disk price.
* @type {DiskPrice || null}
*/
this.DiskPrice = 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.DiskPrice) {
let obj = new DiskPrice();
obj.deserialize(params.DiskPrice)
this.DiskPrice = obj;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* Package information.
* @class
*/
class Bundle extends AbstractModel {
constructor(){
super();
/**
* Package ID.
* @type {string || null}
*/
this.BundleId = null;
/**
* Memory size in GB.
* @type {number || null}
*/
this.Memory = null;
/**
* System disk type.
Values:
<li>`CLOUD_SSD`: SSD cloud disks</li><li>`CLOUD_PREMIUM`: Premium cloud disks</li>
* @type {string || null}
*/
this.SystemDiskType = null;
/**
* System disk size in GB.
* @type {number || null}
*/
this.SystemDiskSize = null;
/**
* Monthly network traffic in GB.
* @type {number || null}
*/
this.MonthlyTraffic = null;
/**
* Whether Linux/Unix is supported.
* @type {boolean || null}
*/
this.SupportLinuxUnixPlatform = null;
/**
* Whether Windows is supported.
* @type {boolean || null}
*/
this.SupportWindowsPlatform = null;
/**
* Current package unit price information.
* @type {Price || null}
*/
this.Price = null;
/**
* Number of CPU cores.
* @type {number || null}
*/
this.CPU = null;
/**
* Peak bandwidth in Mbps.
* @type {number || null}
*/
this.InternetMaxBandwidthOut = null;
/**
* Network billing mode.
* @type {string || null}
*/
this.InternetChargeType = null;
/**
* Package sale status. Valid values: AVAILABLE, SOLD_OUT
* @type {string || null}
*/
this.BundleSalesState = null;
/**
* Bundle type.
Valid values:
<li>STARTER_BUNDLE: Starter bundle</li>
<li>GENERAL_BUNDLE: General bundle</li>
<li>ENTERPRISE_BUNDLE: Enterprise bundle</li>
<li>STORAGE_BUNDLE: Storage-optimized bundle</li>
<li>EXCLUSIVE_BUNDLE: Dedicated bundle</li>
<li>HK_EXCLUSIVE_BUNDLE: Hong Kong-dedicated bundle </li>
<li>CAREFREE_BUNDLE: Lighthouse Care bundle</li>
<li>BEFAST_BUNDLE: BeFast bundle </li>
* @type {string || null}
*/
this.BundleType = null;
/**
* Bundle type description
Note: This parameter may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.BundleTypeDescription = null;
/**
* Package tag.
Valid values:
"ACTIVITY": promotional package
"NORMAL": regular package
"CAREFREE": carefree package
* @type {string || null}
*/
this.BundleDisplayLabel = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.BundleId = 'BundleId' in params ? params.BundleId : null;
this.Memory = 'Memory' in params ? params.Memory : null;
this.SystemDiskType = 'SystemDiskType' in params ? params.SystemDiskType : null;
this.SystemDiskSize = 'SystemDiskSize' in params ? params.SystemDiskSize : null;
this.MonthlyTraffic = 'MonthlyTraffic' in params ? params.MonthlyTraffic : null;
this.SupportLinuxUnixPlatform = 'SupportLinuxUnixPlatform' in params ? params.SupportLinuxUnixPlatform : null;
this.SupportWindowsPlatform = 'SupportWindowsPlatform' in params ? params.SupportWindowsPlatform : null;
if (params.Price) {
let obj = new Price();
obj.deserialize(params.Price)
this.Price = obj;
}
this.CPU = 'CPU' in params ? params.CPU : null;
this.InternetMaxBandwidthOut = 'InternetMaxBandwidthOut' in params ? params.InternetMaxBandwidthOut : null;
this.InternetChargeType = 'InternetChargeType' in params ? params.InternetChargeType : null;
this.BundleSalesState = 'BundleSalesState' in params ? params.BundleSalesState : null;
this.BundleType = 'BundleType' in params ? params.BundleType : null;
this.BundleTypeDescription = 'BundleTypeDescription' in params ? params.BundleTypeDescription : null;
this.BundleDisplayLabel = 'BundleDisplayLabel' in params ? params.BundleDisplayLabel : null;
}
}
/**
* Cloud disk configuration
* @class
*/
class DiskConfig extends AbstractModel {
constructor(){
super();
/**
* Availability zone.
* @type {string || null}
*/
this.Zone = null;
/**
* Cloud disk type.
* @type {string || null}
*/
this.DiskType = null;
/**
* Cloud disk sale status.
* @type {string || null}
*/
this.DiskSalesState = null;
/**
* Maximum cloud disk size.
* @type {number || null}
*/
this.MaxDiskSize = null;
/**
* Minimum cloud disk size.
* @type {number || null}
*/
this.MinDiskSize = null;
/**
* Cloud disk increment.
* @type {number || null}
*/
this.DiskStepSize = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Zone = 'Zone' in params ? params.Zone : null;
this.DiskType = 'DiskType' in params ? params.DiskType : null;
this.DiskSalesState = 'DiskSalesState' in params ? params.DiskSalesState : null;
this.MaxDiskSize = 'MaxDiskSize' in params ? params.MaxDiskSize : null;
this.MinDiskSize = 'MinDiskSize' in params ? params.MinDiskSize : null;
this.DiskStepSize = 'DiskStepSize' in params ? params.DiskStepSize : null;
}
}
/**
* InquirePriceCreateInstances response structure.
* @class
*/
class InquirePriceCreateInstancesResponse extends AbstractModel {
constructor(){
super();
/**
* Price query information.
* @type {Price || null}
*/
this.Price = 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.Price) {
let obj = new Price();
obj.deserialize(params.Price)
this.Price = obj;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DescribeSnapshotsDeniedActions request structure.
* @class
*/
class DescribeSnapshotsDeniedActionsRequest extends AbstractModel {
constructor(){
super();
/**
* Snapshot ID list, which can be queried through `DescribeSnapshots`.
* @type {Array.<string> || null}
*/
this.SnapshotIds = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.SnapshotIds = 'SnapshotIds' in params ? params.SnapshotIds : null;
}
}
/**
* DescribeDiskDiscount response structure.
* @class
*/
class DescribeDiskDiscountResponse extends AbstractModel {
constructor(){
super();
/**
* Currency: CNY, USD.
* @type {string || null}
*/
this.Currency = null;
/**
* Discount tier details. The information of each tier includes the duration, discounted quantity, total price, discounted price, and discount details (user discount, official website discount, or final discount).
* @type {Array.<DiscountDetail> || null}
*/
this.DiscountDetail = 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.Currency = 'Currency' in params ? params.Currency : null;
if (params.DiscountDetail) {
this.DiscountDetail = new Array();
for (let z in params.DiscountDetail) {
let obj = new DiscountDetail();
obj.deserialize(params.DiscountDetail[z]);
this.DiscountDetail.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* ResetInstancesPassword request structure.
* @class
*/
class ResetInstancesPasswordRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID list. Each request can contain up to 100 instances at a time.
* @type {Array.<string> || null}
*/
this.InstanceIds = null;
/**
* Login password of the instance(s). The password requirements vary among different operating systems:
The password of a `LINUX_UNIX` instance must contain 8–30 characters (above 12 characters preferably) in at least three of the following types and cannot begin with "/": <br><li>Lowercase letters: [a–z]<br><li>Uppercase letters: [A–Z]<br><li>Digits: 0–9<br><li>Special symbols: ()\`~!@#$%^&\*-+=\_|{}[]:;'<>,.?/</li>
The password of a `WINDOWS` instance must contain 12–30 characters in at least three of the following types and cannot begin with "/" or include the username: <br><li>Lowercase letters: [a–z]<br><li>Uppercase letters: [A–Z]<br><li>Digits: 0–9<br><li>Special symbols: ()\`~!@#$%^&\*-+=\_|{}[]:;' <>,.?/<br><li>If both `LINUX_UNIX` and `WINDOWS` instances exist, the requirements for password complexity of `WINDOWS` instances shall prevail.
* @type {string || null}
*/
this.Password = null;
/**
* OS username of the instance for which you want to reset the password, which can contain up to 64 characters.
* @type {string || null}
*/
this.UserName = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceIds = 'InstanceIds' in params ? params.InstanceIds : null;
this.Password = 'Password' in params ? params.Password : null;
this.UserName = 'UserName' in params ? params.UserName : null;
}
}
/**
* Parameter settings for the monthly subscribed cloud disk
* @class
*/
class DiskChargePrepaid extends AbstractModel {
constructor(){
super();
/**
* Purchase duration.
* @type {number || null}
*/
this.Period = null;
/**
* Auto-Renewal flag. Valid values:
`NOTIFY_AND_AUTO_RENEW`: Trigger expiration notification and renew automatically
`NOTIFY_AND_MANUAL_RENEW`: Trigger expiration notification but do not renew
`u200cDISABLE_NOTIFY_AND_AUTO_RENEW`: Neither trigger expiration notification nor renew
Default: `NOTIFY_AND_MANUAL_RENEW`. If `NOTIFY_AND_AUTO_RENEW` is specified, the instance is automatically renewed on a monthly basis when the account balance is sufficient.
* @type {string || null}
*/
this.RenewFlag = null;
/**
* Purchase duration unit. Default value: "m" (month)
* @type {string || null}
*/
this.TimeUnit = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Period = 'Period' in params ? params.Period : null;
this.RenewFlag = 'RenewFlag' in params ? params.RenewFlag : null;
this.TimeUnit = 'TimeUnit' in params ? params.TimeUnit : null;
}
}
/**
* CreateKeyPair request structure.
* @class
*/
class CreateKeyPairRequest extends AbstractModel {
constructor(){
super();
/**
* Key pair name, which can contain up to 25 digits, letters, and underscores.
* @type {string || null}
*/
this.KeyName = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.KeyName = 'KeyName' in params ? params.KeyName : null;
}
}
/**
* DescribeInstances request structure.
* @class
*/
class DescribeInstancesRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID list. Each request can contain up to 100 instances at a time.
* @type {Array.<string> || null}
*/
this.InstanceIds = null;
/**
* Filter list.
<li>instance-name</li>Filter by the **instance name**.
Type: String
Required: No
<li>private-ip-address</li>Filter by the **private IP of instance primary ENI**.
Type: String
Required: No
<li>public-ip-address</li>Filter by the **public IP of instance primary ENI**.
Type: String
Required: No
<li>zone</li>Filter by the availability zone.
Type: String
Required: No
<li>instance-state</li>Filter by the **instance status**.
Type: String
Required: No
<li>tag-key</li>Filter by the **tag key**.
Type: String
Required: No
<li>tag-value</li>Filter by the **tag value**.
Type: String
Required: No
<li> tag:tag-key</li>Filter by tag key-value pair. The `tag-key` should be replaced with a specific tag key.
Type: String
Required: No
Each request can contain up to 10 `Filters` and 100 `Filter.Values`. You cannot specify both `InstanceIds` and `Filters` at the same time.
* @type {Array.<Filter> || null}
*/
this.Filters = null;
/**
* Offset. Default value: 0. For more information on `Offset`, please see the relevant section in [Overview](https://intl.cloud.tencent.com/document/product/1207/47578?from_cn_redirect=1).
* @type {number || null}
*/
this.Offset = null;
/**
* Number of returned results. Default value: 20. Maximum value: 100. For more information on `Limit`, please see the relevant section in the API [Overview](https://intl.cloud.tencent.com/document/product/1207/47578?from_cn_redirect=1).
* @type {number || null}
*/
this.Limit = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceIds = 'InstanceIds' in params ? params.InstanceIds : 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);
}
}
this.Offset = 'Offset' in params ? params.Offset : null;
this.Limit = 'Limit' in params ? params.Limit : null;
}
}
/**
* DetachCcn request structure.
* @class
*/
class DetachCcnRequest extends AbstractModel {
constructor(){
super();
/**
* CCN instance ID.
* @type {string || null}
*/
this.CcnId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.CcnId = 'CcnId' in params ? params.CcnId : null;
}
}
/**
* >Key-Value pair filter for conditional filtering queries, such as filtering name
> * If there are multiple `Filter` parameters, the relationship among them is the logical `AND`.
> * If there are multiple `Values` for the same `Filter`, the relationship among the `Values` is the logical `OR`.
>
> Taking the `Filter` in the `DescribeInstances` API as an example, you can use the following filters to query the instance whose name (`instance-name`) is `test` ***and*** private IP (`private-ip-address`) is 10.10.10.10:
```
Filters.0.Name=instance-name
&Filters.0.Values.0=test
&Filters.1.Name=private-ip-address
&Filters.1.Values.0=10.10.10.10
```
* @class
*/
class Filter extends AbstractModel {
constructor(){
super();
/**
* Field to be filtered.
* @type {string || null}
*/
this.Name = null;
/**
* Filter value of 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;
}
}
/**
* DescribeSnapshots response structure.
* @class
*/
class DescribeSnapshotsResponse extends AbstractModel {
constructor(){
super();
/**
* Number of snapshots.
* @type {number || null}
*/
this.TotalCount = null;
/**
* List of snapshot details.
* @type {Array.<Snapshot> || null}
*/
this.SnapshotSet = 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.SnapshotSet) {
this.SnapshotSet = new Array();
for (let z in params.SnapshotSet) {
let obj = new Snapshot();
obj.deserialize(params.SnapshotSet[z]);
this.SnapshotSet.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* Snapshot information.
* @class
*/
class Snapshot extends AbstractModel {
constructor(){
super();
/**
* Snapshot ID.
* @type {string || null}
*/
this.SnapshotId = null;
/**
* Type of the disk for which the snapshot is created. Valid values: <li>SYSTEM_DISK: system disk</li>
* @type {string || null}
*/
this.DiskUsage = null;
/**
* ID of the disk for which the snapshot is created.
* @type {string || null}
*/
this.DiskId = null;
/**
* Size of the disk in GB for which the snapshot is created.
* @type {number || null}
*/
this.DiskSize = null;
/**
* Snapshot name, which is a custom snapshot alias.
* @type {string || null}
*/
this.SnapshotName = null;
/**
* Snapshot status. Valid values:
<li>NORMAL: normal </li>
<li>CREATING: creating</li>
<li>ROLLBACKING: rolling back</li>
* @type {string || null}
*/
this.SnapshotState = null;
/**
* Snapshot creation or rollback progress in percentage. After success, the value of this field will become 100.
* @type {number || null}
*/
this.Percent = null;
/**
* Last snapshot operation. It is recorded only during snapshot creation and rollback.
Example values: CreateInstanceSnapshot, RollbackInstanceSnapshot.
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.LatestOperation = null;
/**
* Last snapshot operation status. It is recorded only during snapshot creation and rollback.
Valid values:
<li>SUCCESS: operation succeeded</li>
<li>OPERATING: the operation is being executed</li>
<li>FAILED: operation failed</li>
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.LatestOperationState = null;
/**
* Unique request ID for the last snapshot operation. It is recorded only during snapshot creation and rollback.
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.LatestOperationRequestId = null;
/**
* Snapshot creation time.
Note: This field may return `null`, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.CreatedTime = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.SnapshotId = 'SnapshotId' in params ? params.SnapshotId : null;
this.DiskUsage = 'DiskUsage' in params ? params.DiskUsage : null;
this.DiskId = 'DiskId' in params ? params.DiskId : null;
this.DiskSize = 'DiskSize' in params ? params.DiskSize : null;
this.SnapshotName = 'SnapshotName' in params ? params.SnapshotName : null;
this.SnapshotState = 'SnapshotState' in params ? params.SnapshotState : null;
this.Percent = 'Percent' in params ? params.Percent : null;
this.LatestOperation = 'LatestOperation' in params ? params.LatestOperation : null;
this.LatestOperationState = 'LatestOperationState' in params ? params.LatestOperationState : null;
this.LatestOperationRequestId = 'LatestOperationRequestId' in params ? params.LatestOperationRequestId : null;
this.CreatedTime = 'CreatedTime' in params ? params.CreatedTime : null;
}
}
/**
* ModifyFirewallRuleDescription response structure.
* @class
*/
class ModifyFirewallRuleDescriptionResponse 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;
}
}
/**
* DescribeDiskDiscount request structure.
* @class
*/
class DescribeDiskDiscountRequest extends AbstractModel {
constructor(){
super();
/**
* Cloud disk type. Valid values: "CLOUD_PREMIUM".
* @type {string || null}
*/
this.DiskType = null;
/**
* Cloud disk size.
* @type {number || null}
*/
this.DiskSize = null;
/**
* Specify the quota of disk backups. No quota if it’s left empty. Only one quota is allowed.
* @type {number || null}
*/
this.DiskBackupQuota = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.DiskType = 'DiskType' in params ? params.DiskType : null;
this.DiskSize = 'DiskSize' in params ? params.DiskSize : null;
this.DiskBackupQuota = 'DiskBackupQuota' in params ? params.DiskBackupQuota : null;
}
}
/**
* CreateDisks response structure.
* @class
*/
class CreateDisksResponse extends AbstractModel {
constructor(){
super();
/**
* List of IDs created by using this API. The returning of IDs does not mean that the instances are created successfully.
You can call `DescribeDisks` API, and find the disk ID in the `DiskSet` returned to check its status. If the status changes from `PENDING` to `UNATTACHED` or `ATTACHED`, the instance is created successfully.
* @type {Array.<string> || null}
*/
this.DiskIdSet = 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.DiskIdSet = 'DiskIdSet' in params ? params.DiskIdSet : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* AttachDisks response structure.
* @class
*/
class AttachDisksResponse 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;
}
}
/**
* CreateFirewallRules request structure.
* @class
*/
class CreateFirewallRulesRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID.
* @type {string || null}
*/
this.InstanceId = null;
/**
* Firewall rule list.
* @type {Array.<FirewallRule> || null}
*/
this.FirewallRules = null;
/**
* Current firewall version number. Every time you update the firewall rule version, it will be automatically increased by 1 to prevent the rule from expiring. If it is left empty, conflicts will not be considered.
* @type {number || null}
*/
this.FirewallVersion = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
if (params.FirewallRules) {
this.FirewallRules = new Array();
for (let z in params.FirewallRules) {
let obj = new FirewallRule();
obj.deserialize(params.FirewallRules[z]);
this.FirewallRules.push(obj);
}
}
this.FirewallVersion = 'FirewallVersion' in params ? params.FirewallVersion : null;
}
}
/**
* Image software information.
* @class
*/
class Software extends AbstractModel {
constructor(){
super();
/**
* Software name.
* @type {string || null}
*/
this.Name = null;
/**
* Software version.
* @type {string || null}
*/
this.Version = null;
/**
* Software picture URL.
* @type {string || null}
*/
this.ImageUrl = null;
/**
* Software installation directory.
* @type {string || null}
*/
this.InstallDir = null;
/**
* List of software details.
* @type {Array.<SoftwareDetail> || null}
*/
this.DetailSet = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Name = 'Name' in params ? params.Name : null;
this.Version = 'Version' in params ? params.Version : null;
this.ImageUrl = 'ImageUrl' in params ? params.ImageUrl : null;
this.InstallDir = 'InstallDir' in params ? params.InstallDir : null;
if (params.DetailSet) {
this.DetailSet = new Array();
for (let z in params.DetailSet) {
let obj = new SoftwareDetail();
obj.deserialize(params.DetailSet[z]);
this.DetailSet.push(obj);
}
}
}
}
/**
* DescribeFirewallRules response structure.
* @class
*/
class DescribeFirewallRulesResponse extends AbstractModel {
constructor(){
super();
/**
* Number of eligible firewall rules.
* @type {number || null}
*/
this.TotalCount = null;
/**
* Firewall rule details list.
* @type {Array.<FirewallRuleInfo> || null}
*/
this.FirewallRuleSet = null;
/**
* Firewall version number.
* @type {number || null}
*/
this.FirewallVersion = 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.FirewallRuleSet) {
this.FirewallRuleSet = new Array();
for (let z in params.FirewallRuleSet) {
let obj = new FirewallRuleInfo();
obj.deserialize(params.FirewallRuleSet[z]);
this.FirewallRuleSet.push(obj);
}
}
this.FirewallVersion = 'FirewallVersion' in params ? params.FirewallVersion : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DescribeInstancesReturnable response structure.
* @class
*/
class DescribeInstancesReturnableResponse extends AbstractModel {
constructor(){
super();
/**
* Number of eligible instances.
* @type {number || null}
*/
this.TotalCount = null;
/**
* List of returnable instance details.
* @type {Array.<InstanceReturnable> || null}
*/
this.InstanceReturnableSet = 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.InstanceReturnableSet) {
this.InstanceReturnableSet = new Array();
for (let z in params.InstanceReturnableSet) {
let obj = new InstanceReturnable();
obj.deserialize(params.InstanceReturnableSet[z]);
this.InstanceReturnableSet.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* Container environment variable
* @class
*/
class ContainerEnv extends AbstractModel {
constructor(){
super();
/**
* Environment variable key
* @type {string || null}
*/
this.Key = null;
/**
* Environment variable value
* @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;
}
}
/**
* Firewall rule information.
* @class
*/
class FirewallRule extends AbstractModel {
constructor(){
super();
/**
* Protocol. Valid values: TCP, UDP, ICMP, ALL.
* @type {string || null}
*/
this.Protocol = null;
/**
* Port. Valid values: ALL, one single port, multiple ports separated by commas, or port range indicated by a minus sign
* @type {string || null}
*/
this.Port = null;
/**
* IP range or IP (mutually exclusive). Default value: 0.0.0.0/0, which indicates all sources.
* @type {string || null}
*/
this.CidrBlock = null;
/**
* Valid values: ACCEPT, DROP. Default value: ACCEPT.
* @type {string || null}
*/
this.Action = null;
/**
* Firewall rule description.
* @type {string || null}
*/
this.FirewallRuleDescription = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Protocol = 'Protocol' in params ? params.Protocol : null;
this.Port = 'Port' in params ? params.Port : null;
this.CidrBlock = 'CidrBlock' in params ? params.CidrBlock : null;
this.Action = 'Action' in params ? params.Action : null;
this.FirewallRuleDescription = 'FirewallRuleDescription' in params ? params.FirewallRuleDescription : null;
}
}
/**
* DeleteBlueprints request structure.
* @class
*/
class DeleteBlueprintsRequest extends AbstractModel {
constructor(){
super();
/**
* Image ID list, which can be obtained from the `BlueprintId` returned by the [DescribeBlueprints](https://intl.cloud.tencent.com/document/product/1207/47689?from_cn_redirect=1) API.
* @type {Array.<string> || null}
*/
this.BlueprintIds = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.BlueprintIds = 'BlueprintIds' in params ? params.BlueprintIds : null;
}
}
/**
* Firewall rule details.
* @class
*/
class FirewallRuleInfo extends AbstractModel {
constructor(){
super();
/**
* Application type. Valid values: custom, HTTP (80), HTTPS (443), Linux login (22), Windows login (3389), MySQL (3306), SQL Server (1433), all TCP ports, all UDP ports, Ping-ICMP, ALL.
* @type {string || null}
*/
this.AppType = null;
/**
* Protocol. Valid values: TCP, UDP, ICMP, ALL.
* @type {string || null}
*/
this.Protocol = null;
/**
* Port. Valid values: ALL, one single port, multiple ports separated by commas, or port range indicated by a minus sign
* @type {string || null}
*/
this.Port = null;
/**
* IP range or IP (mutually exclusive). Default value: 0.0.0.0/0, which indicates all sources.
* @type {string || null}
*/
this.CidrBlock = null;
/**
* Valid values: ACCEPT, DROP. Default value: ACCEPT.
* @type {string || null}
*/
this.Action = null;
/**
* Firewall rule description.
* @type {string || null}
*/
this.FirewallRuleDescription = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.AppType = 'AppType' in params ? params.AppType : null;
this.Protocol = 'Protocol' in params ? params.Protocol : null;
this.Port = 'Port' in params ? params.Port : null;
this.CidrBlock = 'CidrBlock' in params ? params.CidrBlock : null;
this.Action = 'Action' in params ? params.Action : null;
this.FirewallRuleDescription = 'FirewallRuleDescription' in params ? params.FirewallRuleDescription : null;
}
}
/**
* CreateFirewallRules response structure.
* @class
*/
class CreateFirewallRulesResponse 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;
}
}
/**
* DescribeDisks request structure.
* @class
*/
class DescribeDisksRequest extends AbstractModel {
constructor(){
super();
/**
* List of cloud disk IDs.
* @type {Array.<string> || null}
*/
this.DiskIds = null;
/**
* Filter list
disk-id
Filter by **cloud disk ID**.
Type: String
Required: No
instance-id
Filter by **instance ID**.
Type: String
Required: No
disk-name
Filter by **cloud disk name**.
Type: String
Required: No
zone
Filter by **availability zone**.
Type: String
Required: No
disk-usage
Filter by **cloud disk type**.
Type: String
Required: No
Values: `SYSTEM_DISK` and `DATA_DISK`
disk-state
Filter by **cloud disk status**.
Type: String
Required: No
Values: See `DiskState` in [Disk](https://intl.cloud.tencent.com/document/api/1207/47576?from_cn_redirect=1#Disk)
Each request can contain up to 10 `Filters` and 100 `Filter.Values`. `DiskIds` and `Filters` cannot be specified at the same time.
* @type {Array.<Filter> || null}
*/
this.Filters = null;
/**
* Number of returned results. Default value: 20. Maximum value: 100.
* @type {number || null}
*/
this.Limit = null;
/**
* Offset. Default value: 0.
* @type {number || null}
*/
this.Offset = null;
/**
* The field by which the cloud disks are sorted. Valid values: "CREATED_TIME" (creation time), "EXPIRED_TIME" (expiration time), "DISK_SIZE" (size of cloud disks). Default value: "CREATED_TIME".
* @type {string || null}
*/
this.OrderField = null;
/**
* Sorting order of the output cloud disks. Valid values: "ASC" (ascending order), "DESC" (descending order). Default value: "DESC".
* @type {string || null}
*/
this.Order = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.DiskIds = 'DiskIds' in params ? params.DiskIds : 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);
}
}
this.Limit = 'Limit' in params ? params.Limit : null;
this.Offset = 'Offset' in params ? params.Offset : null;
this.OrderField = 'OrderField' in params ? params.OrderField : null;
this.Order = 'Order' in params ? params.Order : null;
}
}
/**
* DescribeGeneralResourceQuotas request structure.
* @class
*/
class DescribeGeneralResourceQuotasRequest extends AbstractModel {
constructor(){
super();
/**
* Resource name list. Values:
- `GENERAL_BUNDLE_INSTANCE`: General bundle
- `STORAGE_BUNDLE_INSTANCE`: Storage bundle
- `ENTERPRISE_BUNDLE_INSTANCE`: Enterprise bundle
- `EXCLUSIVE_BUNDLE_INSTANCE`: Dedicated bundle
- `BEFAST_BUNDLE_INSTANCE`: BeFast bundle
- `USER_KEY_PAIR`: Key pair
- `SNAPSHOT`: Snapshot
- `BLUEPRINT`: Custom image
- `FREE_BLUEPRINT`: Free custom image
- `DATA_DISK`: Data disk
- `FIREWALL_RULE`: Firewall rules
* @type {Array.<string> || null}
*/
this.ResourceNames = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.ResourceNames = 'ResourceNames' in params ? params.ResourceNames : null;
}
}
/**
* DescribeZones response structure.
* @class
*/
class DescribeZonesResponse extends AbstractModel {
constructor(){
super();
/**
* Number of AZs
* @type {number || null}
*/
this.TotalCount = null;
/**
* List of AZ details
* @type {Array.<ZoneInfo> || null}
*/
this.ZoneInfoSet = 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.ZoneInfoSet) {
this.ZoneInfoSet = new Array();
for (let z in params.ZoneInfoSet) {
let obj = new ZoneInfo();
obj.deserialize(params.ZoneInfoSet[z]);
this.ZoneInfoSet.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* CreateBlueprint response structure.
* @class
*/
class CreateBlueprintResponse extends AbstractModel {
constructor(){
super();
/**
* Custom image ID.
* @type {string || null}
*/
this.BlueprintId = 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.BlueprintId = 'BlueprintId' in params ? params.BlueprintId : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* Discount details.
* @class
*/
class PolicyDetail extends AbstractModel {
constructor(){
super();
/**
* User discount.
* @type {number || null}
*/
this.UserDiscount = null;
/**
* Public discount.
* @type {number || null}
*/
this.CommonDiscount = null;
/**
* Final discount.
* @type {number || null}
*/
this.FinalDiscount = null;
/**
* Activity discount. The value `null` indicates no discount.
Note: This field may return `null`, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.ActivityDiscount = null;
/**
* Discount type.
Valid values: `user` (user discount), `common` (discount displayed on the official website), `activity` (activity discount), `null` (no discount).
Note: This field may return `null`, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.DiscountType = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.UserDiscount = 'UserDiscount' in params ? params.UserDiscount : null;
this.CommonDiscount = 'CommonDiscount' in params ? params.CommonDiscount : null;
this.FinalDiscount = 'FinalDiscount' in params ? params.FinalDiscount : null;
this.ActivityDiscount = 'ActivityDiscount' in params ? params.ActivityDiscount : null;
this.DiscountType = 'DiscountType' in params ? params.DiscountType : null;
}
}
/**
* DetachDisks response structure.
* @class
*/
class DetachDisksResponse 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;
}
}
/**
* Login password information
* @class
*/
class LoginConfiguration extends AbstractModel {
constructor(){
super();
/**
* <li>`YES`: Random password. In this case, `Password` cannot be specified. </li>
<li>`No`: Custom. `Password` must be specified. </li>
* @type {string || null}
*/
this.AutoGeneratePassword = null;
/**
* Instance login password.
For Windows instances, the password must contain 12 to 30 characters of the following types. It cannot start with “/” and cannot include the username.
<li>Lowercase letters: [a–z]</li>
<li>Uppercase letters: [A–Z]</li>
<li>Digits: 0-9</li>
<li>Symbols: ()`~!@#$%^&*-+=_|{}[]:;'<>,.?/</li>
* @type {string || null}
*/
this.Password = null;
/**
*
* @type {Array.<string> || null}
*/
this.KeyIds = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.AutoGeneratePassword = 'AutoGeneratePassword' in params ? params.AutoGeneratePassword : null;
this.Password = 'Password' in params ? params.Password : null;
this.KeyIds = 'KeyIds' in params ? params.KeyIds : null;
}
}
/**
* DescribeResetInstanceBlueprints request structure.
* @class
*/
class DescribeResetInstanceBlueprintsRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID
* @type {string || null}
*/
this.InstanceId = null;
/**
* Offset. Default value: 0. For more information on `Offset`, please see the relevant section in [Overview](https://intl.cloud.tencent.com/document/product/1207/47578?from_cn_redirect=1).
* @type {number || null}
*/
this.Offset = null;
/**
* Number of returned results. Default value: 20. Maximum value: 100. For more information on `Limit`, please see the relevant section in the API [Overview](https://intl.cloud.tencent.com/document/product/1207/47578?from_cn_redirect=1).
* @type {number || null}
*/
this.Limit = null;
/**
* Filter list
<li>blueprint-id</li>Filter by **image ID**.
Type: String
Required: no
<li>blueprint-type</li>Filter by **image type**.
Valid values: `APP_OS`: application image; `PURE_OS`: system image; `PRIVATE`: custom image
Type: String
Required: no
<li>platform-type</li>Filter by **image platform type**.
Valid values: `LINUX_UNIX`: Linux or Unix; `WINDOWS`: Windows
Type: String
Required: no
<li>blueprint-name</li>Filter by **image name**.
Type: String
Required: no
<li>blueprint-state</li>Filter by **image status**.
Type: String
Required: no
Each request can contain up to 10 `Filters` and 5 `Filter.Values`. `BlueprintIds` and `Filters` cannot be specified at the same time.
* @type {Array.<Filter> || null}
*/
this.Filters = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
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 Filter();
obj.deserialize(params.Filters[z]);
this.Filters.push(obj);
}
}
}
}
/**
* Configuration used to create Docker containers
* @class
*/
class DockerContainerConfiguration extends AbstractModel {
constructor(){
super();
/**
* Container image address
* @type {string || null}
*/
this.ContainerImage = null;
/**
* Container name
* @type {string || null}
*/
this.ContainerName = null;
/**
* List of environment variables
* @type {Array.<ContainerEnv> || null}
*/
this.Envs = null;
/**
* List of mappings of container ports and host ports
* @type {Array.<DockerContainerPublishPort> || null}
*/
this.PublishPorts = null;
/**
* List of container mount volumes
* @type {Array.<DockerContainerVolume> || null}
*/
this.Volumes = null;
/**
* The command to run
* @type {string || null}
*/
this.Command = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.ContainerImage = 'ContainerImage' in params ? params.ContainerImage : null;
this.ContainerName = 'ContainerName' in params ? params.ContainerName : null;
if (params.Envs) {
this.Envs = new Array();
for (let z in params.Envs) {
let obj = new ContainerEnv();
obj.deserialize(params.Envs[z]);
this.Envs.push(obj);
}
}
if (params.PublishPorts) {
this.PublishPorts = new Array();
for (let z in params.PublishPorts) {
let obj = new DockerContainerPublishPort();
obj.deserialize(params.PublishPorts[z]);
this.PublishPorts.push(obj);
}
}
if (params.Volumes) {
this.Volumes = new Array();
for (let z in params.Volumes) {
let obj = new DockerContainerVolume();
obj.deserialize(params.Volumes[z]);
this.Volumes.push(obj);
}
}
this.Command = 'Command' in params ? params.Command : null;
}
}
/**
* ResetAttachCcn response structure.
* @class
*/
class ResetAttachCcnResponse 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;
}
}
/**
* ModifyInstancesRenewFlag response structure.
* @class
*/
class ModifyInstancesRenewFlagResponse 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;
}
}
/**
* ApplyInstanceSnapshot request structure.
* @class
*/
class ApplyInstanceSnapshotRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID.
* @type {string || null}
*/
this.InstanceId = null;
/**
* Snapshot ID.
* @type {string || null}
*/
this.SnapshotId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.SnapshotId = 'SnapshotId' in params ? params.SnapshotId : null;
}
}
/**
* DisassociateInstancesKeyPairs response structure.
* @class
*/
class DisassociateInstancesKeyPairsResponse 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;
}
}
/**
* TerminateInstances request structure.
* @class
*/
class TerminateInstancesRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID list, which can be obtained from the `InstanceId` returned by the [DescribeInstances](https://intl.cloud.tencent.com/document/api/1207/47573?from_cn_redirect=1) API.
* @type {Array.<string> || null}
*/
this.InstanceIds = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceIds = 'InstanceIds' in params ? params.InstanceIds : null;
}
}
/**
* Parameter settings for renewing the monthly subscribed cloud disk
* @class
*/
class RenewDiskChargePrepaid extends AbstractModel {
constructor(){
super();
/**
* Renewal period
* @type {number || null}
*/
this.Period = null;
/**
* Whether to renew the disk automatically. Values:
`NOTIFY_AND_AUTO_RENEW`: Trigger expiration notification and renew automatically; `NOTIFY_AND_MANUAL_RENEW`: Trigger expiration notification but do not renew; `DISABLE_NOTIFY_AND_MANUAL_RENEW`: Do not trigger the notification and do not renew.
Default: `NOTIFY_AND_MANUAL_RENEW`. If `NOTIFY_AND_AUTO_RENEW` is specified, the instance is automatically renewed on a monthly basis when the account balance is sufficient.
* @type {string || null}
*/
this.RenewFlag = null;
/**
* Unit of the period. Values: `m` (month).
* @type {string || null}
*/
this.TimeUnit = null;
/**
* Expiration time of the current instance, such as "2018-01-01 00:00:00". Specify this parameter to align the expiration time of the instance and attached cloud disks. `CurInstanceDeadline` and `Period` cannot be both specified.
* @type {string || null}
*/
this.CurInstanceDeadline = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Period = 'Period' in params ? params.Period : null;
this.RenewFlag = 'RenewFlag' in params ? params.RenewFlag : null;
this.TimeUnit = 'TimeUnit' in params ? params.TimeUnit : null;
this.CurInstanceDeadline = 'CurInstanceDeadline' in params ? params.CurInstanceDeadline : null;
}
}
/**
* TerminateDisks request structure.
* @class
*/
class TerminateDisksRequest extends AbstractModel {
constructor(){
super();
/**
* List of cloud disk IDs.
* @type {Array.<string> || null}
*/
this.DiskIds = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.DiskIds = 'DiskIds' in params ? params.DiskIds : null;
}
}
/**
* ResetInstance request structure.
* @class
*/
class ResetInstanceRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID, which can be obtained from the `InstanceId` returned by the [DescribeInstances](https://intl.cloud.tencent.com/document/api/1207/47573?from_cn_redirect=1) API.
* @type {string || null}
*/
this.InstanceId = null;
/**
* Image ID, which can be obtained from the `BlueprintId` returned by the [DescribeBlueprints](https://intl.cloud.tencent.com/document/product/1207/47689?from_cn_redirect=1) API.
* @type {string || null}
*/
this.BlueprintId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.BlueprintId = 'BlueprintId' in params ? params.BlueprintId : null;
}
}
/**
* DescribeDiskConfigs response structure.
* @class
*/
class DescribeDiskConfigsResponse extends AbstractModel {
constructor(){
super();
/**
* List of cloud disk configurations.
* @type {Array.<DiskConfig> || null}
*/
this.DiskConfigSet = 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.DiskConfigSet) {
this.DiskConfigSet = new Array();
for (let z in params.DiskConfigSet) {
let obj = new DiskConfig();
obj.deserialize(params.DiskConfigSet[z]);
this.DiskConfigSet.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* RenewDisks response structure.
* @class
*/
class RenewDisksResponse 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;
}
}
/**
* This describes the internet accessibility of the instance created by a launch configuration and declares the internet usage billing method of the instance and the maximum bandwidth
* @class
*/
class InternetAccessible extends AbstractModel {
constructor(){
super();
/**
* Network billing mode. Valid values:
<li>Bill by traffic package: TRAFFIC_POSTPAID_BY_HOUR</li>
<li>Bill by bandwidth: BANDWIDTH_POSTPAID_BY_HOUR</li>
* @type {string || null}
*/
this.InternetChargeType = null;
/**
* Public network outbound bandwidth cap in Mbps.
* @type {number || null}
*/
this.InternetMaxBandwidthOut = null;
/**
* Whether to assign a public IP.
* @type {boolean || null}
*/
this.PublicIpAssigned = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InternetChargeType = 'InternetChargeType' in params ? params.InternetChargeType : null;
this.InternetMaxBandwidthOut = 'InternetMaxBandwidthOut' in params ? params.InternetMaxBandwidthOut : null;
this.PublicIpAssigned = 'PublicIpAssigned' in params ? params.PublicIpAssigned : null;
}
}
/**
* RebootInstances response structure.
* @class
*/
class RebootInstancesResponse 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;
}
}
/**
* DescribeDisksDeniedActions response structure.
* @class
*/
class DescribeDisksDeniedActionsResponse extends AbstractModel {
constructor(){
super();
/**
* List of operation limits of cloud disks.
* @type {Array.<DiskDeniedActions> || null}
*/
this.DiskDeniedActionSet = 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.DiskDeniedActionSet) {
this.DiskDeniedActionSet = new Array();
for (let z in params.DiskDeniedActionSet) {
let obj = new DiskDeniedActions();
obj.deserialize(params.DiskDeniedActionSet[z]);
this.DiskDeniedActionSet.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DescribeInstanceLoginKeyPairAttribute request structure.
* @class
*/
class DescribeInstanceLoginKeyPairAttributeRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID.
* @type {string || null}
*/
this.InstanceId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
}
}
/**
* DescribeBundleDiscount request structure.
* @class
*/
class DescribeBundleDiscountRequest extends AbstractModel {
constructor(){
super();
/**
* Package ID.
* @type {string || null}
*/
this.BundleId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.BundleId = 'BundleId' in params ? params.BundleId : null;
}
}
/**
* Price information
* @class
*/
class Price extends AbstractModel {
constructor(){
super();
/**
* Instance price.
* @type {InstancePrice || null}
*/
this.InstancePrice = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.InstancePrice) {
let obj = new InstancePrice();
obj.deserialize(params.InstancePrice)
this.InstancePrice = obj;
}
}
}
/**
* DescribeDisksReturnable response structure.
* @class
*/
class DescribeDisksReturnableResponse extends AbstractModel {
constructor(){
super();
/**
* List of returnable cloud disks.
* @type {Array.<DiskReturnable> || null}
*/
this.DiskReturnableSet = null;
/**
* Number of eligible cloud disks.
* @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.DiskReturnableSet) {
this.DiskReturnableSet = new Array();
for (let z in params.DiskReturnableSet) {
let obj = new DiskReturnable();
obj.deserialize(params.DiskReturnableSet[z]);
this.DiskReturnableSet.push(obj);
}
}
this.TotalCount = 'TotalCount' in params ? params.TotalCount : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* IsolateDisks request structure.
* @class
*/
class IsolateDisksRequest extends AbstractModel {
constructor(){
super();
/**
* IDs of cloud disks. The value can be obtained from the `InstanceId` parameter returned by the [DescribeDisks](https://intl.cloud.tencent.com/document/product/1207/66093?from_cn_redirect=1) API. Up to 20 disks can be processed at a time.
* @type {Array.<string> || null}
*/
this.DiskIds = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.DiskIds = 'DiskIds' in params ? params.DiskIds : null;
}
}
/**
* CreateInstanceSnapshot response structure.
* @class
*/
class CreateInstanceSnapshotResponse extends AbstractModel {
constructor(){
super();
/**
* Snapshot ID.
* @type {string || null}
*/
this.SnapshotId = 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.SnapshotId = 'SnapshotId' in params ? params.SnapshotId : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* ModifyInstancesBundle response structure.
* @class
*/
class ModifyInstancesBundleResponse 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;
}
}
/**
* General resource quota information.
* @class
*/
class GeneralResourceQuota extends AbstractModel {
constructor(){
super();
/**
* Resource name.
* @type {string || null}
*/
this.ResourceName = null;
/**
* Number of available resources.
* @type {number || null}
*/
this.ResourceQuotaAvailable = null;
/**
* Total number of resources.
* @type {number || null}
*/
this.ResourceQuotaTotal = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.ResourceName = 'ResourceName' in params ? params.ResourceName : null;
this.ResourceQuotaAvailable = 'ResourceQuotaAvailable' in params ? params.ResourceQuotaAvailable : null;
this.ResourceQuotaTotal = 'ResourceQuotaTotal' in params ? params.ResourceQuotaTotal : null;
}
}
/**
* DescribeResetInstanceBlueprints response structure.
* @class
*/
class DescribeResetInstanceBlueprintsResponse extends AbstractModel {
constructor(){
super();
/**
* Number of eligible images.
* @type {number || null}
*/
this.TotalCount = null;
/**
* Image reset information list
* @type {Array.<ResetInstanceBlueprint> || null}
*/
this.ResetInstanceBlueprintSet = 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.ResetInstanceBlueprintSet) {
this.ResetInstanceBlueprintSet = new Array();
for (let z in params.ResetInstanceBlueprintSet) {
let obj = new ResetInstanceBlueprint();
obj.deserialize(params.ResetInstanceBlueprintSet[z]);
this.ResetInstanceBlueprintSet.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DescribeDisksReturnable request structure.
* @class
*/
class DescribeDisksReturnableRequest extends AbstractModel {
constructor(){
super();
/**
* List of cloud disk IDs.
* @type {Array.<string> || null}
*/
this.DiskIds = null;
/**
* Number of returned results. Default value: 20. Maximum value: 100.
* @type {number || null}
*/
this.Limit = null;
/**
* Offset. Default value: 0.
* @type {number || null}
*/
this.Offset = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.DiskIds = 'DiskIds' in params ? params.DiskIds : null;
this.Limit = 'Limit' in params ? params.Limit : null;
this.Offset = 'Offset' in params ? params.Offset : null;
}
}
/**
* Image software details.
* @class
*/
class SoftwareDetail extends AbstractModel {
constructor(){
super();
/**
* Unique detail key
* @type {string || null}
*/
this.Key = null;
/**
* Detail title.
* @type {string || null}
*/
this.Title = null;
/**
* Detail value.
* @type {string || null}
*/
this.Value = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Key = 'Key' in params ? params.Key : null;
this.Title = 'Title' in params ? params.Title : null;
this.Value = 'Value' in params ? params.Value : null;
}
}
/**
* Automatically attach and initialize the data disk.
* @class
*/
class AutoMountConfiguration extends AbstractModel {
constructor(){
super();
/**
* ID of the instance to be mounted to. The instance must be **Running**.
* @type {string || null}
*/
this.InstanceId = null;
/**
* The mount point within the instance. Only Linux instances are supported. If it's not specified, the default mount point is "/data/disk".
* @type {string || null}
*/
this.MountPoint = null;
/**
* The file system type. Values: `ext4` (default) and `xfs`. Only Linux instances are supported.
* @type {string || null}
*/
this.FileSystemType = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.MountPoint = 'MountPoint' in params ? params.MountPoint : null;
this.FileSystemType = 'FileSystemType' in params ? params.FileSystemType : null;
}
}
/**
* Price information of Lighthouse instances
* @class
*/
class InstancePrice extends AbstractModel {
constructor(){
super();
/**
* Original package unit price.
* @type {number || null}
*/
this.OriginalBundlePrice = null;
/**
* Original price.
* @type {number || null}
*/
this.OriginalPrice = null;
/**
* Discount.
* @type {number || null}
*/
this.Discount = null;
/**
* Discounted price.
* @type {number || null}
*/
this.DiscountPrice = null;
/**
* Currency unit. Valid values: `CNY` and `USD`.
Note: This field may return `null`, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.Currency = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.OriginalBundlePrice = 'OriginalBundlePrice' in params ? params.OriginalBundlePrice : null;
this.OriginalPrice = 'OriginalPrice' in params ? params.OriginalPrice : null;
this.Discount = 'Discount' in params ? params.Discount : null;
this.DiscountPrice = 'DiscountPrice' in params ? params.DiscountPrice : null;
this.Currency = 'Currency' in params ? params.Currency : null;
}
}
/**
* Information on tags
* @class
*/
class Tag extends AbstractModel {
constructor(){
super();
/**
* Tag key
* @type {string || null}
*/
this.Key = null;
/**
* Tag value
* @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;
}
}
/**
* ModifySnapshotAttribute response structure.
* @class
*/
class ModifySnapshotAttributeResponse 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;
}
}
/**
* DescribeGeneralResourceQuotas response structure.
* @class
*/
class DescribeGeneralResourceQuotasResponse extends AbstractModel {
constructor(){
super();
/**
* List of general resource quota details.
* @type {Array.<GeneralResourceQuota> || null}
*/
this.GeneralResourceQuotaSet = 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.GeneralResourceQuotaSet) {
this.GeneralResourceQuotaSet = new Array();
for (let z in params.GeneralResourceQuotaSet) {
let obj = new GeneralResourceQuota();
obj.deserialize(params.GeneralResourceQuotaSet[z]);
this.GeneralResourceQuotaSet.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* ModifyInstancesRenewFlag request structure.
* @class
*/
class ModifyInstancesRenewFlagRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID list. Each request can contain up to 100 instances at a time. You can get an instance ID from the `InstanceId` returned by the [DescribeInstances](https://intl.cloud.tencent.com/document/api/1207/47573?from_cn_redirect=1) API.
* @type {Array.<string> || null}
*/
this.InstanceIds = null;
/**
* Auto-Renewal flag. Valid values: <br><li>NOTIFY_AND_AUTO_RENEW: notify upon expiration and renew automatically <br><li>NOTIFY_AND_MANUAL_RENEW: notify upon expiration but do not renew automatically <br><li>DISABLE_NOTIFY_AND_MANUAL_RENEW: neither notify upon expiration nor renew automatically <br><br>If this parameter is specified as `NOTIFY_AND_AUTO_RENEW`, the instance will be automatically renewed monthly if the account balance is sufficient.
* @type {string || null}
*/
this.RenewFlag = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceIds = 'InstanceIds' in params ? params.InstanceIds : null;
this.RenewFlag = 'RenewFlag' in params ? params.RenewFlag : null;
}
}
/**
* StopInstances request structure.
* @class
*/
class StopInstancesRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID list. Each request can contain up to 100 instances at a time. You can get an instance ID from the `InstanceId` returned by the [DescribeInstances](https://intl.cloud.tencent.com/document/api/1207/47573?from_cn_redirect=1) API.
* @type {Array.<string> || null}
*/
this.InstanceIds = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceIds = 'InstanceIds' in params ? params.InstanceIds : null;
}
}
/**
* DescribeModifyInstanceBundles request structure.
* @class
*/
class DescribeModifyInstanceBundlesRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID.
* @type {string || null}
*/
this.InstanceId = null;
/**
* Filter list
<li>bundle-id</li>Filter by the **bundle ID**.
Type: String
Required: No
<li>support-platform-type</li>Filter by the **OS type**.
Valid values: `LINUX_UNIX` (Linux or Unix), `WINDOWS` (Windows)
Type: String
Required: No
<li>bundle-type</li>Filter by the **bundle type**.
Valid values: `GENERAL_BUNDLE` (General bundle), `STORAGE_BUNDLE` (Storage bundle), `ENTERPRISE_BUNDLE` (Enterprise bundle), `EXCLUSIVE_BUNDLE` (Dedicated bundle), `BEFAST_BUNDLE` (BeFast bundle)
Type: String
Required: No
<li>bundle-state</li>Filter by the **bundle status**.
Valid values: `ONLINE`, `OFFLINE`
Type: String
Required: No
Each request can contain up to 10 `Filters`, and each filter can have up to 5 `Filter.Values`.
* @type {Array.<Filter> || null}
*/
this.Filters = null;
/**
* Offset. Default value: 0. For more information on `Offset`, please see the relevant section in [Overview](https://intl.cloud.tencent.com/document/product/1207/47578?from_cn_redirect=1).
* @type {number || null}
*/
this.Offset = null;
/**
* Number of returned results. Default value: 20. Maximum value: 100. For more information on `Limit`, please see the relevant section in the API [Overview](https://intl.cloud.tencent.com/document/product/1207/47578?from_cn_redirect=1).
* @type {number || null}
*/
this.Limit = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : 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);
}
}
this.Offset = 'Offset' in params ? params.Offset : null;
this.Limit = 'Limit' in params ? params.Limit : null;
}
}
/**
* RenewInstances response structure.
* @class
*/
class RenewInstancesResponse 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;
}
}
/**
* ResetInstance response structure.
* @class
*/
class ResetInstanceResponse 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;
}
}
/**
* IsolateDisks response structure.
* @class
*/
class IsolateDisksResponse 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;
}
}
/**
* DescribeFirewallRules request structure.
* @class
*/
class DescribeFirewallRulesRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID.
* @type {string || null}
*/
this.InstanceId = 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;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.Offset = 'Offset' in params ? params.Offset : null;
this.Limit = 'Limit' in params ? params.Limit : null;
}
}
/**
* List of operation limits of disks.
* @class
*/
class DiskDeniedActions extends AbstractModel {
constructor(){
super();
/**
* Cloud disk ID.
* @type {string || null}
*/
this.DiskId = null;
/**
* List of operation limits.
* @type {Array.<DeniedAction> || null}
*/
this.DeniedActions = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.DiskId = 'DiskId' in params ? params.DiskId : null;
if (params.DeniedActions) {
this.DeniedActions = new Array();
for (let z in params.DeniedActions) {
let obj = new DeniedAction();
obj.deserialize(params.DeniedActions[z]);
this.DeniedActions.push(obj);
}
}
}
}
/**
* InquirePriceCreateInstances request structure.
* @class
*/
class InquirePriceCreateInstancesRequest extends AbstractModel {
constructor(){
super();
/**
* Instance package ID.
* @type {string || null}
*/
this.BundleId = null;
/**
* Parameter setting for prepaid mode. This parameter can specify the purchase period, whether to enable auto-renewal, and other attributes of the monthly subscribed instances.
* @type {InstanceChargePrepaid || null}
*/
this.InstanceChargePrepaid = null;
/**
* Number of instances to be created. Default value: 1.
* @type {number || null}
*/
this.InstanceCount = null;
/**
* Application image ID, which is required if a paid application image is used and can be obtained from the `BlueprintId` returned by the [DescribeBlueprints](https://intl.cloud.tencent.com/document/product/1207/47689?from_cn_redirect=1) API.
* @type {string || null}
*/
this.BlueprintId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.BundleId = 'BundleId' in params ? params.BundleId : null;
if (params.InstanceChargePrepaid) {
let obj = new InstanceChargePrepaid();
obj.deserialize(params.InstanceChargePrepaid)
this.InstanceChargePrepaid = obj;
}
this.InstanceCount = 'InstanceCount' in params ? params.InstanceCount : null;
this.BlueprintId = 'BlueprintId' in params ? params.BlueprintId : null;
}
}
/**
* Scene information
* @class
*/
class Scene extends AbstractModel {
constructor(){
super();
/**
* Scene ID
* @type {string || null}
*/
this.SceneId = null;
/**
* Display name of the scene
* @type {string || null}
*/
this.DisplayName = null;
/**
* Scene description
* @type {string || null}
*/
this.Description = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.SceneId = 'SceneId' in params ? params.SceneId : null;
this.DisplayName = 'DisplayName' in params ? params.DisplayName : null;
this.Description = 'Description' in params ? params.Description : null;
}
}
/**
* List of instances associated with the CCN instance.
* @class
*/
class CcnAttachedInstance extends AbstractModel {
constructor(){
super();
/**
* CCN instance ID.
* @type {string || null}
*/
this.CcnId = null;
/**
* CIDR block of associated instance.
* @type {Array.<string> || null}
*/
this.CidrBlock = null;
/**
* Associated instance status:
• PENDING: applying
• ACTIVE: connected
• EXPIRED: expired
• REJECTED: rejected
• DELETED: deleted
• FAILED: failed (it will be asynchronously unassociated after 2 hours)
• ATTACHING: associating
• DETACHING: unassociating
• DETACHFAILED: failed to unassociate (it will be asynchronously unassociated after 2 hours)
* @type {string || null}
*/
this.State = null;
/**
* Association time.
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.AttachedTime = null;
/**
* Remarks
* @type {string || null}
*/
this.Description = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.CcnId = 'CcnId' in params ? params.CcnId : null;
this.CidrBlock = 'CidrBlock' in params ? params.CidrBlock : null;
this.State = 'State' in params ? params.State : null;
this.AttachedTime = 'AttachedTime' in params ? params.AttachedTime : null;
this.Description = 'Description' in params ? params.Description : null;
}
}
/**
* DescribeModifyInstanceBundles response structure.
* @class
*/
class DescribeModifyInstanceBundlesResponse extends AbstractModel {
constructor(){
super();
/**
* Number of matched instances.
* @type {number || null}
*/
this.TotalCount = null;
/**
* New package details
* @type {Array.<ModifyBundle> || null}
*/
this.ModifyBundleSet = 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.ModifyBundleSet) {
this.ModifyBundleSet = new Array();
for (let z in params.ModifyBundleSet) {
let obj = new ModifyBundle();
obj.deserialize(params.ModifyBundleSet[z]);
this.ModifyBundleSet.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* Attachment information
* @class
*/
class AttachDetail extends AbstractModel {
constructor(){
super();
/**
* Instance ID
* @type {string || null}
*/
this.InstanceId = null;
/**
* Number of elastic cloud disks attached to the instance
* @type {number || null}
*/
this.AttachedDiskCount = null;
/**
* Upper limit of attached elastic cloud disks
* @type {number || null}
*/
this.MaxAttachCount = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.AttachedDiskCount = 'AttachedDiskCount' in params ? params.AttachedDiskCount : null;
this.MaxAttachCount = 'MaxAttachCount' in params ? params.MaxAttachCount : null;
}
}
/**
* ModifyDisksAttribute response structure.
* @class
*/
class ModifyDisksAttributeResponse 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;
}
}
/**
* CreateInstanceSnapshot request structure.
* @class
*/
class CreateInstanceSnapshotRequest extends AbstractModel {
constructor(){
super();
/**
* ID of the instance for which to create a snapshot.
* @type {string || null}
*/
this.InstanceId = null;
/**
* Snapshot name, which can contain up to 60 characters.
* @type {string || null}
*/
this.SnapshotName = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.SnapshotName = 'SnapshotName' in params ? params.SnapshotName : null;
}
}
/**
* Image instance information.
* @class
*/
class BlueprintInstance extends AbstractModel {
constructor(){
super();
/**
* Image information.
* @type {Blueprint || null}
*/
this.Blueprint = null;
/**
* Software list.
* @type {Array.<Software> || null}
*/
this.SoftwareSet = null;
/**
* Instance ID.
* @type {string || null}
*/
this.InstanceId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.Blueprint) {
let obj = new Blueprint();
obj.deserialize(params.Blueprint)
this.Blueprint = obj;
}
if (params.SoftwareSet) {
this.SoftwareSet = new Array();
for (let z in params.SoftwareSet) {
let obj = new Software();
obj.deserialize(params.SoftwareSet[z]);
this.SoftwareSet.push(obj);
}
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
}
}
/**
* InquirePriceCreateDisks response structure.
* @class
*/
class InquirePriceCreateDisksResponse extends AbstractModel {
constructor(){
super();
/**
* Cloud disk price.
* @type {DiskPrice || null}
*/
this.DiskPrice = 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.DiskPrice) {
let obj = new DiskPrice();
obj.deserialize(params.DiskPrice)
this.DiskPrice = obj;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* Instance billing mode
* @class
*/
class InstanceChargePrepaid extends AbstractModel {
constructor(){
super();
/**
* Subscription period in months. Valid values: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 24, 36, 48, 60.
* @type {number || null}
*/
this.Period = null;
/**
* Auto-Renewal flag. Valid values: <br><li>NOTIFY_AND_AUTO_RENEW: notify upon expiration and renew automatically <br><li>NOTIFY_AND_MANUAL_RENEW: notify upon expiration but do not renew automatically. You need to manually renew <br><li>DISABLE_NOTIFY_AND_AUTO_RENEW: neither notify upon expiration nor renew automatically<br><br>Default value: NOTIFY_AND_MANUAL_RENEW. If this parameter is specified as `NOTIFY_AND_AUTO_RENEW`, the instance will be automatically renewed monthly if the account balance is sufficient.
* @type {string || null}
*/
this.RenewFlag = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Period = 'Period' in params ? params.Period : null;
this.RenewFlag = 'RenewFlag' in params ? params.RenewFlag : null;
}
}
/**
* ModifyInstancesAttribute response structure.
* @class
*/
class ModifyInstancesAttributeResponse 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;
}
}
/**
* DescribeInstanceLoginKeyPairAttribute response structure.
* @class
*/
class DescribeInstanceLoginKeyPairAttributeResponse extends AbstractModel {
constructor(){
super();
/**
* Whether to allow login with the default key pair. Valid values: YES, NO.
* @type {string || null}
*/
this.PermitLogin = 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.PermitLogin = 'PermitLogin' in params ? params.PermitLogin : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
module.exports = {
DescribeInstancesTrafficPackagesRequest: DescribeInstancesTrafficPackagesRequest,
AssociateInstancesKeyPairsResponse: AssociateInstancesKeyPairsResponse,
RenewInstancesRequest: RenewInstancesRequest,
DescribeDisksDeniedActionsRequest: DescribeDisksDeniedActionsRequest,
InquirePriceCreateBlueprintRequest: InquirePriceCreateBlueprintRequest,
DescribeInstancesTrafficPackagesResponse: DescribeInstancesTrafficPackagesResponse,
DescribeInstancesDeniedActionsRequest: DescribeInstancesDeniedActionsRequest,
DeleteKeyPairsResponse: DeleteKeyPairsResponse,
AttachCcnRequest: AttachCcnRequest,
CreateInstancesRequest: CreateInstancesRequest,
DescribeZonesRequest: DescribeZonesRequest,
RegionInfo: RegionInfo,
DescribeBlueprintInstancesResponse: DescribeBlueprintInstancesResponse,
InstanceDeniedActions: InstanceDeniedActions,
InquirePriceCreateDisksRequest: InquirePriceCreateDisksRequest,
ModifyBundle: ModifyBundle,
DetachCcnResponse: DetachCcnResponse,
BlueprintPrice: BlueprintPrice,
DescribeScenesResponse: DescribeScenesResponse,
InquirePriceRenewInstancesResponse: InquirePriceRenewInstancesResponse,
DeleteFirewallRulesResponse: DeleteFirewallRulesResponse,
ModifyInstancesAttributeRequest: ModifyInstancesAttributeRequest,
DescribeInstancesResponse: DescribeInstancesResponse,
DeleteKeyPairsRequest: DeleteKeyPairsRequest,
SystemDisk: SystemDisk,
ResetInstanceBlueprint: ResetInstanceBlueprint,
DescribeBundlesResponse: DescribeBundlesResponse,
ModifyInstancesBundleRequest: ModifyInstancesBundleRequest,
InstancePriceDetail: InstancePriceDetail,
InquirePriceRenewInstancesRequest: InquirePriceRenewInstancesRequest,
DiscountDetail: DiscountDetail,
DescribeDiskConfigsRequest: DescribeDiskConfigsRequest,
DescribeRegionsResponse: DescribeRegionsResponse,
AssociateInstancesKeyPairsRequest: AssociateInstancesKeyPairsRequest,
AttachCcnResponse: AttachCcnResponse,
RebootInstancesRequest: RebootInstancesRequest,
ResetAttachCcnRequest: ResetAttachCcnRequest,
CreateDisksRequest: CreateDisksRequest,
AttachDisksRequest: AttachDisksRequest,
ImportKeyPairResponse: ImportKeyPairResponse,
DescribeSnapshotsRequest: DescribeSnapshotsRequest,
TerminateDisksResponse: TerminateDisksResponse,
KeyPair: KeyPair,
DescribeFirewallRulesTemplateRequest: DescribeFirewallRulesTemplateRequest,
DescribeKeyPairsResponse: DescribeKeyPairsResponse,
ModifyBlueprintAttributeRequest: ModifyBlueprintAttributeRequest,
InquirePriceRenewDisksRequest: InquirePriceRenewDisksRequest,
Disk: Disk,
ZoneInfo: ZoneInfo,
DescribeBlueprintInstancesRequest: DescribeBlueprintInstancesRequest,
ApplyInstanceSnapshotResponse: ApplyInstanceSnapshotResponse,
DetachDisksRequest: DetachDisksRequest,
ModifyFirewallRulesRequest: ModifyFirewallRulesRequest,
CreateBlueprintRequest: CreateBlueprintRequest,
DeleteFirewallRulesRequest: DeleteFirewallRulesRequest,
DescribeInstanceVncUrlRequest: DescribeInstanceVncUrlRequest,
ModifyFirewallRuleDescriptionRequest: ModifyFirewallRuleDescriptionRequest,
InstanceTrafficPackage: InstanceTrafficPackage,
StartInstancesResponse: StartInstancesResponse,
TerminateInstancesResponse: TerminateInstancesResponse,
TrafficPackage: TrafficPackage,
DescribeInstancesDiskNumRequest: DescribeInstancesDiskNumRequest,
DetailPrice: DetailPrice,
DescribeBlueprintsRequest: DescribeBlueprintsRequest,
InstanceReturnable: InstanceReturnable,
DescribeInstancesDeniedActionsResponse: DescribeInstancesDeniedActionsResponse,
RenewDisksRequest: RenewDisksRequest,
ModifyDisksAttributeRequest: ModifyDisksAttributeRequest,
DockerContainerPublishPort: DockerContainerPublishPort,
DescribeSnapshotsDeniedActionsResponse: DescribeSnapshotsDeniedActionsResponse,
DescribeScenesRequest: DescribeScenesRequest,
StartInstancesRequest: StartInstancesRequest,
SnapshotDeniedActions: SnapshotDeniedActions,
DeleteSnapshotsRequest: DeleteSnapshotsRequest,
ModifyDisksRenewFlagResponse: ModifyDisksRenewFlagResponse,
ModifySnapshotAttributeRequest: ModifySnapshotAttributeRequest,
DeleteSnapshotsResponse: DeleteSnapshotsResponse,
DescribeDisksResponse: DescribeDisksResponse,
DescribeBundleDiscountResponse: DescribeBundleDiscountResponse,
DescribeAllScenesRequest: DescribeAllScenesRequest,
ModifyDisksRenewFlagRequest: ModifyDisksRenewFlagRequest,
DisassociateInstancesKeyPairsRequest: DisassociateInstancesKeyPairsRequest,
DataDiskPrice: DataDiskPrice,
SceneInfo: SceneInfo,
ImportKeyPairRequest: ImportKeyPairRequest,
DeleteBlueprintsResponse: DeleteBlueprintsResponse,
ModifyInstancesLoginKeyPairAttributeRequest: ModifyInstancesLoginKeyPairAttributeRequest,
IsolateInstancesRequest: IsolateInstancesRequest,
StopInstancesResponse: StopInstancesResponse,
CreateInstancesResponse: CreateInstancesResponse,
ModifyBlueprintAttributeResponse: ModifyBlueprintAttributeResponse,
DescribeFirewallRulesTemplateResponse: DescribeFirewallRulesTemplateResponse,
DescribeRegionsRequest: DescribeRegionsRequest,
DescribeInstancesDiskNumResponse: DescribeInstancesDiskNumResponse,
InquirePriceCreateBlueprintResponse: InquirePriceCreateBlueprintResponse,
DescribeInstancesReturnableRequest: DescribeInstancesReturnableRequest,
DiskReturnable: DiskReturnable,
DescribeBlueprintsResponse: DescribeBlueprintsResponse,
DescribeKeyPairsRequest: DescribeKeyPairsRequest,
DescribeCcnAttachedInstancesRequest: DescribeCcnAttachedInstancesRequest,
ResetInstancesPasswordResponse: ResetInstancesPasswordResponse,
LoginSettings: LoginSettings,
Instance: Instance,
DockerContainerVolume: DockerContainerVolume,
IsolateInstancesResponse: IsolateInstancesResponse,
CreateKeyPairResponse: CreateKeyPairResponse,
DescribeInstanceVncUrlResponse: DescribeInstanceVncUrlResponse,
ModifyFirewallRulesResponse: ModifyFirewallRulesResponse,
DiskPrice: DiskPrice,
DescribeCcnAttachedInstancesResponse: DescribeCcnAttachedInstancesResponse,
DescribeBundlesRequest: DescribeBundlesRequest,
Blueprint: Blueprint,
TotalPrice: TotalPrice,
DeniedAction: DeniedAction,
DescribeAllScenesResponse: DescribeAllScenesResponse,
ModifyInstancesLoginKeyPairAttributeResponse: ModifyInstancesLoginKeyPairAttributeResponse,
InquirePriceRenewDisksResponse: InquirePriceRenewDisksResponse,
Bundle: Bundle,
DiskConfig: DiskConfig,
InquirePriceCreateInstancesResponse: InquirePriceCreateInstancesResponse,
DescribeSnapshotsDeniedActionsRequest: DescribeSnapshotsDeniedActionsRequest,
DescribeDiskDiscountResponse: DescribeDiskDiscountResponse,
ResetInstancesPasswordRequest: ResetInstancesPasswordRequest,
DiskChargePrepaid: DiskChargePrepaid,
CreateKeyPairRequest: CreateKeyPairRequest,
DescribeInstancesRequest: DescribeInstancesRequest,
DetachCcnRequest: DetachCcnRequest,
Filter: Filter,
DescribeSnapshotsResponse: DescribeSnapshotsResponse,
Snapshot: Snapshot,
ModifyFirewallRuleDescriptionResponse: ModifyFirewallRuleDescriptionResponse,
DescribeDiskDiscountRequest: DescribeDiskDiscountRequest,
CreateDisksResponse: CreateDisksResponse,
AttachDisksResponse: AttachDisksResponse,
CreateFirewallRulesRequest: CreateFirewallRulesRequest,
Software: Software,
DescribeFirewallRulesResponse: DescribeFirewallRulesResponse,
DescribeInstancesReturnableResponse: DescribeInstancesReturnableResponse,
ContainerEnv: ContainerEnv,
FirewallRule: FirewallRule,
DeleteBlueprintsRequest: DeleteBlueprintsRequest,
FirewallRuleInfo: FirewallRuleInfo,
CreateFirewallRulesResponse: CreateFirewallRulesResponse,
DescribeDisksRequest: DescribeDisksRequest,
DescribeGeneralResourceQuotasRequest: DescribeGeneralResourceQuotasRequest,
DescribeZonesResponse: DescribeZonesResponse,
CreateBlueprintResponse: CreateBlueprintResponse,
PolicyDetail: PolicyDetail,
DetachDisksResponse: DetachDisksResponse,
LoginConfiguration: LoginConfiguration,
DescribeResetInstanceBlueprintsRequest: DescribeResetInstanceBlueprintsRequest,
DockerContainerConfiguration: DockerContainerConfiguration,
ResetAttachCcnResponse: ResetAttachCcnResponse,
ModifyInstancesRenewFlagResponse: ModifyInstancesRenewFlagResponse,
ApplyInstanceSnapshotRequest: ApplyInstanceSnapshotRequest,
DisassociateInstancesKeyPairsResponse: DisassociateInstancesKeyPairsResponse,
TerminateInstancesRequest: TerminateInstancesRequest,
RenewDiskChargePrepaid: RenewDiskChargePrepaid,
TerminateDisksRequest: TerminateDisksRequest,
ResetInstanceRequest: ResetInstanceRequest,
DescribeDiskConfigsResponse: DescribeDiskConfigsResponse,
RenewDisksResponse: RenewDisksResponse,
InternetAccessible: InternetAccessible,
RebootInstancesResponse: RebootInstancesResponse,
DescribeDisksDeniedActionsResponse: DescribeDisksDeniedActionsResponse,
DescribeInstanceLoginKeyPairAttributeRequest: DescribeInstanceLoginKeyPairAttributeRequest,
DescribeBundleDiscountRequest: DescribeBundleDiscountRequest,
Price: Price,
DescribeDisksReturnableResponse: DescribeDisksReturnableResponse,
IsolateDisksRequest: IsolateDisksRequest,
CreateInstanceSnapshotResponse: CreateInstanceSnapshotResponse,
ModifyInstancesBundleResponse: ModifyInstancesBundleResponse,
GeneralResourceQuota: GeneralResourceQuota,
DescribeResetInstanceBlueprintsResponse: DescribeResetInstanceBlueprintsResponse,
DescribeDisksReturnableRequest: DescribeDisksReturnableRequest,
SoftwareDetail: SoftwareDetail,
AutoMountConfiguration: AutoMountConfiguration,
InstancePrice: InstancePrice,
Tag: Tag,
ModifySnapshotAttributeResponse: ModifySnapshotAttributeResponse,
DescribeGeneralResourceQuotasResponse: DescribeGeneralResourceQuotasResponse,
ModifyInstancesRenewFlagRequest: ModifyInstancesRenewFlagRequest,
StopInstancesRequest: StopInstancesRequest,
DescribeModifyInstanceBundlesRequest: DescribeModifyInstanceBundlesRequest,
RenewInstancesResponse: RenewInstancesResponse,
ResetInstanceResponse: ResetInstanceResponse,
IsolateDisksResponse: IsolateDisksResponse,
DescribeFirewallRulesRequest: DescribeFirewallRulesRequest,
DiskDeniedActions: DiskDeniedActions,
InquirePriceCreateInstancesRequest: InquirePriceCreateInstancesRequest,
Scene: Scene,
CcnAttachedInstance: CcnAttachedInstance,
DescribeModifyInstanceBundlesResponse: DescribeModifyInstanceBundlesResponse,
AttachDetail: AttachDetail,
ModifyDisksAttributeResponse: ModifyDisksAttributeResponse,
CreateInstanceSnapshotRequest: CreateInstanceSnapshotRequest,
BlueprintInstance: BlueprintInstance,
InquirePriceCreateDisksResponse: InquirePriceCreateDisksResponse,
InstanceChargePrepaid: InstanceChargePrepaid,
ModifyInstancesAttributeResponse: ModifyInstancesAttributeResponse,
DescribeInstanceLoginKeyPairAttributeResponse: DescribeInstanceLoginKeyPairAttributeResponse,
}