/// <reference types="node" />
import * as http from "http";
import { WebSocketServerClient } from "./WebSocketServerClient";
import { Span } from "@opentelemetry/api";
import { Histogram, Counter, Observable } from "@opentelemetry/api-metrics";
export declare class WebSocketServer {
    private static _socketserver;
    static _clients: WebSocketServerClient[];
    static p_all: Observable;
    static websocket_queue_count: Observable;
    static websocket_queue_message_count: Counter;
    static websocket_rate_limit: Counter;
    static websocket_errors: Counter;
    static websocket_messages: Histogram;
    static websocket_connections_count: Observable;
    static message_queue_count: Observable;
    static mongodb_watch_count: Observable;
    static BaseRateLimiter: any;
    static ErrorRateLimiter: any;
    static total_connections_count: any;
    static configure(server: http.Server, parent: Span): void;
    static DumpClients(parent: Span): Promise<void>;
    private static lastUserUpdate;
    private static pingClients;
}
