import * as core from "@terrascript/core";
export interface PublicAccessBlockConfigurationArgs extends core.SchemaArgs {
    blockPublicAcls?: boolean | core.BooleanOut;
    blockPublicPolicy?: boolean | core.BooleanOut;
    ignorePublicAcls?: boolean | core.BooleanOut;
    restrictPublicBuckets?: boolean | core.BooleanOut;
}
export declare class PublicAccessBlockConfiguration extends core.Schema<PublicAccessBlockConfigurationArgs> {
    blockPublicAcls?: boolean | core.BooleanOut;
    blockPublicPolicy?: boolean | core.BooleanOut;
    ignorePublicAcls?: boolean | core.BooleanOut;
    restrictPublicBuckets?: boolean | core.BooleanOut;
}
export interface VpcConfigurationArgs extends core.SchemaArgs {
    vpcId: string | core.StringOut;
}
export declare class VpcConfiguration extends core.Schema<VpcConfigurationArgs> {
    vpcId: string | core.StringOut;
}
export interface AccessPointArgs extends core.ResourceArgs {
    accountId?: string | core.StringOut;
    bucket: string | core.StringOut;
    name: string | core.StringOut;
    policy?: string | core.StringOut;
    publicAccessBlockConfiguration?: PublicAccessBlockConfiguration;
    vpcConfiguration?: VpcConfiguration;
}
export declare class AccessPoint extends core.Resource<AccessPointArgs> {
    accountId?: string | core.StringOut;
    alias: string | core.StringOut;
    arn: string | core.StringOut;
    bucket: string | core.StringOut;
    domainName: string | core.StringOut;
    endpoints: core.Map<string, string> | core.MapOut<core.StringOut>;
    hasPublicAccessPolicy: boolean | core.BooleanOut;
    id: string | core.StringOut;
    name: string | core.StringOut;
    networkOrigin: string | core.StringOut;
    policy?: string | core.StringOut;
    publicAccessBlockConfiguration?: PublicAccessBlockConfiguration;
    vpcConfiguration?: VpcConfiguration;
    constructor(name: string, args?: AccessPointArgs);
    getNamespace(): string;
}
//# sourceMappingURL=access_point.d.ts.map