///
import { APIGatewayEvent, Context, ProxyResult } from 'aws-lambda';
import { LoggerLevelName } from '@bitblit/ratchet/common';
import { IncomingMessage, ServerResponse } from 'http';
import { EpsilonGlobalHandler } from './epsilon-global-handler';
/**
* A simplistic server for testing your lambdas locally
*/
export declare class LocalServer {
private globalHandler;
private port;
private https;
private server;
constructor(globalHandler: EpsilonGlobalHandler, port?: number, https?: boolean);
runServer(): Promise;
requestHandler(request: IncomingMessage, response: ServerResponse): Promise;
static bodyAsBase64String(request: IncomingMessage): Promise;
static messageToApiGatewayEvent(request: IncomingMessage, context: Context): Promise;
static writeProxyResultToServerResponse(proxyResult: ProxyResult, response: ServerResponse, logLevel: LoggerLevelName): Promise;
/**
* Takes in a URL string and returns the parsed URL query params in the way the ALB / Lambda
* integration does.
* Note that it does not URL decode the values.
*/
static parseQueryParamsFromUrlString(urlString: string): {
[key: string]: string;
};
}