import { FrontMcpServer, type HttpMethod, type HttpOptions, type ServerRequestHandler } from '../common'; import { type HealthOptionsInterface } from '../common/types/options/health'; import { type MetricsOptionsInterface } from '../common/types/options/metrics'; import { type HealthService } from '../health'; import { type MetricsService } from '../metrics'; import { type HostServerAdapter } from './adapters/base.host.adapter'; export declare class FrontMcpServerInstance extends FrontMcpServer { config: HttpOptions; host: HostServerAdapter; private healthRouteRegistered; private _healthService?; private _healthConfig?; private metricsRouteRegistered; private _metricsService?; private _metricsConfig?; constructor(httpConfig: HttpOptions); private setupDefaults; registerMiddleware(entryPath: string, handler: ServerRequestHandler): void | Promise; registerRoute(method: HttpMethod, path: string, handler: ServerRequestHandler): void | Promise; enhancedHandler(handler: ServerRequestHandler): ServerRequestHandler; /** * Set the health service and config for route registration. * Must be called before prepare() to enable enriched health endpoints. */ setHealthService(healthService: HealthService, healthConfig: HealthOptionsInterface): void; /** * Set health config without a service (e.g., when health is explicitly disabled). * Allows prepare() to distinguish "not configured" from "disabled". */ setHealthConfig(healthConfig: HealthOptionsInterface): void; /** * Set the metrics service and config for route registration (issue #397). * Must be called before prepare() to enable the `/metrics` endpoint. */ setMetricsService(metricsService: MetricsService, metricsConfig: MetricsOptionsInterface): void; /** * Set metrics config without a service (e.g., when metrics is explicitly disabled * or running on a transport without a listener). Allows prepare() to skip route * registration without ambiguity. */ setMetricsConfig(metricsConfig: MetricsOptionsInterface): void; prepare(): void; getHandler(): unknown; start(): Promise; } //# sourceMappingURL=server.instance.d.ts.map