import * as pulumi from "@pulumi/pulumi";
/**
 * This datasource configures a simple access policy for AWS S3 buckets, so that Databricks can access data in it.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as aws from "@pulumi/aws";
 * import * as databricks from "@pulumi/databricks";
 *
 * const thisBucketV2 = new aws.s3.BucketV2("this", {
 *     bucket: "<unique_bucket_name>",
 *     forceDestroy: true,
 * });
 * const _this = databricks.getAwsBucketPolicyOutput({
 *     bucket: thisBucketV2.bucket,
 * });
 * const thisBucketPolicy = new aws.s3.BucketPolicy("this", {
 *     bucket: thisBucketV2.id,
 *     policy: _this.apply(_this => _this.json),
 * });
 * ```
 *
 * Bucket policy with full access:
 */
export declare function getAwsBucketPolicy(args: GetAwsBucketPolicyArgs, opts?: pulumi.InvokeOptions): Promise<GetAwsBucketPolicyResult>;
/**
 * A collection of arguments for invoking getAwsBucketPolicy.
 */
export interface GetAwsBucketPolicyArgs {
    /**
     * AWS partition. The options are `aws`, `aws-us-gov`, or `aws-us-gov-dod`. Defaults to `aws`
     */
    awsPartition?: string;
    /**
     * AWS S3 Bucket name for which to generate the policy document.
     */
    bucket: string;
    /**
     * @deprecated databricks_account_id will be will be removed in the next major release.
     */
    databricksAccountId?: string;
    /**
     * Your Databricks account ID. Used to generate  restrictive IAM policies that will increase the security of your root bucket
     */
    databricksE2AccountId?: string;
    /**
     * Data access role that can have full access for this bucket
     */
    fullAccessRole?: string;
}
/**
 * A collection of values returned by getAwsBucketPolicy.
 */
export interface GetAwsBucketPolicyResult {
    readonly awsPartition?: string;
    readonly bucket: string;
    /**
     * @deprecated databricks_account_id will be will be removed in the next major release.
     */
    readonly databricksAccountId?: string;
    readonly databricksE2AccountId?: string;
    readonly fullAccessRole?: string;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * (Read-only) AWS IAM Policy JSON document to grant Databricks full access to bucket.
     */
    readonly json: string;
}
/**
 * This datasource configures a simple access policy for AWS S3 buckets, so that Databricks can access data in it.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as aws from "@pulumi/aws";
 * import * as databricks from "@pulumi/databricks";
 *
 * const thisBucketV2 = new aws.s3.BucketV2("this", {
 *     bucket: "<unique_bucket_name>",
 *     forceDestroy: true,
 * });
 * const _this = databricks.getAwsBucketPolicyOutput({
 *     bucket: thisBucketV2.bucket,
 * });
 * const thisBucketPolicy = new aws.s3.BucketPolicy("this", {
 *     bucket: thisBucketV2.id,
 *     policy: _this.apply(_this => _this.json),
 * });
 * ```
 *
 * Bucket policy with full access:
 */
export declare function getAwsBucketPolicyOutput(args: GetAwsBucketPolicyOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetAwsBucketPolicyResult>;
/**
 * A collection of arguments for invoking getAwsBucketPolicy.
 */
export interface GetAwsBucketPolicyOutputArgs {
    /**
     * AWS partition. The options are `aws`, `aws-us-gov`, or `aws-us-gov-dod`. Defaults to `aws`
     */
    awsPartition?: pulumi.Input<string>;
    /**
     * AWS S3 Bucket name for which to generate the policy document.
     */
    bucket: pulumi.Input<string>;
    /**
     * @deprecated databricks_account_id will be will be removed in the next major release.
     */
    databricksAccountId?: pulumi.Input<string>;
    /**
     * Your Databricks account ID. Used to generate  restrictive IAM policies that will increase the security of your root bucket
     */
    databricksE2AccountId?: pulumi.Input<string>;
    /**
     * Data access role that can have full access for this bucket
     */
    fullAccessRole?: pulumi.Input<string>;
}
