export interface CleanGitignoreBackend {
    /** Whether `rootDir` is inside a Git work tree. */
    isGitRepo(rootDir: string): boolean;
    /**
     * True when `absPath` is ignored by Git for this work tree.
     * False when not ignored or Git is unavailable.
     */
    isIgnored(rootDir: string, absPath: string): boolean;
    /**
     * Returns absolute paths under `packageDir` that Git treats as ignored
     * (untracked + ignored). Empty when Git is unavailable.
     */
    listIgnoredUnder(rootDir: string, packageDir: string): string[];
}
/**
 * Default backend using `git check-ignore` / `git ls-files`. Respects nested
 * `.gitignore` files and global excludes the same way Git does.
 */
export declare const gitCleanGitignoreBackend: CleanGitignoreBackend;
/** Batch-check which absolute paths are gitignored. */
export declare function filterGitIgnoredPaths(rootDir: string, absPaths: readonly string[], backend?: CleanGitignoreBackend): {
    ignored: string[];
    notIgnored: string[];
};
//# sourceMappingURL=cleanGitignore.d.ts.map