/**
 * Clones a Git repository to a local directory
 * @param url - The URL of the Git repository to clone
 * @param targetPath - The local path where the repository should be cloned
 */
export declare function gitClone(url: string, targetPath: string): Promise<void>;
/**
 * Checks out a branch in a Git repository
 * @param branch - The name of the branch to check out
 * @param targetPath - Optional path to the Git repository
 */
export declare function gitCheckout(branch: string, targetPath?: string): Promise<void>;
/**
 * Checks if a Git repository exists and is accessible
 * @param url - The URL of the Git repository to check
 * @returns True if the repository exists and is accessible, false otherwise
 */
export declare function gitRepoExists(url: string): Promise<boolean>;
/**
 * Extracts the repository name from a Git URL
 * @param repoUrl - The URL of the Git repository
 * @returns The repository name without the .git extension, or null if parsing fails
 */
export declare function getRepoNameFromUrl(repoUrl: string): string | null;
