UNPKG

tencentcloud-sdk-nodejs-intl-en

Version:
1,660 lines (1,403 loc) • 276 kB
/* * Copyright (c) 2018 THL A29 Limited, a Tencent company. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. */ const AbstractModel = require("../../common/abstract_model"); /** * DeleteAllocationTag request structure. * @class */ class DeleteAllocationTagRequest extends AbstractModel { constructor(){ super(); /** * Cost allocation tag key * @type {Array.<string> || null} */ this.TagKey = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.TagKey = 'TagKey' in params ? params.TagKey : null; } } /** * DescribeCostSummaryByProduct request structure. * @class */ class DescribeCostSummaryByProductRequest extends AbstractModel { constructor(){ super(); /** * The value must be of the same month as `EndTime`. The query period must start and end on the same month and the query result returned will be of the entire month. For example, if both `BeginTime` and `EndTime` are `2018-09`, the data returned will be for the entire month of September 2018. * @type {string || null} */ this.BeginTime = null; /** * The value must be of the same month as `BeginTime`. The query period must start and end on the same month and the query result returned will be of the entire month. For example, if both `BeginTime` and `EndTime` are `2018-09`, the data returned will be for the entire month of September 2018. * @type {string || null} */ this.EndTime = null; /** * Data quantity per fetch. The maximum value is 100. * @type {number || null} */ this.Limit = null; /** * Offset, which starts from 0 by default * @type {number || null} */ this.Offset = null; /** * UIN of the user querying the bill data * @type {string || null} */ this.PayerUin = null; /** * Whether to return the record count. 0 for no, 1 for yes. Default is no. * @type {number || null} */ this.NeedRecordNum = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.BeginTime = 'BeginTime' in params ? params.BeginTime : null; this.EndTime = 'EndTime' in params ? params.EndTime : null; this.Limit = 'Limit' in params ? params.Limit : null; this.Offset = 'Offset' in params ? params.Offset : null; this.PayerUin = 'PayerUin' in params ? params.PayerUin : null; this.NeedRecordNum = 'NeedRecordNum' in params ? params.NeedRecordNum : null; } } /** * DescribeCostExplorerSummary response structure. * @class */ class DescribeCostExplorerSummaryResponse extends AbstractModel { constructor(){ super(); /** * Number of data entries Note: This field may return null, indicating that no valid values can be obtained. * @type {number || null} */ this.Total = null; /** * Header informationNote: This field may return null, indicating that no valid values can be obtained. * @type {AnalyseHeaderDetail || null} */ this.Header = null; /** * Data detailsNote: This field may return null, indicating that no valid values can be obtained. * @type {Array.<AnalyseDetail> || null} */ this.Detail = null; /** * Data amountNote: This field may return null, indicating that no valid values can be obtained. * @type {AnalyseDetail || null} */ this.TotalDetail = null; /** * Filter boxNote: This field may return null, indicating that no valid values can be obtained. * @type {AnalyseConditionDetail || null} */ this.ConditionValue = null; /** * The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Total = 'Total' in params ? params.Total : null; if (params.Header) { let obj = new AnalyseHeaderDetail(); obj.deserialize(params.Header) this.Header = obj; } if (params.Detail) { this.Detail = new Array(); for (let z in params.Detail) { let obj = new AnalyseDetail(); obj.deserialize(params.Detail[z]); this.Detail.push(obj); } } if (params.TotalDetail) { let obj = new AnalyseDetail(); obj.deserialize(params.TotalDetail) this.TotalDetail = obj; } if (params.ConditionValue) { let obj = new AnalyseConditionDetail(); obj.deserialize(params.ConditionValue) this.ConditionValue = obj; } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * Consumption details summarized by product * @class */ class ConsumptionBusinessSummaryDataItem extends AbstractModel { constructor(){ super(); /** * Product name code * @type {string || null} */ this.BusinessCode = null; /** * Product name * @type {string || null} */ this.BusinessCodeName = null; /** * Discounted total price * @type {string || null} */ this.RealTotalCost = null; /** * Cost trend * @type {ConsumptionSummaryTrend || null} */ this.Trend = null; /** * Cash Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.CashPayAmount = null; /** * Bonus Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.IncentivePayAmount = null; /** * VoucherNote: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.VoucherPayAmount = null; /** * Share revenueNote: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.TransferPayAmount = null; /** * Region name (only shown in regional summary) Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.RegionName = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.BusinessCode = 'BusinessCode' in params ? params.BusinessCode : null; this.BusinessCodeName = 'BusinessCodeName' in params ? params.BusinessCodeName : null; this.RealTotalCost = 'RealTotalCost' in params ? params.RealTotalCost : null; if (params.Trend) { let obj = new ConsumptionSummaryTrend(); obj.deserialize(params.Trend) this.Trend = obj; } this.CashPayAmount = 'CashPayAmount' in params ? params.CashPayAmount : null; this.IncentivePayAmount = 'IncentivePayAmount' in params ? params.IncentivePayAmount : null; this.VoucherPayAmount = 'VoucherPayAmount' in params ? params.VoucherPayAmount : null; this.TransferPayAmount = 'TransferPayAmount' in params ? params.TransferPayAmount : null; this.RegionName = 'RegionName' in params ? params.RegionName : null; } } /** * Bill tag information. * @class */ class BillTagInfo extends AbstractModel { constructor(){ super(); /** * Cost allocation tag key * @type {string || null} */ this.TagKey = null; /** * Tag value * @type {string || null} */ this.TagValue = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.TagKey = 'TagKey' in params ? params.TagKey : null; this.TagValue = 'TagValue' in params ? params.TagValue : null; } } /** * Product filter criteria * @class */ class ConditionBusiness extends AbstractModel { constructor(){ super(); /** * Product name code * @type {string || null} */ this.BusinessCode = null; /** * Product name * @type {string || null} */ this.BusinessCodeName = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.BusinessCode = 'BusinessCode' in params ? params.BusinessCode : null; this.BusinessCodeName = 'BusinessCodeName' in params ? params.BusinessCodeName : null; } } /** * Cost analysis transaction type complex type * @class */ class AnalyseActionTypeDetail extends AbstractModel { constructor(){ super(); /** * Transaction type codeNote: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.ActionType = null; /** * Transaction type nameNote: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.ActionTypeName = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.ActionType = 'ActionType' in params ? params.ActionType : null; this.ActionTypeName = 'ActionTypeName' in params ? params.ActionTypeName : null; } } /** * DescribeCostExplorerSummary request structure. * @class */ class DescribeCostExplorerSummaryRequest extends AbstractModel { constructor(){ super(); /** * The start time of the period in the format of yyyy-mm-dd hh:ii:ss. * @type {string || null} */ this.BeginTime = null; /** * The end time of the period in the format of yyyy-mm-dd hh:ii:ss. * @type {string || null} */ this.EndTime = null; /** * Bill type: 1-cost bill, 2-consumption bill * @type {string || null} */ this.BillType = null; /** * Statistical period: day-day, month-month; * @type {string || null} */ this.PeriodType = null; /** * Classification dimension (data aggregation dimension). Query classification dimension. (Use classification dimension code input parameter.) Input parameter enumeration value:default = Total only feeType = Fee typebillType = Bill typebusiness = Product product = Sub-productregion=Region zone = Availability zoneactionType = Transaction typepayMode = Billing modetags = Tagproject = ProjectpayerUin = Payer accountownerUin = User account * @type {string || null} */ this.Dimensions = null; /** * Fee type: cost-total cost, totalCost-original price cost * @type {string || null} */ this.FeeType = null; /** * Quantity. The maximum value per page is 100. * @type {number || null} */ this.PageSize = null; /** * Starting page, where PageNo=1 indicates the first page, PageNo=2 indicates the second page, and so on. * @type {number || null} */ this.PageNo = null; /** * Cost allocation tag value * @type {string || null} */ this.TagKeyStr = null; /** * Whether the filter box is needed: 1- indicates it is needed, 0- indicates it is not needed. If it is not specified, it is not required by default. * @type {string || null} */ this.NeedConditionValue = null; /** * Filter parameters * @type {AnalyseConditions || null} */ this.Conditions = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.BeginTime = 'BeginTime' in params ? params.BeginTime : null; this.EndTime = 'EndTime' in params ? params.EndTime : null; this.BillType = 'BillType' in params ? params.BillType : null; this.PeriodType = 'PeriodType' in params ? params.PeriodType : null; this.Dimensions = 'Dimensions' in params ? params.Dimensions : null; this.FeeType = 'FeeType' in params ? params.FeeType : null; this.PageSize = 'PageSize' in params ? params.PageSize : null; this.PageNo = 'PageNo' in params ? params.PageNo : null; this.TagKeyStr = 'TagKeyStr' in params ? params.TagKeyStr : null; this.NeedConditionValue = 'NeedConditionValue' in params ? params.NeedConditionValue : null; if (params.Conditions) { let obj = new AnalyseConditions(); obj.deserialize(params.Conditions) this.Conditions = obj; } } } /** * DescribeCostSummaryByProduct response structure. * @class */ class DescribeCostSummaryByProductResponse extends AbstractModel { constructor(){ super(); /** * Data readiness, 0 for not ready, 1 for ready * @type {number || null} */ this.Ready = null; /** * Consumption details * @type {ConsumptionSummaryTotal || null} */ this.Total = null; /** * Consumption details summarized by productNote: This field may return null, indicating that no valid values can be obtained. * @type {Array.<ConsumptionBusinessSummaryDataItem> || null} */ this.Data = null; /** * Record count. The system returns null when NeedRecordNum is 0.Note: This field may return null, indicating that no valid values can be obtained. * @type {number || null} */ this.RecordNum = null; /** * The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Ready = 'Ready' in params ? params.Ready : null; if (params.Total) { let obj = new ConsumptionSummaryTotal(); obj.deserialize(params.Total) this.Total = obj; } if (params.Data) { this.Data = new Array(); for (let z in params.Data) { let obj = new ConsumptionBusinessSummaryDataItem(); obj.deserialize(params.Data[z]); this.Data.push(obj); } } this.RecordNum = 'RecordNum' in params ? params.RecordNum : null; this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * Product details * @class */ class ProductInfo extends AbstractModel { constructor(){ super(); /** * Product detail name identifier * @type {string || null} */ this.Name = null; /** * Product details * @type {string || null} */ this.Value = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Name = 'Name' in params ? params.Name : null; this.Value = 'Value' in params ? params.Value : null; } } /** * DeleteAllocationTag response structure. * @class */ class DeleteAllocationTagResponse 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; } } /** * DescribeBillDetailForOrganization response structure. * @class */ class DescribeBillDetailForOrganizationResponse extends AbstractModel { constructor(){ super(); /** * Details list. * @type {Array.<DistributionBillDetail> || null} */ this.DetailSet = null; /** * Total number of records, which is cached every 24 hours and may be less than the actual total number of records. Note: This field may return null, indicating that no valid values can be obtained. * @type {number || null} */ this.Total = null; /** * Context information of the current request, which can be used in the parameters of the next request to speed up the query. Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.Context = null; /** * The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } if (params.DetailSet) { this.DetailSet = new Array(); for (let z in params.DetailSet) { let obj = new DistributionBillDetail(); obj.deserialize(params.DetailSet[z]); this.DetailSet.push(obj); } } this.Total = 'Total' in params ? params.Total : null; this.Context = 'Context' in params ? params.Context : null; this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * Bill details configuration descriptions * @class */ class BillDetailComponentConfig extends AbstractModel { constructor(){ super(); /** * Configuration description name Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.Name = null; /** * Configuration description value Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.Value = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Name = 'Name' in params ? params.Name : null; this.Value = 'Value' in params ? params.Value : null; } } /** * DescribeCostSummaryByResource response structure. * @class */ class DescribeCostSummaryByResourceResponse extends AbstractModel { constructor(){ super(); /** * Data readiness, 0 for not ready, 1 for ready * @type {number || null} */ this.Ready = null; /** * Consumption detailsNote: This field may return null, indicating that no valid values can be obtained. * @type {ConsumptionSummaryTotal || null} */ this.Total = null; /** * Filter criteria Note: This field may return null, indicating that no valid values can be obtained. * @type {ConsumptionResourceSummaryConditionValue || null} */ this.ConditionValue = null; /** * Record countNote: This field may return null, indicating that no valid values can be obtained. * @type {number || null} */ this.RecordNum = null; /** * Resource consumption detailsNote: This field may return null, indicating that no valid values can be obtained. * @type {Array.<ConsumptionResourceSummaryDataItem> || null} */ this.Data = null; /** * The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Ready = 'Ready' in params ? params.Ready : null; if (params.Total) { let obj = new ConsumptionSummaryTotal(); obj.deserialize(params.Total) this.Total = obj; } if (params.ConditionValue) { let obj = new ConsumptionResourceSummaryConditionValue(); obj.deserialize(params.ConditionValue) this.ConditionValue = obj; } this.RecordNum = 'RecordNum' in params ? params.RecordNum : null; if (params.Data) { this.Data = new Array(); for (let z in params.Data) { let obj = new ConsumptionResourceSummaryDataItem(); obj.deserialize(params.Data[z]); this.Data.push(obj); } } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * DescribeBillSummaryByRegion request structure. * @class */ class DescribeBillSummaryByRegionRequest extends AbstractModel { constructor(){ super(); /** * The value must be of the same month as `EndTime`. Query period must start and end on the same month and the query result returned will be of the entire month. For example, if both `BeginTime` and `EndTime` are `2018-09`, the data returned will be for the entire month of September 2018. * @type {string || null} */ this.BeginTime = null; /** * The value must be of the same month as `BeginTime`. Query period must start and end on the same month and the query result returned will be of the entire month. For example, if both `BeginTime` and `EndTime` are `2018-09`, the data returned will be for the entire month of September 2018. * @type {string || null} */ this.EndTime = null; /** * Queries bill data user's UIN * @type {string || null} */ this.PayerUin = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.BeginTime = 'BeginTime' in params ? params.BeginTime : null; this.EndTime = 'EndTime' in params ? params.EndTime : null; this.PayerUin = 'PayerUin' in params ? params.PayerUin : null; } } /** * This API is used to view UIN exception adjustment details. * @class */ class AdjustInfoDetail extends AbstractModel { constructor(){ super(); /** * Payer UIN, namely the account ID of the payer. The account ID is the user's unique account identifier on Tencent Cloud. Note: This field may return null, indicating that no valid values can be obtained. Example value: 909619400. * @type {string || null} */ this.PayerUin = null; /** * Bill month. Format: yyyy-MM. Note: This field may return null, indicating that no valid value can be obtained. Example value: 2024-10. * @type {string || null} */ this.Month = null; /** * Adjustment type. Adjustment: manualAdjustment. Supplementary settlement: supplementarySettlement. Re-settlement: reSettlement. Note: This field may return null, indicating that no valid value can be obtained. Example value: manualAdjustment. * @type {string || null} */ this.AdjustType = null; /** * Adjustment order number. Note: This field may return null, indicating that no valid value can be obtained. Example value: 2220726096135. * @type {string || null} */ this.AdjustNum = null; /** * Completion time of exception adjustment. Format: yyyy-MM-dd HH:mm:ss. Note: This field may return null, indicating that no valid value can be obtained. Example value: 2022-12-02 12:39:04. * @type {string || null} */ this.AdjustCompletionTime = null; /** * Adjustment amount. Note: This field may return null, indicating that no valid value can be obtained. Example value: 333.00000000. * @type {number || null} */ this.AdjustAmount = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.PayerUin = 'PayerUin' in params ? params.PayerUin : null; this.Month = 'Month' in params ? params.Month : null; this.AdjustType = 'AdjustType' in params ? params.AdjustType : null; this.AdjustNum = 'AdjustNum' in params ? params.AdjustNum : null; this.AdjustCompletionTime = 'AdjustCompletionTime' in params ? params.AdjustCompletionTime : null; this.AdjustAmount = 'AdjustAmount' in params ? params.AdjustAmount : null; } } /** * Consumption details summarized by region * @class */ class ConsumptionRegionSummaryDataItem extends AbstractModel { constructor(){ super(); /** * Region ID * @type {string || null} */ this.RegionId = null; /** * Region name * @type {string || null} */ this.RegionName = null; /** * Discounted total price * @type {string || null} */ this.RealTotalCost = null; /** * Trend * @type {ConsumptionSummaryTrend || null} */ this.Trend = null; /** * Product consumption details * @type {Array.<ConsumptionBusinessSummaryDataItem> || null} */ this.Business = null; /** * Cash Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.CashPayAmount = null; /** * VoucherNote: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.VoucherPayAmount = null; /** * Bonus Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.IncentivePayAmount = null; /** * Share revenueNote: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.TransferPayAmount = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.RegionId = 'RegionId' in params ? params.RegionId : null; this.RegionName = 'RegionName' in params ? params.RegionName : null; this.RealTotalCost = 'RealTotalCost' in params ? params.RealTotalCost : null; if (params.Trend) { let obj = new ConsumptionSummaryTrend(); obj.deserialize(params.Trend) this.Trend = obj; } if (params.Business) { this.Business = new Array(); for (let z in params.Business) { let obj = new ConsumptionBusinessSummaryDataItem(); obj.deserialize(params.Business[z]); this.Business.push(obj); } } this.CashPayAmount = 'CashPayAmount' in params ? params.CashPayAmount : null; this.VoucherPayAmount = 'VoucherPayAmount' in params ? params.VoucherPayAmount : null; this.IncentivePayAmount = 'IncentivePayAmount' in params ? params.IncentivePayAmount : null; this.TransferPayAmount = 'TransferPayAmount' in params ? params.TransferPayAmount : null; } } /** * DescribeBillSummary request structure. * @class */ class DescribeBillSummaryRequest extends AbstractModel { constructor(){ super(); /** * Bill month in the format of "yyyy-mm" * @type {string || null} */ this.Month = null; /** * Bill dimension. Valid values: `business`, `project`, `region`, `payMode`, and `tag` * @type {string || null} */ this.GroupType = null; /** * Tag key, which is used when `GroupType` is `tag`. * @type {Array.<string> || null} */ this.TagKey = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Month = 'Month' in params ? params.Month : null; this.GroupType = 'GroupType' in params ? params.GroupType : null; this.TagKey = 'TagKey' in params ? params.TagKey : null; } } /** * DescribeBillResourceSummary response structure. * @class */ class DescribeBillResourceSummaryResponse extends AbstractModel { constructor(){ super(); /** * Resource summary list * @type {Array.<BillResourceSummary> || null} */ this.ResourceSummarySet = null; /** * Total number of resource summary lists, which will not be returned when `NeedRecordNum` is `0`. This field may return null, indicating that no valid values can be obtained. * @type {number || null} */ this.Total = null; /** * The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } if (params.ResourceSummarySet) { this.ResourceSummarySet = new Array(); for (let z in params.ResourceSummarySet) { let obj = new BillResourceSummary(); obj.deserialize(params.ResourceSummarySet[z]); this.ResourceSummarySet.push(obj); } } this.Total = 'Total' in params ? params.Total : null; this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * Objects of reseller bill details * @class */ class DistributionBillDetail extends AbstractModel { constructor(){ super(); /** * Product name: The name of a Tencent Cloud product purchased by the user, such as CVM. * @type {string || null} */ this.BusinessCodeName = null; /** * Subproduct name: The subcategory of a Tencent Cloud product purchased by the user, such as CVM - Standard S1. * @type {string || null} */ this.ProductCodeName = null; /** * Billing mode: The billing mode, which can be monthly subscription or pay-as-you-go. * @type {string || null} */ this.PayModeName = null; /** * Project Name: The project to which a resource belongs, which is user-designated. If a resource has not been assigned to a project, it will automatically belong to the default project. * @type {string || null} */ this.ProjectName = null; /** * Region: The region of a resource, e.g. South China (Guangzhou). * @type {string || null} */ this.RegionName = null; /** * Availability zone: availability zone of a resource, e.g. Guangzhou Zone 3. * @type {string || null} */ this.ZoneName = null; /** * Instance ID: The object ID of a billed resource, such as a CVM instance ID. This object ID may vary due to various forms and contents of resources in different products. * @type {string || null} */ this.ResourceId = null; /** * Instance name: The resource name set by the user in the console. If it is not set, it will be empty by default. * @type {string || null} */ this.ResourceName = null; /** * Transaction type, which can be monthly subscription purchase, monthly subscription renewal, pay-as-you-go deduction, etc. * @type {string || null} */ this.ActionTypeName = null; /** * Order ID: The ID of a monthly subscription order. * @type {string || null} */ this.OrderId = null; /** * Transaction ID: The ID of a settlement bill. * @type {string || null} */ this.BillId = null; /** * Deduction time: The settlement cost deduction time. * @type {string || null} */ this.PayTime = null; /** * Usage start time: The time at which product or service usage starts. * @type {string || null} */ this.FeeBeginTime = null; /** * Usage end time: The time at which product or service usage ends. * @type {string || null} */ this.FeeEndTime = null; /** * List of components. * @type {Array.<BillDetailComponent> || null} */ this.ComponentSet = null; /** * Owner account ID: The account ID of the actual resource user. * @type {string || null} */ this.OwnerUin = null; /** * Operator account ID: The account or role ID of the operator who purchases or activates a resource. * @type {string || null} */ this.OperateUin = null; /** * Tag information. Note: This field may return null, indicating that no valid values can be obtained. * @type {Array.<BillTagInfo> || null} */ this.Tags = null; /** * Product code. Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.BusinessCode = null; /** * Subproduct code. Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.ProductCode = null; /** * Transaction type code. Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.ActionType = null; /** * Region ID. Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.RegionId = null; /** * Project ID. * @type {number || null} */ this.ProjectId = null; /** * Price attribute: A set of attributes which will determine the price of a component, apart from unit price and usage duration. Note: This field may return null, indicating that no valid values can be obtained. * @type {Array.<string> || null} */ this.PriceInfo = null; /** * Associated transaction document ID: The ID of the document associated with a transaction, such as a write-off order, the original order showing a deduction error during first settlement, a restructured order, or the original purchase order corresponding to a refund order. Note: This field may return null, indicating that no valid values can be obtained. * @type {BillDetailAssociatedOrder || null} */ this.AssociatedOrder = null; /** * Calculation formula: The detailed calculation formula for a specific transaction type, such as refund or configuration change. Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.Formula = null; /** * Billing rules: Official website links for detailed billing rules of each product. Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.FormulaUrl = null; /** * Billing monthNote: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.BillMonth = null; /** * Billing dayNote: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.BillDay = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.BusinessCodeName = 'BusinessCodeName' in params ? params.BusinessCodeName : null; this.ProductCodeName = 'ProductCodeName' in params ? params.ProductCodeName : null; this.PayModeName = 'PayModeName' in params ? params.PayModeName : null; this.ProjectName = 'ProjectName' in params ? params.ProjectName : null; this.RegionName = 'RegionName' in params ? params.RegionName : null; this.ZoneName = 'ZoneName' in params ? params.ZoneName : null; this.ResourceId = 'ResourceId' in params ? params.ResourceId : null; this.ResourceName = 'ResourceName' in params ? params.ResourceName : null; this.ActionTypeName = 'ActionTypeName' in params ? params.ActionTypeName : null; this.OrderId = 'OrderId' in params ? params.OrderId : null; this.BillId = 'BillId' in params ? params.BillId : null; this.PayTime = 'PayTime' in params ? params.PayTime : null; this.FeeBeginTime = 'FeeBeginTime' in params ? params.FeeBeginTime : null; this.FeeEndTime = 'FeeEndTime' in params ? params.FeeEndTime : null; if (params.ComponentSet) { this.ComponentSet = new Array(); for (let z in params.ComponentSet) { let obj = new BillDetailComponent(); obj.deserialize(params.ComponentSet[z]); this.ComponentSet.push(obj); } } this.OwnerUin = 'OwnerUin' in params ? params.OwnerUin : null; this.OperateUin = 'OperateUin' in params ? params.OperateUin : null; if (params.Tags) { this.Tags = new Array(); for (let z in params.Tags) { let obj = new BillTagInfo(); obj.deserialize(params.Tags[z]); this.Tags.push(obj); } } this.BusinessCode = 'BusinessCode' in params ? params.BusinessCode : null; this.ProductCode = 'ProductCode' in params ? params.ProductCode : null; this.ActionType = 'ActionType' in params ? params.ActionType : null; this.RegionId = 'RegionId' in params ? params.RegionId : null; this.ProjectId = 'ProjectId' in params ? params.ProjectId : null; this.PriceInfo = 'PriceInfo' in params ? params.PriceInfo : null; if (params.AssociatedOrder) { let obj = new BillDetailAssociatedOrder(); obj.deserialize(params.AssociatedOrder) this.AssociatedOrder = obj; } this.Formula = 'Formula' in params ? params.Formula : null; this.FormulaUrl = 'FormulaUrl' in params ? params.FormulaUrl : null; this.BillMonth = 'BillMonth' in params ? params.BillMonth : null; this.BillDay = 'BillDay' in params ? params.BillDay : null; } } /** * DescribeDosageCosDetailByDate request structure. * @class */ class DescribeDosageCosDetailByDateRequest extends AbstractModel { constructor(){ super(); /** * The start date of the usage query, such as `2020-09-01`. * @type {string || null} */ this.StartDate = null; /** * The end date of the usage query (end date must be in the same month as the start date), such as `2020-09-30`. * @type {string || null} */ this.EndDate = null; /** * Bucket name. You can use `Get Service` to query the list of all buckets under a requester account. For details, see [GET Service (List Buckets)](https://www.tencentcloud.com/document/product/436/8291). * @type {string || null} */ this.BucketName = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.StartDate = 'StartDate' in params ? params.StartDate : null; this.EndDate = 'EndDate' in params ? params.EndDate : null; this.BucketName = 'BucketName' in params ? params.BucketName : null; } } /** * DescribeBillAdjustInfo response structure. * @class */ class DescribeBillAdjustInfoResponse extends AbstractModel { constructor(){ super(); /** * Total amount of data. Example value: 10. * @type {number || null} */ this.Total = null; /** * Detailed data. Example value: []. * @type {Array.<AdjustInfoDetail> || null} */ this.Data = null; /** * The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Total = 'Total' in params ? params.Total : null; if (params.Data) { this.Data = new Array(); for (let z in params.Data) { let obj = new AdjustInfoDetail(); obj.deserialize(params.Data[z]); this.Data.push(obj); } } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * Summary objects for a reseller bill * @class */ class BillDistributionResourceSummary extends AbstractModel { constructor(){ super(); /** * Product name: The name of a Tencent Cloud product purchased by the user, such as CVM. * @type {string || null} */ this.BusinessCodeName = null; /** * Subproduct name: The subcategory of a Tencent Cloud product purchased by the user, such as CVM - Standard S1. * @type {string || null} */ this.ProductCodeName = null; /** * Billing mode: The billing mode, which can be monthly subscription or pay-as-you-go. * @type {string || null} */ this.PayModeName = null; /** * Project Name: The project to which a resource belongs, which is user-designated. If a resource has not been assigned to a project, it will automatically belong to the default project. * @type {string || null} */ this.ProjectName = null; /** * Region: The region of a resource, e.g. South China (Guangzhou). * @type {string || null} */ this.RegionName = null; /** * Availability zone: The availability zone of a resource, e.g. Guangzhou Zone 3. * @type {string || null} */ this.ZoneName = null; /** * Instance ID: The object ID of a billed resource, such as a CVM instance ID. This object ID may vary due to various forms and contents of resources in different products. * @type {string || null} */ this.ResourceId = null; /** * Instance name: The resource name set by the user in the console. If it is not set, it will be empty by default. * @type {string || null} */ this.ResourceName = null; /** * Transaction type, which can be monthly subscription purchase, monthly subscription renewal, pay-as-you-go deduction, etc. * @type {string || null} */ this.ActionTypeName = null; /** * Order ID: The ID of a monthly subscription order. * @type {string || null} */ this.OrderId = null; /** * Deduction time: The settlement cost deduction time. * @type {string || null} */ this.PayTime = null; /** * Usage start time: The time at which product or service usage starts. * @type {string || null} */ this.FeeBeginTime = null; /** * Usage end time: The time at which product or service usage ends. * @type {string || null} */ this.FeeEndTime = null; /** * Configuration description: The billable item names and usage of a resource, which are displayed on the resource bill only. * @type {string || null} */ this.ConfigDesc = null; /** * Extended Field 1: The extended attribute information of a product, which is displayed on the resource bill only. * @type {string || null} */ this.ExtendField1 = null; /** * Extended field 2: The extended attribute information of a product, which is displayed on the resource bill only. * @type {string || null} */ this.ExtendField2 = null; /** * Original cost. The original cost of a component = Component price x Usage x Usage duration. If a customer has applied for a fixed preferential price or contract price or if a customer is in a refund scenario, this parameter will not be displayed by default. * @type {string || null} */ this.TotalCost = null; /** * Discount multiplier: The discount multiplier that applies to the component. If a customer has applied for a fixed preferential price or contract price or if a customer is in a refund scenario, this parameter will not be displayed by default. * @type {string || null} */ this.Discount = null; /** * Offer type. * @type {string || null} */ this.ReduceType = null; /** * Total amount after discount. * @type {string || null} */ this.RealTotalCost = null; /** * Voucher payment: The voucher deduction amount. * @type {string || null} */ this.VoucherPayAmount = null; /** * Cash credit payment: The amount paid through the user's cash account. * @type {string || null} */ this.CashPayAmount = null; /** * Free credit payment: The amount paid with the user's free credit. * @type {string || null} */ this.IncentivePayAmount = null; /** * Commission credit payment: The amount paid with the user's commission credit. Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.TransferPayAmount = null; /** * Extended field 3: The extended attribute information of a product, which is displayed on the resource bill only. * @type {string || null} */ this.ExtendField3 = null; /** * Extended field 4: The extended attribute information of a product, which is displayed on the resource bill only. * @type {string || null} */ this.ExtendField4 = null; /** * Extended field 5: The extended attribute information of a product, which is displayed on the resource bill only. * @type {string || null} */ this.ExtendField5 = null; /** * Tag information. Note: This field may return null, indicating that no valid values can be obtained. * @type {Array.<BillTagInfo> || null} */ this.Tags = null; /** * Owner account ID: The account ID of the actual resource user. * @type {string || null} */ this.OwnerUin = null; /** * Operator account ID: The account or role ID of the operator who purchases or activates a resource. * @type {string || null} */ this.OperateUin = null; /** * Product c