import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as enums from "../types/enums"; import * as pulumiAws from "@pulumi/aws"; /** * Cloud Toolkit component for Bcukets. Creates a Simple Bucket for object storage */ export declare class Bucket extends pulumi.ComponentResource { /** * Returns true if the given object is an instance of Bucket. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is Bucket; /** * Instance of our Bucket */ readonly bucket: pulumi.Output; /** * Configuration for controlling bucket encryption */ readonly bucketEncryption: pulumi.Output; /** * Enforce that bucket owner is all bucket objects */ readonly bucketOwnership: pulumi.Output; /** * Controls that IAM policies complies with bucket visibility (public or private) */ readonly bucketPublicAccess: pulumi.Output; /** * Policy to make public all objects if bucket visibility is public */ readonly bucketPublicAccessPolicy: pulumi.Output; /** * Configuration for controlling bucket versioning */ readonly bucketVersioning: pulumi.Output; /** * Policy for read-only users */ readonly readOnlyBucketPolicy: pulumi.Output; /** * Configuration to perform bucket replication */ readonly replicationConfig: pulumi.Output; /** * Policy attachments to perform bucket replication */ readonly replicationPolicyAttachment: pulumi.Output; /** * Required role for managing bucket */ readonly role: pulumi.Output; /** * Configuration to setup a website */ readonly website: pulumi.Output; /** * Policy for write users */ readonly writeBucketPolicy: pulumi.Output; /** * Create a Bucket resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args?: BucketArgs, opts?: pulumi.ComponentResourceOptions); } /** * The set of arguments for constructing a Bucket resource. */ export interface BucketArgs { /** * Configures bucket name in AWS. */ bucketName?: pulumi.Input; /** * Configures a random bucket name in AWS but specifying a prefix name. */ bucketNamePrefix?: pulumi.Input; /** * Configures encryption parameters for the bucket */ encryption?: pulumi.Input; /** * Set to true to allow policies that may provide access to anyone. */ public?: pulumi.Input; /** * Configures replication parameters for the bucket */ replication?: pulumi.Input; /** * Set a certain versioning mode for bucket objects */ versioning?: pulumi.Input; /** * Configures a static webpage using bucket files */ website?: pulumi.Input; }