/// import WebSocket from 'ws'; import type http from 'http'; import type http2 from 'http2'; interface Dependency { dependents: Set; dependencies: Set; isHmrEnabled: boolean; isHmrAccepted: boolean; needsReplacement: boolean; } export declare class EsmHmrEngine { clients: Set; dependencyTree: Map; constructor(options?: { server?: http.Server | http2.Http2Server; }); registerListener(client: WebSocket): void; createEntry(sourceUrl: string): Dependency; getEntry(sourceUrl: string, createIfNotFound?: boolean): Dependency | null; setEntry(sourceUrl: string, imports: string[], isHmrEnabled?: boolean): void; removeRelationship(sourceUrl: string, importUrl: string): void; addRelationship(sourceUrl: string, importUrl: string): void; markEntryForReplacement(entry: Dependency, state: boolean): void; broadcastMessage(data: object): void; connectClient(client: WebSocket): void; disconnectClient(client: WebSocket): void; disconnectAllClients(): void; } export {};