import { _LifecycleExpiration, _UnmarshalledLifecycleExpiration } from "./_LifecycleExpiration"; import { _Transition, _UnmarshalledTransition } from "./_Transition"; import { _NoncurrentVersionTransition, _UnmarshalledNoncurrentVersionTransition } from "./_NoncurrentVersionTransition"; import { _NoncurrentVersionExpiration, _UnmarshalledNoncurrentVersionExpiration } from "./_NoncurrentVersionExpiration"; import { _AbortIncompleteMultipartUpload, _UnmarshalledAbortIncompleteMultipartUpload } from "./_AbortIncompleteMultipartUpload"; /** * _Rule shape */ export interface _Rule { /** * _LifecycleExpiration shape */ Expiration?: _LifecycleExpiration; /** *
Unique identifier for the rule. The value cannot be longer than 255 characters.
*/ ID?: string; /** *Prefix identifying one or more objects to which the rule applies.
*/ Prefix: string; /** *If 'Enabled', the rule is currently being applied. If 'Disabled', the rule is not currently being applied.
*/ Status: "Enabled" | "Disabled" | string; /** * _Transition shape */ Transition?: _Transition; /** *Container for the transition rule that describes when noncurrent objects transition to the STANDARD_IA, ONEZONE_IA or GLACIER storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA, ONEZONE_IA or GLACIER storage class at a specific period in the object's lifetime.
*/ NoncurrentVersionTransition?: _NoncurrentVersionTransition; /** *Specifies when noncurrent object versions expire. Upon expiration, Amazon S3 permanently deletes the noncurrent object versions. You set this lifecycle configuration action on a bucket that has versioning enabled (or suspended) to request that Amazon S3 delete noncurrent object versions at a specific period in the object's lifetime.
*/ NoncurrentVersionExpiration?: _NoncurrentVersionExpiration; /** *Specifies the days since the initiation of an Incomplete Multipart Upload that Lifecycle will wait before permanently removing all parts of the upload.
*/ AbortIncompleteMultipartUpload?: _AbortIncompleteMultipartUpload; } export interface _UnmarshalledRule extends _Rule { /** * _LifecycleExpiration shape */ Expiration?: _UnmarshalledLifecycleExpiration; /** * _Transition shape */ Transition?: _UnmarshalledTransition; /** *Container for the transition rule that describes when noncurrent objects transition to the STANDARD_IA, ONEZONE_IA or GLACIER storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA, ONEZONE_IA or GLACIER storage class at a specific period in the object's lifetime.
*/ NoncurrentVersionTransition?: _UnmarshalledNoncurrentVersionTransition; /** *Specifies when noncurrent object versions expire. Upon expiration, Amazon S3 permanently deletes the noncurrent object versions. You set this lifecycle configuration action on a bucket that has versioning enabled (or suspended) to request that Amazon S3 delete noncurrent object versions at a specific period in the object's lifetime.
*/ NoncurrentVersionExpiration?: _UnmarshalledNoncurrentVersionExpiration; /** *Specifies the days since the initiation of an Incomplete Multipart Upload that Lifecycle will wait before permanently removing all parts of the upload.
*/ AbortIncompleteMultipartUpload?: _UnmarshalledAbortIncompleteMultipartUpload; }