@bitblit/epsilon
Version:
Tiny adapter to simplify building API gateway Lambda APIS
27 lines (26 loc) • 1.12 kB
TypeScript
import { RouterConfig } from './route/router-config';
import { APIGatewayEvent, Context, ProxyResult } from 'aws-lambda';
import * as Route from 'route-parser';
import { RouteMapping } from './route/route-mapping';
/**
* This class functions as the adapter from a default lamda function to the handlers exposed via Epsilon
*/
export declare class WebHandler {
private routerConfig;
private cacheApolloHandler;
constructor(routerConfig: RouterConfig);
lambdaHandler(event: APIGatewayEvent, context: Context): Promise<ProxyResult>;
openApiLambdaHandler(event: APIGatewayEvent, context: Context): Promise<ProxyResult>;
apolloLambdaHandler(event: APIGatewayEvent, context: Context): Promise<ProxyResult>;
addCors(input: ProxyResult, srcEvent: APIGatewayEvent): ProxyResult;
findHandler(event: APIGatewayEvent, context: Context, add404OnMissing?: boolean): Promise<any>;
private cleanPath;
private extendApiGatewayEvent;
private applyBodyObjectValidation;
private applyAuth;
}
export interface RouteAndParse {
mapping: RouteMapping;
route: Route;
parsed: any;
}