/** * Resolve the project directory the session was created with from the SDK's * session object. Returns the SDK-reported directory, or `null` when the * lookup is unavailable/fails — callers should fall back to the runtime's * directory in that case. * * This function is best-effort: any error (missing `client.session.get`, * network failure, malformed response) is logged and recorded as a * negative cache entry so we don't retry on every tool call within the * same session. */ export declare function getSessionDirectory(client: unknown, sessionId: string, fallbackDirectory: string): Promise; /** * Synchronous cache probe. Returns the resolved directory for a session if we * already looked it up; otherwise `undefined` so the caller falls through to * its synchronous fallback (typically `runtime.directory`). * * This is the hot path: `bridgeFor()` runs on every tool call and must not * block on an SDK round-trip. The async {@link warmSessionDirectory} should * be called eagerly (without await) at the start of each tool call to keep * the cache filled, so by the time a second call from the same session * arrives, this probe returns the correct directory. */ export declare function getSessionDirectoryCached(sessionId: string | undefined): string | null | undefined; /** * Fire-and-forget cache warmup. Safe to call from synchronous code; failures * are logged but not propagated. Subsequent calls to {@link getSessionDirectoryCached} * will return the resolved directory once the lookup completes. */ export declare function warmSessionDirectory(client: unknown, sessionId: string | undefined, fallbackDirectory: string): void; export declare function verifySessionDirectory(client: unknown, sessionId: string): Promise; /** Test-only: clear the cache between unit tests. */ export declare function _resetSessionDirectoryCacheForTest(): void; //# sourceMappingURL=session-directory.d.ts.map