import { OneOrMany, SourceRecord } from "../source.js"; //#region src/lib/sources/git-stats.d.ts export type GitStatsInfo = { /** Total number of local branches. */ branchCount?: number; /** Name of the currently checked-out branch. */ branchCurrent?: string; /** Total number of commits in the current branch. */ commitCount?: number; /** ISO 8601 date of the repository's first commit. */ commitDateFirst?: string; /** ISO 8601 date of the most recent commit. */ commitDateLast?: string; /** Number of unique commit author emails. */ contributorCount?: number; /** Whether the repo uses Git LFS. */ hasLfs?: boolean; /** Whether the working tree has no uncommitted changes. */ isClean?: boolean; /** Whether the working tree has uncommitted changes. */ isDirty?: boolean; /** Whether any remote is ahead of the local branch. */ isRemoteAhead?: boolean; /** Number of configured remotes. */ remoteCount?: number; /** Per-remote ahead/behind commit counts relative to HEAD. */ remoteStatus?: Record; /** Number of registered git submodules. */ submoduleCount?: number; /** Total number of tags. */ tagCount?: number; /** ISO 8601 date of the most recent tag. */ tagDateLatest?: string; /** Name of the most recent tag. */ tagNameLatest?: string; /** Number of tags matching a version pattern (e.g. v1.2.3). */ tagReleaseCount?: number; /** ISO 8601 date of the most recent version tag. */ tagVersionDateLatest?: string; /** Most recent version tag, without the leading "v". */ tagVersionLatest?: string; /** Total commits ahead of all remotes combined. */ totalAhead?: number; /** Total commits behind all remotes combined. */ totalBehind?: number; /** Number of files tracked by git. */ trackedFileCount?: number; /** Total size in bytes of all tracked files. */ trackedSizeBytes?: number; /** Number of files with staged or unstaged changes. */ uncommittedFileCount?: number; }; export type GitStatsData = OneOrMany> | undefined; //#endregion