import type { FileChange, GitProvider, Issue, IssueOptions, PullRequest, PullRequestOptions } from '../types'; /** * Placeholder GitLab provider. Not implemented — every method throws so callers * fail loudly instead of silently no-op'ing on a real GitLab repo. Prior revisions * returned fake data / empty arrays, which masked configuration bugs (PR creation * "succeeded" but nothing happened upstream). * * To implement, map each method to the GitLab REST API: * https://docs.gitlab.com/ee/api/merge_requests.html * https://docs.gitlab.com/ee/api/branches.html * https://docs.gitlab.com/ee/api/issues.html */ export declare class GitLabProvider implements GitProvider { constructor(_token: string, _projectId: string); branchExists(_branchName: string): Promise; createBranch(_branchName: string, _baseBranch: string): Promise; commitChanges(_branchName: string, _message: string, _files: FileChange[], _baseBranch?: string): Promise; createPullRequest(_options: PullRequestOptions): Promise; getPullRequests(_state?: 'open' | 'closed' | 'all'): Promise; updatePullRequest(_prNumber: number, _options: Partial): Promise; closePullRequest(_prNumber: number): Promise; reopenPullRequest(_prNumber: number): Promise; createComment(_prNumber: number, _comment: string): Promise; mergePullRequest(_prNumber: number, _strategy?: 'merge' | 'squash' | 'rebase'): Promise; deleteBranch(_branchName: string): Promise; createIssue(_options: IssueOptions): Promise; getIssues(_state?: 'open' | 'closed' | 'all'): Promise; updateIssue(_issueNumber: number, _options: Partial): Promise; closeIssue(_issueNumber: number): Promise; unpinIssue(_issueNumber: number): Promise; }