1 | import { Context, Callback } from "aws-lambda";
|
2 | import { HttpApiEvent } from "./payload";
|
3 | import { ApiResponse, ResponseParameters, RedirectParameters, ErrorParameters, CustomParameters } from "../shared";
|
4 | export declare function httpApi<T = any>(customHandler: (props: HttpApiSignature<T>) => any): (event: HttpApiEvent, context: Context, callback: Callback) => any;
|
5 | export 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 | }
|