/** * GitHub implementation of GitProvider * * Delegates each operation to the corresponding function in * issue.ts and pr.ts. This class is the single place that binds * the GitProvider contract to the GitHub/gh-CLI implementation. */ import type { MergeMethod } from '../../core/models/config-types.js'; import type { PrStatusFetchOptions } from '../../core/workflow/system/pr-execution-context.js'; import type { PrCiFailure } from '../../core/workflow/system/pr-ci.js'; import type { GitHubPullRequestTarget } from './pull-request-target.js'; import type { ListOpenPrsOptions } from '../git/types.js'; import type { GitProvider, CliStatus, Issue, ExistingPr, IssueListItem, PrListItem, CreateIssueOptions, CreateIssueResult, CloseIssueResult, CreatePrOptions, CreatePrResult, CommentResult, IssueCommentResult, MergeResult, PrReviewData } from '../git/types.js'; export declare class GitHubProvider implements GitProvider { private readonly pullRequest?; constructor(pullRequest?: GitHubPullRequestTarget | undefined); private targetArguments; checkCliStatus(cwd?: string): CliStatus; fetchIssue(issueNumber: number, cwd?: string): Issue; createIssue(options: CreateIssueOptions, cwd?: string): CreateIssueResult; closeIssue(issueNumber: number, comment: string, cwd?: string): CloseIssueResult; fetchPrReviewComments(prNumber: number, cwd?: string): PrReviewData; listOpenIssues(cwd?: string): IssueListItem[]; listOpenPrs(cwd?: string, options?: { readonly allPages?: false; }): PrListItem[]; listOpenPrs(cwd: string | undefined, options: { readonly allPages: true; }): Iterable; listOpenPrs(cwd: string | undefined, options: ListOpenPrsOptions | undefined): Iterable; listOpenPrNumbers(cwd: string): number[]; fetchPrListItem(prNumber: number, cwd: string): PrListItem | undefined; fetchPrSelectionData(prNumber: number, cwd: string): import("../git/types.js").PrSelectionData; findExistingPr(branch: string, cwd?: string): ExistingPr | undefined; createPullRequest(options: CreatePrOptions, cwd?: string): CreatePrResult; commentOnPr(prNumber: number, body: string, cwd?: string): CommentResult; commentOnIssue(issueNumber: number, body: string, cwd?: string): IssueCommentResult; closePr(prNumber: number, cwd?: string): MergeResult; mergePr(prNumber: number, cwd?: string, method?: MergeMethod, expectedHeadSha?: string): MergeResult; fetchPrStatus(prNumber: number, cwd?: string, options?: PrStatusFetchOptions): Promise; fetchPrCiFailure(prNumber: number, headSha: string, cwd: string, options?: PrStatusFetchOptions): Promise<{ number: number; headSha: string; complete: boolean; checks: { name: string; run: { id: number; attempt: number; headSha: string; url: string; }; jobs: { id: number; name: string; url: string; log?: string | undefined; }[]; }[]; unavailable: { name: string; reason: string; url?: string | null | undefined; }[]; }>; rerunPrCi(failure: PrCiFailure, cwd: string, options?: PrStatusFetchOptions): Promise; fetchPrDetails(prNumber: number, cwd?: string, signal?: AbortSignal): Promise<{ baseBranch: string; sameRepository: boolean; number: number; headBranch: string; headSha: string; headRepositoryUrl: string; headRepositoryPushUrls: string[]; }>; } //# sourceMappingURL=GitHubProvider.d.ts.map