import type { CwdGitRunnerFactory, GitRepository } from "./types.js"; export declare const DEFAULT_EXCLUDES: readonly [".git", ".hg", ".svn", "node_modules", ".history", "dist", "coverage", ".omp", ".next", "build", "out", "target"]; /** Canonical (long-form, symlink-resolved) absolute path. Sync because the * callers that key the store by it are sync, and `fs/promises` has no * `realpath.native` — the native form is what the 8.3 short-path fixes on * Windows depend on. */ declare function canonicalCwd(cwd: string): string; export declare function storeRootDirectory(): string; /** The private git dir for a workspace: `/repos/.git`. * Both inputs are canonicalized here (realpath) so the result is one * deterministic long-form path regardless of how the caller spelled either * argument. Without this, a store root or cwd spelled in 8.3 short form * (e.g. `C:\Users\BAYLAR~1.SAD\...`) would yield a gitDir string that * differs from the realpath-canonicalized form recorded on checkpoints, * so `isPrivateRepository` string comparisons would silently fail. */ export declare function privateRepositoryPath(storeRoot: string, cwd: string): string; export { canonicalCwd }; /** Ensures a private git repository exists for `cwd` under `storeRoot`. * Idempotent: an existing repo (HEAD present) skips init/config but still * gets the exclude entries. Returns null when init/config fails. */ export declare function ensurePrivateGitRepository(gitRunnerFactory: CwdGitRunnerFactory, cwd: string, storeRoot: string): Promise;