/** * SweetlinkBridge - Vanilla JS WebSocket bridge for browser-side Sweetlink integration * * This module provides framework-agnostic browser integration for Sweetlink, * eliminating the React dependency to avoid conflicts with host applications. * * @version 1.0.0 */ import type { ServerInfo } from '../types.js'; export interface SweetlinkBridgeConfig { basePort?: number; appPort?: number; wsPort?: number; wsUrl?: string; wsPath?: string; maxPortRetries?: number; hmrScreenshots?: boolean; hmrDebounceMs?: number; hmrCaptureDelay?: number; /** Enable verbose console.log output for debugging connection and command flow */ debug?: boolean; } export declare class SweetlinkBridge { private ws; private connected; private serverInfo; private verified; private consoleLogs; private reconnectTimeout; private savedScreenshotTimeout; private savedReviewTimeout; private active; private hmrState; private readonly basePort; private readonly wsUrlCandidates; private readonly maxPortRetries; private readonly hmrScreenshots; private readonly hmrConfig; private readonly currentAppPort; private readonly debug; private cleanupFunctions; private capture; constructor(config?: SweetlinkBridgeConfig); /** Log informational message only when debug is enabled */ private log; /** * Initialize the bridge - call this to start the connection */ init(): void; /** * Clean up and disconnect */ destroy(): void; /** * Check if connected to server */ isConnected(): boolean; /** * Get server info */ getServerInfo(): ServerInfo | null; private setupErrorHandlers; private buildWsUrlCandidates; private getWsUrlForTarget; private getPortForTarget; private scheduleConnect; private connectNextTarget; private connectWebSocket; private handleCommand; } /** * Initialize Sweetlink Bridge - call from host application */ export declare function initSweetlinkBridge(config?: SweetlinkBridgeConfig): SweetlinkBridge; /** * Get the global bridge instance */ export declare function getSweetlinkBridge(): SweetlinkBridge | null; /** * Destroy the global bridge instance */ export declare function destroySweetlinkBridge(): void; export default SweetlinkBridge; //# sourceMappingURL=SweetlinkBridge.d.ts.map