rcc-server
Version:
RCC Server Module - Client input proxy response server with virtual model routing
81 lines • 2.13 kB
TypeScript
import { Application as ExpressApplication, Request, Response } from 'express';
import { BaseModule } from 'rcc-basemodule';
import { IHttpServer } from '../interfaces/IServerModule';
import { ServerConfig, ClientRequest, ClientResponse } from '../types/ServerTypes';
export declare class HttpServerComponent extends BaseModule implements IHttpServer {
private app;
private server;
private serverConfig;
private isRunning;
constructor();
/**
* Initialize the HTTP server with configuration
*/
configure(config: ServerConfig): void;
initialize(): Promise<void>;
/**
* Start the HTTP server
*/
listen(port: number, host?: string): Promise<void>;
/**
* Stop the HTTP server
*/
close(): Promise<void>;
/**
* Add event listener
*/
on(event: string, callback: (...args: any[]) => void): void;
/**
* Remove event listener
*/
off(event: string, callback: (...args: any[]) => void): void;
/**
* Get active connections count
*/
getConnections(callback: (err: Error | null, count: number) => void): void;
/**
* Get the Express application instance
*/
getApp(): ExpressApplication;
/**
* Check if server is running
*/
isServerRunning(): boolean;
/**
* Request logging middleware
*/
private requestLogger;
/**
* Error handling middleware
*/
private errorHandler;
/**
* Health check endpoint
*/
private healthCheck;
/**
* Get server metrics
*/
private getMetrics;
/**
* Convert Express request to ClientRequest
*/
expressToClientRequest(req: Request): ClientRequest;
/**
* Convert ClientResponse to Express response
*/
clientResponseToExpress(response: ClientResponse, res: Response): void;
/**
* Generate unique request ID
*/
private generateRequestId;
/**
* Sanitize headers for logging
*/
private sanitizeHeaders;
/**
* Cleanup resources
*/
destroy(): Promise<void>;
}
//# sourceMappingURL=HttpServer.d.ts.map