import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * Get information about a bucket server side encryption configuration. This data source allows you to retrieve information about the server-side encryption configuration of a bucket.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as scaleway from "@pulumiverse/scaleway";
 *
 * // Get by ID
 * const byId = scaleway.object.getBucketServerSideEncryptionConfiguration({
 *     bucketServerSideEncryptionConfigurationId: main.id,
 * });
 * ```
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as scaleway from "@pulumiverse/scaleway";
 *
 * // Get by Bucket Name
 * const byBucket = scaleway.object.getBucketServerSideEncryptionConfiguration({
 *     bucket: main.name,
 * });
 * ```
 */
export declare function getBucketServerSideEncryptionConfiguration(args?: GetBucketServerSideEncryptionConfigurationArgs, opts?: pulumi.InvokeOptions): Promise<GetBucketServerSideEncryptionConfigurationResult>;
/**
 * A collection of arguments for invoking getBucketServerSideEncryptionConfiguration.
 */
export interface GetBucketServerSideEncryptionConfigurationArgs {
    /**
     * The bucket's name or regional ID. Conflicts with `bucketServerSideEncryptionConfigurationId`.
     */
    bucket?: string;
    /**
     * The ID of the bucket server side encryption configuration. Conflicts with `bucket`.
     */
    bucketServerSideEncryptionConfigurationId?: string;
    /**
     * The ID of the
     * project the bucket is associated with.
     */
    projectId?: string;
}
/**
 * A collection of values returned by getBucketServerSideEncryptionConfiguration.
 */
export interface GetBucketServerSideEncryptionConfigurationResult {
    /**
     * (String) The bucket's name or regional ID.
     */
    readonly bucket?: string;
    readonly bucketServerSideEncryptionConfigurationId?: string;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    readonly projectId?: string;
    readonly region: string;
    /**
     * (Set of Object) Set of server-side encryption configuration rules.
     */
    readonly rules: outputs.object.GetBucketServerSideEncryptionConfigurationRule[];
}
/**
 * Get information about a bucket server side encryption configuration. This data source allows you to retrieve information about the server-side encryption configuration of a bucket.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as scaleway from "@pulumiverse/scaleway";
 *
 * // Get by ID
 * const byId = scaleway.object.getBucketServerSideEncryptionConfiguration({
 *     bucketServerSideEncryptionConfigurationId: main.id,
 * });
 * ```
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as scaleway from "@pulumiverse/scaleway";
 *
 * // Get by Bucket Name
 * const byBucket = scaleway.object.getBucketServerSideEncryptionConfiguration({
 *     bucket: main.name,
 * });
 * ```
 */
export declare function getBucketServerSideEncryptionConfigurationOutput(args?: GetBucketServerSideEncryptionConfigurationOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetBucketServerSideEncryptionConfigurationResult>;
/**
 * A collection of arguments for invoking getBucketServerSideEncryptionConfiguration.
 */
export interface GetBucketServerSideEncryptionConfigurationOutputArgs {
    /**
     * The bucket's name or regional ID. Conflicts with `bucketServerSideEncryptionConfigurationId`.
     */
    bucket?: pulumi.Input<string | undefined>;
    /**
     * The ID of the bucket server side encryption configuration. Conflicts with `bucket`.
     */
    bucketServerSideEncryptionConfigurationId?: pulumi.Input<string | undefined>;
    /**
     * The ID of the
     * project the bucket is associated with.
     */
    projectId?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=getBucketServerSideEncryptionConfiguration.d.ts.map