44 lines
1.5 KiB
TypeScript
44 lines
1.5 KiB
TypeScript
import type { Construct } from 'constructs';
|
|
import type { LambdaIntegrationOptions } from './integrations';
|
|
import type { RestApiProps } from './restapi';
|
|
import { RestApi } from './restapi';
|
|
import type * as lambda from '../../aws-lambda';
|
|
export interface LambdaRestApiProps extends RestApiProps {
|
|
/**
|
|
* The default Lambda function that handles all requests from this API.
|
|
*
|
|
* This handler will be used as a the default integration for all methods in
|
|
* this API, unless specified otherwise in `addMethod`.
|
|
*/
|
|
readonly handler: lambda.IFunction;
|
|
/**
|
|
* Specific Lambda integration options.
|
|
*
|
|
* @default see defaults defined in `LambdaIntegrationOptions`.
|
|
*/
|
|
readonly integrationOptions?: LambdaIntegrationOptions;
|
|
/**
|
|
* If true, route all requests to the Lambda Function
|
|
*
|
|
* If set to false, you will need to explicitly define the API model using
|
|
* `addResource` and `addMethod` (or `addProxy`).
|
|
*
|
|
* @default true
|
|
*/
|
|
readonly proxy?: boolean;
|
|
}
|
|
/**
|
|
* Defines an API Gateway REST API with AWS Lambda proxy integration.
|
|
*
|
|
* Use the `proxy` property to define a greedy proxy ("{proxy+}") and "ANY"
|
|
* method from the specified path. If not defined, you will need to explicity
|
|
* add resources and methods to the API.
|
|
*/
|
|
export declare class LambdaRestApi extends RestApi {
|
|
/**
|
|
* Uniquely identifies this class.
|
|
*/
|
|
static readonly PROPERTY_INJECTION_ID: string;
|
|
constructor(scope: Construct, id: string, props: LambdaRestApiProps);
|
|
}
|