/// import type { Logger } from 'homebridge'; import type { RequestListener, Server } from 'http'; import type { Config } from '../../boundaries'; import type { Metric } from '../../metrics'; export interface HttpResponse { statusCode?: number; body?: string; headers?: Record; } export interface HttpServerController { shutdown(): void; } export type HttpAdapter = (config: HttpServer) => Promise; export type HttpConfig = Pick; export interface HttpServer { log: Logger | null; config: HttpConfig; serverFactory?: (requestListener: RequestListener) => Server; onRequest(): HttpResponse | null; onMetrics(): HttpResponse; onNotFound(): HttpResponse; onError(error: Error): HttpResponse; onMetricsDiscovery(metrics: Metric[]): void; } //# sourceMappingURL=api.d.ts.map