ai-debug-local-mcp
Version:
🎯 ENHANCED AI GUIDANCE v4.1.2: Dramatically improved tool descriptions help AI users choose the right tools instead of 'close enough' options. Ultra-fast keyboard automation (10x speed), universal recording, multi-ecosystem debugging support, and compreh
80 lines • 2.43 kB
TypeScript
import { Page } from 'playwright';
export interface ElementInspectionResult {
exists: boolean;
visible?: boolean;
properties?: Record<string, any>;
computedStyles?: Record<string, string>;
}
export interface MultipleElementInspectionResult {
selector: string;
exists: boolean;
visible?: boolean;
properties?: Record<string, any>;
computedStyles?: Record<string, string>;
}
export interface ElementBounds {
top: number;
left: number;
width: number;
height: number;
right: number;
bottom: number;
}
/**
* Coordinates DOM element inspection functionality
* Extracted from LocalDebugEngine for better separation of concerns and testability
*
* Handles:
* - Single and multiple element inspection
* - Element existence and visibility checks
* - Element property and style extraction
* - Element bounds and positioning
*/
export declare class ElementInspectionCoordinator {
private page;
/**
* Attach to a page for element inspection
*/
attachToPage(page: Page): Promise<void>;
/**
* Inspect a specific element and capture its state
*/
inspectElement(selector: string): Promise<ElementInspectionResult>;
/**
* Inspect multiple elements in a single evaluation for efficiency
*/
inspectMultipleElements(selectors: string[]): Promise<MultipleElementInspectionResult[]>;
/**
* Find all elements matching a selector
*/
findAllElements(selector: string): Promise<Array<{
tagName: string;
id: string;
className: string;
}>>;
/**
* Check if an element exists
*/
elementExists(selector: string): Promise<boolean>;
/**
* Check if an element is visible
*/
isElementVisible(selector: string): Promise<boolean>;
/**
* Get the count of elements matching a selector
*/
getElementCount(selector: string): Promise<number>;
/**
* Get all attributes of an element
*/
getElementAttributes(selector: string): Promise<Record<string, string> | null>;
/**
* Get computed styles for an element
*/
getComputedStyles(selector: string, properties?: string[]): Promise<Record<string, string> | null>;
/**
* Get element bounds (getBoundingClientRect)
*/
getElementBounds(selector: string): Promise<ElementBounds | null>;
}
//# sourceMappingURL=element-inspection-coordinator.d.ts.map