/**
 * GitHub Repository Service Implementation
 *
 * Implements IGitHubRepositoryService using the gh CLI for authentication
 * checks, repository listing, cloning (with progress streaming), and URL parsing.
 */
import type { ExecFunction } from '../git/worktree.service.js';
import type { IGitHubRepositoryService, GitHubRepo, GitHubOrganization, ListUserRepositoriesOptions, CloneOptions, ParsedGitHubUrl, ForkOptions, PushAccessResult, ForkResult } from '../../../application/ports/output/services/github-repository-service.interface.js';
export declare class GitHubRepositoryService implements IGitHubRepositoryService {
    private readonly execFile;
    constructor(execFile: ExecFunction);
    checkAuth(): Promise<void>;
    listUserRepositories(options?: ListUserRepositoriesOptions): Promise<GitHubRepo[]>;
    listOrganizations(): Promise<GitHubOrganization[]>;
    cloneRepository(nameWithOwner: string, destination: string, options?: CloneOptions): Promise<void>;
    parseGitHubUrl(url: string): ParsedGitHubUrl;
    getViewerPermission(repoPath: string): Promise<string>;
    getAuthenticatedUser(): Promise<string>;
    checkPushAccess(nameWithOwner: string): Promise<PushAccessResult>;
    forkRepository(nameWithOwner: string, options?: ForkOptions): Promise<ForkResult>;
    private cleanupPartialClone;
}
//# sourceMappingURL=github-repository.service.d.ts.map