UNPKG

tencentcloud-sdk-nodejs-intl-en

Version:
1,755 lines (1,480 loc) 317 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"); /** * CreateAllocationUnit request structure. * @class */ class CreateAllocationUnitRequest extends AbstractModel { constructor(){ super(); /** * New cost allocation unit parent node ID. * @type {number || null} */ this.ParentId = null; /** * Specifies the name of a newly-added cost allocation unit. * @type {string || null} */ this.Name = null; /** * Month, which is the current month by default if not provided. * @type {string || null} */ this.Month = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.ParentId = 'ParentId' in params ? params.ParentId : null; this.Name = 'Name' in params ? params.Name : null; this.Month = 'Month' in params ? params.Month : null; } } /** * 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; } } /** * ModifyAllocationRule request structure. * @class */ class ModifyAllocationRuleRequest extends AbstractModel { constructor(){ super(); /** * The edited sharing rule ID. * @type {number || null} */ this.RuleId = null; /** * Edited sharing rule name. * @type {string || null} */ this.Name = null; /** * Public sharing policy types, enumeration values are as follows: 1 - custom sharing proportion 2 - proportional allocation 3 - allocation by proportion. * @type {number || null} */ this.Type = null; /** * Edited share rules expression. * @type {AllocationRuleExpression || null} */ this.RuleDetail = null; /** * Edited sharing proportion expression. * @type {Array.<AllocationRationExpression> || null} */ this.RatioDetail = null; /** * Month, which is the current month by default if not provided. * @type {string || null} */ this.Month = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.RuleId = 'RuleId' in params ? params.RuleId : null; this.Name = 'Name' in params ? params.Name : null; this.Type = 'Type' in params ? params.Type : null; if (params.RuleDetail) { let obj = new AllocationRuleExpression(); obj.deserialize(params.RuleDetail) this.RuleDetail = obj; } if (params.RatioDetail) { this.RatioDetail = new Array(); for (let z in params.RatioDetail) { let obj = new AllocationRationExpression(); obj.deserialize(params.RatioDetail[z]); this.RatioDetail.push(obj); } } this.Month = 'Month' in params ? params.Month : null; } } /** * DeleteAllocationRule request structure. * @class */ class DeleteAllocationRuleRequest extends AbstractModel { constructor(){ super(); /** * The deleted sharing rule ID. * @type {number || null} */ this.RuleId = null; /** * Month, which is the current month by default if not provided. * @type {string || null} */ this.Month = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.RuleId = 'RuleId' in params ? params.RuleId : null; this.Month = 'Month' in params ? params.Month : null; } } /** * CreateAllocationRule response structure. * @class */ class CreateAllocationRuleResponse extends AbstractModel { constructor(){ super(); /** * Add new sharing rule ID. * @type {number || null} */ this.Id = 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.Id = 'Id' in params ? params.Id : null; this.RequestId = 'RequestId' in params ? params.RequestId : 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; } } /** * DescribeAllocationTree response structure. * @class */ class DescribeAllocationTreeResponse extends AbstractModel { constructor(){ super(); /** * Cost allocation unit ID. * @type {number || null} */ this.Id = null; /** * Specifies the name of a cost allocation unit. * @type {string || null} */ this.Name = null; /** * Unique identifier of a cost allocation unit * @type {string || null} */ this.TreeNodeUniqKey = null; /** * Specifies a subtree. * @type {Array.<AllocationTree> || null} */ this.Children = 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.Id = 'Id' in params ? params.Id : null; this.Name = 'Name' in params ? params.Name : null; this.TreeNodeUniqKey = 'TreeNodeUniqKey' in params ? params.TreeNodeUniqKey : null; if (params.Children) { this.Children = new Array(); for (let z in params.Children) { let obj = new AllocationTree(); obj.deserialize(params.Children[z]); this.Children.push(obj); } } this.RequestId = 'RequestId' in params ? params.RequestId : 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; } } /** * Cost allocation tree. * @class */ class AllocationTree extends AbstractModel { constructor(){ super(); /** * ID of a cost allocation unit. * @type {number || null} */ this.Id = null; /** * Cost allocation unit name. * @type {string || null} */ this.Name = null; /** * Unique identifier of a cost allocation unit * @type {string || null} */ this.TreeNodeUniqKey = null; /** * Subtree. * @type {Array.<AllocationTree> || null} */ this.Children = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Id = 'Id' in params ? params.Id : null; this.Name = 'Name' in params ? params.Name : null; this.TreeNodeUniqKey = 'TreeNodeUniqKey' in params ? params.TreeNodeUniqKey : null; if (params.Children) { this.Children = new Array(); for (let z in params.Children) { let obj = new AllocationTree(); obj.deserialize(params.Children[z]); this.Children.push(obj); } } } } /** * 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; } } /** * CreateAllocationRule request structure. * @class */ class CreateAllocationRuleRequest extends AbstractModel { constructor(){ super(); /** * List of sharing rules. * @type {AllocationRulesSummary || null} */ this.RuleList = null; /** * Month, the current month by default if not provided. * @type {string || null} */ this.Month = null; } /** * @private */ deserialize(params) { if (!params) { return; } if (params.RuleList) { let obj = new AllocationRulesSummary(); obj.deserialize(params.RuleList) this.RuleList = obj; } this.Month = 'Month' in params ? params.Month : 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; } } /** * Detailed summary of products * @class */ class BusinessSummaryInfo extends AbstractModel { constructor(){ super(); /** * Product code * @type {string || null} */ this.BusinessCode = null; /** * Product name: The name of a Tencent Cloud product purchased by the user, such as CVM. * @type {string || null} */ this.BusinessCodeName = null; /** * Original cost in USD. This parameter became valid when Bill 3.0 took effect in May 2021. Before that, `-` was returned for this parameter. If a customer has applied for a contract price different from the prices listed on the official website, `-` will also be returned for this parameter. Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.TotalCost = null; /** * Total amount after discount * @type {string || null} */ this.RealTotalCost = null; /** * Cash credit: The amount paid from the user’s cash account * @type {string || null} */ this.CashPayAmount = null; /** * Free credit: The amount paid with the user’s free credit * @type {string || null} */ this.IncentivePayAmount = null; /** * Voucher payment: The voucher deduction amount * @type {string || null} */ this.VoucherPayAmount = null; /** * Commission credit: 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; } /** * @private */ deserialize(params) { if (!params) { return; } this.BusinessCode = 'BusinessCode' in params ? params.BusinessCode : null; this.BusinessCodeName = 'BusinessCodeName' in params ? params.BusinessCodeName : null; this.TotalCost = 'TotalCost' in params ? params.TotalCost : null; this.RealTotalCost = 'RealTotalCost' in params ? params.RealTotalCost : null; 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; } } /** * 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; } } /** * DescribeGatherRuleDetail request structure. * @class */ class DescribeGatherRuleDetailRequest extends AbstractModel { constructor(){ super(); /** * Specifies the ID of the queried collection rule. * @type {number || null} */ this.Id = null; /** * Month, the current month by default if not provided. * @type {string || null} */ this.Month = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Id = 'Id' in params ? params.Id : null; this.Month = 'Month' in params ? params.Month : 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 pa