@ordojs/dev-tools
Version:
Advanced developer tools for OrdoJS with component inspector, AST explorer, and performance profiling
97 lines (93 loc) • 2.41 kB
text/typescript
import { EventEmitter } from 'events';
import { C as ComponentInfo } from '../index-D9DTurRB.mjs';
/**
* @fileoverview OrdoJS Dev Tools - Component Inspector
*
* Component inspector for debugging and analyzing component behavior.
*/
/**
* Component inspector for debugging and analyzing components
*/
declare class ComponentInspector extends EventEmitter {
private components;
private isRunning;
private port;
/**
* Create a new ComponentInspector instance
*
* @param port - WebSocket port for inspector
*/
constructor(port?: number);
/**
* Start the component inspector
*/
start(): Promise<void>;
/**
* Stop the component inspector
*/
stop(): Promise<void>;
/**
* Register a component for inspection
*
* @param componentInfo - Component information
*/
registerComponent(componentInfo: ComponentInfo): void;
/**
* Update component information
*
* @param componentName - Component name
* @param updates - Component updates
*/
updateComponent(componentName: string, updates: Partial<ComponentInfo>): void;
/**
* Get component information
*
* @param componentName - Component name
* @returns Component information or undefined
*/
getComponent(componentName: string): ComponentInfo | undefined;
/**
* Get all components
*
* @returns Array of all component information
*/
getAllComponents(): ComponentInfo[];
/**
* Get component tree
*
* @returns Component tree structure
*/
getComponentTree(): ComponentInfo[];
/**
* Clear all components
*/
clearComponents(): void;
/**
* Get inspector statistics
*
* @returns Inspector statistics
*/
getStats(): {
totalComponents: number;
totalRenderCount: number;
averageRenderTime: number;
peakMemoryUsage: number;
};
/**
* Start WebSocket server for inspector communication
*/
private startWebSocketServer;
/**
* Stop WebSocket server
*/
private stopWebSocketServer;
/**
* Check if component has a parent
*
* @param component - Component to check
* @param componentMap - Map of all components
* @returns True if component has a parent
*/
private hasParent;
}
export { ComponentInspector };