/** * Collect per-file git activity in one `git log` pass, scoped by the same pathspecs as the index. * Renames are not followed (counts accrue under the path's current name — fine for grounding). * Returns an empty map when the root is not a git repo, so metadata is always optional. * @param {string} root * @param {string[]} [pathspecs] * @returns {Map} */ export function collectGitSig(root: string, pathspecs?: string[]): Map; export type GitSig = { /** * number of commits that touched the file */ commits: number; /** * unix time (seconds) of the most recent such commit, or null */ lastCommit: number | null; };