@aws-sdk/client-rbin 3.696.0 → 3.699.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.
package/dist-cjs/index.js CHANGED
@@ -356,6 +356,7 @@ var se_CreateRuleCommand = /* @__PURE__ */ __name(async (input, context) => {
356
356
  body = JSON.stringify(
357
357
  (0, import_smithy_client.take)(input, {
358
358
  Description: [],
359
+ ExcludeResourceTags: (_) => (0, import_smithy_client._json)(_),
359
360
  LockConfiguration: (_) => (0, import_smithy_client._json)(_),
360
361
  ResourceTags: (_) => (0, import_smithy_client._json)(_),
361
362
  ResourceType: [],
@@ -393,6 +394,7 @@ var se_ListRulesCommand = /* @__PURE__ */ __name(async (input, context) => {
393
394
  let body;
394
395
  body = JSON.stringify(
395
396
  (0, import_smithy_client.take)(input, {
397
+ ExcludeResourceTags: (_) => (0, import_smithy_client._json)(_),
396
398
  LockState: [],
397
399
  MaxResults: [],
398
400
  NextToken: [],
@@ -476,6 +478,7 @@ var se_UpdateRuleCommand = /* @__PURE__ */ __name(async (input, context) => {
476
478
  body = JSON.stringify(
477
479
  (0, import_smithy_client.take)(input, {
478
480
  Description: [],
481
+ ExcludeResourceTags: (_) => (0, import_smithy_client._json)(_),
479
482
  ResourceTags: (_) => (0, import_smithy_client._json)(_),
480
483
  ResourceType: [],
481
484
  RetentionPeriod: (_) => (0, import_smithy_client._json)(_)
@@ -494,6 +497,7 @@ var de_CreateRuleCommand = /* @__PURE__ */ __name(async (output, context) => {
494
497
  const data = (0, import_smithy_client.expectNonNull)((0, import_smithy_client.expectObject)(await (0, import_core2.parseJsonBody)(output.body, context)), "body");
495
498
  const doc = (0, import_smithy_client.take)(data, {
496
499
  Description: import_smithy_client.expectString,
500
+ ExcludeResourceTags: import_smithy_client._json,
497
501
  Identifier: import_smithy_client.expectString,
498
502
  LockConfiguration: import_smithy_client._json,
499
503
  LockState: import_smithy_client.expectString,
@@ -527,6 +531,7 @@ var de_GetRuleCommand = /* @__PURE__ */ __name(async (output, context) => {
527
531
  const data = (0, import_smithy_client.expectNonNull)((0, import_smithy_client.expectObject)(await (0, import_core2.parseJsonBody)(output.body, context)), "body");
528
532
  const doc = (0, import_smithy_client.take)(data, {
529
533
  Description: import_smithy_client.expectString,
534
+ ExcludeResourceTags: import_smithy_client._json,
530
535
  Identifier: import_smithy_client.expectString,
531
536
  LockConfiguration: import_smithy_client._json,
532
537
  LockEndTime: (_) => (0, import_smithy_client.expectNonNull)((0, import_smithy_client.parseEpochTimestamp)((0, import_smithy_client.expectNumber)(_))),
@@ -579,6 +584,7 @@ var de_LockRuleCommand = /* @__PURE__ */ __name(async (output, context) => {
579
584
  const data = (0, import_smithy_client.expectNonNull)((0, import_smithy_client.expectObject)(await (0, import_core2.parseJsonBody)(output.body, context)), "body");
580
585
  const doc = (0, import_smithy_client.take)(data, {
581
586
  Description: import_smithy_client.expectString,
587
+ ExcludeResourceTags: import_smithy_client._json,
582
588
  Identifier: import_smithy_client.expectString,
583
589
  LockConfiguration: import_smithy_client._json,
584
590
  LockState: import_smithy_client.expectString,
@@ -611,6 +617,7 @@ var de_UnlockRuleCommand = /* @__PURE__ */ __name(async (output, context) => {
611
617
  const data = (0, import_smithy_client.expectNonNull)((0, import_smithy_client.expectObject)(await (0, import_core2.parseJsonBody)(output.body, context)), "body");
612
618
  const doc = (0, import_smithy_client.take)(data, {
613
619
  Description: import_smithy_client.expectString,
620
+ ExcludeResourceTags: import_smithy_client._json,
614
621
  Identifier: import_smithy_client.expectString,
615
622
  LockConfiguration: import_smithy_client._json,
616
623
  LockEndTime: (_) => (0, import_smithy_client.expectNonNull)((0, import_smithy_client.parseEpochTimestamp)((0, import_smithy_client.expectNumber)(_))),
@@ -644,6 +651,7 @@ var de_UpdateRuleCommand = /* @__PURE__ */ __name(async (output, context) => {
644
651
  const data = (0, import_smithy_client.expectNonNull)((0, import_smithy_client.expectObject)(await (0, import_core2.parseJsonBody)(output.body, context)), "body");
645
652
  const doc = (0, import_smithy_client.take)(data, {
646
653
  Description: import_smithy_client.expectString,
654
+ ExcludeResourceTags: import_smithy_client._json,
647
655
  Identifier: import_smithy_client.expectString,
648
656
  LockEndTime: (_) => (0, import_smithy_client.expectNonNull)((0, import_smithy_client.parseEpochTimestamp)((0, import_smithy_client.expectNumber)(_))),
649
657
  LockState: import_smithy_client.expectString,
@@ -12,6 +12,7 @@ export const se_CreateRuleCommand = async (input, context) => {
12
12
  let body;
13
13
  body = JSON.stringify(take(input, {
14
14
  Description: [],
15
+ ExcludeResourceTags: (_) => _json(_),
15
16
  LockConfiguration: (_) => _json(_),
16
17
  ResourceTags: (_) => _json(_),
17
18
  ResourceType: [],
@@ -47,6 +48,7 @@ export const se_ListRulesCommand = async (input, context) => {
47
48
  b.bp("/list-rules");
48
49
  let body;
49
50
  body = JSON.stringify(take(input, {
51
+ ExcludeResourceTags: (_) => _json(_),
50
52
  LockState: [],
51
53
  MaxResults: [],
52
54
  NextToken: [],
@@ -124,6 +126,7 @@ export const se_UpdateRuleCommand = async (input, context) => {
124
126
  let body;
125
127
  body = JSON.stringify(take(input, {
126
128
  Description: [],
129
+ ExcludeResourceTags: (_) => _json(_),
127
130
  ResourceTags: (_) => _json(_),
128
131
  ResourceType: [],
129
132
  RetentionPeriod: (_) => _json(_),
@@ -141,6 +144,7 @@ export const de_CreateRuleCommand = async (output, context) => {
141
144
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
142
145
  const doc = take(data, {
143
146
  Description: __expectString,
147
+ ExcludeResourceTags: _json,
144
148
  Identifier: __expectString,
145
149
  LockConfiguration: _json,
146
150
  LockState: __expectString,
@@ -174,6 +178,7 @@ export const de_GetRuleCommand = async (output, context) => {
174
178
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
175
179
  const doc = take(data, {
176
180
  Description: __expectString,
181
+ ExcludeResourceTags: _json,
177
182
  Identifier: __expectString,
178
183
  LockConfiguration: _json,
179
184
  LockEndTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
@@ -226,6 +231,7 @@ export const de_LockRuleCommand = async (output, context) => {
226
231
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
227
232
  const doc = take(data, {
228
233
  Description: __expectString,
234
+ ExcludeResourceTags: _json,
229
235
  Identifier: __expectString,
230
236
  LockConfiguration: _json,
231
237
  LockState: __expectString,
@@ -258,6 +264,7 @@ export const de_UnlockRuleCommand = async (output, context) => {
258
264
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
259
265
  const doc = take(data, {
260
266
  Description: __expectString,
267
+ ExcludeResourceTags: _json,
261
268
  Identifier: __expectString,
262
269
  LockConfiguration: _json,
263
270
  LockEndTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
@@ -291,6 +298,7 @@ export const de_UpdateRuleCommand = async (output, context) => {
291
298
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
292
299
  const doc = take(data, {
293
300
  Description: __expectString,
301
+ ExcludeResourceTags: _json,
294
302
  Identifier: __expectString,
295
303
  LockEndTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
296
304
  LockState: __expectString,
@@ -27,8 +27,27 @@ declare const CreateRuleCommand_base: {
27
27
  getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
28
28
  };
29
29
  /**
30
- * <p>Creates a Recycle Bin retention rule. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/recycle-bin-working-with-rules.html#recycle-bin-create-rule">
31
- * Create Recycle Bin retention rules</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
30
+ * <p>Creates a Recycle Bin retention rule. You can create two types of retention rules:</p>
31
+ * <ul>
32
+ * <li>
33
+ * <p>
34
+ * <b>Tag-level retention rules</b> - These retention rules use
35
+ * resource tags to identify the resources to protect. For each retention rule, you specify one or
36
+ * more tag key and value pairs. Resources (of the specified type) that have at least one of these
37
+ * tag key and value pairs are automatically retained in the Recycle Bin upon deletion. Use this
38
+ * type of retention rule to protect specific resources in your account based on their tags.</p>
39
+ * </li>
40
+ * <li>
41
+ * <p>
42
+ * <b>Region-level retention rules</b> - These retention rules,
43
+ * by default, apply to all of the resources (of the specified type) in the Region, even if the
44
+ * resources are not tagged. However, you can specify exclusion tags to exclude resources that have
45
+ * specific tags. Use this type of retention rule to protect all resources of a specific type in a
46
+ * Region.</p>
47
+ * </li>
48
+ * </ul>
49
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/ebs/latest/userguide/recycle-bin.html">
50
+ * Create Recycle Bin retention rules</a> in the <i>Amazon EBS User Guide</i>.</p>
32
51
  * @example
33
52
  * Use a bare-bones client and the command you need to make an API call.
34
53
  * ```javascript
@@ -60,6 +79,12 @@ declare const CreateRuleCommand_base: {
60
79
  * UnlockDelayUnit: "DAYS", // required
61
80
  * },
62
81
  * },
82
+ * ExcludeResourceTags: [ // ExcludeResourceTags
83
+ * {
84
+ * ResourceTagKey: "STRING_VALUE", // required
85
+ * ResourceTagValue: "STRING_VALUE",
86
+ * },
87
+ * ],
63
88
  * };
64
89
  * const command = new CreateRuleCommand(input);
65
90
  * const response = await client.send(command);
@@ -92,6 +117,12 @@ declare const CreateRuleCommand_base: {
92
117
  * // },
93
118
  * // LockState: "locked" || "pending_unlock" || "unlocked",
94
119
  * // RuleArn: "STRING_VALUE",
120
+ * // ExcludeResourceTags: [ // ExcludeResourceTags
121
+ * // {
122
+ * // ResourceTagKey: "STRING_VALUE", // required
123
+ * // ResourceTagValue: "STRING_VALUE",
124
+ * // },
125
+ * // ],
95
126
  * // };
96
127
  *
97
128
  * ```
@@ -63,6 +63,12 @@ declare const GetRuleCommand_base: {
63
63
  * // LockState: "locked" || "pending_unlock" || "unlocked",
64
64
  * // LockEndTime: new Date("TIMESTAMP"),
65
65
  * // RuleArn: "STRING_VALUE",
66
+ * // ExcludeResourceTags: [ // ExcludeResourceTags
67
+ * // {
68
+ * // ResourceTagKey: "STRING_VALUE", // required
69
+ * // ResourceTagValue: "STRING_VALUE",
70
+ * // },
71
+ * // ],
66
72
  * // };
67
73
  *
68
74
  * ```
@@ -45,6 +45,12 @@ declare const ListRulesCommand_base: {
45
45
  * },
46
46
  * ],
47
47
  * LockState: "locked" || "pending_unlock" || "unlocked",
48
+ * ExcludeResourceTags: [ // ExcludeResourceTags
49
+ * {
50
+ * ResourceTagKey: "STRING_VALUE", // required
51
+ * ResourceTagValue: "STRING_VALUE",
52
+ * },
53
+ * ],
48
54
  * };
49
55
  * const command = new ListRulesCommand(input);
50
56
  * const response = await client.send(command);
@@ -27,7 +27,12 @@ declare const LockRuleCommand_base: {
27
27
  getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
28
28
  };
29
29
  /**
30
- * <p>Locks a retention rule. A locked retention rule can't be modified or deleted.</p>
30
+ * <p>Locks a Region-level retention rule. A locked retention rule can't be modified or
31
+ * deleted.</p>
32
+ * <note>
33
+ * <p>You can't lock tag-level retention rules, or Region-level retention rules that
34
+ * have exclusion tags.</p>
35
+ * </note>
31
36
  * @example
32
37
  * Use a bare-bones client and the command you need to make an API call.
33
38
  * ```javascript
@@ -68,6 +73,12 @@ declare const LockRuleCommand_base: {
68
73
  * // },
69
74
  * // LockState: "locked" || "pending_unlock" || "unlocked",
70
75
  * // RuleArn: "STRING_VALUE",
76
+ * // ExcludeResourceTags: [ // ExcludeResourceTags
77
+ * // {
78
+ * // ResourceTagKey: "STRING_VALUE", // required
79
+ * // ResourceTagValue: "STRING_VALUE",
80
+ * // },
81
+ * // ],
71
82
  * // };
72
83
  *
73
84
  * ```
@@ -64,6 +64,12 @@ declare const UnlockRuleCommand_base: {
64
64
  * // LockState: "locked" || "pending_unlock" || "unlocked",
65
65
  * // LockEndTime: new Date("TIMESTAMP"),
66
66
  * // RuleArn: "STRING_VALUE",
67
+ * // ExcludeResourceTags: [ // ExcludeResourceTags
68
+ * // {
69
+ * // ResourceTagKey: "STRING_VALUE", // required
70
+ * // ResourceTagValue: "STRING_VALUE",
71
+ * // },
72
+ * // ],
67
73
  * // };
68
74
  *
69
75
  * ```
@@ -51,6 +51,12 @@ declare const UpdateRuleCommand_base: {
51
51
  * ResourceTagValue: "STRING_VALUE",
52
52
  * },
53
53
  * ],
54
+ * ExcludeResourceTags: [ // ExcludeResourceTags
55
+ * {
56
+ * ResourceTagKey: "STRING_VALUE", // required
57
+ * ResourceTagValue: "STRING_VALUE",
58
+ * },
59
+ * ],
54
60
  * };
55
61
  * const command = new UpdateRuleCommand(input);
56
62
  * const response = await client.send(command);
@@ -72,6 +78,12 @@ declare const UpdateRuleCommand_base: {
72
78
  * // LockState: "locked" || "pending_unlock" || "unlocked",
73
79
  * // LockEndTime: new Date("TIMESTAMP"),
74
80
  * // RuleArn: "STRING_VALUE",
81
+ * // ExcludeResourceTags: [ // ExcludeResourceTags
82
+ * // {
83
+ * // ResourceTagKey: "STRING_VALUE", // required
84
+ * // ResourceTagValue: "STRING_VALUE",
85
+ * // },
86
+ * // ],
75
87
  * // };
76
88
  *
77
89
  * ```
@@ -1,5 +1,22 @@
1
1
  import { ExceptionOptionType as __ExceptionOptionType } from "@smithy/smithy-client";
2
2
  import { RbinServiceException as __BaseException } from "./RbinServiceException";
3
+ /**
4
+ * <p>[Tag-level retention rules only] Information about the resource tags used to identify resources that are retained by the retention
5
+ * rule.</p>
6
+ * @public
7
+ */
8
+ export interface ResourceTag {
9
+ /**
10
+ * <p>The tag key.</p>
11
+ * @public
12
+ */
13
+ ResourceTagKey: string | undefined;
14
+ /**
15
+ * <p>The tag value.</p>
16
+ * @public
17
+ */
18
+ ResourceTagValue?: string | undefined;
19
+ }
3
20
  /**
4
21
  * @public
5
22
  * @enum
@@ -42,23 +59,6 @@ export interface LockConfiguration {
42
59
  */
43
60
  UnlockDelay: UnlockDelay | undefined;
44
61
  }
45
- /**
46
- * <p>Information about the resource tags used to identify resources that are retained by the retention
47
- * rule.</p>
48
- * @public
49
- */
50
- export interface ResourceTag {
51
- /**
52
- * <p>The tag key.</p>
53
- * @public
54
- */
55
- ResourceTagKey: string | undefined;
56
- /**
57
- * <p>The tag value.</p>
58
- * @public
59
- */
60
- ResourceTagValue?: string | undefined;
61
- }
62
62
  /**
63
63
  * @public
64
64
  * @enum
@@ -143,7 +143,7 @@ export interface CreateRuleRequest {
143
143
  */
144
144
  ResourceType: ResourceType | undefined;
145
145
  /**
146
- * <p>Specifies the resource tags to use to identify resources that are to be retained by a
146
+ * <p>[Tag-level retention rules only] Specifies the resource tags to use to identify resources that are to be retained by a
147
147
  * tag-level retention rule. For tag-level retention rules, only deleted resources, of the specified resource type, that
148
148
  * have one or more of the specified tag key and value pairs are retained. If a resource is deleted, but it does not have
149
149
  * any of the specified tag key and value pairs, it is immediately deleted without being retained by the retention rule.</p>
@@ -159,6 +159,14 @@ export interface CreateRuleRequest {
159
159
  * @public
160
160
  */
161
161
  LockConfiguration?: LockConfiguration | undefined;
162
+ /**
163
+ * <p>[Region-level retention rules only] Specifies the exclusion tags to use to identify resources that are to be excluded,
164
+ * or ignored, by a Region-level retention rule. Resources that have any of these tags are not retained by the retention rule
165
+ * upon deletion.</p>
166
+ * <p>You can't specify exclusion tags for tag-level retention rules.</p>
167
+ * @public
168
+ */
169
+ ExcludeResourceTags?: ResourceTag[] | undefined;
162
170
  }
163
171
  /**
164
172
  * @public
@@ -215,7 +223,7 @@ export interface CreateRuleResponse {
215
223
  */
216
224
  ResourceType?: ResourceType | undefined;
217
225
  /**
218
- * <p>Information about the resource tags used to identify resources that are retained by the retention
226
+ * <p>[Tag-level retention rules only] Information about the resource tags used to identify resources that are retained by the retention
219
227
  * rule.</p>
220
228
  * @public
221
229
  */
@@ -232,7 +240,7 @@ export interface CreateRuleResponse {
232
240
  */
233
241
  LockConfiguration?: LockConfiguration | undefined;
234
242
  /**
235
- * <p>The lock state for the retention rule.</p>
243
+ * <p>[Region-level retention rules only] The lock state for the retention rule.</p>
236
244
  * <ul>
237
245
  * <li>
238
246
  * <p>
@@ -264,6 +272,12 @@ export interface CreateRuleResponse {
264
272
  * @public
265
273
  */
266
274
  RuleArn?: string | undefined;
275
+ /**
276
+ * <p>[Region-level retention rules only] Information about the exclusion tags used to identify resources that are to be
277
+ * excluded, or ignored, by the retention rule.</p>
278
+ * @public
279
+ */
280
+ ExcludeResourceTags?: ResourceTag[] | undefined;
267
281
  }
268
282
  /**
269
283
  * <p>The service could not respond to the request due to an internal problem.</p>
@@ -445,7 +459,7 @@ export interface GetRuleResponse {
445
459
  */
446
460
  RetentionPeriod?: RetentionPeriod | undefined;
447
461
  /**
448
- * <p>Information about the resource tags used to identify resources that are retained by the retention
462
+ * <p>[Tag-level retention rules only] Information about the resource tags used to identify resources that are retained by the retention
449
463
  * rule.</p>
450
464
  * @public
451
465
  */
@@ -462,7 +476,7 @@ export interface GetRuleResponse {
462
476
  */
463
477
  LockConfiguration?: LockConfiguration | undefined;
464
478
  /**
465
- * <p>The lock state for the retention rule.</p>
479
+ * <p>[Region-level retention rules only] The lock state for the retention rule.</p>
466
480
  * <ul>
467
481
  * <li>
468
482
  * <p>
@@ -501,6 +515,12 @@ export interface GetRuleResponse {
501
515
  * @public
502
516
  */
503
517
  RuleArn?: string | undefined;
518
+ /**
519
+ * <p>[Region-level retention rules only] Information about the exclusion tags used to identify resources that are to be
520
+ * excluded, or ignored, by the retention rule.</p>
521
+ * @public
522
+ */
523
+ ExcludeResourceTags?: ResourceTag[] | undefined;
504
524
  }
505
525
  /**
506
526
  * @public
@@ -527,7 +547,7 @@ export interface ListRulesRequest {
527
547
  */
528
548
  ResourceType: ResourceType | undefined;
529
549
  /**
530
- * <p>Information about the resource tags used to identify resources that are retained by the retention
550
+ * <p>[Tag-level retention rules only] Information about the resource tags used to identify resources that are retained by the retention
531
551
  * rule.</p>
532
552
  * @public
533
553
  */
@@ -538,6 +558,12 @@ export interface ListRulesRequest {
538
558
  * @public
539
559
  */
540
560
  LockState?: LockState | undefined;
561
+ /**
562
+ * <p>[Region-level retention rules only] Information about the exclusion tags used to identify resources that are to be
563
+ * excluded, or ignored, by the retention rule.</p>
564
+ * @public
565
+ */
566
+ ExcludeResourceTags?: ResourceTag[] | undefined;
541
567
  }
542
568
  /**
543
569
  * <p>Information about a Recycle Bin retention rule.</p>
@@ -560,7 +586,7 @@ export interface RuleSummary {
560
586
  */
561
587
  RetentionPeriod?: RetentionPeriod | undefined;
562
588
  /**
563
- * <p>The lock state for the retention rule.</p>
589
+ * <p>[Region-level retention rules only] The lock state for the retention rule.</p>
564
590
  * <ul>
565
591
  * <li>
566
592
  * <p>
@@ -668,7 +694,7 @@ export interface LockRuleResponse {
668
694
  */
669
695
  RetentionPeriod?: RetentionPeriod | undefined;
670
696
  /**
671
- * <p>Information about the resource tags used to identify resources that are retained by the retention
697
+ * <p>[Tag-level retention rules only] Information about the resource tags used to identify resources that are retained by the retention
672
698
  * rule.</p>
673
699
  * @public
674
700
  */
@@ -685,7 +711,7 @@ export interface LockRuleResponse {
685
711
  */
686
712
  LockConfiguration?: LockConfiguration | undefined;
687
713
  /**
688
- * <p>The lock state for the retention rule.</p>
714
+ * <p>[Region-level retention rules only] The lock state for the retention rule.</p>
689
715
  * <ul>
690
716
  * <li>
691
717
  * <p>
@@ -717,6 +743,12 @@ export interface LockRuleResponse {
717
743
  * @public
718
744
  */
719
745
  RuleArn?: string | undefined;
746
+ /**
747
+ * <p>[Region-level retention rules only] Information about the exclusion tags used to identify resources that are to be
748
+ * excluded, or ignored, by the retention rule.</p>
749
+ * @public
750
+ */
751
+ ExcludeResourceTags?: ResourceTag[] | undefined;
720
752
  }
721
753
  /**
722
754
  * @public
@@ -773,7 +805,7 @@ export interface UnlockRuleResponse {
773
805
  */
774
806
  RetentionPeriod?: RetentionPeriod | undefined;
775
807
  /**
776
- * <p>Information about the resource tags used to identify resources that are retained by the retention
808
+ * <p>[Tag-level retention rules only] Information about the resource tags used to identify resources that are retained by the retention
777
809
  * rule.</p>
778
810
  * @public
779
811
  */
@@ -790,7 +822,7 @@ export interface UnlockRuleResponse {
790
822
  */
791
823
  LockConfiguration?: LockConfiguration | undefined;
792
824
  /**
793
- * <p>The lock state for the retention rule.</p>
825
+ * <p>[Region-level retention rules only] The lock state for the retention rule.</p>
794
826
  * <ul>
795
827
  * <li>
796
828
  * <p>
@@ -829,6 +861,12 @@ export interface UnlockRuleResponse {
829
861
  * @public
830
862
  */
831
863
  RuleArn?: string | undefined;
864
+ /**
865
+ * <p>[Region-level retention rules only] Information about the exclusion tags used to identify resources that are to be
866
+ * excluded, or ignored, by the retention rule.</p>
867
+ * @public
868
+ */
869
+ ExcludeResourceTags?: ResourceTag[] | undefined;
832
870
  }
833
871
  /**
834
872
  * @public
@@ -878,7 +916,7 @@ export interface UpdateRuleRequest {
878
916
  */
879
917
  ResourceType?: ResourceType | undefined;
880
918
  /**
881
- * <p>Specifies the resource tags to use to identify resources that are to be retained by a
919
+ * <p>[Tag-level retention rules only] Specifies the resource tags to use to identify resources that are to be retained by a
882
920
  * tag-level retention rule. For tag-level retention rules, only deleted resources, of the specified resource type, that
883
921
  * have one or more of the specified tag key and value pairs are retained. If a resource is deleted, but it does not have
884
922
  * any of the specified tag key and value pairs, it is immediately deleted without being retained by the retention rule.</p>
@@ -889,6 +927,14 @@ export interface UpdateRuleRequest {
889
927
  * @public
890
928
  */
891
929
  ResourceTags?: ResourceTag[] | undefined;
930
+ /**
931
+ * <p>[Region-level retention rules only] Specifies the exclusion tags to use to identify resources that are to be excluded,
932
+ * or ignored, by a Region-level retention rule. Resources that have any of these tags are not retained by the retention rule
933
+ * upon deletion.</p>
934
+ * <p>You can't specify exclusion tags for tag-level retention rules.</p>
935
+ * @public
936
+ */
937
+ ExcludeResourceTags?: ResourceTag[] | undefined;
892
938
  }
893
939
  /**
894
940
  * @public
@@ -915,7 +961,7 @@ export interface UpdateRuleResponse {
915
961
  */
916
962
  ResourceType?: ResourceType | undefined;
917
963
  /**
918
- * <p>Information about the resource tags used to identify resources that are retained by the retention
964
+ * <p>[Tag-level retention rules only] Information about the resource tags used to identify resources that are retained by the retention
919
965
  * rule.</p>
920
966
  * @public
921
967
  */
@@ -927,7 +973,7 @@ export interface UpdateRuleResponse {
927
973
  */
928
974
  Status?: RuleStatus | undefined;
929
975
  /**
930
- * <p>The lock state for the retention rule.</p>
976
+ * <p>[Region-level retention rules only] The lock state for the retention rule.</p>
931
977
  * <ul>
932
978
  * <li>
933
979
  * <p>
@@ -966,4 +1012,10 @@ export interface UpdateRuleResponse {
966
1012
  * @public
967
1013
  */
968
1014
  RuleArn?: string | undefined;
1015
+ /**
1016
+ * <p>[Region-level retention rules only] Information about the exclusion tags used to identify resources that are to be
1017
+ * excluded, or ignored, by the retention rule.</p>
1018
+ * @public
1019
+ */
1020
+ ExcludeResourceTags?: ResourceTag[] | undefined;
969
1021
  }
@@ -1,5 +1,9 @@
1
1
  import { ExceptionOptionType as __ExceptionOptionType } from "@smithy/smithy-client";
2
2
  import { RbinServiceException as __BaseException } from "./RbinServiceException";
3
+ export interface ResourceTag {
4
+ ResourceTagKey: string | undefined;
5
+ ResourceTagValue?: string | undefined;
6
+ }
3
7
  export declare const UnlockDelayUnit: {
4
8
  readonly DAYS: "DAYS";
5
9
  };
@@ -12,10 +16,6 @@ export interface UnlockDelay {
12
16
  export interface LockConfiguration {
13
17
  UnlockDelay: UnlockDelay | undefined;
14
18
  }
15
- export interface ResourceTag {
16
- ResourceTagKey: string | undefined;
17
- ResourceTagValue?: string | undefined;
18
- }
19
19
  export declare const ResourceType: {
20
20
  readonly EBS_SNAPSHOT: "EBS_SNAPSHOT";
21
21
  readonly EC2_IMAGE: "EC2_IMAGE";
@@ -41,6 +41,7 @@ export interface CreateRuleRequest {
41
41
  ResourceType: ResourceType | undefined;
42
42
  ResourceTags?: ResourceTag[] | undefined;
43
43
  LockConfiguration?: LockConfiguration | undefined;
44
+ ExcludeResourceTags?: ResourceTag[] | undefined;
44
45
  }
45
46
  export declare const LockState: {
46
47
  readonly LOCKED: "locked";
@@ -64,6 +65,7 @@ export interface CreateRuleResponse {
64
65
  LockConfiguration?: LockConfiguration | undefined;
65
66
  LockState?: LockState | undefined;
66
67
  RuleArn?: string | undefined;
68
+ ExcludeResourceTags?: ResourceTag[] | undefined;
67
69
  }
68
70
  export declare class InternalServerException extends __BaseException {
69
71
  readonly name: "InternalServerException";
@@ -146,6 +148,7 @@ export interface GetRuleResponse {
146
148
  LockState?: LockState | undefined;
147
149
  LockEndTime?: Date | undefined;
148
150
  RuleArn?: string | undefined;
151
+ ExcludeResourceTags?: ResourceTag[] | undefined;
149
152
  }
150
153
  export interface ListRulesRequest {
151
154
  MaxResults?: number | undefined;
@@ -153,6 +156,7 @@ export interface ListRulesRequest {
153
156
  ResourceType: ResourceType | undefined;
154
157
  ResourceTags?: ResourceTag[] | undefined;
155
158
  LockState?: LockState | undefined;
159
+ ExcludeResourceTags?: ResourceTag[] | undefined;
156
160
  }
157
161
  export interface RuleSummary {
158
162
  Identifier?: string | undefined;
@@ -185,6 +189,7 @@ export interface LockRuleResponse {
185
189
  LockConfiguration?: LockConfiguration | undefined;
186
190
  LockState?: LockState | undefined;
187
191
  RuleArn?: string | undefined;
192
+ ExcludeResourceTags?: ResourceTag[] | undefined;
188
193
  }
189
194
  export interface TagResourceRequest {
190
195
  ResourceArn: string | undefined;
@@ -205,6 +210,7 @@ export interface UnlockRuleResponse {
205
210
  LockState?: LockState | undefined;
206
211
  LockEndTime?: Date | undefined;
207
212
  RuleArn?: string | undefined;
213
+ ExcludeResourceTags?: ResourceTag[] | undefined;
208
214
  }
209
215
  export interface UntagResourceRequest {
210
216
  ResourceArn: string | undefined;
@@ -217,6 +223,7 @@ export interface UpdateRuleRequest {
217
223
  Description?: string | undefined;
218
224
  ResourceType?: ResourceType | undefined;
219
225
  ResourceTags?: ResourceTag[] | undefined;
226
+ ExcludeResourceTags?: ResourceTag[] | undefined;
220
227
  }
221
228
  export interface UpdateRuleResponse {
222
229
  Identifier?: string | undefined;
@@ -228,4 +235,5 @@ export interface UpdateRuleResponse {
228
235
  LockState?: LockState | undefined;
229
236
  LockEndTime?: Date | undefined;
230
237
  RuleArn?: string | undefined;
238
+ ExcludeResourceTags?: ResourceTag[] | undefined;
231
239
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aws-sdk/client-rbin",
3
3
  "description": "AWS SDK for JavaScript Rbin Client for Node.js, Browser and React Native",
4
- "version": "3.696.0",
4
+ "version": "3.699.0",
5
5
  "scripts": {
6
6
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
7
7
  "build:cjs": "node ../../scripts/compilation/inline client-rbin",
@@ -20,10 +20,10 @@
20
20
  "dependencies": {
21
21
  "@aws-crypto/sha256-browser": "5.2.0",
22
22
  "@aws-crypto/sha256-js": "5.2.0",
23
- "@aws-sdk/client-sso-oidc": "3.696.0",
24
- "@aws-sdk/client-sts": "3.696.0",
23
+ "@aws-sdk/client-sso-oidc": "3.699.0",
24
+ "@aws-sdk/client-sts": "3.699.0",
25
25
  "@aws-sdk/core": "3.696.0",
26
- "@aws-sdk/credential-provider-node": "3.696.0",
26
+ "@aws-sdk/credential-provider-node": "3.699.0",
27
27
  "@aws-sdk/middleware-host-header": "3.696.0",
28
28
  "@aws-sdk/middleware-logger": "3.696.0",
29
29
  "@aws-sdk/middleware-recursion-detection": "3.696.0",