///
///
import * as express from 'express';
import { ApiConfig } from './config/api';
import { EventEmitter } from 'events';
export declare class Gateway extends EventEmitter {
private config;
private logger;
private requestLogger;
private configService;
private serviceDiscovery;
private apiPipeline;
private app;
private adminApp;
private apiServer;
private adminServer;
private serverRunning;
constructor();
readonly server: express.Application;
readonly apis: Array;
readonly running: boolean;
getApiConfig(apiId: string): ApiConfig;
start(): Promise;
startAdmin(): Promise;
stop(): Promise;
stopAdmin(): Promise;
restart(): Promise;
private createHttpsServer(app);
private loadApis();
private reloadApis();
private updateConfig(packageId, needsReload);
private initialize();
private configureServer();
private configureHealthcheck();
private configureAdminServer();
private configureAdminCors();
private configureApiDocs();
}