1
1
// smithy-typescript generated code
2
2
import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@smithy/smithy-client";
3
-
4
3
import { StreamingBlobTypes } from "@smithy/types";
5
4
6
5
import { S3ServiceException as __BaseException } from "./S3ServiceException";
@@ -6874,18 +6873,7 @@ export interface LifecycleRuleAndOperator {
6874
6873
* <code>And</code> specified. If the <code>Filter</code> element is left empty, the Lifecycle Rule applies to all objects in the bucket.</p>
6875
6874
* @public
6876
6875
*/
6877
- export type LifecycleRuleFilter =
6878
- | LifecycleRuleFilter.AndMember
6879
- | LifecycleRuleFilter.ObjectSizeGreaterThanMember
6880
- | LifecycleRuleFilter.ObjectSizeLessThanMember
6881
- | LifecycleRuleFilter.PrefixMember
6882
- | LifecycleRuleFilter.TagMember
6883
- | LifecycleRuleFilter.$UnknownMember;
6884
-
6885
- /**
6886
- * @public
6887
- */
6888
- export namespace LifecycleRuleFilter {
6876
+ export interface LifecycleRuleFilter {
6889
6877
/**
6890
6878
* <p>Prefix identifying one or more objects to which the rule applies.</p>
6891
6879
* <important>
@@ -6895,98 +6883,33 @@ export namespace LifecycleRuleFilter {
6895
6883
* </important>
6896
6884
* @public
6897
6885
*/
6898
- export interface PrefixMember {
6899
- Prefix: string;
6900
- Tag?: never;
6901
- ObjectSizeGreaterThan?: never;
6902
- ObjectSizeLessThan?: never;
6903
- And?: never;
6904
- $unknown?: never;
6905
- }
6886
+ Prefix?: string;
6906
6887
6907
6888
/**
6908
6889
* <p>This tag must exist in the object's tag set in order for the rule to apply.</p>
6909
6890
* @public
6910
6891
*/
6911
- export interface TagMember {
6912
- Prefix?: never;
6913
- Tag: Tag;
6914
- ObjectSizeGreaterThan?: never;
6915
- ObjectSizeLessThan?: never;
6916
- And?: never;
6917
- $unknown?: never;
6918
- }
6892
+ Tag?: Tag;
6919
6893
6920
6894
/**
6921
6895
* <p>Minimum object size to which the rule applies.</p>
6922
6896
* @public
6923
6897
*/
6924
- export interface ObjectSizeGreaterThanMember {
6925
- Prefix?: never;
6926
- Tag?: never;
6927
- ObjectSizeGreaterThan: number;
6928
- ObjectSizeLessThan?: never;
6929
- And?: never;
6930
- $unknown?: never;
6931
- }
6898
+ ObjectSizeGreaterThan?: number;
6932
6899
6933
6900
/**
6934
6901
* <p>Maximum object size to which the rule applies.</p>
6935
6902
* @public
6936
6903
*/
6937
- export interface ObjectSizeLessThanMember {
6938
- Prefix?: never;
6939
- Tag?: never;
6940
- ObjectSizeGreaterThan?: never;
6941
- ObjectSizeLessThan: number;
6942
- And?: never;
6943
- $unknown?: never;
6944
- }
6904
+ ObjectSizeLessThan?: number;
6945
6905
6946
6906
/**
6947
6907
* <p>This is used in a Lifecycle Rule Filter to apply a logical AND to two or more
6948
6908
* predicates. The Lifecycle Rule will apply to any object matching all of the predicates
6949
6909
* configured inside the And operator.</p>
6950
6910
* @public
6951
6911
*/
6952
- export interface AndMember {
6953
- Prefix?: never;
6954
- Tag?: never;
6955
- ObjectSizeGreaterThan?: never;
6956
- ObjectSizeLessThan?: never;
6957
- And: LifecycleRuleAndOperator;
6958
- $unknown?: never;
6959
- }
6960
-
6961
- /**
6962
- * @public
6963
- */
6964
- export interface $UnknownMember {
6965
- Prefix?: never;
6966
- Tag?: never;
6967
- ObjectSizeGreaterThan?: never;
6968
- ObjectSizeLessThan?: never;
6969
- And?: never;
6970
- $unknown: [string, any];
6971
- }
6972
-
6973
- export interface Visitor<T> {
6974
- Prefix: (value: string) => T;
6975
- Tag: (value: Tag) => T;
6976
- ObjectSizeGreaterThan: (value: number) => T;
6977
- ObjectSizeLessThan: (value: number) => T;
6978
- And: (value: LifecycleRuleAndOperator) => T;
6979
- _: (name: string, value: any) => T;
6980
- }
6981
-
6982
- export const visit = <T>(value: LifecycleRuleFilter, visitor: Visitor<T>): T => {
6983
- if (value.Prefix !== undefined) return visitor.Prefix(value.Prefix);
6984
- if (value.Tag !== undefined) return visitor.Tag(value.Tag);
6985
- if (value.ObjectSizeGreaterThan !== undefined) return visitor.ObjectSizeGreaterThan(value.ObjectSizeGreaterThan);
6986
- if (value.ObjectSizeLessThan !== undefined) return visitor.ObjectSizeLessThan(value.ObjectSizeLessThan);
6987
- if (value.And !== undefined) return visitor.And(value.And);
6988
- return visitor._(value.$unknown[0], value.$unknown[1]);
6989
- };
6912
+ And?: LifecycleRuleAndOperator;
6990
6913
}
6991
6914
6992
6915
/**
@@ -8386,16 +8309,7 @@ export interface ReplicationRuleAndOperator {
8386
8309
* an <code>And</code> child element.</p>
8387
8310
* @public
8388
8311
*/
8389
- export type ReplicationRuleFilter =
8390
- | ReplicationRuleFilter.AndMember
8391
- | ReplicationRuleFilter.PrefixMember
8392
- | ReplicationRuleFilter.TagMember
8393
- | ReplicationRuleFilter.$UnknownMember;
8394
-
8395
- /**
8396
- * @public
8397
- */
8398
- export namespace ReplicationRuleFilter {
8312
+ export interface ReplicationRuleFilter {
8399
8313
/**
8400
8314
* <p>An object key name prefix that identifies the subset of objects to which the rule
8401
8315
* applies.</p>
@@ -8406,24 +8320,14 @@ export namespace ReplicationRuleFilter {
8406
8320
* </important>
8407
8321
* @public
8408
8322
*/
8409
- export interface PrefixMember {
8410
- Prefix: string;
8411
- Tag?: never;
8412
- And?: never;
8413
- $unknown?: never;
8414
- }
8323
+ Prefix?: string;
8415
8324
8416
8325
/**
8417
8326
* <p>A container for specifying a tag key and value. </p>
8418
8327
* <p>The rule applies only to objects that have the tag in their tag set.</p>
8419
8328
* @public
8420
8329
*/
8421
- export interface TagMember {
8422
- Prefix?: never;
8423
- Tag: Tag;
8424
- And?: never;
8425
- $unknown?: never;
8426
- }
8330
+ Tag?: Tag;
8427
8331
8428
8332
/**
8429
8333
* <p>A container for specifying rule filters. The filters determine the subset of objects to
@@ -8441,36 +8345,7 @@ export namespace ReplicationRuleFilter {
8441
8345
* </ul>
8442
8346
* @public
8443
8347
*/
8444
- export interface AndMember {
8445
- Prefix?: never;
8446
- Tag?: never;
8447
- And: ReplicationRuleAndOperator;
8448
- $unknown?: never;
8449
- }
8450
-
8451
- /**
8452
- * @public
8453
- */
8454
- export interface $UnknownMember {
8455
- Prefix?: never;
8456
- Tag?: never;
8457
- And?: never;
8458
- $unknown: [string, any];
8459
- }
8460
-
8461
- export interface Visitor<T> {
8462
- Prefix: (value: string) => T;
8463
- Tag: (value: Tag) => T;
8464
- And: (value: ReplicationRuleAndOperator) => T;
8465
- _: (name: string, value: any) => T;
8466
- }
8467
-
8468
- export const visit = <T>(value: ReplicationRuleFilter, visitor: Visitor<T>): T => {
8469
- if (value.Prefix !== undefined) return visitor.Prefix(value.Prefix);
8470
- if (value.Tag !== undefined) return visitor.Tag(value.Tag);
8471
- if (value.And !== undefined) return visitor.And(value.And);
8472
- return visitor._(value.$unknown[0], value.$unknown[1]);
8473
- };
8348
+ And?: ReplicationRuleAndOperator;
8474
8349
}
8475
8350
8476
8351
/**
0 commit comments