/**
 * Git Fork Service Implementation
 *
 * Manages GitHub fork operations: forking repos, pushing to forks,
 * creating upstream PRs, and polling upstream PR status.
 * Uses `gh` CLI for all GitHub API interactions.
 */
import type { IGitForkService } from '../../../application/ports/output/services/git-fork-service.interface.js';
import type { UpstreamPrResult } from '../../../application/ports/output/services/git-fork-service.interface.js';
import { PrStatus } from '../../../domain/generated/output.js';
import type { ExecFunction } from './worktree.service.js';
export declare class GitForkService implements IGitForkService {
    private readonly execFile;
    constructor(execFile: ExecFunction);
    forkRepository(cwd: string): Promise<void>;
    /**
     * Fallback when gh repo fork fails due to missing remotes.
     * Creates a new private GitHub repository and sets it as origin.
     */
    private createRepositoryFallback;
    pushToFork(cwd: string, branch: string): Promise<void>;
    createUpstreamPr(cwd: string, title: string, body: string, head: string, base: string): Promise<UpstreamPrResult>;
    getUpstreamPrStatus(upstreamRepo: string, prNumber: number): Promise<PrStatus>;
    /**
     * Extract owner/repo from a git remote URL.
     * Handles both HTTPS and SSH formats.
     */
    private extractRepoFromUrl;
}
//# sourceMappingURL=git-fork.service.d.ts.map