From cc7b8dcede75b57f347d901777ba04206fcd6101 Mon Sep 17 00:00:00 2001 From: Ben Speakman Date: Wed, 19 Oct 2016 14:14:36 +0200 Subject: [PATCH] Add aws-serverless-express definitions (#12030) --- .../aws-serverless-express-tests.ts | 29 +++++++++++++++++++ .../aws-serverless-express.d.ts | 24 +++++++++++++++ 2 files changed, 53 insertions(+) create mode 100644 aws-serverless-express/aws-serverless-express-tests.ts create mode 100644 aws-serverless-express/aws-serverless-express.d.ts diff --git a/aws-serverless-express/aws-serverless-express-tests.ts b/aws-serverless-express/aws-serverless-express-tests.ts new file mode 100644 index 0000000000..6a0d7694d9 --- /dev/null +++ b/aws-serverless-express/aws-serverless-express-tests.ts @@ -0,0 +1,29 @@ +/// +/// + +import * as awsServerlessExpress from 'aws-serverless-express'; +import * as express from 'express'; + +const app = express(); +const server = awsServerlessExpress.createServer(app, () => {}); + +const mockEvent = { + key: 'value' +}; + +const mockContext = { + callbackWaitsForEmptyEventLoop: true, + functionName: 'testFunction', + functionVersion: '1', + invokedFunctionArn: 'arn', + memoryLimitInMB: 128, + awsRequestId: 'id', + logGroupName: 'group', + logStreamName: 'stream', + getRemainingTimeInMillis: () => 2000, + done: () => false, + fail: (error: any) => false, + succeed: (message: string) => false +}; + +awsServerlessExpress.proxy(server, mockEvent, mockContext); diff --git a/aws-serverless-express/aws-serverless-express.d.ts b/aws-serverless-express/aws-serverless-express.d.ts new file mode 100644 index 0000000000..50aa0e1a0b --- /dev/null +++ b/aws-serverless-express/aws-serverless-express.d.ts @@ -0,0 +1,24 @@ +// Type definitions for aws-serverless-express +// Project: https://github.com/awslabs/aws-serverless-express +// Definitions by: Ben Speakman +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +/// +/// + +declare module 'aws-serverless-express' { + + import * as http from 'http'; + import * as lambda from 'aws-lambda'; + + export function createServer( + requestListener: (request: http.IncomingMessage, response: http.ServerResponse) => http.Server, + serverListenCallback?: () => any + ): http.Server; + + export function proxy( + server: http.Server, + event: any, + context: lambda.Context + ): void; +}