import type { IncomingMessage, ServerResponse } from "http"; import type { LambdaEndpoint } from "../../../lib/parseEvents/endpoints"; import { CommonEventGenerator } from "./common"; interface CommonApgEvent { body?: string; queryStringParameters: { [key: string]: string; }; isBase64Encoded: boolean; headers: { [key: string]: any; }; pathParameters?: { [key: string]: any; }; } export type ApgHttpApiEvent = { version: string; routeKey: string; rawPath: string; rawQueryString: string; cookies?: string[]; requestContext: { accountId: string; apiId: string; domainName: string; domainPrefix: string; http: { method: string; path: string; protocol: string; sourceIp: string; userAgent: string; }; requestId: string; routeKey: string; stage: string; time: string; timeEpoch: number; }; } & CommonApgEvent; export type ApgHttpEvent = { version?: string; resource: string; path: string; httpMethod: string; multiValueHeaders: { [key: string]: any; }; multiValueQueryStringParameters: { [key: string]: any; }; requestContext: { accountId: string; apiId: string; domainName: string; domainPrefix: string; extendedRequestId: string; httpMethod: string; path: string; protocol: string; requestId: string; requestTime: string; requestTimeEpoch: number; resourcePath: string; stage: string; }; } & CommonApgEvent; export declare class ApgRequestHandler extends CommonEventGenerator { #private; res: ServerResponse; mockEvent: LambdaEndpoint; payload: ApgHttpApiEvent | ApgHttpEvent; constructor({ res, req, body, mockEvent, multiValueHeaders, isBase64Encoded, lambdaName, parsedURL, requestId, }: { res: ServerResponse; req: IncomingMessage; body: any; mockEvent: LambdaEndpoint; multiValueHeaders: any; isBase64Encoded: boolean; lambdaName: string; parsedURL: URL; requestId: string; }); static skipHeaders: string[]; static createApgV2Event: ({ req, mockEvent, parsedURL, requestId, isBase64Encoded, body, }: { req: IncomingMessage; mockEvent: LambdaEndpoint; isBase64Encoded: boolean; parsedURL: URL; body: any; requestId: string; }) => ApgHttpApiEvent; static createApgV1Event: ({ req, mockEvent, parsedURL, lambdaName, isBase64Encoded, requestId, body, }: { req: IncomingMessage; mockEvent: LambdaEndpoint; parsedURL: URL; lambdaName: string; isBase64Encoded: boolean; multiValueHeaders: { [key: string]: string[]; }; requestId: string; body: any; }) => ApgHttpEvent; returnError: (err?: any) => true | ServerResponse; sendV1Response: (output?: any) => void; sendV2Response: (output?: any) => ServerResponse | undefined; sendResponse: (output?: any) => void | ServerResponse; } export {};