/**
 * Umbrella Repository Cloning
 *
 * Clones a selected umbrella (parent) repository into the current project directory.
 * Used when the user picks "Select from GitHub" during init — the umbrella repo
 * becomes the git root of the project, with nested repos under repositories/{org}/.
 *
 * Strategy: clone --no-checkout to temp dir, move .git, checkout.
 * This avoids conflicts with files already created by specweave init (.specweave/).
 *
 * Key note: specweave init runs `git init` before the wizard. If .git exists with NO
 * remotes, it was created by our own git init and can be safely replaced by the umbrella
 * repo's .git. If .git has remotes, it's a pre-existing repo and we leave it alone.
 *
 * @module cli/helpers/init/umbrella-cloning
 */
export interface UmbrellaCloningResult {
    success: boolean;
    error?: string;
}
/**
 * Clone an umbrella repository into the current project directory.
 *
 * Handles three scenarios:
 * - No .git: fresh directory → clone directly
 * - .git with no remotes: from `git init` during specweave init → replace with umbrella's .git
 * - .git with remotes: pre-existing real repo → skip (guard)
 *
 * After cloning, `git checkout .` merges umbrella repo files with any existing
 * files (like .specweave/) without overwriting untracked ones.
 *
 * @param projectPath - Target directory (current working directory during init)
 * @param org - GitHub organization or owner
 * @param repoName - Repository name
 * @param pat - Personal Access Token
 * @param gitUrlFormat - 'ssh' or 'https'
 */
export declare function cloneUmbrellaIntoCurrentDir(projectPath: string, org: string, repoName: string, pat: string, gitUrlFormat?: 'ssh' | 'https'): Promise<UmbrellaCloningResult>;
//# sourceMappingURL=umbrella-cloning.d.ts.map