{"version":3,"sources":["jsdelivr-header.js","/npm/@managed-api/gitlab-core@0.3.0/index.js"],"names":[],"mappings":"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","file":"/npm/@managed-api/gitlab-core@0.3.0/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/@managed-api/gitlab-core@0.3.0/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","import { Request, Response, BaseApiCore, constructUrl, executeHttpCall, constructHeaders } from '@managed-api/commons-core';\nimport { errorMessageBuilder } from './common';\nimport { customErrorHandlers, errorStrategyBuilderConstructor } from './errorStrategy';\n;\nexport class GitlabApiCore extends BaseApiCore {\n    constructor(options) {\n        var _a, _b;\n        super();\n        this.options = options;\n        if (!((_a = this.options) === null || _a === void 0 ? void 0 : _a.errorStrategy) && ((_b = this.options) === null || _b === void 0 ? void 0 : _b.errorStrategy) !== null) {\n            this.setGlobalErrorStrategy((builder) => builder.retryOnRateLimiting(-1));\n        }\n        this.Repository = new RepositoryGroup(this.implementation, () => this.getGlobalErrorStrategy());\n        this.Commit = new CommitGroup(this.implementation, () => this.getGlobalErrorStrategy());\n        this.Epic = new EpicGroup(this.implementation, () => this.getGlobalErrorStrategy());\n        this.Issue = new IssueGroup(this.implementation, () => this.getGlobalErrorStrategy());\n        this.Link = new LinkGroup(this.implementation, () => this.getGlobalErrorStrategy());\n        this.Branch = new BranchGroup(this.implementation, () => this.getGlobalErrorStrategy());\n        this.All = new AllGroup(this.Repository, this.Commit, this.Epic, this.Issue, this.Link, this.Branch);\n    }\n    setGlobalErrorStrategy(errorStrategy) {\n        var _a;\n        this.options = {\n            ...(_a = this.options) !== null && _a !== void 0 ? _a : {},\n            errorStrategy\n        };\n    }\n    buildResponse(url, status, statusText, headers, body) {\n        const response = new Response(url, status, statusText, headers, body);\n        response.setBufferImplementation(this.implementation);\n        return response;\n    }\n    getGlobalErrorStrategy() {\n        var _a;\n        return (_a = this.options) === null || _a === void 0 ? void 0 : _a.errorStrategy;\n    }\n}\nclass AllGroup {\n    constructor(Repository, Commit, Epic, Issue, Link, Branch) {\n        this.Repository = Repository;\n        this.Commit = Commit;\n        this.Epic = Epic;\n        this.Issue = Issue;\n        this.Link = Link;\n        this.Branch = Branch;\n    }\n    /**\n     * Get a list of repository branches from a project, sorted by name alphabetically.\n     * Alternative usage: Branch.getBranches\n     * Documentation: https://docs.gitlab.com/ee/api/branches.html#list-repository-branches\n     * @param options Request options.\n     */\n    async getBranches(options) {\n        return this.Branch.getBranches(options);\n    }\n    /**\n     * Get a single project repository branch.\n     * Alternative usage: Branch.getBranch\n     * Documentation: https://docs.gitlab.com/ee/api/branches.html#get-single-repository-branch\n     * @param options Request options.\n     */\n    async getBranch(options) {\n        return this.Branch.getBranch(options);\n    }\n    /**\n     * Create a new branch in the repository.\n     * Alternative usage: Branch.createBranch\n     * Documentation: https://docs.gitlab.com/ee/api/branches.html#create-repository-branch\n     * @param options Request options.\n     */\n    async createBranch(options) {\n        return this.Branch.createBranch(options);\n    }\n    /**\n     * Delete a branch from the repository.\n     * Alternative usage: Branch.deleteBranch\n     * Documentation: https://docs.gitlab.com/ee/api/branches.html#delete-repository-branch\n     * @param options Request options.\n     */\n    async deleteBranch(options) {\n        return this.Branch.deleteBranch(options);\n    }\n    /**\n     * Deletes all branches that are merged into the project’s default branch.\n     * Alternative usage: Branch.deleteMergedBranches\n     * Documentation: https://docs.gitlab.com/ee/api/branches.html#delete-merged-branches\n     * @param options Request options.\n     */\n    async deleteMergedBranches(options) {\n        return this.Branch.deleteMergedBranches(options);\n    }\n    /**\n     * Get a list of a given issue’s linked issues, sorted by the relationship creation datetime (ascending). Issues are filtered according to the user authorizations.\n     * Alternative usage: Link.Issue.getRelations\n     * Documentation: https://docs.gitlab.com/ee/api/issue_links.html#list-issue-relations\n     * @param options Request options.\n     */\n    async getIssueLinkRelations(options) {\n        return this.Link.Issue.getRelations(options);\n    }\n    /**\n     * Creates a two-way relation between two issues. The user must be allowed to update both issues to succeed.\n     * Alternative usage: Link.Issue.createLink\n     * Documentation: https://docs.gitlab.com/ee/api/issue_links.html#create-an-issue-link\n     * @param options Request options.\n     */\n    async createIssueLink(options) {\n        return this.Link.Issue.createLink(options);\n    }\n    /**\n     * Deletes an issue link, thus removes the two-way relationship.\n     * Alternative usage: Link.Issue.deleteLink\n     * Documentation: https://docs.gitlab.com/ee/api/issue_links.html#delete-an-issue-link\n     * @param options Request options.\n     */\n    async deleteIssueLink(options) {\n        return this.Link.Issue.deleteLink(options);\n    }\n    /**\n     * Get all issues the authenticated user has access to. By default it returns only issues created by the current user. To get all issues, use parameter scope=all.\n     * Alternative usage: Issue.getIssues\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#list-issues\n     * @param options Request options.\n     */\n    async getIssues(options) {\n        return this.Issue.getIssues(options);\n    }\n    /**\n     * Get a list of a group’s issues. If the group is private, credentials need to be provided for authorization.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#list-group-issues\n     * @param options Request options.\n     */\n    async getGroupIssues(options) {\n        return this.Issue.getGroupIssues(options);\n    }\n    /**\n     * Get a list of a project’s issues. If the project is private, you need to provide credentials to authorize.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#list-project-issues\n     * @param options Request options.\n     */\n    async getProjectIssues(options) {\n        return this.Issue.getProjectIssues(options);\n    }\n    /**\n     * Only for administrators. Get a single issue.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#single-issue\n     * @param options Request options.\n     */\n    async getIssue(options) {\n        return this.Issue.getIssue(options);\n    }\n    /**\n     * Get a single project issue. If the project is private or the issue is confidential, you need to provide credentials to authorize.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#single-project-issue\n     * @param options Request options.\n     */\n    async getProjectIssue(options) {\n        return this.Issue.getProjectIssue(options);\n    }\n    /**\n     * Creates a new project issue.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#new-issue\n     * @param options Request options.\n     */\n    async createIssue(options) {\n        return this.Issue.createIssue(options);\n    }\n    /**\n     * Updates an existing project issue. This call is also used to mark an issue as closed.\n     * At least one of the following parameters is required for the request to be successful:\n     * :assignee_id\n     * :assignee_ids\n     * :confidential\n     * :created_at\n     * :description\n     * :discussion_locked\n     * :due_date\n     * :issue_type\n     * :labels\n     * :milestone_id\n     * :state_event\n     * :title\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#new-issue\n     * @param options Request options.\n     */\n    async editIssue(options) {\n        return this.Issue.editIssue(options);\n    }\n    /**\n     * Only for administrators and project owners. Deletes an issue.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#delete-an-issue\n     * @param options Request options.\n     */\n    async deleteIssue(options) {\n        return this.Issue.deleteIssue(options);\n    }\n    /**\n     * Reorders an issue, you can see the results when sorting issues manually.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#reorder-an-issue\n     * @param options Request options.\n     */\n    async reorderIssue(options) {\n        return this.Issue.reorderIssue(options);\n    }\n    /**\n     * Moves an issue to a different project.\n     * If the target project is the source project or the user has insufficient permissions, an error message with status code 400 is returned.\n     * If a given label or milestone with the same name also exists in the target project, it’s then assigned to the issue being moved.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#move-an-issue\n     * @param options Request options.\n     */\n    async moveIssue(options) {\n        return this.Issue.moveIssue(options);\n    }\n    /**\n     * Clone the issue to given project. If the user has insufficient permissions, an error message with status code 400 is returned.\n     * Copies as much data as possible as long as the target project contains equivalent labels, milestones, and so on.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#clone-an-issue\n     * @param options Request options.\n     */\n    async cloneIssue(options) {\n        return this.Issue.cloneIssue(options);\n    }\n    /**\n     * Subscribes the authenticated user to an issue to receive notifications.\n     * If the user is already subscribed to the issue, the status code 304 is returned.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#subscribe-to-an-issue\n     * @param options Request options.\n     */\n    async subscribeToIssue(options) {\n        return this.Issue.subscribeToIssue(options);\n    }\n    /**\n     * Unsubscribes the authenticated user from the issue to not receive notifications from it.\n     * If the user is not subscribed to the issue, the status code 304 is returned.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#unsubscribe-from-an-issue\n     * @param options Request options.\n     */\n    async unsubscribeFromIssue(options) {\n        return this.Issue.unsubscribeFromIssue(options);\n    }\n    /**\n     * Manually creates a to-do item for the current user on an issue.\n     * If there already exists a to-do item for the user on that issue, status code 304 is returned.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#create-a-to-do-item\n     * @param options Request options.\n     */\n    async createIssueTodoItem(options) {\n        return this.Issue.createTodoItem(options);\n    }\n    /**\n     * Promotes an issue to an epic by adding a comment with the /promote quick action.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#promote-an-issue-to-an-epic\n     * @param options Request options.\n     */\n    async promoteToEpic(options) {\n        return this.Issue.promoteToEpic(options);\n    }\n    /**\n     * Sets an estimated time of work for this issue.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#set-a-time-estimate-for-an-issue\n     * @param options Request options.\n     */\n    async setTimeEstimateForIssue(options) {\n        return this.Issue.setTimeEstimateForIssue(options);\n    }\n    /**\n     * Resets the estimated time for this issue to 0 seconds.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#reset-the-time-estimate-for-an-issue\n     * @param options Request options.\n     */\n    async resetTimeEstimateForIssue(options) {\n        return this.Issue.resetTimeEstimateForIssue(options);\n    }\n    /**\n     * Adds spent time for this issue.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#add-spent-time-for-an-issue\n     * @param options Request options.\n     */\n    async addSpentTimeForIssue(options) {\n        return this.Issue.addSpentTimeForIssue(options);\n    }\n    /**\n     * Resets the total spent time for this issue to 0 seconds.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#reset-spent-time-for-an-issue\n     * @param options Request options.\n     */\n    async resetTimeSpentForIssue(options) {\n        return this.Issue.resetSpentTimeForIssue(options);\n    }\n    /**\n     * If the project is private or the issue is confidential, you need to provide credentials to authorize.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#get-time-tracking-stats\n     * @param options Request options.\n     */\n    async getTimeTrackingStatsForIssue(options) {\n        return this.Issue.getTimeTrackingStatsForIssue(options);\n    }\n    /**\n     * Get all the merge requests that are related to the issue.\n     * If the project is private or the issue is confidential, you need to provide credentials to authorize.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#list-merge-requests-related-to-issue\n     * @param options Request options.\n     */\n    async getMergeRequestsRelatedToIssue(options) {\n        return this.Issue.getMergeRequestsRelatedToIssue(options);\n    }\n    /**\n     * Get all merge requests that close a particular issue when merged.\n     * If the project is private or the issue is confidential, you need to provide credentials to authorize.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#list-merge-requests-that-close-a-particular-issue-on-merge\n     * @param options Request options.\n     */\n    async getMergeRequestsThatClosedAnIssue(options) {\n        return this.Issue.getMergeRequestsThatClosedAnIssue(options);\n    }\n    /**\n     * If the project is private or the issue is confidential, you need to provide credentials to authorize.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#participants-on-issues\n     * @param options Request options.\n     */\n    async getIssueParticipants(options) {\n        return this.Issue.getParticipants(options);\n    }\n    /**\n     * Available only for administrators.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#get-user-agent-details\n     * @param options Request options.\n     */\n    async getIssueUserAgentDetails(options) {\n        return this.Issue.getUserAgentDetails(options);\n    }\n    /**\n     * Gets all epics of the requested group and its subgroups.\n     * Alternative usage: Epic.getEpicsForGroup\n     * Documentation: https://docs.gitlab.com/ee/api/epics.html#list-epics-for-a-group\n     * @param options Request options.\n     */\n    async getEpicsForGroup(options) {\n        return this.Epic.getEpicsForGroup(options);\n    }\n    /**\n     * Gets a single epic.\n     * Alternative usage: Epic.getEpic\n     * Documentation: https://docs.gitlab.com/ee/api/epics.html#single-epic\n     * @param options Request options.\n     */\n    async getEpic(options) {\n        return this.Epic.getEpic(options);\n    }\n    /**\n     * Creates a new epic.\n     * Alternative usage: Epic.createEpic\n     * Documentation: https://docs.gitlab.com/ee/api/epics.html#new-epic\n     * @param options Request options.\n     */\n    async createEpic(options) {\n        return this.Epic.createEpic(options);\n    }\n    /**\n     * Updates an epic.\n     * Alternative usage: Epic.updateEpic\n     * Documentation: https://docs.gitlab.com/ee/api/epics.html#update-epic\n     * @param options Request options.\n     */\n    async updateEpic(options) {\n        return this.Epic.updateEpic(options);\n    }\n    /**\n     * Deletes an epic.\n     * Alternative usage: Epic.deleteEpic\n     * Documentation: https://docs.gitlab.com/ee/api/epics.html#delete-epic\n     * @param options Request options.\n     */\n    async deleteEpic(options) {\n        return this.Epic.deleteEpic(options);\n    }\n    /**\n     * Manually creates a to-do item for the current user on an epic.\n     * If there already exists a to-do item for the user on that epic, status code 304 is returned.\n     * Alternative usage: Epic.createTodoItem\n     * Documentation: https://docs.gitlab.com/ee/api/epics.html#create-a-to-do-item\n     * @param options Request options.\n     */\n    async createEpicTodoItem(options) {\n        return this.Epic.createTodoItem(options);\n    }\n    /**\n     * Get a list of repository commits in a project.\n     * Alternative usage: Commit.getCommits\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#list-repository-commits\n     * @param options Request options.\n     */\n    async getCommits(options) {\n        return this.Commit.getCommits(options);\n    }\n    /**\n     * Create a commit by posting a JSON payload.\n     * Alternative usage: Commit.createCommit\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#create-a-commit-with-multiple-files-and-actions\n     * @param options Request options.\n     */\n    async createCommit(options) {\n        return this.Commit.createCommit(options);\n    }\n    /**\n     * Get a specific commit identified by the commit hash or name of a branch or tag.\n     * Alternative usage: Commit.getCommit\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#get-a-single-commit\n     * @param options Request options.\n     */\n    async getCommit(options) {\n        return this.Commit.getCommit(options);\n    }\n    /**\n     * Get all references (from branches or tags) a commit is pushed to.\n     * The pagination parameters page and per_page can be used to restrict the list of references.\n     * Alternative usage: Commit.getCommitReferences\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#get-references-a-commit-is-pushed-to\n     * @param options Request options.\n     */\n    async getCommitReferences(options) {\n        return this.Commit.getCommitReferences(options);\n    }\n    /**\n     * Cherry-picks a commit to a given branch.\n     * Alternative usage: Commit.cherryPickCommit\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#cherry-pick-a-commit\n     * @param options Request options.\n     */\n    async cherryPickCommit(options) {\n        return this.Commit.cherryPickCommit(options);\n    }\n    /**\n     * Reverts a commit in a given branch.\n     * Alternative usage: Commit.revertCommit\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#revert-a-commit\n     * @param options Request options.\n     */\n    async revertCommit(options) {\n        return this.Commit.revertCommit(options);\n    }\n    /**\n     * Get the diff of a commit in a project.\n     * Alternative usage: Commit.getCommitDiff\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#get-the-diff-of-a-commit\n     * @param options Request options.\n     */\n    async getCommitDiff(options) {\n        return this.Commit.getCommitDiff(options);\n    }\n    /**\n     * Get the comments of a commit in a project.\n     * Alternative usage: Commit.getComments\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#get-the-comments-of-a-commit\n     * @param options Request options.\n     */\n    async getCommitComments(options) {\n        return this.Commit.getComments(options);\n    }\n    /**\n     * Adds a comment to a commit.\n     * To post a comment in a particular line of a particular file, you must specify the full commit SHA, the path, the line, and line_type should be new.\n     * Alternative usage: Commit.createComment\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#post-comment-to-commit\n     * @param options Request options.\n     */\n    async createCommitComment(options) {\n        return this.Commit.createComment(options);\n    }\n    /**\n     * Get the discussions of a commit in a project.\n     * Alternative usage: Commit.getDiscussions\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#get-the-discussions-of-a-commit\n     * @param options Request options.\n     */\n    async getCommitDiscussions(options) {\n        return this.Commit.getDiscussions(options);\n    }\n    /**\n     * Get a list of merge requests related to the specified commit.\n     * Alternative usage: Commit.getMergeRequests\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#list-merge-requests-associated-with-a-commit\n     * @param options Request options.\n     */\n    async getCommitMergeRequests(options) {\n        return this.Commit.getMergeRequests(options);\n    }\n    /**\n     * Get the GPG signature from a commit, if it is signed.\n     * For unsigned commits, it results in a 404 response: https://docs.gitlab.com/ee/user/project/repository/gpg_signed_commits/index.html\n     * Alternative usage: Commit.getGPGSignature\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#get-gpg-signature-of-a-commit\n     * @param options Request options.\n     */\n    async getCommitGPGSignature(options) {\n        return this.Commit.getGPGSignature(options);\n    }\n    /**\n     * List the statuses of a commit in a project.\n     * The pagination parameters page and per_page can be used to restrict the list of references.\n     * Alternative usage: Commit.Status.getStatuses\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#list-the-statuses-of-a-commit\n     * @param options Request options.\n     */\n    async getCommitStatuses(options) {\n        return this.Commit.Status.getStatuses(options);\n    }\n    /**\n     * Adds or updates a build status of a commit.\n     * Alternative usage: Commit.Status.createBuildStatus\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#post-the-build-status-to-a-commit\n     * @param options Request options.\n     */\n    async createCommitBuildStatus(options) {\n        return this.Commit.Status.createBuildStatus(options);\n    }\n    /**\n     * Allows you to receive information about file in repository like name, size, content. File content is Base64 encoded.\n     * Alternative usage: Repository.File.getFile\n     * Documentation: https://docs.gitlab.com/ee/api/repository_files.html#get-file-from-repository\n     * @param options Request options.\n     */\n    async getFileFromRepository(options) {\n        return this.Repository.File.getFile(options);\n    }\n    /**\n     * Allows you to receive blame information.\n     * Each blame range contains lines and corresponding commit information.\n     * Alternative usage: Repository.File.getFileBlame\n     * Documentation: https://docs.gitlab.com/ee/api/repository_files.html#get-file-blame-from-repository\n     * @param options Request options.\n     */\n    async getFileBlameFromRepository(options) {\n        return this.Repository.File.getFileBlame(options);\n    }\n    /**\n     * Get raw file from repository.\n     * Alternative usage: Repository.File.getRawFile\n     * Documentation: https://docs.gitlab.com/ee/api/repository_files.html#get-raw-file-from-repository\n     * @param options Request options.\n     */\n    async getRawFileFromRepository(options) {\n        return this.Repository.File.getRawFile(options);\n    }\n    /**\n     * This allows you to create a single file.\n     * For creating multiple files with a single request see the commits API: https://docs.gitlab.com/ee/api/commits.html#create-a-commit-with-multiple-files-and-actions\n     * Alternative usage: Repository.File.createFile\n     * Documentation: https://docs.gitlab.com/ee/api/repository_files.html#create-new-file-in-repository\n     * @param options Request options.\n     */\n    async createFileInRepository(options) {\n        return this.Repository.File.createFile(options);\n    }\n    /**\n     * This allows you to update a single file.\n     * For updating multiple files with a single request see the commits API: https://docs.gitlab.com/ee/api/commits.html#create-a-commit-with-multiple-files-and-actions\n     * Alternative usage: Repository.File.updateFile\n     * Documentation: https://docs.gitlab.com/ee/api/repository_files.html#update-existing-file-in-repository\n     * @param options Request options.\n     */\n    async updateFileInRepository(options) {\n        return this.Repository.File.updateFile(options);\n    }\n    /**\n     * This allows you to delete a single file.\n     * For deleting multiple files with a single request see the commits API: https://docs.gitlab.com/ee/api/commits.html#create-a-commit-with-multiple-files-and-actions\n     * Alternative usage: Repository.File.deleteFile\n     * Documentation: https://docs.gitlab.com/ee/api/repository_files.html#delete-existing-file-in-repository\n     * @param options Request options.\n     */\n    async deleteFileInRepository(options) {\n        return this.Repository.File.deleteFile(options);\n    }\n    /**\n     * Get a list of repository files and directories in a project.\n     * Alternative usage: Repository.getRepositoryTree\n     * Documentation: https://docs.gitlab.com/ee/api/repositories.html#list-repository-tree\n     * @param options Request options.\n     */\n    async getRepositoryTree(options) {\n        return this.Repository.getRepositoryTree(options);\n    }\n    /**\n     * Allows you to receive information about blob in repository like size and content. Blob content is Base64 encoded.\n     * Alternative usage: Repository.getBlob\n     * Documentation: https://docs.gitlab.com/ee/api/repositories.html#get-a-blob-from-repository\n     * @param options Request options.\n     */\n    async getBlobFromRepository(options) {\n        return this.Repository.getBlob(options);\n    }\n    /**\n     * Get the raw file contents for a blob by blob SHA.\n     * Alternative usage: Repository.getRawBlobContent\n     * Documentation: https://docs.gitlab.com/ee/api/repositories.html#raw-blob-content\n     * @param options Request options.\n     */\n    async getRawBlobContentFromRepository(options) {\n        return this.Repository.getRawBlobContent(options);\n    }\n    /**\n     * Get an archive of the repository. This endpoint has a rate limit threshold of 5 requests per minute for GitLab.com users.\n     * Alternative usage: Repository.getFileArchive\n     * Documentation: https://docs.gitlab.com/ee/api/repositories.html#get-file-archive\n     * @param options Request options.\n     */\n    async getFileArchiveFromRepository(options) {\n        return this.Repository.getFileArchive(options);\n    }\n    /**\n     * Compare branches, tags or commits. Diffs can have an empty diff string if diff limits are reached.\n     * Alternative usage: Repository.compare\n     * Documentation: https://docs.gitlab.com/ee/api/repositories.html#compare-branches-tags-or-commits\n     * @param options Request options.\n     */\n    async repositoryCompare(options) {\n        return this.Repository.compare(options);\n    }\n    /**\n     * Get repository contributors list.\n     * Alternative usage: Repository.getContributors\n     * Documentation: https://docs.gitlab.com/ee/api/repositories.html#contributors\n     * @param options Request options.\n     */\n    async getRepositoryContributors(options) {\n        return this.Repository.getContributors(options);\n    }\n    /**\n     * Get the common ancestor for 2 or more refs (commit SHAs, branch names or tags).\n     * Alternative usage: Repository.mergeBase\n     * Documentation: https://docs.gitlab.com/ee/api/repositories.html#merge-base\n     * @param options Request options.\n     */\n    async mergeRepositoryBase(options) {\n        return this.Repository.mergeBase(options);\n    }\n    /**\n     * Generate changelog data based on commits in a repository, without committing them to a changelog file.\n     * Alternative usage: Repository.generateChangelog\n     * Documentation: https://docs.gitlab.com/ee/api/repositories.html#generate-changelog-data\n     * @param options Request options.\n     */\n    async generateRepositoryChangelog(options) {\n        return this.Repository.generateChangelog(options);\n    }\n    /**\n     * Generate changelog data based on commits in a repository.\n     * The output of this process is a new section in a changelog file in the Git repository of the given project.\n     * The output format is in Markdown, and can be customized.\n     * Alternative usage: Repository.addChangelog\n     * Documentation: https://docs.gitlab.com/ee/api/repositories.html#add-changelog-data-to-a-changelog-file\n     * @param options Request options.\n     */\n    async addRepositoryChangelog(options) {\n        return this.Repository.addChangelog(options);\n    }\n}\nclass RepositoryGroup {\n    constructor(implementation, getGlobalErrorStrategy) {\n        this.implementation = implementation;\n        this.getGlobalErrorStrategy = getGlobalErrorStrategy;\n        this.File = new RepositoryFileGroup(implementation, this.getGlobalErrorStrategy);\n    }\n    /**\n     * Get a list of repository files and directories in a project.\n     * Documentation: https://docs.gitlab.com/ee/api/repositories.html#list-repository-tree\n     * @param options Request options.\n     */\n    async getRepositoryTree(options) {\n        const { id, path, ref, recursive, per_page, pagination, page_token, headers, errorStrategy } = options;\n        const queryParams = { path, ref, recursive, per_page, pagination, page_token };\n        const request = new Request('GET', constructUrl(`/api/v4/projects/${id}/repository/tree`, queryParams), constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Allows you to receive information about blob in repository like size and content. Blob content is Base64 encoded.\n     * Documentation: https://docs.gitlab.com/ee/api/repositories.html#get-a-blob-from-repository\n     * @param options Request options.\n     */\n    async getBlob(options) {\n        const { id, sha, headers, errorStrategy } = options;\n        const request = new Request('GET', `/api/v4/projects/${id}/repository/blobs/${sha}`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Get the raw file contents for a blob by blob SHA.\n     * Documentation: https://docs.gitlab.com/ee/api/repositories.html#raw-blob-content\n     * @param options Request options.\n     */\n    async getRawBlobContent(options) {\n        const { id, sha, headers, errorStrategy } = options;\n        const request = new Request('GET', `/api/v4/projects/${id}/repository/blobs/${sha}/raw`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers, true);\n    }\n    /**\n     * Get an archive of the repository. This endpoint has a rate limit threshold of 5 requests per minute for GitLab.com users.\n     * Documentation: https://docs.gitlab.com/ee/api/repositories.html#get-file-archive\n     * @param options Request options.\n     */\n    async getFileArchive(options) {\n        const { id, sha, path, format, headers, errorStrategy } = options;\n        const queryParams = { path, sha };\n        const request = new Request('GET', constructUrl(`/api/v4/projects/${id}/repository/archive${format !== null && format !== void 0 ? format : ''}`, queryParams), constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers, true);\n    }\n    /**\n     * Compare branches, tags or commits. Diffs can have an empty diff string if diff limits are reached.\n     * Documentation: https://docs.gitlab.com/ee/api/repositories.html#compare-branches-tags-or-commits\n     * @param options Request options.\n     */\n    async compare(options) {\n        const { id, from, to, from_project_id, straight, headers, errorStrategy } = options;\n        const queryParams = { from, to, from_project_id, straight };\n        const request = new Request('GET', constructUrl(`/api/v4/projects/${id}/repository/compare`, queryParams), constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Get repository contributors list.\n     * Documentation: https://docs.gitlab.com/ee/api/repositories.html#contributors\n     * @param options Request options.\n     */\n    async getContributors(options) {\n        const { id, order_by, sort, headers, errorStrategy } = options;\n        const queryParams = { order_by, sort };\n        const request = new Request('GET', constructUrl(`/api/v4/projects/${id}/repository/contributors`, queryParams), constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Get the common ancestor for 2 or more refs (commit SHAs, branch names or tags).\n     * Documentation: https://docs.gitlab.com/ee/api/repositories.html#merge-base\n     * @param options Request options.\n     */\n    async mergeBase(options) {\n        const { id, refs, headers, errorStrategy } = options;\n        const queryParams = { refs };\n        const request = new Request('GET', constructUrl(`/api/v4/projects/${id}/repository/merge_base`, queryParams), constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Generate changelog data based on commits in a repository, without committing them to a changelog file.\n     * Documentation: https://docs.gitlab.com/ee/api/repositories.html#generate-changelog-data\n     * @param options Request options.\n     */\n    async generateChangelog(options) {\n        const { id, version, from, to, date, trailer, headers, errorStrategy } = options;\n        const queryParams = { version, from, to, date, trailer };\n        const request = new Request('GET', constructUrl(`/api/v4/projects/${id}/repository/changelog`, queryParams), constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Generate changelog data based on commits in a repository.\n     * The output of this process is a new section in a changelog file in the Git repository of the given project.\n     * The output format is in Markdown, and can be customized.\n     * Documentation: https://docs.gitlab.com/ee/api/repositories.html#add-changelog-data-to-a-changelog-file\n     * @param options Request options.\n     */\n    async addChangelog(options) {\n        const { id, body, headers, errorStrategy } = options;\n        const request = new Request('POST', `/api/v4/projects/${id}/repository/changelog`, constructHeaders(body, headers), JSON.stringify(body));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n}\nclass RepositoryFileGroup {\n    constructor(implementation, getGlobalErrorStrategy) {\n        this.implementation = implementation;\n        this.getGlobalErrorStrategy = getGlobalErrorStrategy;\n    }\n    /**\n     * Allows you to receive information about file in repository like name, size, content. File content is Base64 encoded.\n     * Documentation: https://docs.gitlab.com/ee/api/repository_files.html#get-file-from-repository\n     * @param options Request options.\n     */\n    async getFile(options) {\n        const { id, file_path, ref, headers, errorStrategy } = options;\n        const queryParams = { ref };\n        const request = new Request('GET', constructUrl(`/api/v4/projects/${id}/repository/files/${file_path}`, queryParams), constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Allows you to receive blame information.\n     * Each blame range contains lines and corresponding commit information.\n     * Documentation: https://docs.gitlab.com/ee/api/repository_files.html#get-file-blame-from-repository\n     * @param options Request options.\n     */\n    async getFileBlame(options) {\n        const { id, file_path, ref, headers, errorStrategy } = options;\n        const queryParams = { ref };\n        const request = new Request('GET', constructUrl(`/api/v4/projects/${id}/repository/files/${file_path}/blame`, queryParams), constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Get raw file from repository.\n     * Documentation: https://docs.gitlab.com/ee/api/repository_files.html#get-raw-file-from-repository\n     * @param options Request options.\n     */\n    async getRawFile(options) {\n        const { id, file_path, ref, headers, errorStrategy } = options;\n        const queryParams = { ref };\n        const request = new Request('GET', constructUrl(`/api/v4/projects/${id}/repository/files/${file_path}/raw`, queryParams), constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers, true);\n    }\n    /**\n     * This allows you to create a single file.\n     * For creating multiple files with a single request see the commits API: https://docs.gitlab.com/ee/api/commits.html#create-a-commit-with-multiple-files-and-actions\n     * Documentation: https://docs.gitlab.com/ee/api/repository_files.html#create-new-file-in-repository\n     * @param options Request options.\n     */\n    async createFile(options) {\n        const { id, file_path, body, headers, errorStrategy } = options;\n        const request = new Request('POST', `/api/v4/projects/${id}/repository/files/${file_path}`, constructHeaders(body, headers), JSON.stringify(body));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * This allows you to update a single file.\n     * For updating multiple files with a single request see the commits API: https://docs.gitlab.com/ee/api/commits.html#create-a-commit-with-multiple-files-and-actions\n     * Documentation: https://docs.gitlab.com/ee/api/repository_files.html#update-existing-file-in-repository\n     * @param options Request options.\n     */\n    async updateFile(options) {\n        const { id, file_path, body, headers, errorStrategy } = options;\n        const request = new Request('PUT', `/api/v4/projects/${id}/repository/files/${file_path}`, constructHeaders(body, headers), JSON.stringify(body));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * This allows you to delete a single file.\n     * For deleting multiple files with a single request see the commits API: https://docs.gitlab.com/ee/api/commits.html#create-a-commit-with-multiple-files-and-actions\n     * Documentation: https://docs.gitlab.com/ee/api/repository_files.html#delete-existing-file-in-repository\n     * @param options Request options.\n     */\n    async deleteFile(options) {\n        const { id, file_path, body, headers, errorStrategy } = options;\n        const request = new Request('DELETE', `/api/v4/projects/${id}/repository/files/${file_path}`, constructHeaders(body, headers), JSON.stringify(body));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers, true);\n    }\n}\nclass CommitGroup {\n    constructor(implementation, getGlobalErrorStrategy) {\n        this.implementation = implementation;\n        this.getGlobalErrorStrategy = getGlobalErrorStrategy;\n        this.Status = new CommitStatusGroup(implementation, this.getGlobalErrorStrategy);\n    }\n    /**\n     * Get a list of repository commits in a project.\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#list-repository-commits\n     * @param options Request options.\n     */\n    async getCommits(options) {\n        const { id, ref_name, since, until, path, all, with_stats, first_parent, order, trailers, headers, errorStrategy } = options;\n        const queryParams = { ref_name, since, until, path, all, with_stats, first_parent, order, trailers };\n        const request = new Request('GET', constructUrl(`/api/v4/projects/${id}/repository/commits`, queryParams), constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Create a commit by posting a JSON payload.\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#create-a-commit-with-multiple-files-and-actions\n     * @param options Request options.\n     */\n    async createCommit(options) {\n        const { id, body, headers, errorStrategy } = options;\n        const request = new Request('POST', `/api/v4/projects/${id}/repository/commits`, constructHeaders(body, headers), JSON.stringify(body));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Get a specific commit identified by the commit hash or name of a branch or tag.\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#get-a-single-commit\n     * @param options Request options.\n     */\n    async getCommit(options) {\n        const { id, sha, stats, headers, errorStrategy } = options;\n        const queryParams = { stats };\n        const request = new Request('GET', constructUrl(`/api/v4/projects/${id}/repository/commits/${sha}`, queryParams), constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Get all references (from branches or tags) a commit is pushed to.\n     * The pagination parameters page and per_page can be used to restrict the list of references.\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#get-references-a-commit-is-pushed-to\n     * @param options Request options.\n     */\n    async getCommitReferences(options) {\n        const { id, sha, type, page, per_page, headers, errorStrategy } = options;\n        const queryParams = { type, page, per_page };\n        const request = new Request('GET', constructUrl(`/api/v4/projects/${id}/repository/commits/${sha}/refs`, queryParams), constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Cherry-picks a commit to a given branch.\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#cherry-pick-a-commit\n     * @param options Request options.\n     */\n    async cherryPickCommit(options) {\n        const { id, sha, body, headers, errorStrategy } = options;\n        const request = new Request('POST', `/api/v4/projects/${id}/repository/commits/${sha}/cherry_pick`, constructHeaders(body, headers), JSON.stringify(body));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Reverts a commit in a given branch.\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#revert-a-commit\n     * @param options Request options.\n     */\n    async revertCommit(options) {\n        const { id, sha, body, headers, errorStrategy } = options;\n        const request = new Request('POST', `/api/v4/projects/${id}/repository/commits/${sha}/revert`, constructHeaders(body, headers), JSON.stringify(body));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Get the diff of a commit in a project.\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#get-the-diff-of-a-commit\n     * @param options Request options.\n     */\n    async getCommitDiff(options) {\n        const { id, sha, headers, errorStrategy } = options;\n        const request = new Request('GET', `/api/v4/projects/${id}/repository/commits/${sha}/diff`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Get the comments of a commit in a project.\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#get-the-comments-of-a-commit\n     * @param options Request options.\n     */\n    async getComments(options) {\n        const { id, sha, headers, errorStrategy } = options;\n        const request = new Request('GET', `/api/v4/projects/${id}/repository/commits/${sha}/comments`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Adds a comment to a commit.\n     * To post a comment in a particular line of a particular file, you must specify the full commit SHA, the path, the line, and line_type should be new.\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#post-comment-to-commit\n     * @param options Request options.\n     */\n    async createComment(options) {\n        const { id, sha, body, headers, errorStrategy } = options;\n        const request = new Request('POST', `/api/v4/projects/${id}/repository/commits/${sha}/comments`, constructHeaders(body, headers), JSON.stringify(body));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Get the discussions of a commit in a project.\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#get-the-discussions-of-a-commit\n     * @param options Request options.\n     */\n    async getDiscussions(options) {\n        const { id, sha, headers, errorStrategy } = options;\n        const request = new Request('GET', `/api/v4/projects/${id}/repository/commits/${sha}/discussions`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Get a list of merge requests related to the specified commit.\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#list-merge-requests-associated-with-a-commit\n     * @param options Request options.\n     */\n    async getMergeRequests(options) {\n        const { id, sha, headers, errorStrategy } = options;\n        const request = new Request('GET', `/api/v4/projects/${id}/repository/commits/${sha}/merge_requests`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Get the GPG signature from a commit, if it is signed. For unsigned commits, it results in a 404 response: https://docs.gitlab.com/ee/user/project/repository/gpg_signed_commits/index.html\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#get-gpg-signature-of-a-commit\n     * @param options Request options.\n     */\n    async getGPGSignature(options) {\n        const { id, sha, headers, errorStrategy } = options;\n        const request = new Request('GET', `/api/v4/projects/${id}/repository/commits/${sha}/signature`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n}\nclass CommitStatusGroup {\n    constructor(implementation, getGlobalErrorStrategy) {\n        this.implementation = implementation;\n        this.getGlobalErrorStrategy = getGlobalErrorStrategy;\n    }\n    /**\n     * List the statuses of a commit in a project.\n     * The pagination parameters page and per_page can be used to restrict the list of references.\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#list-the-statuses-of-a-commit\n     * @param options Request options.\n     */\n    async getStatuses(options) {\n        const { id, sha, ref, stage, name, all, headers, errorStrategy } = options;\n        const queryParams = { ref, stage, name, all };\n        const request = new Request('GET', constructUrl(`/api/v4/projects/${id}/repository/commits/${sha}/statuses`, queryParams), constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Adds or updates a build status of a commit.\n     * Documentation: https://docs.gitlab.com/ee/api/commits.html#post-the-build-status-to-a-commit\n     * @param options Request options.\n     */\n    async createBuildStatus(options) {\n        const { id, sha, body, headers, errorStrategy } = options;\n        const request = new Request('POST', `/api/v4/projects/${id}/statuses/${sha}`, constructHeaders(body, headers), JSON.stringify(body));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n}\nclass EpicGroup {\n    constructor(implementation, getGlobalErrorStrategy) {\n        this.implementation = implementation;\n        this.getGlobalErrorStrategy = getGlobalErrorStrategy;\n    }\n    /**\n     * Gets all epics of the requested group and its subgroups.\n     * Documentation: https://docs.gitlab.com/ee/api/epics.html#list-epics-for-a-group\n     * @param options Request options.\n     */\n    async getEpicsForGroup(options) {\n        const { id, headers, errorStrategy, ...queryParams } = options;\n        const request = new Request('GET', constructUrl(`/api/v4/groups/${id}/epics`, queryParams), constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Gets a single epic.\n     * Documentation: https://docs.gitlab.com/ee/api/epics.html#single-epic\n     * @param options Request options.\n     */\n    async getEpic(options) {\n        const { id, epic_iid, headers, errorStrategy } = options;\n        const request = new Request('GET', `/api/v4/groups/${id}/epics/${epic_iid}`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Creates a new epic.\n     * Documentation: https://docs.gitlab.com/ee/api/epics.html#new-epic\n     * @param options Request options.\n     */\n    async createEpic(options) {\n        const { id, body, headers, errorStrategy } = options;\n        const request = new Request('POST', `/api/v4/groups/${id}/epics`, constructHeaders(body, headers), JSON.stringify(body));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Updates an epic.\n     * Documentation: https://docs.gitlab.com/ee/api/epics.html#update-epic\n     * @param options Request options.\n     */\n    async updateEpic(options) {\n        const { id, epic_iid, body, headers, errorStrategy } = options;\n        const request = new Request('PUT', `/api/v4/groups/${id}/epics/${epic_iid}`, constructHeaders(body, headers), JSON.stringify(body));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Deletes an epic.\n     * Documentation: https://docs.gitlab.com/ee/api/epics.html#delete-epic\n     * @param options Request options.\n     */\n    async deleteEpic(options) {\n        const { id, epic_iid, headers, errorStrategy } = options;\n        const request = new Request('DELETE', `/api/v4/groups/${id}/epics/${epic_iid}`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers, true);\n    }\n    /**\n     * Manually creates a to-do item for the current user on an epic.\n     * If there already exists a to-do item for the user on that epic, status code 304 is returned.\n     * Documentation: https://docs.gitlab.com/ee/api/epics.html#create-a-to-do-item\n     * @param options Request options.\n     */\n    async createTodoItem(options) {\n        const { id, epic_iid, headers, errorStrategy } = options;\n        const request = new Request('POST', `/api/v4/groups/${id}/epics/${epic_iid}/todo`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n}\nclass IssueGroup {\n    constructor(implementation, getGlobalErrorStrategy) {\n        this.implementation = implementation;\n        this.getGlobalErrorStrategy = getGlobalErrorStrategy;\n    }\n    /**\n     * Get all issues the authenticated user has access to. By default it returns only issues created by the current user. To get all issues, use parameter scope=all.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#list-issues\n     * @param options Request options.\n     */\n    async getIssues(options) {\n        const { in_param, headers, errorStrategy, ...queryParams } = options || {};\n        const request = new Request('GET', constructUrl(`/api/v4/issues?in=${in_param ? in_param : 'title,description'}`, queryParams), constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Get a list of a group’s issues. If the group is private, credentials need to be provided for authorization.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#list-group-issues\n     * @param options Request options.\n     */\n    async getGroupIssues(options) {\n        const { id, headers, errorStrategy, ...queryParams } = options;\n        const request = new Request('GET', constructUrl(`/api/v4/groups/${id}/issues`, queryParams), constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Get a list of a project’s issues. If the project is private, you need to provide credentials to authorize.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#list-project-issues\n     * @param options Request options.\n     */\n    async getProjectIssues(options) {\n        const { id, headers, errorStrategy, ...queryParams } = options;\n        const request = new Request('GET', constructUrl(`/api/v4/projects/${id}/issues`, queryParams), constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Only for administrators. Get a single issue.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#single-issue\n     * @param options Request options.\n     */\n    async getIssue(options) {\n        const { id, headers, errorStrategy } = options;\n        const request = new Request('GET', `/api/v4/issues/${id}`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Get a single project issue. If the project is private or the issue is confidential, you need to provide credentials to authorize.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#single-project-issue\n     * @param options Request options.\n     */\n    async getProjectIssue(options) {\n        const { id, issue_iid, headers, errorStrategy } = options;\n        const request = new Request('GET', `/api/v4/projects/${id}/issues/${issue_iid}`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Creates a new project issue.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#new-issue\n     * @param options Request options.\n     */\n    async createIssue(options) {\n        const { id, body, headers, errorStrategy } = options;\n        const request = new Request('POST', `/api/v4/projects/${id}/issues`, constructHeaders(body, headers), JSON.stringify(body));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Updates an existing project issue. This call is also used to mark an issue as closed.\n     * At least one of the following parameters is required for the request to be successful:\n     * :assignee_id\n     * :assignee_ids\n     * :confidential\n     * :created_at\n     * :description\n     * :discussion_locked\n     * :due_date\n     * :issue_type\n     * :labels\n     * :milestone_id\n     * :state_event\n     * :title\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#new-issue\n     * @param options Request options.\n     */\n    async editIssue(options) {\n        const { id, issue_iid, body, headers, errorStrategy } = options;\n        const request = new Request('PUT', `/api/v4/projects/${id}/issues/${issue_iid}`, constructHeaders(body, headers), JSON.stringify(body));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Only for administrators and project owners. Deletes an issue.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#delete-an-issue\n     * @param options Request options.\n     */\n    async deleteIssue(options) {\n        const { id, issue_iid, headers, errorStrategy } = options;\n        const request = new Request('DELETE', `/api/v4/projects/${id}/issues/${issue_iid}`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers, true);\n    }\n    /**\n     * Reorders an issue, you can see the results when sorting issues manually.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#reorder-an-issue\n     * @param options Request options.\n     */\n    async reorderIssue(options) {\n        const { id, issue_iid, body, headers, errorStrategy } = options;\n        const request = new Request('PUT', `/api/v4/projects/${id}/issues/${issue_iid}/reorder`, constructHeaders(body, headers), JSON.stringify(body));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers, true);\n    }\n    /**\n     * Moves an issue to a different project.\n     * If the target project is the source project or the user has insufficient permissions, an error message with status code 400 is returned.\n     * If a given label or milestone with the same name also exists in the target project, it’s then assigned to the issue being moved.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#move-an-issue\n     * @param options Request options.\n     */\n    async moveIssue(options) {\n        const { id, issue_iid, body, headers, errorStrategy } = options;\n        const request = new Request('POST', `/api/v4/projects/${id}/issues/${issue_iid}/move`, constructHeaders(body, headers), JSON.stringify(body));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Clone the issue to given project. If the user has insufficient permissions, an error message with status code 400 is returned.\n     * Copies as much data as possible as long as the target project contains equivalent labels, milestones, and so on.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#clone-an-issue\n     * @param options Request options.\n     */\n    async cloneIssue(options) {\n        const { id, issue_iid, body, headers, errorStrategy } = options;\n        const request = new Request('POST', `/api/v4/projects/${id}/issues/${issue_iid}/clone`, constructHeaders(body, headers), JSON.stringify(body));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Subscribes the authenticated user to an issue to receive notifications.\n     * If the user is already subscribed to the issue, the status code 304 is returned.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#subscribe-to-an-issue\n     * @param options Request options.\n     */\n    async subscribeToIssue(options) {\n        const { id, issue_iid, headers, errorStrategy } = options;\n        const request = new Request('POST', `/api/v4/projects/${id}/issues/${issue_iid}/subscribe`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Unsubscribes the authenticated user from the issue to not receive notifications from it.\n     * If the user is not subscribed to the issue, the status code 304 is returned.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#unsubscribe-from-an-issue\n     * @param options Request options.\n     */\n    async unsubscribeFromIssue(options) {\n        const { id, issue_iid, headers, errorStrategy } = options;\n        const request = new Request('POST', `/api/v4/projects/${id}/issues/${issue_iid}/unsubscribe`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Manually creates a to-do item for the current user on an issue.\n     * If there already exists a to-do item for the user on that issue, status code 304 is returned.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#create-a-to-do-item\n     * @param options Request options.\n     */\n    async createTodoItem(options) {\n        const { id, issue_iid, headers, errorStrategy } = options;\n        const request = new Request('POST', `/api/v4/projects/${id}/issues/${issue_iid}/todo`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Promotes an issue to an epic by adding a comment with the /promote quick action.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#promote-an-issue-to-an-epic\n     * @param options Request options.\n     */\n    async promoteToEpic(options) {\n        const { id, issue_iid, body, headers, errorStrategy } = options;\n        const request = new Request('POST', `/api/v4/projects/${id}/issues/${issue_iid}/notes`, constructHeaders(body, headers), body);\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Sets an estimated time of work for this issue.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#set-a-time-estimate-for-an-issue\n     * @param options Request options.\n     */\n    async setTimeEstimateForIssue(options) {\n        const { id, issue_iid, body, headers, errorStrategy } = options;\n        const request = new Request('POST', `/api/v4/projects/${id}/issues/${issue_iid}/time_estimate`, constructHeaders(body, headers), JSON.stringify(body));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Resets the estimated time for this issue to 0 seconds.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#reset-the-time-estimate-for-an-issue\n     * @param options Request options.\n     */\n    async resetTimeEstimateForIssue(options) {\n        const { id, issue_iid, headers, errorStrategy } = options;\n        const request = new Request('POST', `/api/v4/projects/${id}/issues/${issue_iid}/reset_time_estimate`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Adds spent time for this issue.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#add-spent-time-for-an-issue\n     * @param options Request options.\n     */\n    async addSpentTimeForIssue(options) {\n        const { id, issue_iid, body, headers, errorStrategy } = options;\n        const request = new Request('POST', `/api/v4/projects/${id}/issues/${issue_iid}/add_spent_time`, constructHeaders(body, headers), JSON.stringify(body));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Resets the total spent time for this issue to 0 seconds.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#reset-spent-time-for-an-issue\n     * @param options Request options.\n     */\n    async resetSpentTimeForIssue(options) {\n        const { id, issue_iid, headers, errorStrategy } = options;\n        const request = new Request('POST', `/api/v4/projects/${id}/issues/${issue_iid}/reset_spent_time`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * If the project is private or the issue is confidential, you need to provide credentials to authorize.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#get-time-tracking-stats\n     * @param options Request options.\n     */\n    async getTimeTrackingStatsForIssue(options) {\n        const { id, issue_iid, headers, errorStrategy } = options;\n        const request = new Request('GET', `/api/v4/projects/${id}/issues/${issue_iid}/time_stats`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Get all the merge requests that are related to the issue.\n     * If the project is private or the issue is confidential, you need to provide credentials to authorize.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#list-merge-requests-related-to-issue\n     * @param options Request options.\n     */\n    async getMergeRequestsRelatedToIssue(options) {\n        const { id, issue_iid, headers, errorStrategy } = options;\n        const request = new Request('GET', `/api/v4/projects/${id}/issues/${issue_iid}/related_merge_requests`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Get all merge requests that close a particular issue when merged.\n     * If the project is private or the issue is confidential, you need to provide credentials to authorize.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#list-merge-requests-that-close-a-particular-issue-on-merge\n     * @param options Request options.\n     */\n    async getMergeRequestsThatClosedAnIssue(options) {\n        const { id, issue_iid, headers, errorStrategy } = options;\n        const request = new Request('GET', `/api/v4/projects/${id}/issues/${issue_iid}/closed_by`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * If the project is private or the issue is confidential, you need to provide credentials to authorize.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#participants-on-issues\n     * @param options Request options.\n     */\n    async getParticipants(options) {\n        const { id, issue_iid, headers, errorStrategy } = options;\n        const request = new Request('GET', `/api/v4/projects/${id}/issues/${issue_iid}/participants`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Available only for administrators.\n     * Documentation: https://docs.gitlab.com/ee/api/issues.html#get-user-agent-details\n     * @param options Request options.\n     */\n    async getUserAgentDetails(options) {\n        const { id, issue_iid, headers, errorStrategy } = options;\n        const request = new Request('GET', `/api/v4/projects/${id}/issues/${issue_iid}/user_agent_detail`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n}\nclass LinkGroup {\n    constructor(implementation, getGlobalErrorStrategy) {\n        this.implementation = implementation;\n        this.getGlobalErrorStrategy = getGlobalErrorStrategy;\n        this.Issue = new LinkIssueGroup(this.implementation, this.getGlobalErrorStrategy);\n    }\n}\nclass LinkIssueGroup {\n    constructor(implementation, getGlobalErrorStrategy) {\n        this.implementation = implementation;\n        this.getGlobalErrorStrategy = getGlobalErrorStrategy;\n    }\n    /**\n     * Get a list of a given issue’s linked issues, sorted by the relationship creation datetime (ascending). Issues are filtered according to the user authorizations.\n     * Documentation: https://docs.gitlab.com/ee/api/issue_links.html#list-issue-relations\n     * @param options Request options.\n     */\n    async getRelations(options) {\n        const { id, issue_iid, headers, errorStrategy } = options;\n        const request = new Request('GET', `/api/v4/projects/${id}/issues/${issue_iid}/links`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Creates a two-way relation between two issues. The user must be allowed to update both issues to succeed.\n     * Documentation: https://docs.gitlab.com/ee/api/issue_links.html#create-an-issue-link\n     * @param options Request options.\n     */\n    async createLink(options) {\n        const { id, issue_iid, body, headers, errorStrategy } = options;\n        const request = new Request('POST', `/api/v4/projects/${id}/issues/${issue_iid}/links`, constructHeaders(body, headers), JSON.stringify(body));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Deletes an issue link, thus removes the two-way relationship.\n     * Documentation: https://docs.gitlab.com/ee/api/issue_links.html#delete-an-issue-link\n     * @param options Request options.\n     */\n    async deleteLink(options) {\n        const { id, issue_iid, issue_link_id, headers, errorStrategy } = options;\n        const request = new Request('DELETE', `/api/v4/projects/${id}/issues/${issue_iid}/links/${issue_link_id}`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n}\nclass BranchGroup {\n    constructor(implementation, getGlobalErrorStrategy) {\n        this.implementation = implementation;\n        this.getGlobalErrorStrategy = getGlobalErrorStrategy;\n    }\n    /**\n     * Get a list of repository branches from a project, sorted by name alphabetically.\n     * Documentation: https://docs.gitlab.com/ee/api/branches.html#list-repository-branches\n     * @param options Request options.\n     */\n    async getBranches(options) {\n        const { id, headers, errorStrategy, ...queryParams } = options;\n        const request = new Request('GET', constructUrl(`/api/v4/projects/${id}/repository/branches`, queryParams), constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Get a single project repository branch.\n     * Documentation: https://docs.gitlab.com/ee/api/branches.html#get-single-repository-branch\n     * @param options Request options.\n     */\n    async getBranch(options) {\n        const { id, branch, headers, errorStrategy } = options;\n        const request = new Request('GET', `/api/v4/projects/${id}/repository/branches/${branch}`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Create a new branch in the repository.\n     * Documentation: https://docs.gitlab.com/ee/api/branches.html#create-repository-branch\n     * @param options Request options.\n     */\n    async createBranch(options) {\n        const { id, body, headers, errorStrategy } = options;\n        const request = new Request('POST', `/api/v4/projects/${id}/repository/branches`, constructHeaders(body, headers), JSON.stringify(body));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers);\n    }\n    /**\n     * Delete a branch from the repository.\n     * Documentation: https://docs.gitlab.com/ee/api/branches.html#delete-repository-branch\n     * @param options Request options.\n     */\n    async deleteBranch(options) {\n        const { id, branch, headers, errorStrategy } = options;\n        const request = new Request('DELETE', `/api/v4/projects/${id}/repository/branches/${branch}`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers, true);\n    }\n    /**\n     * Deletes all branches that are merged into the project’s default branch.\n     * Documentation: https://docs.gitlab.com/ee/api/branches.html#delete-merged-branches\n     * @param options Request options.\n     */\n    async deleteMergedBranches(options) {\n        const { id, headers, errorStrategy } = options;\n        const request = new Request('DELETE', `/api/v4/projects/${id}/repository/merged_branches`, constructHeaders(headers));\n        request.setBufferImplementation(this.implementation);\n        return await executeHttpCall(this.implementation, request, errorStrategyBuilderConstructor, this.getGlobalErrorStrategy(), errorStrategy, errorMessageBuilder, customErrorHandlers, true);\n    }\n}\n"]}