import type { ResolvedBugSmashConfig } from '../types.js'; export declare class Widget { private host; private shadow; private config; private state; private pins; private nextPinNum; private triggerBtn; private triggerWrap; private viewportBorder; private highlight; private hint; private exitBtn; private pinsContainer; private pinTooltip; private modalBackdrop; private commentBox; private nameOverlay; private nameModal; private successToast; private triggerTooltip; private commentComposer; private pendingCapture; private pendingCapturePromise; private pendingCaptureX; private pendingCaptureY; private boundDocMouseMove; private boundDocClick; private boundKeyDown; private boundBlockEvent; private boundReflow; private boundTriggerMouseEnter; private boundTriggerMouseLeave; private rafId; private cursorStyleEl; private hoveredTarget; constructor(config: ResolvedBugSmashConfig); private disableComments; private showDisabledTooltip; private hideDisabledTooltip; private restorePersistedPins; private resolvePersistedPins; private onTriggerClick; private showInitModal; private completeInit; private hideNameModal; private enterCommentMode; private exitCommentMode; private handleDocMouseMove; private updateHighlight; private handleDocClick; private createPinEl; private repositionAllPins; private showCommentBox; private handleCommentBoxBackdropClick; private confirmDismissCommentBox; private dismissCommentBox; private removeLastUnsubmittedPin; private handleSubmit; private validateComment; private getSubmitButton; private buildSubmitPayload; private emptyElementMeta; private applySubmittedPin; private markPinSubmitted; private showPinTooltip; private showSubmitSuccess; private handleSubmitError; private setSubmitButtonLoading; private loadingSubmitIcon; private defaultSubmitIcon; private waitForCapture; private withTimeout; private handleKeyDown; private removeDocListeners; private destroyCommentComposer; /** * RAF loop that continuously repositions pins while comment mode is active. * This ensures pins track animated elements (carousels, marquees, sliders) * that move without triggering window scroll or resize events. */ private startReflowLoop; private stopReflowLoop; private handleBlockEvent; private addBlockListeners; private removeBlockListeners; /** * Inject a