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

This operation is not supported for directory buckets.

*
*

Returns the versioning state of a bucket.

*

To retrieve the versioning state of a bucket, you must be the bucket owner.

*

This implementation also returns the MFA Delete status of the versioning state. If the MFA Delete * status is enabled, the bucket owner must use an authentication device to change the * versioning state of the bucket.

*

The following operations are related to GetBucketVersioning:

* * *

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, GetBucketVersioningCommand } from "@aws-sdk/client-s3"; // ES Modules import * // const { S3Client, GetBucketVersioningCommand } = 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 = { // GetBucketVersioningRequest * Bucket: "STRING_VALUE", // required * ExpectedBucketOwner: "STRING_VALUE", * }; * const command = new GetBucketVersioningCommand(input); * const response = await client.send(command); * // { // GetBucketVersioningOutput * // Status: "Enabled" || "Suspended", * // MFADelete: "Enabled" || "Disabled", * // }; * * ``` * * @param GetBucketVersioningCommandInput - {@link GetBucketVersioningCommandInput} * @returns {@link GetBucketVersioningCommandOutput} * @see {@link GetBucketVersioningCommandInput} for command's `input` shape. * @see {@link GetBucketVersioningCommandOutput} 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 get bucket versioning configuration * ```javascript * // The following example retrieves bucket versioning configuration. * const input = { * Bucket: "examplebucket" * }; * const command = new GetBucketVersioningCommand(input); * const response = await client.send(command); * /* response is * { * MFADelete: "Disabled", * Status: "Enabled" * } * *\/ * ``` * * @public */ export declare class GetBucketVersioningCommand extends GetBucketVersioningCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: GetBucketVersioningRequest; output: GetBucketVersioningOutput; }; sdk: { input: GetBucketVersioningCommandInput; output: GetBucketVersioningCommandOutput; }; }; }