/** * Single shared HTTP + WebSocket listener for the Chrome extension bridge. * Gateway and BrowserManager both need the server; only one process may bind a port. */ import type { ExtensionBrowserProvider, ExtensionProviderConfig } from './extension.js'; export type ExtensionBrowserServerSnapshot = { active: boolean; refCount: number; key: string | null; }; export declare function getExtensionBrowserServerSnapshot(): ExtensionBrowserServerSnapshot; export declare function getExtensionBrowserProvider(): ExtensionBrowserProvider | null; /** Shut down the shared listener regardless of remaining ref counts (settings UI stop). */ export declare function forceShutdownExtensionBrowserServer(): Promise; /** * Increment ref count and return the shared provider plus a one-shot release. * First acquire starts the listener; further acquires reuse it (same host:port). */ export declare function acquireExtensionBrowserServer(config?: ExtensionProviderConfig): Promise<{ provider: ExtensionBrowserProvider; release: () => Promise; }>;