@alicloud/polardb20170801 7.3.0 → 7.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (137) hide show
  1. package/dist/client.d.ts +70 -44
  2. package/dist/client.js +237 -44
  3. package/dist/client.js.map +1 -1
  4. package/dist/models/CreateAccountRequest.d.ts +39 -53
  5. package/dist/models/CreateAccountRequest.js.map +1 -1
  6. package/dist/models/CreateAidbclusterTaskRequest.d.ts +13 -17
  7. package/dist/models/CreateAidbclusterTaskRequest.js +2 -0
  8. package/dist/models/CreateAidbclusterTaskRequest.js.map +1 -1
  9. package/dist/models/CreateAidbclusterTaskResponseBody.d.ts +2 -2
  10. package/dist/models/CreateBackupRequest.d.ts +2 -1
  11. package/dist/models/CreateBackupRequest.js +2 -0
  12. package/dist/models/CreateBackupRequest.js.map +1 -1
  13. package/dist/models/CreateBackupResponseBody.d.ts +1 -1
  14. package/dist/models/CreateDbclusterEndpointRequest.d.ts +67 -92
  15. package/dist/models/CreateDbclusterEndpointRequest.js.map +1 -1
  16. package/dist/models/DescribeAgenticDbcomputeClustersRequest.d.ts +13 -0
  17. package/dist/models/DescribeAgenticDbcomputeClustersRequest.js.map +1 -1
  18. package/dist/models/DescribeAgenticDbcomputeClustersResponseBody.d.ts +64 -0
  19. package/dist/models/DescribeAgenticDbcomputeClustersResponseBody.js.map +1 -1
  20. package/dist/models/DescribeAidbclusterAttributeResponseBody.d.ts +91 -18
  21. package/dist/models/DescribeAidbclusterAttributeResponseBody.js +127 -1
  22. package/dist/models/DescribeAidbclusterAttributeResponseBody.js.map +1 -1
  23. package/dist/models/DescribeAidbclusterTaskAttributeRequest.d.ts +3 -3
  24. package/dist/models/DescribeAidbclusterTaskAttributeResponseBody.d.ts +37 -45
  25. package/dist/models/DescribeAidbclusterTaskAttributeResponseBody.js +2 -0
  26. package/dist/models/DescribeAidbclusterTaskAttributeResponseBody.js.map +1 -1
  27. package/dist/models/DescribeAidbclusterTasksRequest.d.ts +2 -2
  28. package/dist/models/DescribeAidbclusterTasksResponseBody.d.ts +18 -17
  29. package/dist/models/DescribeAidbclusterTasksResponseBody.js +2 -0
  30. package/dist/models/DescribeAidbclusterTasksResponseBody.js.map +1 -1
  31. package/dist/models/DescribeApplicationLogsRequest.d.ts +10 -10
  32. package/dist/models/DescribeApplicationLogsResponseBody.d.ts +2 -6
  33. package/dist/models/DescribeApplicationLogsResponseBody.js.map +1 -1
  34. package/dist/models/DescribeAvailableModelsRequest.d.ts +1 -1
  35. package/dist/models/DescribeAvailableModelsResponseBody.d.ts +7 -6
  36. package/dist/models/DescribeAvailableModelsResponseBody.js +2 -0
  37. package/dist/models/DescribeAvailableModelsResponseBody.js.map +1 -1
  38. package/dist/models/DescribeBackupsRequest.d.ts +12 -19
  39. package/dist/models/DescribeBackupsRequest.js.map +1 -1
  40. package/dist/models/DescribeBackupsResponseBody.d.ts +5 -7
  41. package/dist/models/DescribeBackupsResponseBody.js +2 -0
  42. package/dist/models/DescribeBackupsResponseBody.js.map +1 -1
  43. package/dist/models/DescribeBudgetPoliciesRequest.d.ts +10 -14
  44. package/dist/models/DescribeBudgetPoliciesRequest.js +2 -0
  45. package/dist/models/DescribeBudgetPoliciesRequest.js.map +1 -1
  46. package/dist/models/DescribeBudgetPoliciesResponseBody.d.ts +18 -22
  47. package/dist/models/DescribeBudgetPoliciesResponseBody.js.map +1 -1
  48. package/dist/models/DescribeConsumersRequest.d.ts +10 -10
  49. package/dist/models/DescribeConsumersRequest.js +4 -0
  50. package/dist/models/DescribeConsumersRequest.js.map +1 -1
  51. package/dist/models/DescribeConsumersResponseBody.d.ts +17 -17
  52. package/dist/models/DescribeDbclusterAccessWhitelistRequest.d.ts +5 -0
  53. package/dist/models/DescribeDbclusterAccessWhitelistRequest.js +2 -0
  54. package/dist/models/DescribeDbclusterAccessWhitelistRequest.js.map +1 -1
  55. package/dist/models/DescribeDbclusterPriceRequest.d.ts +244 -0
  56. package/dist/models/DescribeDbclusterPriceRequest.js +125 -0
  57. package/dist/models/DescribeDbclusterPriceRequest.js.map +1 -0
  58. package/dist/models/DescribeDbclusterPriceResponse.d.ts +19 -0
  59. package/dist/models/DescribeDbclusterPriceResponse.js +69 -0
  60. package/dist/models/DescribeDbclusterPriceResponse.js.map +1 -0
  61. package/dist/models/DescribeDbclusterPriceResponseBody.d.ts +161 -0
  62. package/dist/models/DescribeDbclusterPriceResponseBody.js +217 -0
  63. package/dist/models/DescribeDbclusterPriceResponseBody.js.map +1 -0
  64. package/dist/models/DescribeDbclusterPriceShrinkRequest.d.ts +216 -0
  65. package/dist/models/DescribeDbclusterPriceShrinkRequest.js +101 -0
  66. package/dist/models/DescribeDbclusterPriceShrinkRequest.js.map +1 -0
  67. package/dist/models/DescribeDbclusterSslrequest.d.ts +6 -2
  68. package/dist/models/DescribeDbclusterSslrequest.js +2 -0
  69. package/dist/models/DescribeDbclusterSslrequest.js.map +1 -1
  70. package/dist/models/DescribeDbclusterSslresponseBody.d.ts +13 -14
  71. package/dist/models/DescribeDbclusterSslresponseBody.js.map +1 -1
  72. package/dist/models/DescribePolarFsAttributeResponseBody.d.ts +75 -19
  73. package/dist/models/DescribePolarFsAttributeResponseBody.js +73 -1
  74. package/dist/models/DescribePolarFsAttributeResponseBody.js.map +1 -1
  75. package/dist/models/DescribePolarFsRequest.d.ts +118 -0
  76. package/dist/models/DescribePolarFsRequest.js +98 -0
  77. package/dist/models/DescribePolarFsRequest.js.map +1 -0
  78. package/dist/models/DescribePolarFsResponse.d.ts +19 -0
  79. package/dist/models/DescribePolarFsResponse.js +69 -0
  80. package/dist/models/DescribePolarFsResponse.js.map +1 -0
  81. package/dist/models/DescribePolarFsResponseBody.d.ts +175 -0
  82. package/dist/models/DescribePolarFsResponseBody.js +280 -0
  83. package/dist/models/DescribePolarFsResponseBody.js.map +1 -0
  84. package/dist/models/ModifyDbclusterAccessWhitelistRequest.d.ts +27 -32
  85. package/dist/models/ModifyDbclusterAccessWhitelistRequest.js +2 -0
  86. package/dist/models/ModifyDbclusterAccessWhitelistRequest.js.map +1 -1
  87. package/dist/models/ModifyDbclusterSslrequest.d.ts +28 -27
  88. package/dist/models/ModifyDbclusterSslrequest.js +4 -0
  89. package/dist/models/ModifyDbclusterSslrequest.js.map +1 -1
  90. package/dist/models/VerifyAgenticDbtenantApiKeyRequest.d.ts +4 -0
  91. package/dist/models/VerifyAgenticDbtenantApiKeyRequest.js.map +1 -1
  92. package/dist/models/VerifyAgenticDbtenantApiKeyResponseBody.d.ts +25 -0
  93. package/dist/models/VerifyAgenticDbtenantApiKeyResponseBody.js.map +1 -1
  94. package/dist/models/model.d.ts +29 -0
  95. package/dist/models/model.js +98 -40
  96. package/dist/models/model.js.map +1 -1
  97. package/package.json +1 -1
  98. package/src/client.ts +282 -44
  99. package/src/models/CreateAccountRequest.ts +39 -53
  100. package/src/models/CreateAidbclusterTaskRequest.ts +15 -17
  101. package/src/models/CreateAidbclusterTaskResponseBody.ts +2 -2
  102. package/src/models/CreateBackupRequest.ts +4 -1
  103. package/src/models/CreateBackupResponseBody.ts +1 -1
  104. package/src/models/CreateDbclusterEndpointRequest.ts +68 -93
  105. package/src/models/DescribeAgenticDbcomputeClustersRequest.ts +13 -0
  106. package/src/models/DescribeAgenticDbcomputeClustersResponseBody.ts +64 -0
  107. package/src/models/DescribeAidbclusterAttributeResponseBody.ts +172 -18
  108. package/src/models/DescribeAidbclusterTaskAttributeRequest.ts +3 -3
  109. package/src/models/DescribeAidbclusterTaskAttributeResponseBody.ts +39 -45
  110. package/src/models/DescribeAidbclusterTasksRequest.ts +2 -2
  111. package/src/models/DescribeAidbclusterTasksResponseBody.ts +20 -17
  112. package/src/models/DescribeApplicationLogsRequest.ts +10 -10
  113. package/src/models/DescribeApplicationLogsResponseBody.ts +2 -6
  114. package/src/models/DescribeAvailableModelsRequest.ts +1 -1
  115. package/src/models/DescribeAvailableModelsResponseBody.ts +9 -6
  116. package/src/models/DescribeBackupsRequest.ts +14 -21
  117. package/src/models/DescribeBackupsResponseBody.ts +7 -7
  118. package/src/models/DescribeBudgetPoliciesRequest.ts +13 -15
  119. package/src/models/DescribeBudgetPoliciesResponseBody.ts +19 -23
  120. package/src/models/DescribeConsumersRequest.ts +14 -10
  121. package/src/models/DescribeConsumersResponseBody.ts +17 -17
  122. package/src/models/DescribeDbclusterAccessWhitelistRequest.ts +7 -0
  123. package/src/models/DescribeDbclusterPriceRequest.ts +315 -0
  124. package/src/models/DescribeDbclusterPriceResponse.ts +40 -0
  125. package/src/models/DescribeDbclusterPriceResponseBody.ts +279 -0
  126. package/src/models/DescribeDbclusterPriceShrinkRequest.ts +272 -0
  127. package/src/models/DescribeDbclusterSslrequest.ts +8 -2
  128. package/src/models/DescribeDbclusterSslresponseBody.ts +13 -14
  129. package/src/models/DescribePolarFsAttributeResponseBody.ts +129 -19
  130. package/src/models/DescribePolarFsRequest.ts +162 -0
  131. package/src/models/DescribePolarFsResponse.ts +40 -0
  132. package/src/models/DescribePolarFsResponseBody.ts +347 -0
  133. package/src/models/ModifyDbclusterAccessWhitelistRequest.ts +29 -32
  134. package/src/models/ModifyDbclusterSslrequest.ts +32 -27
  135. package/src/models/VerifyAgenticDbtenantApiKeyRequest.ts +4 -0
  136. package/src/models/VerifyAgenticDbtenantApiKeyResponseBody.ts +25 -0
  137. package/src/models/model.ts +29 -0
