import * as core from "@terrascript/core";
export interface AwsLambdaArgs extends core.SchemaArgs {
    functionArn: string | core.StringOut;
    functionPayload?: string | core.StringOut;
}
export declare class AwsLambda extends core.Schema<AwsLambdaArgs> {
    functionArn: string | core.StringOut;
    functionPayload?: string | core.StringOut;
}
export interface ContentTransformationArgs extends core.SchemaArgs {
    awsLambda: AwsLambda;
}
export declare class ContentTransformation extends core.Schema<ContentTransformationArgs> {
    awsLambda: AwsLambda;
}
export interface TransformationConfigurationArgs extends core.SchemaArgs {
    actions: core.Array<string> | core.ArrayOut<core.StringOut>;
    contentTransformation: ContentTransformation;
}
export declare class TransformationConfiguration extends core.Schema<TransformationConfigurationArgs> {
    actions: core.Array<string> | core.ArrayOut<core.StringOut>;
    contentTransformation: ContentTransformation;
}
export interface ConfigurationArgs extends core.SchemaArgs {
    allowedFeatures?: core.Array<string> | core.ArrayOut<core.StringOut>;
    cloudWatchMetricsEnabled?: boolean | core.BooleanOut;
    supportingAccessPoint: string | core.StringOut;
    transformationConfiguration: core.Array<TransformationConfiguration> | core.ArrayOut<TransformationConfiguration>;
}
export declare class Configuration extends core.Schema<ConfigurationArgs> {
    allowedFeatures?: core.Array<string> | core.ArrayOut<core.StringOut>;
    cloudWatchMetricsEnabled?: boolean | core.BooleanOut;
    supportingAccessPoint: string | core.StringOut;
    transformationConfiguration: core.Array<TransformationConfiguration> | core.ArrayOut<TransformationConfiguration>;
}
export interface ObjectLambdaAccessPointArgs extends core.ResourceArgs {
    accountId?: string | core.StringOut;
    configuration: Configuration;
    name: string | core.StringOut;
}
export declare class ObjectLambdaAccessPoint extends core.Resource<ObjectLambdaAccessPointArgs> {
    accountId?: string | core.StringOut;
    arn: string | core.StringOut;
    configuration: Configuration;
    id: string | core.StringOut;
    name: string | core.StringOut;
    constructor(name: string, args?: ObjectLambdaAccessPointArgs);
    getNamespace(): string;
}
//# sourceMappingURL=object_lambda_access_point.d.ts.map