import { PinStorage, Pin, PinStatus, FrameworkAdapter, OutputFormat, AgentOutput, QueuedAnnotation, PluginHooks, Plugin, PinpointAPI } from './types/index.js'; export { ComponentInfo, ContextMenuAction, CopyContext, DrawStroke, DrawToolType, ElementContext, ElementInfo, FrameworkInfo, PinEvent, PinpointConfig, SourceLocation, TextNote, ToolbarMode } from './types/index.js'; export { M as MemoryStore, b as buildElementContext, a as buildSelector, d as detectFramework, e as extractElementInfo, f as freeze, g as getComponentInfo, c as getSourceLocation, i as isFreezeActive, o as openFile, r as registerAdapter, u as unfreeze } from './index-C0P3S_D7.js'; import { z } from 'zod'; declare class RestClient implements PinStorage { private endpoint; constructor(endpoint: string); load(pageUrl: string): Promise; save(pin: Pin): Promise; update(id: string, patch: Partial): Promise; delete(id: string): Promise; list(filter?: { pageUrl?: string; status?: PinStatus; }): Promise; clear(pageUrl?: string): Promise; } declare const ElementInfoSchema: z.ZodObject<{ tagName: z.ZodString; id: z.ZodOptional; classNames: z.ZodArray; selector: z.ZodString; textContent: z.ZodOptional; boundingRect: z.ZodObject<{ x: z.ZodNumber; y: z.ZodNumber; width: z.ZodNumber; height: z.ZodNumber; }, z.core.$strip>; computedStyles: z.ZodOptional>; ariaAttributes: z.ZodOptional>; dataAttributes: z.ZodOptional>; domPath: z.ZodOptional; }, z.core.$strip>; declare const FrameworkInfoSchema: z.ZodObject<{ framework: z.ZodString; componentPath: z.ZodString; sourceFile: z.ZodOptional; frameworkVersion: z.ZodOptional; }, z.core.$strip>; declare const PinSchema: z.ZodObject<{ id: z.ZodString; pageUrl: z.ZodString; createdAt: z.ZodString; updatedAt: z.ZodString; author: z.ZodOptional; comment: z.ZodString; element: z.ZodObject<{ tagName: z.ZodString; id: z.ZodOptional; classNames: z.ZodArray; selector: z.ZodString; textContent: z.ZodOptional; boundingRect: z.ZodObject<{ x: z.ZodNumber; y: z.ZodNumber; width: z.ZodNumber; height: z.ZodNumber; }, z.core.$strip>; computedStyles: z.ZodOptional>; ariaAttributes: z.ZodOptional>; dataAttributes: z.ZodOptional>; domPath: z.ZodOptional; }, z.core.$strip>; framework: z.ZodOptional; frameworkVersion: z.ZodOptional; }, z.core.$strip>>; status: z.ZodObject<{ state: z.ZodEnum<{ open: "open"; acknowledged: "acknowledged"; resolved: "resolved"; dismissed: "dismissed"; }>; changedAt: z.ZodString; changedBy: z.ZodOptional; }, z.core.$strip>; }, z.core.$strip>; interface ElementPickerOptions { onHover?: (element: Element | null, rect: DOMRect | null) => void; onStableHover?: (element: Element) => void; onSelect?: (element: Element) => void; ignoreSelector?: string; blockInteractions?: boolean; } declare class ElementPicker { private active; private paused; private hoveredElement; private rafId; private stableTimeout; private lastTarget; private options; private handleMouseMove; private handleClick; private handleKeyDown; constructor(options?: ElementPickerOptions); private isOwnUI; private shouldIgnore; private pierceElementFromPoint; private processHover; private clearStableTimeout; activate(): void; deactivate(): void; setBlockInteractions(value: boolean): void; pause(): void; resume(): void; isPaused(): boolean; isActive(): boolean; getHoveredElement(): Element | null; dispose(): void; } interface DragSelectOptions { coverageThreshold?: number; onDragStart?: (rect: DOMRect) => void; onDragMove?: (rect: DOMRect) => void; onDragEnd?: (elements: Element[]) => void; ignoreSelector?: string; } declare class DragSelect { private active; private dragging; private startX; private startY; private options; private handleMouseDown; private handleMouseMove; private handleMouseUp; constructor(options?: DragSelectOptions); private buildRect; private getElementsInRect; activate(): void; deactivate(): void; isDragging(): boolean; dispose(): void; } interface TextSelection { text: string; container: Element; startOffset: number; endOffset: number; context: string; rect: DOMRect; } interface TextSelectOptions { onSelect?: (selection: TextSelection | null) => void; minLength?: number; } declare class TextSelect { private active; private options; private handleSelectionChange; private debounceTimer; constructor(options?: TextSelectOptions); private getTextSelection; activate(): void; deactivate(): void; getCurrentSelection(): TextSelection | null; dispose(): void; } declare const reactAdapter: FrameworkAdapter; declare const vueAdapter: FrameworkAdapter; declare const genericAdapter: FrameworkAdapter; declare function formatPins(pins: Pin[], format?: OutputFormat): string; declare function formatRichPinContext(pin: Pin): string; declare function formatPinsForAgent(pins: Pin[], format?: OutputFormat): AgentOutput; declare function formatQueueForAgent(queue: QueuedAnnotation[], format?: OutputFormat): AgentOutput; declare function registerPlugin(plugin: Plugin, api?: PinpointAPI): void; declare function unregisterPlugin(name: string): void; declare function getPlugins(): string[]; declare function dispatchHook(name: keyof PluginHooks, ...args: unknown[]): void; declare const agentNativePlugin: Plugin; declare function escapeHtml(str: string): string; declare function sanitizeString(str: string, maxLength?: number): string; /** * Validate that a message origin is allowed. * Used for postMessage security when communicating with frames. */ declare function isAllowedOrigin(origin: string, allowedOrigins?: string[]): boolean; export { AgentOutput, DragSelect, ElementInfoSchema, ElementPicker, FrameworkAdapter, FrameworkInfoSchema, OutputFormat, Pin, PinSchema, PinStatus, PinStorage, PinpointAPI, Plugin, PluginHooks, QueuedAnnotation, RestClient, TextSelect, agentNativePlugin, dispatchHook, escapeHtml, formatPins, formatPinsForAgent, formatQueueForAgent, formatRichPinContext, genericAdapter, getPlugins, isAllowedOrigin, reactAdapter, registerPlugin, sanitizeString, unregisterPlugin, vueAdapter };