/** * @file * * Bootstraps the `window.__obsidianIntegrationTesting` namespace in the * Obsidian process. Extracted to its own module to avoid dependency cycles * between `eval-in-obsidian.ts` and the transport modules. */ import type { ObsidianTransport } from './transport.cjs'; /** * Ensures the `window.__obsidianIntegrationTesting` namespace is bootstrapped * in the Obsidian process with the current library version. * * Performs a lightweight version check via the transport. If the namespace * doesn't exist or has a different version, sends the full bootstrap expression * to register all helper functions. * * @param transport - The transport to use for evaluation. * @param cwd - The working directory (vault path). * @param timeoutInMilliseconds - Optional per-eval timeout. Forwarded to both * the version check and the bootstrap eval so a hung `obsidian eval` rejects * instead of blocking the caller indefinitely. */ export declare function ensureNamespaceBootstrapped(transport: ObsidianTransport, cwd: string, timeoutInMilliseconds?: number): Promise;