import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
import * as enums from "../types/enums";
/**
 * The AWS::S3::AccessGrant resource is an Amazon S3 resource type representing permissions to a specific S3 bucket or prefix hosted in an S3 Access Grants instance.
 */
export declare function getAccessGrant(args: GetAccessGrantArgs, opts?: pulumi.InvokeOptions): Promise<GetAccessGrantResult>;
export interface GetAccessGrantArgs {
    /**
     * The ID assigned to this access grant.
     */
    accessGrantId: string;
}
export interface GetAccessGrantResult {
    /**
     * The Amazon Resource Name (ARN) of the specified access grant.
     */
    readonly accessGrantArn?: string;
    /**
     * The ID assigned to this access grant.
     */
    readonly accessGrantId?: string;
    /**
     * The configuration options of the grant location, which is the S3 path to the data to which you are granting access.
     */
    readonly accessGrantsLocationConfiguration?: outputs.s3.AccessGrantsLocationConfiguration;
    /**
     * The custom S3 location to be accessed by the grantee
     */
    readonly accessGrantsLocationId?: string;
    /**
     * The ARN of the application grantees will use to access the location
     */
    readonly applicationArn?: string;
    /**
     * The S3 path of the data to which you are granting access. It is a combination of the S3 path of the registered location and the subprefix.
     */
    readonly grantScope?: string;
    /**
     * The principal who will be granted permission to access S3.
     */
    readonly grantee?: outputs.s3.AccessGrantGrantee;
    /**
     * The level of access to be afforded to the grantee
     */
    readonly permission?: enums.s3.AccessGrantPermission;
}
/**
 * The AWS::S3::AccessGrant resource is an Amazon S3 resource type representing permissions to a specific S3 bucket or prefix hosted in an S3 Access Grants instance.
 */
export declare function getAccessGrantOutput(args: GetAccessGrantOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetAccessGrantResult>;
export interface GetAccessGrantOutputArgs {
    /**
     * The ID assigned to this access grant.
     */
    accessGrantId: pulumi.Input<string>;
}
