import { ActionResult } from "../../action/ActionResult"; import { Configurable } from "../../project/git/Configurable"; import { AbstractRemoteRepoRef } from "./AbstractRemoteRepoRef"; import { ProjectOperationCredentials } from "./ProjectOperationCredentials"; import { PullRequestReviewer } from "./RepoId"; export declare const GitlabDotComApiBase = "https://gitlab.com/api/v4"; export declare const GitlabDotComRemoteUrl = "https://gitlab.com/"; /** * Repository reference implementation for Gitlab */ export declare class GitlabRepoRef extends AbstractRemoteRepoRef { static from(params: { owner: string; repo: string; sha?: string; rawApiBase?: string; path?: string; gitlabRemoteUrl?: string; branch?: string; }): GitlabRepoRef; readonly kind: string; private constructor(); createRemote(creds: ProjectOperationCredentials, description: string, visibility: string): Promise>; deleteRemote(creds: ProjectOperationCredentials): Promise>; setUserConfig(credentials: ProjectOperationCredentials, project: Configurable): Promise>; /** * Retrieve the Gitlab Server version * * @param {ProjectOperationCredentials} credentials * @returns {version: string, revision: string} Revision info */ getGitlabVersion(credentials: ProjectOperationCredentials): Promise<{ version: string; revision: string; }>; /** * Retrieve the id of the supplied group * @param {ProjectOperationCredentials} credentials * @param {string} name * @returns {number} The id of the requested group */ getGroupId(credentials: ProjectOperationCredentials, name: string): Promise; /** * Retrieve the id of the supplied user * @param {ProjectOperationCredentials} credentials * @param {string} name * @returns {number} The id of the user */ getUserId(credentials: ProjectOperationCredentials, name: string): Promise; /** * Convert reviewers from names to ids * * @param {ProjectOperationCredentials} credentials * @param {PullRequestReviewer[]} reviewers * @returns {users: number[], groups: number[]} The user and group ids requested for MR approval */ private resolveApprovers; /** * Add Approvers to Merge Request * * @param {ProjectOperationCredentials} credentials * @param {PullRequestReviewer[]} reviewers * @param {number} mrNumber The iid of the merge request * @param {number} projectId The project id in Gitlab */ addApproversToMergeRequest(credentials: ProjectOperationCredentials, reviewers: PullRequestReviewer[], mrNumber: number, projectId: number): Promise; raisePullRequest(credentials: ProjectOperationCredentials, title: string, body: string, head: string, base: string, reviewers?: PullRequestReviewer[]): Promise>; private getNamespaceForOwner; } //# sourceMappingURL=GitlabRepoRef.d.ts.map