import { type WebSocketAudience } from "./ws-audience"; import { type WebSocketAudienceResolver } from "./ws-audience-resolver"; import { type WebSocketClusterBus } from "./ws-cluster-bus"; import { type WebSocketLocalConnectionStore } from "./ws-local-connection-store"; import { type WebSocketTelemetryController } from "./ws-telemetry"; export declare class WebSocketDeliveryEngine { private readonly options; private readonly pendingFanOutJobs; private fanOutFlushScheduled; private readonly unsubscribe; private readonly telemetry; private readonly unregisterMetricSource; constructor(options: { nodeId: string; localConnections: WebSocketLocalConnectionStore; audienceResolver: WebSocketAudienceResolver; clusterBus: WebSocketClusterBus; telemetryController?: WebSocketTelemetryController; }); publishToAudience(audience: WebSocketAudience, event: string, data: unknown): void; shutdown(): Promise; getTelemetrySnapshot(): { pendingFanOutJobs: number; pendingFanOutTargets: number; }; private handleClusterEnvelope; private enqueueFanOut; private scheduleFanOutFlush; private flushFanOutJobs; private safePublish; } //# sourceMappingURL=ws-delivery.d.ts.map