///
import { IncomingMessage, ServerResponse } from "http";
import { RequestResponseRecord } from "./request-response-record.interface";
export interface SwsOptions {
redisHost: string;
redisPort: number;
mongoUrl: string;
mongoUsername: string;
mongoPassword: string;
swaggerStatsMongoDb: string;
hostname: string;
name: string;
version: string;
ip: string;
swaggerSpec: Record;
uriPath: string;
timelineBucketDuration: number;
durationBuckets: number[];
requestSizeBuckets: number[];
responseSizeBuckets: number[];
apdexThreshold: number;
onResponseFinish: (req: IncomingMessage, res: ServerResponse, rrr: RequestResponseRecord) => void;
authentication: boolean;
onAuthenticate: (req: IncomingMessage, username: string, password: string) => boolean;
sessionMaxAge: number;
elasticsearch: string;
elasticsearchIndexPrefix: string;
elasticsearchUsername: string;
elasticsearchPassword: string;
swaggerOnly: boolean;
metricsPrefix: string;
enableEgress: boolean;
}