/** * Path encoding/decoding for Claude Code session storage. * * Claude Code stores sessions in ~/.claude/projects// * where the encoded path replaces / with - (e.g., /Users/alice/Workspace → -Users-alice-Workspace) */ /** Encode a filesystem path to a Claude Code project directory name. */ export declare function encodePath(fsPath: string): string; /** Decode a Claude Code project directory name back to a filesystem path. */ export declare function decodePath(encoded: string): string; /** Get the Claude Code projects directory. */ export declare function getClaudeProjectsDir(): string; /** Get the Claude base directory. */ export declare function getClaudeBaseDir(): string; /** Get the Codex sessions directory (date-foldered rollout JSONL files). */ export declare function getCodexSessionsDir(): string; /** Get the sessions base directory, with auto-migration from legacy path. */ export declare function getSessionsDir(): string; /** Get the sessions database path. */ export declare function getSessionsDbPath(): string; /** * Find all Claude project directories that match a given filesystem path. * A project dir matches if it IS the encoded path or is a CHILD of it. */ export declare function findMatchingProjectDirs(projectDirs: string[], fsPath: string): string[]; /** * Resolve the actual filesystem path for an encoded project directory. * * Since the encoding is lossy (both / and - become -), we can't reliably * decode back. Instead we look at: * 1. sessions-index.json projectPath field * 2. cwd field from the first .jsonl line * 3. Fall back to naive decode */ export declare function resolveProjectPath(projectsDir: string, encodedDir: string): string; /** * Compute the new encoded directory name after relocating a path. */ export declare function computeRelocatedDir(currentDir: string, oldPath: string, newPath: string): string; //# sourceMappingURL=paths.d.ts.map