import type { ConnectNavigation } from "./authorization.js"; /** Structural browser surface so importing Connect never reads DOM globals. */ export type ConnectBrowserWindow = { open(url: string, target: string, features: string): { opener: unknown; readonly closed?: boolean; location: { replace(url: string): void; }; close(): void; } | null; location: { assign(url: string): void; }; }; /** Reserve the isolated window during the human's click, before asynchronous * discovery. The caller must close it if setup fails before navigation. */ export declare function reserveBrowserConnectNavigation(browser: ConnectBrowserWindow): { navigation: ConnectNavigation; close(): void; }; /** Pass window from the host's browser entry point. Opens a fresh blank window * synchronously and severs its opener BEFORE any provider content can load. * Never uses a reusable named target or relies on provider window messages. * The caller retains only best-effort close capability for polling cleanup; * the human closes provider windows that remain on a foreign origin. */ export declare function createBrowserConnectNavigation(browser: ConnectBrowserWindow): ConnectNavigation;