import type { BridgeTarget, IBridge } from "./bridge.js"; import { ProjectContext } from "./project.js"; export interface ProjectSwitchResult { /** Absolute .uproject now loaded. */ projectPath: string; /** What was loaded before, null on the first load. */ previousProjectPath: string | null; /** Where the bridge now points. Always the same project as projectPath. */ target: BridgeTarget; connected: boolean; /** Why the editor could not be reached, when it could not. */ connectError?: string; } export declare function switchProject(project: ProjectContext, bridge: IBridge, inputPath: string, opts?: { connectTimeoutMs?: number; }): Promise; /** * True when the bridge is connected to an editor other than the loaded * project's. The switch path makes this unreachable; get_status reports it so * that if some future path ever breaks the invariant, it is visible rather * than silent (#818). */ export declare function isTargetDiverged(project: ProjectContext, target: BridgeTarget): boolean;