export interface BugSmashConfig { projectId: string; /** * Target project version by number (1, 2, …), label ("V2"), or version name. * When omitted, feedback is added to the latest version. */ version?: number | string; /** Defaults to 'bottom-right' */ position?: 'bottom-right' | 'bottom-left'; /** @internal */ baseAppUrl?: string; } export type ResolvedBugSmashConfig = { projectId: string; position: 'bottom-right' | 'bottom-left'; projectVersionId?: string; /** False when commenting is paused on the target project version */ commentsEnabled: boolean; }; export interface ProjectVersion { id: string; versionName: string | null; versionNo: number; isLatest: boolean; pauseComment?: boolean | number | string | null; } export interface WidgetPin { id: string; num: number; cx: number; cy: number; text: string; /** CSS selector path to the anchor element */ domPath?: string; /** Fraction of element width from its left edge (0–1) */ relX?: number; /** Fraction of element height from its top edge (0–1) */ relY?: number; /** Recorded element width at placement time (px) */ elementWidth?: number; /** Recorded element height at placement time (px) */ elementHeight?: number; } export interface CaptureData { html: string; isCompressed: boolean; boundingBox: BoundingBox; viewport: Viewport; screenshotEnvironment: ScreenshotEnvironment; /** Normalized [0,1] relative to viewport */ cx: number; cy: number; } export interface BoundingBox { top: number; left: number; width: number; height: number; } export interface Viewport { width: number; height: number; devicePixelRatio: number; scrollX: number; scrollY: number; aspectRatio: number; } export interface ScreenshotEnvironment { colorScheme: 'dark' | 'light'; } /** Metadata about the DOM element the user clicked on */ export interface ElementMeta { domPath: string; tagName: string; elementWidth: number; elementHeight: number; textContent: string; } /** Minimal pin info persisted to localStorage */ export interface PersistedPin { num: number; /** Fraction of viewport width (0–1) — fallback when domPath is absent */ cx: number; /** Fraction of viewport height (0–1) — fallback when domPath is absent */ cy: number; /** Comment text shown in the hover tooltip */ text: string; /** CSS selector path to the anchor element */ domPath?: string; /** Fraction of element width from its left edge (0–1) */ relX?: number; /** Fraction of element height from its top edge (0–1) */ relY?: number; /** Recorded element width at placement time (px) */ elementWidth?: number; /** Recorded element height at placement time (px) */ elementHeight?: number; } //# sourceMappingURL=types.d.ts.map