@@ -0,0 +1,315 @@
1
+ // This file is auto-generated, don't edit it
2
+ import * as $dara from '@darabonba/typescript';
3
+
4
+
5
+ export class DescribeDBClusterPriceRequestDBNodes extends $dara.Model {
6
+ /**
7
+ * @remarks
8
+ * The target node specifications.
9
+ *
10
+ * @example
11
+ * polar.mysql.x4.large
12
+ */
13
+ DBNodeClass?: string;
14
+ /**
15
+ * @remarks
16
+ * The node ID.
17
+ *
18
+ * @example
19
+ * pi-**************
20
+ */
21
+ DBNodeId?: string;
22
+ static names(): { [key: string]: string } {
23
+ return {
24
+ DBNodeClass: 'DBNodeClass',
25
+ DBNodeId: 'DBNodeId',
26
+ };
27
+ }
28
+
29
+ static types(): { [key: string]: any } {
30
+ return {
31
+ DBNodeClass: 'string',
32
+ DBNodeId: 'string',
33
+ };
34
+ }
35
+
36
+ validate() {
37
+ super.validate();
38
+ }
39
+
40
+ constructor(map?: { [key: string]: any }) {
41
+ super(map);
42
+ }
43
+ }
44
+
45
+ export class DescribeDBClusterPriceRequest extends $dara.Model {
46
+ /**
47
+ * @remarks
48
+ * The cluster edition. Valid values:
49
+ * - Normal: Cluster Edition.
50
+ * - Basic: Single Node Edition.
51
+ * - ArchiveNormal: Archive Database.
52
+ * - SENormal: Standard Edition.
53
+ * - NormalMultimaster: Multi-master Cluster.
54
+ *
55
+ * @example
56
+ * Normal
57
+ */
58
+ creationCategory?: string;
59
+ /**
60
+ * @remarks
61
+ * The cluster ID. Required for non-BUY scenarios.
62
+ *
63
+ * @example
64
+ * pc-**************
65
+ */
66
+ DBClusterId?: string;
67
+ /**
68
+ * @remarks
69
+ * The node specifications. Required for the BUY scenario. Example format: polar.mysql.x4.large.
70
+ *
71
+ * @example
72
+ * polar.mysql.x4.large
73
+ */
74
+ DBNodeClass?: string;
75
+ /**
76
+ * @remarks
77
+ * The list of node IDs to delete. Used when ModifyType is set to DELETE.
78
+ *
79
+ * @example
80
+ * pi-**************
81
+ */
82
+ DBNodeIds?: string[];
83
+ /**
84
+ * @remarks
85
+ * The number of nodes. Valid for the BUY scenario. This value includes the read/write node. Minimum value: 1. Default value: 1.
86
+ *
87
+ * @example
88
+ * 2
89
+ */
90
+ DBNodeNum?: number;
91
+ /**
92
+ * @remarks
93
+ * The list of heterogeneous specification change nodes. Used for specification change scenarios to specify the target specifications for each node.
94
+ */
95
+ DBNodes?: DescribeDBClusterPriceRequestDBNodes[];
96
+ /**
97
+ * @remarks
98
+ * The database engine type. Required for the BUY scenario. Valid values: MySQL, PostgreSQL, and Oracle.
99
+ *
100
+ * @example
101
+ * MySQL
102
+ */
103
+ DBType?: string;
104
+ /**
105
+ * @remarks
106
+ * The database engine version. Required for the BUY scenario. Valid values for MySQL: 5.6, 5.7, and 8.0. Valid values for PostgreSQL: 11 and 14. Valid values for Oracle: 11 and 14.
107
+ *
108
+ * @example
109
+ * 8.0
110
+ */
111
+ DBVersion?: string;
112
+ /**
113
+ * @remarks
114
+ * Specifies whether to enable the hot standby cluster. Valid values:
115
+ * - ON: Enable.
116
+ * - OFF: Disable.
117
+ *
118
+ * Valid for the BUY and specification change scenarios.
119
+ *
120
+ * @example
121
+ * ON
122
+ */
123
+ hotStandbyCluster?: string;
124
+ /**
125
+ * @remarks
126
+ * The specification change direction. Valid values:
127
+ * - ADD: add nodes.
128
+ * - DELETE: remove nodes.
129
+ * - UPGRADE: upgrade specifications.
130
+ * - DOWNGRADE: downgrade specifications.
131
+ * - HOT_STANDBY: hot standby change.
132
+ * - STORAGE: storage space change.
133
+ * - STORAGE_TYPE: storage type change.
134
+ *
135
+ * @example
136
+ * UPGRADE
137
+ */
138
+ modifyType?: string;
139
+ /**
140
+ * @remarks
141
+ * The order type. Valid values:
142
+ * - BUY: new purchase.
143
+ * - CONVERT: billing method conversion.
144
+ * - RENEW: renewal.
145
+ * - UPGRADE: upgrade specifications or add nodes.
146
+ * - DOWNGRADE: downgrade specifications or remove nodes.
147
+ *
148
+ * This parameter is required.
149
+ *
150
+ * @example
151
+ * BUY
152
+ */
153
+ orderType?: string;
154
+ /**
155
+ * @remarks
156
+ * The billing method. Required for the BUY and CONVERT scenarios. Valid values:
157
+ * - Prepaid: subscription.
158
+ * - Postpaid: pay-as-you-go.
159
+ *
160
+ * @example
161
+ * Prepaid
162
+ */
163
+ payType?: string;
164
+ /**
165
+ * @remarks
166
+ * The subscription cycle. Valid values:
167
+ * - Month: monthly.
168
+ * - Year: yearly.
169
+ *
170
+ * @example
171
+ * Month
172
+ */
173
+ period?: string;
174
+ /**
175
+ * @remarks
176
+ * The provisioned IOPS. Used for the Standard Edition (SENormal) scenario.
177
+ *
178
+ * @example
179
+ * 1000
180
+ */
181
+ provisionedIops?: string;
182
+ /**
183
+ * @remarks
184
+ * The region ID.
185
+ *
186
+ * This parameter is required.
187
+ *
188
+ * @example
189
+ * cn-hangzhou
190
+ */
191
+ regionId?: string;
192
+ /**
193
+ * @remarks
194
+ * The serverless type. Valid values: AgileServerless.
195
+ *
196
+ * @example
197
+ * AgileServerless
198
+ */
199
+ serverlessType?: string;
200
+ /**
201
+ * @remarks
202
+ * The storage billing type. Valid values:
203
+ * - Prepaid: subscription.
204
+ * - Postpaid: pay-as-you-go.
205
+ *
206
+ * @example
207
+ * Prepaid
208
+ */
209
+ storageChargeType?: string;
210
+ /**
211
+ * @remarks
212
+ * The storage space, in GB. Used for prepaid storage or storage specification change scenarios.
213
+ *
214
+ * @example
215
+ * 50
216
+ */
217
+ storageSpace?: string;
218
+ /**
219
+ * @remarks
220
+ * The storage type. Valid values:
221
+ * - PSL5: high performance.
222
+ * - PSL4: standard.
223
+ * - ESSDPL0
224
+ * - ESSDPL1
225
+ * - ESSDPL2
226
+ * - ESSDPL3
227
+ * - ESSDAUTOPL
228
+ *
229
+ * @example
230
+ * PSL5
231
+ */
232
+ storageType?: string;
233
+ /**
234
+ * @remarks
235
+ * The subscription duration. Used together with Period. Valid for the BUY, CONVERT, and RENEW scenarios when the billing method is Prepaid.
236
+ *
237
+ * @example
238
+ * 1
239
+ */
240
+ usedTime?: string;
241
+ /**
242
+ * @remarks
243
+ * The zone ID. We recommend that you specify this parameter for the BUY scenario.
244
+ *
245
+ * @example
246
+ * cn-hangzhou-h
247
+ */
248
+ zoneId?: string;
249
+ static names(): { [key: string]: string } {
250
+ return {
251
+ creationCategory: 'CreationCategory',
252
+ DBClusterId: 'DBClusterId',
253
+ DBNodeClass: 'DBNodeClass',
254
+ DBNodeIds: 'DBNodeIds',
255
+ DBNodeNum: 'DBNodeNum',
256
+ DBNodes: 'DBNodes',
257
+ DBType: 'DBType',
258
+ DBVersion: 'DBVersion',
259
+ hotStandbyCluster: 'HotStandbyCluster',
260
+ modifyType: 'ModifyType',
261
+ orderType: 'OrderType',
262
+ payType: 'PayType',
263
+ period: 'Period',
264
+ provisionedIops: 'ProvisionedIops',
265
+ regionId: 'RegionId',
266
+ serverlessType: 'ServerlessType',
267
+ storageChargeType: 'StorageChargeType',
268
+ storageSpace: 'StorageSpace',
269
+ storageType: 'StorageType',
270
+ usedTime: 'UsedTime',
271
+ zoneId: 'ZoneId',
272
+ };
273
+ }
274
+
275
+ static types(): { [key: string]: any } {
276
+ return {
277
+ creationCategory: 'string',
278
+ DBClusterId: 'string',
279
+ DBNodeClass: 'string',
280
+ DBNodeIds: { 'type': 'array', 'itemType': 'string' },
281
+ DBNodeNum: 'number',
282
+ DBNodes: { 'type': 'array', 'itemType': DescribeDBClusterPriceRequestDBNodes },
283
+ DBType: 'string',
284
+ DBVersion: 'string',
285
+ hotStandbyCluster: 'string',
286
+ modifyType: 'string',
287
+ orderType: 'string',
288
+ payType: 'string',
289
+ period: 'string',
290
+ provisionedIops: 'string',
291
+ regionId: 'string',
292
+ serverlessType: 'string',
293
+ storageChargeType: 'string',
294
+ storageSpace: 'string',
295
+ storageType: 'string',
296
+ usedTime: 'string',
297
+ zoneId: 'string',
298
+ };
299
+ }
300
+
301
+ validate() {
302
+ if(Array.isArray(this.DBNodeIds)) {
303
+ $dara.Model.validateArray(this.DBNodeIds);
304
+ }
305
+ if(Array.isArray(this.DBNodes)) {
306
+ $dara.Model.validateArray(this.DBNodes);
307
+ }
308
+ super.validate();
309
+ }
310
+
311
+ constructor(map?: { [key: string]: any }) {
312
+ super(map);
313
+ }
314
+ }
315
+
@@ -0,0 +1,40 @@
1
+ // This file is auto-generated, don't edit it
2
+ import * as $dara from '@darabonba/typescript';
3
+ import { DescribeDBClusterPriceResponseBody } from "./DescribeDbclusterPriceResponseBody";
4
+
5
+
6
+ export class DescribeDBClusterPriceResponse extends $dara.Model {
7
+ headers?: { [key: string]: string };
8
+ statusCode?: number;
9
+ body?: DescribeDBClusterPriceResponseBody;
10
+ static names(): { [key: string]: string } {
11
+ return {
12
+ headers: 'headers',
13
+ statusCode: 'statusCode',
14
+ body: 'body',
15
+ };
16
+ }
17
+
18
+ static types(): { [key: string]: any } {
19
+ return {
20
+ headers: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
21
+ statusCode: 'number',
22
+ body: DescribeDBClusterPriceResponseBody,
23
+ };
24
+ }
25
+
26
+ validate() {
27
+ if(this.headers) {
28
+ $dara.Model.validateMap(this.headers);
29
+ }
30
+ if(this.body && typeof (this.body as any).validate === 'function') {
31
+ (this.body as any).validate();
32
+ }
33
+ super.validate();
34
+ }
35
+
36
+ constructor(map?: { [key: string]: any }) {
37
+ super(map);
38
+ }
39
+ }
40
+
@@ -0,0 +1,279 @@
1
+ // This file is auto-generated, don't edit it
2
+ import * as $dara from '@darabonba/typescript';
3
+
4
+
5
+ export class DescribeDBClusterPriceResponseBodyPriceInfoCouponsCoupon extends $dara.Model {
6
+ couponNo?: string;
7
+ isSelected?: string;
8
+ name?: string;
9
+ static names(): { [key: string]: string } {
10
+ return {
11
+ couponNo: 'CouponNo',
12
+ isSelected: 'IsSelected',
13
+ name: 'Name',
14
+ };
15
+ }
16
+
17
+ static types(): { [key: string]: any } {
18
+ return {
19
+ couponNo: 'string',
20
+ isSelected: 'string',
21
+ name: 'string',
22
+ };
23
+ }
24
+
25
+ validate() {
26
+ super.validate();
27
+ }
28
+
29
+ constructor(map?: { [key: string]: any }) {
30
+ super(map);
31
+ }
32
+ }
33
+
34
+ export class DescribeDBClusterPriceResponseBodyPriceInfoCoupons extends $dara.Model {
35
+ coupon?: DescribeDBClusterPriceResponseBodyPriceInfoCouponsCoupon[];
36
+ static names(): { [key: string]: string } {
37
+ return {
38
+ coupon: 'Coupon',
39
+ };
40
+ }
41
+
42
+ static types(): { [key: string]: any } {
43
+ return {
44
+ coupon: { 'type': 'array', 'itemType': DescribeDBClusterPriceResponseBodyPriceInfoCouponsCoupon },
45
+ };
46
+ }
47
+
48
+ validate() {
49
+ if(Array.isArray(this.coupon)) {
50
+ $dara.Model.validateArray(this.coupon);
51
+ }
52
+ super.validate();
53
+ }
54
+
55
+ constructor(map?: { [key: string]: any }) {
56
+ super(map);
57
+ }
58
+ }
59
+
60
+ export class DescribeDBClusterPriceResponseBodyPriceInfoRuleIds extends $dara.Model {
61
+ ruleId?: string[];
62
+ static names(): { [key: string]: string } {
63
+ return {
64
+ ruleId: 'RuleId',
65
+ };
66
+ }
67
+
68
+ static types(): { [key: string]: any } {
69
+ return {
70
+ ruleId: { 'type': 'array', 'itemType': 'string' },
71
+ };
72
+ }
73
+
74
+ validate() {
75
+ if(Array.isArray(this.ruleId)) {
76
+ $dara.Model.validateArray(this.ruleId);
77
+ }
78
+ super.validate();
79
+ }
80
+
81
+ constructor(map?: { [key: string]: any }) {
82
+ super(map);
83
+ }
84
+ }
85
+
86
+ export class DescribeDBClusterPriceResponseBodyPriceInfo extends $dara.Model {
87
+ coupons?: DescribeDBClusterPriceResponseBodyPriceInfoCoupons;
88
+ /**
89
+ * @remarks
90
+ * The currency unit.
91
+ *
92
+ * @example
93
+ * CNY
94
+ */
95
+ currency?: string;
96
+ /**
97
+ * @remarks
98
+ * The discount amount.
99
+ *
100
+ * @example
101
+ * 1978.2
102
+ */
103
+ discountPrice?: number;
104
+ /**
105
+ * @remarks
106
+ * The original price.
107
+ *
108
+ * @example
109
+ * 1099.0
110
+ */
111
+ originalPrice?: number;
112
+ ruleIds?: DescribeDBClusterPriceResponseBodyPriceInfoRuleIds;
113
+ /**
114
+ * @remarks
115
+ * The final price, which is the original price minus the discount.
116
+ *
117
+ * @example
118
+ * 165.0
119
+ */
120
+ tradePrice?: number;
121
+ static names(): { [key: string]: string } {
122
+ return {
123
+ coupons: 'Coupons',
124
+ currency: 'Currency',
125
+ discountPrice: 'DiscountPrice',
126
+ originalPrice: 'OriginalPrice',
127
+ ruleIds: 'RuleIds',
128
+ tradePrice: 'TradePrice',
129
+ };
130
+ }
131
+
132
+ static types(): { [key: string]: any } {
133
+ return {
134
+ coupons: DescribeDBClusterPriceResponseBodyPriceInfoCoupons,
135
+ currency: 'string',
136
+ discountPrice: 'number',
137
+ originalPrice: 'number',
138
+ ruleIds: DescribeDBClusterPriceResponseBodyPriceInfoRuleIds,
139
+ tradePrice: 'number',
140
+ };
141
+ }
142
+
143
+ validate() {
144
+ if(this.coupons && typeof (this.coupons as any).validate === 'function') {
145
+ (this.coupons as any).validate();
146
+ }
147
+ if(this.ruleIds && typeof (this.ruleIds as any).validate === 'function') {
148
+ (this.ruleIds as any).validate();
149
+ }
150
+ super.validate();
151
+ }
152
+
153
+ constructor(map?: { [key: string]: any }) {
154
+ super(map);
155
+ }
156
+ }
157
+
158
+ export class DescribeDBClusterPriceResponseBodyRulesRule extends $dara.Model {
159
+ name?: string;
160
+ ruleId?: number;
161
+ static names(): { [key: string]: string } {
162
+ return {
163
+ name: 'Name',
164
+ ruleId: 'RuleId',
165
+ };
166
+ }
167
+
168
+ static types(): { [key: string]: any } {
169
+ return {
170
+ name: 'string',
171
+ ruleId: 'number',
172
+ };
173
+ }
174
+
175
+ validate() {
176
+ super.validate();
177
+ }
178
+
179
+ constructor(map?: { [key: string]: any }) {
180
+ super(map);
181
+ }
182
+ }
183
+
184
+ export class DescribeDBClusterPriceResponseBodyRules extends $dara.Model {
185
+ rule?: DescribeDBClusterPriceResponseBodyRulesRule[];
186
+ static names(): { [key: string]: string } {
187
+ return {
188
+ rule: 'Rule',
189
+ };
190
+ }
191
+
192
+ static types(): { [key: string]: any } {
193
+ return {
194
+ rule: { 'type': 'array', 'itemType': DescribeDBClusterPriceResponseBodyRulesRule },
195
+ };
196
+ }
197
+
198
+ validate() {
199
+ if(Array.isArray(this.rule)) {
200
+ $dara.Model.validateArray(this.rule);
201
+ }
202
+ super.validate();
203
+ }
204
+
205
+ constructor(map?: { [key: string]: any }) {
206
+ super(map);
207
+ }
208
+ }
209
+
210
+ export class DescribeDBClusterPriceResponseBody extends $dara.Model {
211
+ /**
212
+ * @remarks
213
+ * The order type. Valid values:
214
+ * * BUY: new purchase.
215
+ * * UPGRADE: specification change.
216
+ * * RENEW: renewal.
217
+ * * CONVERT: billing method conversion.
218
+ *
219
+ * @example
220
+ * BUY
221
+ */
222
+ orderType?: string;
223
+ /**
224
+ * @remarks
225
+ * The price details.
226
+ */
227
+ priceInfo?: DescribeDBClusterPriceResponseBodyPriceInfo;
228
+ /**
229
+ * @remarks
230
+ * The request ID.
231
+ *
232
+ * @example
233
+ * 7E2FE3BB-C677-5FF9-9FC5-XXX
234
+ */
235
+ requestId?: string;
236
+ rules?: DescribeDBClusterPriceResponseBodyRules;
237
+ /**
238
+ * @remarks
239
+ * Indicates whether discounts are allowed.
240
+ *
241
+ * @example
242
+ * False
243
+ */
244
+ showDiscount?: boolean;
245
+ static names(): { [key: string]: string } {
246
+ return {
247
+ orderType: 'OrderType',
248
+ priceInfo: 'PriceInfo',
249
+ requestId: 'RequestId',
250
+ rules: 'Rules',
251
+ showDiscount: 'ShowDiscount',
252
+ };
253
+ }
254
+
255
+ static types(): { [key: string]: any } {
256
+ return {
257
+ orderType: 'string',
258
+ priceInfo: DescribeDBClusterPriceResponseBodyPriceInfo,
259
+ requestId: 'string',
260
+ rules: DescribeDBClusterPriceResponseBodyRules,
261
+ showDiscount: 'boolean',
262
+ };
263
+ }
264
+
265
+ validate() {
266
+ if(this.priceInfo && typeof (this.priceInfo as any).validate === 'function') {
267
+ (this.priceInfo as any).validate();
268
+ }
269
+ if(this.rules && typeof (this.rules as any).validate === 'function') {
270
+ (this.rules as any).validate();
271
+ }
272
+ super.validate();
273
+ }
274
+
275
+ constructor(map?: { [key: string]: any }) {
276
+ super(map);
277
+ }
278
+ }
279
+