UNPKG

@ordojs/dev-tools

Version:

Advanced developer tools for OrdoJS with component inspector, AST explorer, and performance profiling

99 lines (95 loc) 2.29 kB
import { EventEmitter } from 'events'; import { H as HMRUpdate } from '../index-D9DTurRB.js'; /** * @fileoverview OrdoJS Dev Tools - Enhanced HMR * * Enhanced hot module replacement with state preservation and improved debugging. */ /** * Enhanced HMR for improved hot module replacement */ declare class EnhancedHMR extends EventEmitter { private updates; private isRunning; private port; private statePreservation; /** * Create a new EnhancedHMR instance * * @param port - WebSocket port for enhanced HMR * @param statePreservation - Enable state preservation */ constructor(port?: number, statePreservation?: boolean); /** * Start the enhanced HMR */ start(): Promise<void>; /** * Stop the enhanced HMR */ stop(): Promise<void>; /** * Send an HMR update * * @param update - HMR update information */ sendUpdate(update: HMRUpdate): void; /** * Get update by ID * * @param updateId - Update identifier * @returns HMR update or undefined */ getUpdate(updateId: string): HMRUpdate | undefined; /** * Get all updates * * @returns Array of all updates */ getAllUpdates(): HMRUpdate[]; /** * Clear all updates */ clearUpdates(): void; /** * Get HMR statistics * * @returns HMR statistics */ getHMRStats(): { totalUpdates: number; updatesByType: Record<string, number>; updatesByFile: Record<string, number>; averageUpdateTime: number; }; /** * Enable state preservation */ enableStatePreservation(): void; /** * Disable state preservation */ disableStatePreservation(): void; /** * Check if state preservation is enabled * * @returns True if state preservation is enabled */ isStatePreservationEnabled(): boolean; /** * Generate update ID * * @param update - HMR update * @returns Update ID */ private generateUpdateId; /** * Start WebSocket server for enhanced HMR communication */ private startWebSocketServer; /** * Stop WebSocket server */ private stopWebSocketServer; } export { EnhancedHMR };