instantcode
Version:
AI-powered web inspection tool - Pick elements and get instant AI assistance
23 lines (22 loc) • 914 B
TypeScript
/**
* Element Selection Manager for element selection, highlighting, and badge management
*/
import type { ElementData } from '../shared/types';
export interface SelectedElementInfo {
color: string;
originalOutline: string;
originalOutlineOffset: string;
index: number;
}
export interface ElementSelectionManager {
selectElement(element: Element, componentFinder?: (el: Element) => any): void;
deselectElement(element: Element): void;
clearAllSelections(): void;
hasElement(element: Element): boolean;
getSelectedElements(): Map<Element, SelectedElementInfo>;
getSelectedCount(): number;
findSelectedParent(element: Element): Element | null;
findSelectedChildren(element: Element): Element[];
buildHierarchicalStructure(componentFinder?: (el: Element) => any): ElementData[];
}
export declare function createElementSelectionManager(): ElementSelectionManager;