/**
 * Git helpers used by the release pipeline.
 *
 * All commands are executed via `git` from the CLI rather than via a
 * library, so the tool works in any git environment without extra deps.
 */
export interface RunGitOptions {
    cwd?: string;
    env?: NodeJS.ProcessEnv;
    dryRun?: boolean;
}
export declare class GitError extends Error {
    readonly command: string;
    readonly exitCode: number;
    constructor(command: string, exitCode: number, message: string);
}
export declare function runGit(args: string[], options?: RunGitOptions): Promise<{
    stdout: string;
    stderr: string;
}>;
export declare function tagExists(tag: string, options?: RunGitOptions): Promise<boolean>;
export declare function currentBranch(options?: RunGitOptions): Promise<string>;
export declare function isWorkingTreeClean(options?: RunGitOptions): Promise<boolean>;
export declare function getLatestTag(options?: RunGitOptions): Promise<string | null>;
export declare function getCommitsSince(ref: string | null, options?: RunGitOptions): Promise<string>;
//# sourceMappingURL=git.d.ts.map