UNPKG

1.08 kBTypeScriptView Raw
1import { Context, Callback } from "aws-lambda";
2import { HttpApiEvent } from "./payload";
3import { ApiResponse, ResponseParameters, RedirectParameters, ErrorParameters, CustomParameters } from "../shared";
4export declare function httpApi<T = any>(customHandler: (props: HttpApiSignature<T>) => any): (event: HttpApiEvent, context: Context, callback: Callback) => any;
5export interface HttpApiSignature<T = any> {
6 event: HttpApiEvent;
7 body: T;
8 path: {
9 [name: string]: string;
10 };
11 rawPath: string;
12 query: {
13 [name: string]: string;
14 };
15 rawQueryString: string;
16 headers: {
17 [name: string]: string;
18 };
19 testRequest: boolean;
20 auth: any;
21 success(params?: ResponseParameters): ApiResponse;
22 invalid(params?: ResponseParameters): ApiResponse;
23 notFound(params?: ResponseParameters): ApiResponse;
24 notAuthorized(params?: ResponseParameters): ApiResponse;
25 redirect(params: RedirectParameters): ApiResponse;
26 error(params?: ErrorParameters): ApiResponse;
27 custom(params: CustomParameters): ApiResponse;
28}