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

This operation is not supported for directory buckets.

*
*

Retrieves the policy status for an Amazon S3 bucket, indicating whether the bucket is public. In order to * use this operation, you must have the s3:GetBucketPolicyStatus permission. For more * information about Amazon S3 permissions, see Specifying Permissions in a * Policy.

*

For more information about when Amazon S3 considers a bucket public, see The Meaning of "Public".

*

The following operations are related to GetBucketPolicyStatus:

* * *

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, GetBucketPolicyStatusCommand } from "@aws-sdk/client-s3"; // ES Modules import * // const { S3Client, GetBucketPolicyStatusCommand } = 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 = { // GetBucketPolicyStatusRequest * Bucket: "STRING_VALUE", // required * ExpectedBucketOwner: "STRING_VALUE", * }; * const command = new GetBucketPolicyStatusCommand(input); * const response = await client.send(command); * // { // GetBucketPolicyStatusOutput * // PolicyStatus: { // PolicyStatus * // IsPublic: true || false, * // }, * // }; * * ``` * * @param GetBucketPolicyStatusCommandInput - {@link GetBucketPolicyStatusCommandInput} * @returns {@link GetBucketPolicyStatusCommandOutput} * @see {@link GetBucketPolicyStatusCommandInput} for command's `input` shape. * @see {@link GetBucketPolicyStatusCommandOutput} 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.

* * * @public */ export declare class GetBucketPolicyStatusCommand extends GetBucketPolicyStatusCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: GetBucketPolicyStatusRequest; output: GetBucketPolicyStatusOutput; }; sdk: { input: GetBucketPolicyStatusCommandInput; output: GetBucketPolicyStatusCommandOutput; }; }; }