@bitblit/epsilon
Version:
Tiny adapter to simplify building API gateway Lambda APIS
27 lines (26 loc) • 1.07 kB
TypeScript
import { RouteMapping } from './route-mapping';
import { ModelValidator } from './model-validator';
import { AuthorizerFunction } from './authorizer-function';
import { WebTokenManipulator } from '../auth/web-token-manipulator';
import { ErrorProcessorFunction } from './error-processor-function';
import { ApolloServer, CreateHandlerOptions } from 'apollo-server-lambda';
export interface RouterConfig {
routes: RouteMapping[];
authorizers: Map<string, AuthorizerFunction>;
autoFixStillEncodedQueryParams: boolean;
disableCORS: boolean;
disableCompression: boolean;
staticContentPaths: string[];
defaultErrorMessage: string;
defaultTimeoutMS: number;
errorProcessor: ErrorProcessorFunction;
corsAllowedOrigins: string;
corsAllowedMethods: string;
corsAllowedHeaders: string;
webTokenManipulator: WebTokenManipulator;
modelValidator: ModelValidator;
prefixesToStripBeforeRouteMatch: string[];
apolloRegex?: RegExp;
apolloServer?: ApolloServer;
apolloCreateHandlerOptions?: CreateHandlerOptions;
}