import { Command as $Command } from "@smithy/smithy-client"; import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { DeleteBucketLifecycleRequest } from "../models/models_0"; import type { S3ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../S3Client"; /** * @public */ export type { __MetadataBearer }; export { $Command }; /** * @public * * The input for {@link DeleteBucketLifecycleCommand}. */ export interface DeleteBucketLifecycleCommandInput extends DeleteBucketLifecycleRequest { } /** * @public * * The output of {@link DeleteBucketLifecycleCommand}. */ export interface DeleteBucketLifecycleCommandOutput extends __MetadataBearer { } declare const DeleteBucketLifecycleCommand_base: { new (input: DeleteBucketLifecycleCommandInput): import("@smithy/smithy-client").CommandImpl; new (input: DeleteBucketLifecycleCommandInput): import("@smithy/smithy-client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; }; /** *

Deletes the lifecycle configuration from the specified bucket. Amazon S3 removes all the lifecycle * configuration rules in the lifecycle subresource associated with the bucket. Your objects never expire, * and Amazon S3 no longer automatically deletes any objects on the basis of rules contained in the deleted * lifecycle configuration.

*
*
Permissions
*
*
    *
  • *

    * General purpose bucket permissions - By default, all Amazon S3 * resources are private, including buckets, objects, and related subresources (for example, * lifecycle configuration and website configuration). Only the resource owner (that is, the * Amazon Web Services account that created it) can access the resource. The resource owner can optionally * grant access permissions to others by writing an access policy. For this operation, a user * must have the s3:PutLifecycleConfiguration permission.

    *

    For more information about permissions, see Managing Access Permissions to Your * Amazon S3 Resources.

    *
  • *
*
    *
  • *

    * Directory bucket permissions - You must have the * s3express:PutLifecycleConfiguration permission in an IAM identity-based policy * to use this operation. Cross-account access to this API operation isn't supported. The * resource owner can optionally grant access permissions to others by creating a role or user * for them as long as they are within the same account as the owner and resource.

    *

    For more information about directory bucket policies and permissions, see Authorizing Regional endpoint APIs with IAM in the Amazon S3 User * Guide.

    * *

    * Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name * . Virtual-hosted-style requests aren't supported. * For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the * Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the * Amazon S3 User Guide.

    *
    *
  • *
*
*
*
*
HTTP Host header syntax
*
*

* Directory buckets - The HTTP Host header syntax is * s3express-control.region.amazonaws.com.

*
*
*

For more information about the object expiration, see Elements to * Describe Lifecycle Actions.

*

Related actions include:

* * *

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

*
* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { S3Client, DeleteBucketLifecycleCommand } from "@aws-sdk/client-s3"; // ES Modules import * // const { S3Client, DeleteBucketLifecycleCommand } = require("@aws-sdk/client-s3"); // CommonJS import * // import type { S3ClientConfig } from "@aws-sdk/client-s3"; * const config = {}; // type is S3ClientConfig * const client = new S3Client(config); * const input = { // DeleteBucketLifecycleRequest * Bucket: "STRING_VALUE", // required * ExpectedBucketOwner: "STRING_VALUE", * }; * const command = new DeleteBucketLifecycleCommand(input); * const response = await client.send(command); * // {}; * * ``` * * @param DeleteBucketLifecycleCommandInput - {@link DeleteBucketLifecycleCommandInput} * @returns {@link DeleteBucketLifecycleCommandOutput} * @see {@link DeleteBucketLifecycleCommandInput} for command's `input` shape. * @see {@link DeleteBucketLifecycleCommandOutput} for command's `response` shape. * @see {@link S3ClientResolvedConfig | config} for S3Client's `config` shape. * * @throws {@link S3ServiceException} *

Base exception class for all service exceptions from S3 service.

* * * @example To delete lifecycle configuration on a bucket. * ```javascript * // The following example deletes lifecycle configuration on a bucket. * const input = { * Bucket: "examplebucket" * }; * const command = new DeleteBucketLifecycleCommand(input); * const response = await client.send(command); * /* response is * { /* metadata only *\/ } * *\/ * ``` * * @public */ export declare class DeleteBucketLifecycleCommand extends DeleteBucketLifecycleCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: DeleteBucketLifecycleRequest; output: {}; }; sdk: { input: DeleteBucketLifecycleCommandInput; output: DeleteBucketLifecycleCommandOutput; }; }; }