/** * Git Operations — injectable interface for git CLI operations. * * Real implementation shells out to git CLI. * Designed for testability via interface injection. * * Requirements: 12.2 */ import type { FileChange } from './platform-client.js'; /** * Interface for git operations. */ export interface GitOperations { /** Create a new branch from the current HEAD */ createBranch(branchName: string): Promise; /** Checkout an existing branch */ checkout(branchName: string): Promise; /** Stage and commit file changes */ commitChanges(changes: FileChange[], message: string): Promise<{ sha: string; }>; /** Push a branch to the remote */ push(branchName: string): Promise; /** Check if a branch exists locally or remotely */ branchExists(branchName: string): Promise; /** Get the current branch name */ getCurrentBranch(): Promise; } //# sourceMappingURL=git-operations.d.ts.map