import type { IBranchRepository } from "../../domain/interface/branch.repository.interface";
/**
 * Git implementation of BranchRepository
 */
export declare class GitBranchRepository implements IBranchRepository {
    /**
     * Create a new branch
     * @param branchName The name of the branch to create
     */
    createBranch(branchName: string): Promise<void>;
    /**
     * Get the current branch name
     * @returns A promise that resolves to the current branch name
     */
    getCurrentBranchName(): Promise<string>;
    /**
     * Check if working directory has uncommitted changes
     * @returns A promise that resolves to true if there are uncommitted changes
     */
    hasUncommittedChanges(): Promise<boolean>;
    /**
     * Push branch to remote repository
     * @param branchName The name of the branch to push
     */
    pushBranch(branchName: string): Promise<void>;
}
