Skip to content

Commit

Permalink
Add definitions for aws-serverless-express 3.3.x
Browse files Browse the repository at this point in the history
  • Loading branch information
psxpaul committed Sep 12, 2018
1 parent 4525e8d commit 36891bf
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 7 deletions.
Expand Up @@ -29,4 +29,4 @@ const mockContext = {
awsServerlessExpress.proxy(server, mockEvent, mockContext);
awsServerlessExpress.proxy(server, mockEvent, mockContext, 'CALLBACK', () => {});
awsServerlessExpress.proxy(server, mockEvent, mockContext, 'CONTEXT_SUCCEED');
awsServerlessExpress.proxy(server, mockEvent, mockContext, 'PROMISE').promise;
awsServerlessExpress.proxy(server, mockEvent, mockContext, 'PROMISE').promise.then((response: awsServerlessExpress.Response) => {}).catch(err => {});
29 changes: 23 additions & 6 deletions types/aws-serverless-express/index.d.ts
Expand Up @@ -11,6 +11,16 @@
import * as http from 'http';
import * as lambda from 'aws-lambda';

export interface Response {
statusCode: number;
body: string;
headers: {};
}

export interface ProxyResult {
promise: Promise<Response>;
}

export function createServer(
requestListener: (request: http.IncomingMessage, response: http.ServerResponse) => void,
serverListenCallback?: () => any,
Expand All @@ -23,17 +33,24 @@ export function proxy(
context: lambda.Context,
): http.Server;

export function proxy<T>(
export function proxy(
server: http.Server,
event: any,
context: lambda.Context,
resolutionMode: 'CALLBACK',
callback?: () => T
): {promise: Promise<T>};
resolutionMode: 'CONTEXT_SUCCEED',
): void;

export function proxy(
server: http.Server,
event: any,
context: lambda.Context,
resolutionMode: 'PROMISE'
): ProxyResult;

export function proxy(
server: http.Server,
event: any,
context: lambda.Context,
resolutionMode?: 'CONTEXT_SUCCEED' | 'PROMISE'
): {promise: Promise<void>};
resolutionMode: 'CALLBACK',
callback?: (error: any, response: Response) => void
): void;

0 comments on commit 36891bf

Please sign in to comment.