import * as cloudfront from '@aws-cdk/aws-cloudfront';
import * as lambda from '@aws-cdk/aws-lambda';
import { NodejsFunction, NodejsFunctionProps } from '@aws-cdk/aws-lambda-nodejs';
import * as s3 from '@aws-cdk/aws-s3';
import { Construct } from '@aws-cdk/core';
import { DistributionProps, FunctionProps } from './types';
export * from './types';
/**
 * @stability stable
 */
export interface IImageResizeProps {
    /**
     * @stability stable
     */
    cloudfrontDistributionProps?: DistributionProps;
    /**
     * @stability stable
     */
    originResponseLambdaProps?: NodejsFunctionProps;
    /**
     * @stability stable
     */
    s3BucketProps?: s3.BucketProps;
    /**
     * @stability stable
     */
    viewerRequestLambdaProps?: FunctionProps;
}
/**
 * @stability stable
 */
export declare class ImageResize extends Construct {
    /**
     * @stability stable
     */
    distribution: cloudfront.Distribution;
    /**
     * @stability stable
     */
    imageOriginResponseLambda: NodejsFunction;
    /**
     * @stability stable
     */
    imagesBucket: s3.Bucket;
    /**
     * @stability stable
     */
    imageViewerRequestLambda: lambda.Function;
    /**
     * @stability stable
     */
    constructor(scope: Construct, id: string, props?: IImageResizeProps);
}
