gitverse-api-sdk 5.1.0 → 5.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,9 +2,9 @@
2
2
  "version": 3,
3
3
  "sources": ["../src/api/repositories.ts"],
4
4
  "sourcesContent": [
5
- "import type { GitVerseClient } from \"../client\";\nimport type {\n AddCollaboratorParams,\n Branch,\n Collaborator,\n CollaboratorInvitation,\n Commit,\n CompareResponse,\n CreateCommitParams,\n CreateFileParams,\n CreateForkParams,\n CreateReferenceParams,\n CreateRepositoryParams,\n CreateTreeParams,\n DeleteFileParams,\n FileCreationResponse,\n FileDeleteResponse,\n GitTreeResponse,\n PullRequest,\n Reference,\n Repository,\n RepoTree,\n Secret,\n SecretList,\n UpdatePullRequestParams,\n UpdateRepositoryParams,\n} from \"../types\";\n\n/**\n * API для работы с репозиториями\n */\nexport class RepositoriesApi {\n private client: GitVerseClient;\n\n /**\n * Создает новый экземпляр API\n * @param client GitVerse клиент\n */\n constructor(client: GitVerseClient) {\n this.client = client;\n }\n\n /**\n * Get repository details\n * @param owner Repository owner\n * @param repo Repository name\n * @param options Опции запроса\n * @returns Repository\n */\n get(owner: string, repo: string, options?: { signal?: AbortSignal }): Promise<Repository> {\n return this.client.get<Repository>(`/repos/${owner}/${repo}`, options);\n }\n\n /**\n * Update repository\n * @param owner Repository owner\n * @param repo Repository name\n * @param params New repository settings\n * @param options Опции запроса\n * @returns Repository\n */\n update(\n owner: string,\n repo: string,\n params: UpdateRepositoryParams,\n options?: { signal?: AbortSignal },\n ): Promise<Repository> {\n return this.client.patch<Repository>(`/repos/${owner}/${repo}`, params, options);\n }\n\n /**\n * Delete repository\n * @param owner Repository owner\n * @param repo Repository name\n * @param options Опции запроса\n * @returns void\n */\n delete(owner: string, repo: string, options?: { signal?: AbortSignal }): Promise<void> {\n return this.client.delete<void>(`/repos/${owner}/${repo}`, undefined, options);\n }\n\n /**\n * Gets a list of repository secrets\n * @param owner Owner name\n * @param repo Repository name\n * @param queryParams Параметры запроса\n * @param options Опции запроса\n * @returns SecretList\n */\n listRepoSecrets(\n owner: string,\n repo: string,\n queryParams?: { per_page?: string; page?: string },\n options?: { signal?: AbortSignal },\n ): Promise<SecretList> {\n const searchParams = new URLSearchParams();\n if (queryParams?.per_page !== undefined) searchParams.append(\"per_page\", queryParams.per_page);\n if (queryParams?.page !== undefined) searchParams.append(\"page\", queryParams.page);\n const queryString = searchParams.toString();\n const url = `/repos/${owner}/${repo}/actions/secrets${queryString ? `?${queryString}` : \"\"}`;\n return this.client.get<SecretList>(url, options);\n }\n\n /**\n * Gets secrets metadata (without values) in repositories.\n * @param owner Owner name\n * @param repo Repository name\n * @param secretname Secret name\n * @param options Опции запроса\n * @returns Secret\n */\n getRepoSecret(owner: string, repo: string, secretname: string, options?: { signal?: AbortSignal }): Promise<Secret> {\n return this.client.get<Secret>(`/repos/${owner}/${repo}/actions/secrets/${secretname}`, options);\n }\n\n /**\n * Creates or updates a secret in the repository, without encryption\n * @param owner Owner name\n * @param repo Repository name\n * @param secretname Secret name\n * @param queryParams Параметры запроса\n * @param options Опции запроса\n * @returns Secret\n */\n createOrUpdateRepoSecret(\n owner: string,\n repo: string,\n secretname: string,\n queryParams?: { encrypted_value: string },\n options?: { signal?: AbortSignal },\n ): Promise<Secret> {\n const searchParams = new URLSearchParams();\n if (queryParams?.encrypted_value !== undefined) searchParams.append(\"encrypted_value\", queryParams.encrypted_value);\n const queryString = searchParams.toString();\n const url = `/repos/${owner}/${repo}/actions/secrets/${secretname}${queryString ? `?${queryString}` : \"\"}`;\n return this.client.put<Secret>(url, options);\n }\n\n /**\n * Removes a secret from the repository\n * @param owner Owner name\n * @param repo Repository name\n * @param secretname Secret name\n * @param options Опции запроса\n * @returns void\n */\n deleteRepoSecret(owner: string, repo: string, secretname: string, options?: { signal?: AbortSignal }): Promise<void> {\n return this.client.delete<void>(`/repos/${owner}/${repo}/actions/secrets/${secretname}`, undefined, options);\n }\n\n /**\n * List repository branches\n * @param owner Owner of the repository (username or organization)\n * @param repo Name of the repository without .git extension\n * @param queryParams Параметры запроса\n * @param options Опции запроса\n * @returns Branch[]\n */\n listBranches(\n owner: string,\n repo: string,\n queryParams?: { page?: number; per_page?: number; q?: string },\n options?: { signal?: AbortSignal },\n ): Promise<Branch[]> {\n const searchParams = new URLSearchParams();\n if (queryParams?.page !== undefined) searchParams.append(\"page\", String(queryParams.page));\n if (queryParams?.per_page !== undefined) searchParams.append(\"per_page\", String(queryParams.per_page));\n if (queryParams?.q !== undefined) searchParams.append(\"q\", queryParams.q);\n const queryString = searchParams.toString();\n const url = `/repos/${owner}/${repo}/branches${queryString ? `?${queryString}` : \"\"}`;\n return this.client.get<Branch[]>(url, options);\n }\n\n /**\n * List repository collaborators\n * @param owner Repository owner\n * @param repo Repository name\n * @param queryParams Параметры запроса\n * @param options Опции запроса\n * @returns Collaborator[]\n */\n listCollaborators(\n owner: string,\n repo: string,\n queryParams?: { affiliation?: string; permission?: string; page?: number; per_page?: number },\n options?: { signal?: AbortSignal },\n ): Promise<Collaborator[]> {\n const searchParams = new URLSearchParams();\n if (queryParams?.affiliation !== undefined) searchParams.append(\"affiliation\", queryParams.affiliation);\n if (queryParams?.permission !== undefined) searchParams.append(\"permission\", queryParams.permission);\n if (queryParams?.page !== undefined) searchParams.append(\"page\", String(queryParams.page));\n if (queryParams?.per_page !== undefined) searchParams.append(\"per_page\", String(queryParams.per_page));\n const queryString = searchParams.toString();\n const url = `/repos/${owner}/${repo}/collaborators${queryString ? `?${queryString}` : \"\"}`;\n return this.client.get<Collaborator[]>(url, options);\n }\n\n /**\n * Add or update repository collaborator\n * @param owner Repository owner\n * @param repo Repository name\n * @param collaborator Username of the collaborator to add or update\n * @param params Collaborator permission settings\n * @param options Опции запроса\n * @returns CollaboratorInvitation\n */\n addCollaborator(\n owner: string,\n repo: string,\n collaborator: string,\n params: AddCollaboratorParams,\n options?: { signal?: AbortSignal },\n ): Promise<CollaboratorInvitation> {\n return this.client.put<CollaboratorInvitation>(\n `/repos/${owner}/${repo}/collaborators/${collaborator}`,\n params,\n options,\n );\n }\n\n /**\n * Retrieve a list of repository commits\n * @param owner Owner of the repository (owner or organization name)\n * @param repo Name of the repository without the .git extension\n * @param queryParams Параметры запроса\n * @param options Опции запроса\n * @returns Commit[]\n */\n listCommits(\n owner: string,\n repo: string,\n queryParams?: {\n page?: number;\n per_page?: number;\n sha?: string;\n path?: string;\n not?: string;\n author?: string;\n committer?: string;\n since?: string;\n until?: string;\n },\n options?: { signal?: AbortSignal },\n ): Promise<Commit[]> {\n const searchParams = new URLSearchParams();\n if (queryParams?.page !== undefined) searchParams.append(\"page\", String(queryParams.page));\n if (queryParams?.per_page !== undefined) searchParams.append(\"per_page\", String(queryParams.per_page));\n if (queryParams?.sha !== undefined) searchParams.append(\"sha\", queryParams.sha);\n if (queryParams?.path !== undefined) searchParams.append(\"path\", queryParams.path);\n if (queryParams?.not !== undefined) searchParams.append(\"not\", queryParams.not);\n if (queryParams?.author !== undefined) searchParams.append(\"author\", queryParams.author);\n if (queryParams?.committer !== undefined) searchParams.append(\"committer\", queryParams.committer);\n if (queryParams?.since !== undefined) searchParams.append(\"since\", queryParams.since);\n if (queryParams?.until !== undefined) searchParams.append(\"until\", queryParams.until);\n const queryString = searchParams.toString();\n const url = `/repos/${owner}/${repo}/commits${queryString ? `?${queryString}` : \"\"}`;\n return this.client.get<Commit[]>(url, options);\n }\n\n /**\n * Retrieve commit information\n * @param owner Owner of the repository (owner or organization name)\n * @param repo Name of the repository without the .git extension\n * @param sha Commit hash\n * @param options Опции запроса\n * @returns Commit\n */\n getCommit(owner: string, repo: string, sha: string, options?: { signal?: AbortSignal }): Promise<Commit> {\n return this.client.get<Commit>(`/repos/${owner}/${repo}/commits/${sha}`, options);\n }\n\n /**\n * Compare two branches/tags/commits\n * @param owner Owner of the repository (username or organization name)\n * @param repo Name of the repository without the .git extension\n * @param basehead References to compare in BASE...HEAD format (e.g., main...feature)\n * @param queryParams Параметры запроса\n * @param options Опции запроса\n * @returns CompareResponse\n */\n compareCommits(\n owner: string,\n repo: string,\n basehead: string,\n queryParams?: { page?: number; per_page?: number },\n options?: { signal?: AbortSignal },\n ): Promise<CompareResponse> {\n const searchParams = new URLSearchParams();\n if (queryParams?.page !== undefined) searchParams.append(\"page\", String(queryParams.page));\n if (queryParams?.per_page !== undefined) searchParams.append(\"per_page\", String(queryParams.per_page));\n const queryString = searchParams.toString();\n const url = `/repos/${owner}/${repo}/compare/${basehead}${queryString ? `?${queryString}` : \"\"}`;\n return this.client.get<CompareResponse>(url, options);\n }\n\n /**\n * Get file or directory contents\n * @param owner Repository owner\n * @param repo Repository name\n * @param filepath Path to file or directory in the repository\n * @param queryParams Параметры запроса\n * @param options Опции запроса\n * @returns Record<string, unknown>\n */\n getContent(\n owner: string,\n repo: string,\n filepath: string,\n queryParams?: { ref?: string; scope?: string },\n options?: { signal?: AbortSignal },\n ): Promise<Record<string, unknown>> {\n const searchParams = new URLSearchParams();\n if (queryParams?.ref !== undefined) searchParams.append(\"ref\", queryParams.ref);\n if (queryParams?.scope !== undefined) searchParams.append(\"scope\", queryParams.scope);\n const queryString = searchParams.toString();\n const url = `/repos/${owner}/${repo}/contents/${filepath}${queryString ? `?${queryString}` : \"\"}`;\n return this.client.get<Record<string, unknown>>(url, options);\n }\n\n /**\n * Create or update file in repository\n * @param owner Repository owner\n * @param repo Repository name\n * @param filepath Path to the file in the repository\n * @param params File creation or update options, including base64 content, branch, message, etc.\n * @param options Опции запроса\n * @returns FileCreationResponse\n */\n createOrUpdateFile(\n owner: string,\n repo: string,\n filepath: string,\n params: CreateFileParams,\n options?: { signal?: AbortSignal },\n ): Promise<FileCreationResponse> {\n return this.client.put<FileCreationResponse>(`/repos/${owner}/${repo}/contents/${filepath}`, params, options);\n }\n\n /**\n * Delete file in repository\n * @param owner Repository owner\n * @param repo Repository name\n * @param filepath Path to the file in the repository\n * @param params File deletion options, including SHA, branch, commit message, etc.\n * @param options Опции запроса\n * @returns FileDeleteResponse\n */\n deleteFile(\n owner: string,\n repo: string,\n filepath: string,\n params: DeleteFileParams,\n options?: { signal?: AbortSignal },\n ): Promise<FileDeleteResponse> {\n return this.client.delete<FileDeleteResponse>(`/repos/${owner}/${repo}/contents/${filepath}`, params, options);\n }\n\n /**\n * Fork a repository\n * @param owner Owner of the base repository\n * @param repo Name of the base repository\n * @param params Fork options, including target name and organization\n * @param options Опции запроса\n * @returns Repository\n */\n createFork(\n owner: string,\n repo: string,\n params: CreateForkParams,\n options?: { signal?: AbortSignal },\n ): Promise<Repository> {\n return this.client.post<Repository>(`/repos/${owner}/${repo}/forks`, params, options);\n }\n\n /**\n * Create a Git commit\n * @param owner Owner of the repository (owner or organization name)\n * @param repo Name of the repository without the .git extension\n * @param params Parameters for creating the commit\n * @param options Опции запроса\n * @returns Commit\n */\n createCommit(\n owner: string,\n repo: string,\n params: CreateCommitParams,\n options?: { signal?: AbortSignal },\n ): Promise<Commit> {\n return this.client.post<Commit>(`/repos/${owner}/${repo}/git/commits`, params, options);\n }\n\n /**\n * Create a Git reference\n * @param owner Owner of the repository (owner or organization name)\n * @param repo Name of the repository without the .git extension\n * @param params Parameters for creating the reference\n * @param options Опции запроса\n * @returns Reference\n */\n createRef(\n owner: string,\n repo: string,\n params: CreateReferenceParams,\n options?: { signal?: AbortSignal },\n ): Promise<Reference> {\n return this.client.post<Reference>(`/repos/${owner}/${repo}/git/refs`, params, options);\n }\n\n /**\n * Creates new Git tree\n * @param owner owner\n * @param repo repo\n * @param params Параметры создания дерева\n * @param options Опции запроса\n * @returns RepoTree\n */\n createTree(\n owner: string,\n repo: string,\n params: CreateTreeParams,\n options?: { signal?: AbortSignal },\n ): Promise<RepoTree> {\n return this.client.post<RepoTree>(`/repos/${owner}/${repo}/git/trees`, params, options);\n }\n\n /**\n * Get repository tree by SHA\n * @param owner Repository owner\n * @param repo Repository name\n * @param sha Commit SHA to list tree for\n * @param queryParams Параметры запроса\n * @param options Опции запроса\n * @returns GitTreeResponse\n */\n getTree(\n owner: string,\n repo: string,\n sha: string,\n queryParams?: { page?: number; per_page?: number; recursive?: boolean },\n options?: { signal?: AbortSignal },\n ): Promise<GitTreeResponse> {\n const searchParams = new URLSearchParams();\n if (queryParams?.page !== undefined) searchParams.append(\"page\", String(queryParams.page));\n if (queryParams?.per_page !== undefined) searchParams.append(\"per_page\", String(queryParams.per_page));\n if (queryParams?.recursive !== undefined) searchParams.append(\"recursive\", String(queryParams.recursive));\n const queryString = searchParams.toString();\n const url = `/repos/${owner}/${repo}/git/trees/${sha}${queryString ? `?${queryString}` : \"\"}`;\n return this.client.get<GitTreeResponse>(url, options);\n }\n\n /**\n * Get repository languages\n * @param owner Repository owner\n * @param repo Repository name\n * @param options Опции запроса\n * @returns Record<string, unknown>\n */\n listLanguages(owner: string, repo: string, options?: { signal?: AbortSignal }): Promise<Record<string, unknown>> {\n return this.client.get<Record<string, unknown>>(`/repos/${owner}/${repo}/languages`, options);\n }\n\n /**\n * List pull requests\n * @param owner Repository owner\n * @param repo Repository name\n * @param queryParams Параметры запроса\n * @param options Опции запроса\n * @returns PullRequest[]\n */\n listPulls(\n owner: string,\n repo: string,\n queryParams?: {\n state?: string;\n head?: string;\n base?: string;\n sort?: string;\n direction?: string;\n page?: number;\n per_page?: number;\n },\n options?: { signal?: AbortSignal },\n ): Promise<PullRequest[]> {\n const searchParams = new URLSearchParams();\n if (queryParams?.state !== undefined) searchParams.append(\"state\", queryParams.state);\n if (queryParams?.head !== undefined) searchParams.append(\"head\", queryParams.head);\n if (queryParams?.base !== undefined) searchParams.append(\"base\", queryParams.base);\n if (queryParams?.sort !== undefined) searchParams.append(\"sort\", queryParams.sort);\n if (queryParams?.direction !== undefined) searchParams.append(\"direction\", queryParams.direction);\n if (queryParams?.page !== undefined) searchParams.append(\"page\", String(queryParams.page));\n if (queryParams?.per_page !== undefined) searchParams.append(\"per_page\", String(queryParams.per_page));\n const queryString = searchParams.toString();\n const url = `/repos/${owner}/${repo}/pulls${queryString ? `?${queryString}` : \"\"}`;\n return this.client.get<PullRequest[]>(url, options);\n }\n\n /**\n * Pull request details.\n * @param owner Repository owner\n * @param repo Repository name\n * @param pull_number The number that identifies the pull request..\n * @param options Опции запроса\n * @returns PullRequest\n */\n getPull(owner: string, repo: string, pull_number: number, options?: { signal?: AbortSignal }): Promise<PullRequest> {\n return this.client.get<PullRequest>(`/repos/${owner}/${repo}/pulls/${pull_number}`, options);\n }\n\n /**\n * Update a pull request.\n * @param owner Repository owner\n * @param repo Repository name\n * @param pull_number The number that identifies the pull request.\n * @param params Pull request update parameters\n * @param options Опции запроса\n * @returns PullRequest\n */\n updatePull(\n owner: string,\n repo: string,\n pull_number: number,\n params: UpdatePullRequestParams,\n options?: { signal?: AbortSignal },\n ): Promise<PullRequest> {\n return this.client.patch<PullRequest>(`/repos/${owner}/${repo}/pulls/${pull_number}`, params, options);\n }\n\n /**\n * Get authenticated user repositories\n * @param queryParams Параметры запроса\n * @param options Опции запроса\n * @returns Repository[]\n */\n listForAuthenticatedUser(\n queryParams?: { page?: number; per_page?: number },\n options?: { signal?: AbortSignal },\n ): Promise<Repository[]> {\n const searchParams = new URLSearchParams();\n if (queryParams?.page !== undefined) searchParams.append(\"page\", String(queryParams.page));\n if (queryParams?.per_page !== undefined) searchParams.append(\"per_page\", String(queryParams.per_page));\n const queryString = searchParams.toString();\n const url = `/user/repos${queryString ? `?${queryString}` : \"\"}`;\n return this.client.get<Repository[]>(url, options);\n }\n\n /**\n * Create repository\n * @param params Repository creation options\n * @param options Опции запроса\n * @returns Repository\n */\n createForAuthenticatedUser(params: CreateRepositoryParams, options?: { signal?: AbortSignal }): Promise<Repository> {\n return this.client.post<Repository>(\"/user/repos\", params, options);\n }\n}\n"
5
+ "import type { GitVerseClient } from \"../client\";\nimport type {\n AddCollaboratorParams,\n Branch,\n Collaborator,\n CollaboratorInvitation,\n Commit,\n CompareResponse,\n ContentsResponse,\n CreateCommitParams,\n CreateFileParams,\n CreateForkParams,\n CreateReferenceParams,\n CreateRepositoryParams,\n CreateTreeParams,\n DeleteFileParams,\n FileCreationResponse,\n FileDeleteResponse,\n GitTreeResponse,\n PullRequest,\n Reference,\n Repository,\n RepoTree,\n Secret,\n SecretList,\n UpdatePullRequestParams,\n UpdateRepositoryParams,\n} from \"../types\";\n\n/**\n * API для работы с репозиториями\n */\nexport class RepositoriesApi {\n private client: GitVerseClient;\n\n /**\n * Создает новый экземпляр API\n * @param client GitVerse клиент\n */\n constructor(client: GitVerseClient) {\n this.client = client;\n }\n\n /**\n * Get repository details\n * @param owner Repository owner\n * @param repo Repository name\n * @param options Опции запроса\n * @returns Repository\n */\n get(owner: string, repo: string, options?: { signal?: AbortSignal }): Promise<Repository> {\n return this.client.get<Repository>(`/repos/${owner}/${repo}`, options);\n }\n\n /**\n * Update repository\n * @param owner Repository owner\n * @param repo Repository name\n * @param params New repository settings\n * @param options Опции запроса\n * @returns Repository\n */\n update(\n owner: string,\n repo: string,\n params: UpdateRepositoryParams,\n options?: { signal?: AbortSignal },\n ): Promise<Repository> {\n return this.client.patch<Repository>(`/repos/${owner}/${repo}`, params, options);\n }\n\n /**\n * Delete repository\n * @param owner Repository owner\n * @param repo Repository name\n * @param options Опции запроса\n * @returns void\n */\n delete(owner: string, repo: string, options?: { signal?: AbortSignal }): Promise<void> {\n return this.client.delete<void>(`/repos/${owner}/${repo}`, undefined, options);\n }\n\n /**\n * Gets a list of repository secrets\n * @param owner Owner name\n * @param repo Repository name\n * @param queryParams Параметры запроса\n * @param options Опции запроса\n * @returns SecretList\n */\n listRepoSecrets(\n owner: string,\n repo: string,\n queryParams?: { per_page?: string; page?: string },\n options?: { signal?: AbortSignal },\n ): Promise<SecretList> {\n const searchParams = new URLSearchParams();\n if (queryParams?.per_page !== undefined) searchParams.append(\"per_page\", queryParams.per_page);\n if (queryParams?.page !== undefined) searchParams.append(\"page\", queryParams.page);\n const queryString = searchParams.toString();\n const url = `/repos/${owner}/${repo}/actions/secrets${queryString ? `?${queryString}` : \"\"}`;\n return this.client.get<SecretList>(url, options);\n }\n\n /**\n * Gets secrets metadata (without values) in repositories.\n * @param owner Owner name\n * @param repo Repository name\n * @param secretname Secret name\n * @param options Опции запроса\n * @returns Secret\n */\n getRepoSecret(owner: string, repo: string, secretname: string, options?: { signal?: AbortSignal }): Promise<Secret> {\n return this.client.get<Secret>(`/repos/${owner}/${repo}/actions/secrets/${secretname}`, options);\n }\n\n /**\n * Creates or updates a secret in the repository, without encryption\n * @param owner Owner name\n * @param repo Repository name\n * @param secretname Secret name\n * @param queryParams Параметры запроса\n * @param options Опции запроса\n * @returns Secret\n */\n createOrUpdateRepoSecret(\n owner: string,\n repo: string,\n secretname: string,\n queryParams?: { encrypted_value: string },\n options?: { signal?: AbortSignal },\n ): Promise<Secret> {\n const searchParams = new URLSearchParams();\n if (queryParams?.encrypted_value !== undefined) searchParams.append(\"encrypted_value\", queryParams.encrypted_value);\n const queryString = searchParams.toString();\n const url = `/repos/${owner}/${repo}/actions/secrets/${secretname}${queryString ? `?${queryString}` : \"\"}`;\n return this.client.put<Secret>(url, options);\n }\n\n /**\n * Removes a secret from the repository\n * @param owner Owner name\n * @param repo Repository name\n * @param secretname Secret name\n * @param options Опции запроса\n * @returns void\n */\n deleteRepoSecret(owner: string, repo: string, secretname: string, options?: { signal?: AbortSignal }): Promise<void> {\n return this.client.delete<void>(`/repos/${owner}/${repo}/actions/secrets/${secretname}`, undefined, options);\n }\n\n /**\n * List repository branches\n * @param owner Owner of the repository (username or organization)\n * @param repo Name of the repository without .git extension\n * @param queryParams Параметры запроса\n * @param options Опции запроса\n * @returns Branch[]\n */\n listBranches(\n owner: string,\n repo: string,\n queryParams?: { page?: number; per_page?: number; q?: string },\n options?: { signal?: AbortSignal },\n ): Promise<Branch[]> {\n const searchParams = new URLSearchParams();\n if (queryParams?.page !== undefined) searchParams.append(\"page\", String(queryParams.page));\n if (queryParams?.per_page !== undefined) searchParams.append(\"per_page\", String(queryParams.per_page));\n if (queryParams?.q !== undefined) searchParams.append(\"q\", queryParams.q);\n const queryString = searchParams.toString();\n const url = `/repos/${owner}/${repo}/branches${queryString ? `?${queryString}` : \"\"}`;\n return this.client.get<Branch[]>(url, options);\n }\n\n /**\n * List repository collaborators\n * @param owner Repository owner\n * @param repo Repository name\n * @param queryParams Параметры запроса\n * @param options Опции запроса\n * @returns Collaborator[]\n */\n listCollaborators(\n owner: string,\n repo: string,\n queryParams?: { affiliation?: string; permission?: string; page?: number; per_page?: number },\n options?: { signal?: AbortSignal },\n ): Promise<Collaborator[]> {\n const searchParams = new URLSearchParams();\n if (queryParams?.affiliation !== undefined) searchParams.append(\"affiliation\", queryParams.affiliation);\n if (queryParams?.permission !== undefined) searchParams.append(\"permission\", queryParams.permission);\n if (queryParams?.page !== undefined) searchParams.append(\"page\", String(queryParams.page));\n if (queryParams?.per_page !== undefined) searchParams.append(\"per_page\", String(queryParams.per_page));\n const queryString = searchParams.toString();\n const url = `/repos/${owner}/${repo}/collaborators${queryString ? `?${queryString}` : \"\"}`;\n return this.client.get<Collaborator[]>(url, options);\n }\n\n /**\n * Add or update repository collaborator\n * @param owner Repository owner\n * @param repo Repository name\n * @param collaborator Username of the collaborator to add or update\n * @param params Collaborator permission settings\n * @param options Опции запроса\n * @returns CollaboratorInvitation\n */\n addCollaborator(\n owner: string,\n repo: string,\n collaborator: string,\n params: AddCollaboratorParams,\n options?: { signal?: AbortSignal },\n ): Promise<CollaboratorInvitation> {\n return this.client.put<CollaboratorInvitation>(\n `/repos/${owner}/${repo}/collaborators/${collaborator}`,\n params,\n options,\n );\n }\n\n /**\n * Retrieve a list of repository commits\n * @param owner Owner of the repository (owner or organization name)\n * @param repo Name of the repository without the .git extension\n * @param queryParams Параметры запроса\n * @param options Опции запроса\n * @returns Commit[]\n */\n listCommits(\n owner: string,\n repo: string,\n queryParams?: {\n page?: number;\n per_page?: number;\n sha?: string;\n path?: string;\n not?: string;\n author?: string;\n committer?: string;\n since?: string;\n until?: string;\n },\n options?: { signal?: AbortSignal },\n ): Promise<Commit[]> {\n const searchParams = new URLSearchParams();\n if (queryParams?.page !== undefined) searchParams.append(\"page\", String(queryParams.page));\n if (queryParams?.per_page !== undefined) searchParams.append(\"per_page\", String(queryParams.per_page));\n if (queryParams?.sha !== undefined) searchParams.append(\"sha\", queryParams.sha);\n if (queryParams?.path !== undefined) searchParams.append(\"path\", queryParams.path);\n if (queryParams?.not !== undefined) searchParams.append(\"not\", queryParams.not);\n if (queryParams?.author !== undefined) searchParams.append(\"author\", queryParams.author);\n if (queryParams?.committer !== undefined) searchParams.append(\"committer\", queryParams.committer);\n if (queryParams?.since !== undefined) searchParams.append(\"since\", queryParams.since);\n if (queryParams?.until !== undefined) searchParams.append(\"until\", queryParams.until);\n const queryString = searchParams.toString();\n const url = `/repos/${owner}/${repo}/commits${queryString ? `?${queryString}` : \"\"}`;\n return this.client.get<Commit[]>(url, options);\n }\n\n /**\n * Retrieve commit information\n * @param owner Owner of the repository (owner or organization name)\n * @param repo Name of the repository without the .git extension\n * @param sha Commit hash\n * @param options Опции запроса\n * @returns Commit\n */\n getCommit(owner: string, repo: string, sha: string, options?: { signal?: AbortSignal }): Promise<Commit> {\n return this.client.get<Commit>(`/repos/${owner}/${repo}/commits/${sha}`, options);\n }\n\n /**\n * Compare two branches/tags/commits\n * @param owner Owner of the repository (username or organization name)\n * @param repo Name of the repository without the .git extension\n * @param basehead References to compare in BASE...HEAD format (e.g., main...feature)\n * @param queryParams Параметры запроса\n * @param options Опции запроса\n * @returns CompareResponse\n */\n compareCommits(\n owner: string,\n repo: string,\n basehead: string,\n queryParams?: { page?: number; per_page?: number },\n options?: { signal?: AbortSignal },\n ): Promise<CompareResponse> {\n const searchParams = new URLSearchParams();\n if (queryParams?.page !== undefined) searchParams.append(\"page\", String(queryParams.page));\n if (queryParams?.per_page !== undefined) searchParams.append(\"per_page\", String(queryParams.per_page));\n const queryString = searchParams.toString();\n const url = `/repos/${owner}/${repo}/compare/${basehead}${queryString ? `?${queryString}` : \"\"}`;\n return this.client.get<CompareResponse>(url, options);\n }\n\n /**\n * Get file or directory contents\n * @param owner Repository owner\n * @param repo Repository name\n * @param filepath Path to file or directory in the repository\n * @param queryParams Параметры запроса\n * @param options Опции запроса\n * @returns ContentsResponse\n */\n getContent(\n owner: string,\n repo: string,\n filepath: string,\n queryParams?: { ref?: string; scope?: string },\n options?: { signal?: AbortSignal },\n ): Promise<ContentsResponse> {\n const searchParams = new URLSearchParams();\n if (queryParams?.ref !== undefined) searchParams.append(\"ref\", queryParams.ref);\n if (queryParams?.scope !== undefined) searchParams.append(\"scope\", queryParams.scope);\n const queryString = searchParams.toString();\n const url = `/repos/${owner}/${repo}/contents/${filepath}${queryString ? `?${queryString}` : \"\"}`;\n return this.client.get<ContentsResponse>(url, options);\n }\n\n /**\n * Create or update file in repository\n * @param owner Repository owner\n * @param repo Repository name\n * @param filepath Path to the file in the repository\n * @param params File creation or update options, including base64 content, branch, message, etc.\n * @param options Опции запроса\n * @returns FileCreationResponse\n */\n createOrUpdateFile(\n owner: string,\n repo: string,\n filepath: string,\n params: CreateFileParams,\n options?: { signal?: AbortSignal },\n ): Promise<FileCreationResponse> {\n return this.client.put<FileCreationResponse>(`/repos/${owner}/${repo}/contents/${filepath}`, params, options);\n }\n\n /**\n * Delete file in repository\n * @param owner Repository owner\n * @param repo Repository name\n * @param filepath Path to the file in the repository\n * @param params File deletion options, including SHA, branch, commit message, etc.\n * @param options Опции запроса\n * @returns FileDeleteResponse\n */\n deleteFile(\n owner: string,\n repo: string,\n filepath: string,\n params: DeleteFileParams,\n options?: { signal?: AbortSignal },\n ): Promise<FileDeleteResponse> {\n return this.client.delete<FileDeleteResponse>(`/repos/${owner}/${repo}/contents/${filepath}`, params, options);\n }\n\n /**\n * Fork a repository\n * @param owner Owner of the base repository\n * @param repo Name of the base repository\n * @param params Fork options, including target name and organization\n * @param options Опции запроса\n * @returns Repository\n */\n createFork(\n owner: string,\n repo: string,\n params: CreateForkParams,\n options?: { signal?: AbortSignal },\n ): Promise<Repository> {\n return this.client.post<Repository>(`/repos/${owner}/${repo}/forks`, params, options);\n }\n\n /**\n * Create a Git commit\n * @param owner Owner of the repository (owner or organization name)\n * @param repo Name of the repository without the .git extension\n * @param params Parameters for creating the commit\n * @param options Опции запроса\n * @returns Commit\n */\n createCommit(\n owner: string,\n repo: string,\n params: CreateCommitParams,\n options?: { signal?: AbortSignal },\n ): Promise<Commit> {\n return this.client.post<Commit>(`/repos/${owner}/${repo}/git/commits`, params, options);\n }\n\n /**\n * Create a Git reference\n * @param owner Owner of the repository (owner or organization name)\n * @param repo Name of the repository without the .git extension\n * @param params Parameters for creating the reference\n * @param options Опции запроса\n * @returns Reference\n */\n createRef(\n owner: string,\n repo: string,\n params: CreateReferenceParams,\n options?: { signal?: AbortSignal },\n ): Promise<Reference> {\n return this.client.post<Reference>(`/repos/${owner}/${repo}/git/refs`, params, options);\n }\n\n /**\n * Creates new Git tree\n * @param owner owner\n * @param repo repo\n * @param params Параметры создания дерева\n * @param options Опции запроса\n * @returns RepoTree\n */\n createTree(\n owner: string,\n repo: string,\n params: CreateTreeParams,\n options?: { signal?: AbortSignal },\n ): Promise<RepoTree> {\n return this.client.post<RepoTree>(`/repos/${owner}/${repo}/git/trees`, params, options);\n }\n\n /**\n * Get repository tree by SHA\n * @param owner Repository owner\n * @param repo Repository name\n * @param sha Commit SHA to list tree for\n * @param queryParams Параметры запроса\n * @param options Опции запроса\n * @returns GitTreeResponse\n */\n getTree(\n owner: string,\n repo: string,\n sha: string,\n queryParams?: { page?: number; per_page?: number; recursive?: boolean },\n options?: { signal?: AbortSignal },\n ): Promise<GitTreeResponse> {\n const searchParams = new URLSearchParams();\n if (queryParams?.page !== undefined) searchParams.append(\"page\", String(queryParams.page));\n if (queryParams?.per_page !== undefined) searchParams.append(\"per_page\", String(queryParams.per_page));\n if (queryParams?.recursive !== undefined) searchParams.append(\"recursive\", String(queryParams.recursive));\n const queryString = searchParams.toString();\n const url = `/repos/${owner}/${repo}/git/trees/${sha}${queryString ? `?${queryString}` : \"\"}`;\n return this.client.get<GitTreeResponse>(url, options);\n }\n\n /**\n * Get repository languages\n * @param owner Repository owner\n * @param repo Repository name\n * @param options Опции запроса\n * @returns Record<string, unknown>\n */\n listLanguages(owner: string, repo: string, options?: { signal?: AbortSignal }): Promise<Record<string, unknown>> {\n return this.client.get<Record<string, unknown>>(`/repos/${owner}/${repo}/languages`, options);\n }\n\n /**\n * List pull requests\n * @param owner Repository owner\n * @param repo Repository name\n * @param queryParams Параметры запроса\n * @param options Опции запроса\n * @returns PullRequest[]\n */\n listPulls(\n owner: string,\n repo: string,\n queryParams?: {\n state?: string;\n head?: string;\n base?: string;\n sort?: string;\n direction?: string;\n page?: number;\n per_page?: number;\n },\n options?: { signal?: AbortSignal },\n ): Promise<PullRequest[]> {\n const searchParams = new URLSearchParams();\n if (queryParams?.state !== undefined) searchParams.append(\"state\", queryParams.state);\n if (queryParams?.head !== undefined) searchParams.append(\"head\", queryParams.head);\n if (queryParams?.base !== undefined) searchParams.append(\"base\", queryParams.base);\n if (queryParams?.sort !== undefined) searchParams.append(\"sort\", queryParams.sort);\n if (queryParams?.direction !== undefined) searchParams.append(\"direction\", queryParams.direction);\n if (queryParams?.page !== undefined) searchParams.append(\"page\", String(queryParams.page));\n if (queryParams?.per_page !== undefined) searchParams.append(\"per_page\", String(queryParams.per_page));\n const queryString = searchParams.toString();\n const url = `/repos/${owner}/${repo}/pulls${queryString ? `?${queryString}` : \"\"}`;\n return this.client.get<PullRequest[]>(url, options);\n }\n\n /**\n * Pull request details.\n * @param owner Repository owner\n * @param repo Repository name\n * @param pull_number The number that identifies the pull request..\n * @param options Опции запроса\n * @returns PullRequest\n */\n getPull(owner: string, repo: string, pull_number: number, options?: { signal?: AbortSignal }): Promise<PullRequest> {\n return this.client.get<PullRequest>(`/repos/${owner}/${repo}/pulls/${pull_number}`, options);\n }\n\n /**\n * Update a pull request.\n * @param owner Repository owner\n * @param repo Repository name\n * @param pull_number The number that identifies the pull request.\n * @param params Pull request update parameters\n * @param options Опции запроса\n * @returns PullRequest\n */\n updatePull(\n owner: string,\n repo: string,\n pull_number: number,\n params: UpdatePullRequestParams,\n options?: { signal?: AbortSignal },\n ): Promise<PullRequest> {\n return this.client.patch<PullRequest>(`/repos/${owner}/${repo}/pulls/${pull_number}`, params, options);\n }\n\n /**\n * Get authenticated user repositories\n * @param queryParams Параметры запроса\n * @param options Опции запроса\n * @returns Repository[]\n */\n listForAuthenticatedUser(\n queryParams?: { page?: number; per_page?: number },\n options?: { signal?: AbortSignal },\n ): Promise<Repository[]> {\n const searchParams = new URLSearchParams();\n if (queryParams?.page !== undefined) searchParams.append(\"page\", String(queryParams.page));\n if (queryParams?.per_page !== undefined) searchParams.append(\"per_page\", String(queryParams.per_page));\n const queryString = searchParams.toString();\n const url = `/user/repos${queryString ? `?${queryString}` : \"\"}`;\n return this.client.get<Repository[]>(url, options);\n }\n\n /**\n * Create repository\n * @param params Repository creation options\n * @param options Опции запроса\n * @returns Repository\n */\n createForAuthenticatedUser(params: CreateRepositoryParams, options?: { signal?: AbortSignal }): Promise<Repository> {\n return this.client.post<Repository>(\"/user/repos\", params, options);\n }\n}\n"
6
6
  ],
7
- "mappings": "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",
7
+ "mappings": "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",
8
8
  "debugId": "B992FE628A20ABBD64756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -1,274 +1,57 @@
1
+ import type { GitVerseClient } from "../client";
2
+ import type { Repository } from "../types";
1
3
  /**
2
- * Типы данных для GitVerse API
3
- * @generated Сгенерировано автоматически из OpenAPI спецификации
4
- */
5
- /**
6
- * Опции для выполнения HTTP-запросов
7
- */
8
- interface RequestOptions {
9
- /**
10
- * AbortSignal для отмены запроса
11
- * @example
12
- * const controller = new AbortController();
13
- * const promise = client.users.getCurrent({ signal: controller.signal });
14
- * controller.abort(); // Отменяет запрос
15
- */
16
- signal?: AbortSignal;
17
- }
18
- interface Permissions {
19
- admin?: boolean;
20
- pull?: boolean;
21
- push?: boolean;
22
- }
23
- interface UserPublicInfo {
24
- avatar_url?: string;
25
- followers_url?: string;
26
- following_url?: string;
27
- html_url?: string;
28
- id?: number;
29
- login?: string;
30
- organizations_url?: string;
31
- repos_url?: string;
32
- site_admin?: boolean;
33
- type?: string;
34
- url?: string;
35
- }
36
- interface Repository {
37
- allow_merge_commit?: boolean;
38
- allow_rebase_merge?: boolean;
39
- allow_squash_merge?: boolean;
40
- archived?: boolean;
41
- clone_url?: string;
42
- contents_url?: string;
43
- created_at?: string;
44
- default_branch?: string;
45
- delete_branch_on_merge?: boolean;
46
- description?: string;
47
- disabled?: boolean;
48
- fork?: boolean;
49
- forks?: number;
50
- forks_count?: number;
51
- forks_url?: string;
52
- full_name?: string;
53
- has_issues?: boolean;
54
- has_wiki?: boolean;
55
- id?: number;
56
- is_template?: boolean;
57
- issue_comment_url?: string;
58
- issues_url?: string;
59
- language?: string;
60
- languages_url?: string;
61
- mirror_url?: string;
62
- name?: string;
63
- open_issues?: number;
64
- open_issues_count?: number;
65
- owner?: UserPublicInfo;
66
- parent?: Repository;
67
- permissions?: Permissions;
68
- private?: boolean;
69
- pulls_url?: string;
70
- pushed_at?: string;
71
- size?: number;
72
- ssh_url?: string;
73
- stargazers_count?: number;
74
- template_repository?: Repository;
75
- topics?: string[];
76
- updated_at?: string;
77
- url?: string;
78
- visibility?: string;
79
- watchers?: number;
80
- watchers_count?: number;
81
- }
82
- /**
83
- * Предупреждение об устаревшей версии API
84
- */
85
- declare class ApiVersionWarning {
86
- /** Текущая используемая версия */
87
- readonly currentVersion: string;
88
- /** Последняя доступная версия */
89
- readonly latestVersion: string;
90
- /** Дата вывода из эксплуатации */
91
- readonly decommissioning?: string;
92
- constructor(currentVersion: string, latestVersion: string, decommissioning?: string);
93
- /**
94
- * Возвращает сообщение о предупреждении
95
- */
96
- getMessage(): string;
97
- }
98
- declare const HTTPMethods: {
99
- readonly DELETE: "DELETE"
100
- readonly GET: "GET"
101
- readonly PATCH: "PATCH"
102
- readonly POST: "POST"
103
- readonly PUT: "PUT"
104
- };
105
- type HTTPMethods = (typeof HTTPMethods)[keyof typeof HTTPMethods];
106
- /**
107
- * Параметры для конфигурации GitVerse клиента
108
- */
109
- interface GitVerseClientConfig {
110
- /**
111
- * Базовый URL API GitVerse
112
- * @default 'https://api.gitverse.ru'
113
- */
114
- baseUrl?: string;
115
- /**
116
- * Токен доступа для авторизации в API
117
- */
118
- token?: string;
119
- /**
120
- * Версия API
121
- * @default '1'
122
- */
123
- apiVersion?: string;
124
- }
125
- /**
126
- * Основной класс для работы с GitVerse API
127
- */
128
- declare class GitVerseClient {
129
- private baseUrl;
130
- private token?;
131
- private apiVersion;
132
- /**
133
- * Callback для обработки предупреждений об устаревшей версии API
134
- */
135
- onApiVersionWarning?: (warning: ApiVersionWarning) => void;
136
- /**
137
- * Создает новый экземпляр GitVerse клиента
138
- * @param config Конфигурация клиента
139
- */
140
- constructor(config?: GitVerseClientConfig);
141
- /**
142
- * Устанавливает токен авторизации
143
- * @param token Токен доступа
144
- */
145
- setToken(token: string): void;
146
- /**
147
- * Извлекает информацию о Rate Limit из заголовков ответа
148
- */
149
- private extractRateLimitInfo;
150
- /**
151
- * Извлекает информацию о версии API из заголовков ответа
152
- */
153
- private extractApiVersionInfo;
154
- /**
155
- * Извлекает метаданные из заголовков ответа
156
- */
157
- private extractMetadata;
158
- /**
159
- * Выполняет API-запрос с учетом авторизации и версии API
160
- * @param path Путь к API-ресурсу
161
- * @param method HTTP-метод
162
- * @param body Тело запроса (опционально)
163
- * @param options Опции запроса (опционально)
164
- * @returns Ответ от API
165
- * @throws {RateLimitError} При превышении лимита запросов (429)
166
- * @throws {GitVerseApiError} При других ошибках API
167
- */
168
- request<T>(path: string, method: HTTPMethods, body?: unknown, options?: RequestOptions): Promise<T>;
169
- /**
170
- * Выполняет GET-запрос
171
- * @param path Путь к API-ресурсу
172
- * @param options Опции запроса (опционально)
173
- * @returns Ответ от API
174
- */
175
- get<T>(path: string, options?: RequestOptions): Promise<T>;
176
- /**
177
- * Выполняет POST-запрос
178
- * @param path Путь к API-ресурсу
179
- * @param body Тело запроса
180
- * @param options Опции запроса (опционально)
181
- * @returns Ответ от API
182
- */
183
- post<T>(path: string, body?: unknown, options?: RequestOptions): Promise<T>;
184
- /**
185
- * Выполняет PUT-запрос
186
- * @param path Путь к API-ресурсу
187
- * @param body Тело запроса
188
- * @param options Опции запроса (опционально)
189
- * @returns Ответ от API
190
- */
191
- put<T>(path: string, body?: unknown, options?: RequestOptions): Promise<T>;
192
- /**
193
- * Выполняет DELETE-запрос
194
- * @param path Путь к API-ресурсу
195
- * @param body Тело запроса (опционально)
196
- * @param options Опции запроса (опционально)
197
- * @returns Ответ от API
198
- */
199
- delete<T>(path: string, body?: unknown, options?: RequestOptions): Promise<T>;
200
- /**
201
- * Выполняет PATCH-запрос
202
- * @param path Путь к API-ресурсу
203
- * @param body Тело запроса
204
- * @param options Опции запроса (опционально)
205
- * @returns Ответ от API
206
- */
207
- patch<T>(path: string, body?: unknown, options?: RequestOptions): Promise<T>;
208
- /**
209
- * Выполняет загрузку файла через multipart/form-data
210
- * @param path Путь к API-ресурсу
211
- * @param fieldName Имя поля для файла
212
- * @param file Файл для загрузки (Blob или ArrayBuffer)
213
- * @param fileName Имя файла
214
- * @param options Опции запроса (опционально)
215
- * @returns Ответ от API
216
- */
217
- uploadFile<T>(path: string, fieldName: string, file: Blob | ArrayBuffer, fileName: string, options?: RequestOptions): Promise<T>;
218
- }
219
- /**
220
- * API для работы со звёздами (избранное)
221
- */
222
- declare class StarsApi {
223
- private client;
224
- /**
225
- * Создает новый экземпляр API
226
- * @param client GitVerse клиент
227
- */
228
- constructor(client: GitVerseClient);
229
- /**
230
- * Get list of favorites repositories of authenticated user
231
- * @param queryParams Параметры запроса
232
- * @param options Опции запроса
233
- * @returns Repository[]
234
- */
235
- list(queryParams?: {
236
- page?: number
237
- per_page?: number
238
- sort?: string
239
- direction?: string
240
- }, options?: {
241
- signal?: AbortSignal
242
- }): Promise<Repository[]>;
243
- /**
244
- * Check if repository is in favorites
245
- * @param owner Repository owner
246
- * @param repo Repository name
247
- * @param options Опции запроса
248
- * @returns void
249
- */
250
- isStarred(owner: string, repo: string, options?: {
251
- signal?: AbortSignal
252
- }): Promise<void>;
253
- /**
254
- * Add repository to favorites
255
- * @param owner Repository owner
256
- * @param repo Repository name
257
- * @param options Опции запроса
258
- * @returns void
259
- */
260
- star(owner: string, repo: string, options?: {
261
- signal?: AbortSignal
262
- }): Promise<void>;
263
- /**
264
- * Remove repository from favorites
265
- * @param owner Repository owner
266
- * @param repo Repository name
267
- * @param options Опции запроса
268
- * @returns void
269
- */
270
- unstar(owner: string, repo: string, options?: {
271
- signal?: AbortSignal
272
- }): Promise<void>;
4
+ * API для работы со звёздами (избранное)
5
+ */
6
+ export declare class StarsApi {
7
+ private client;
8
+ /**
9
+ * Создает новый экземпляр API
10
+ * @param client GitVerse клиент
11
+ */
12
+ constructor(client: GitVerseClient);
13
+ /**
14
+ * Get list of favorites repositories of authenticated user
15
+ * @param queryParams Параметры запроса
16
+ * @param options Опции запроса
17
+ * @returns Repository[]
18
+ */
19
+ list(queryParams?: {
20
+ page?: number;
21
+ per_page?: number;
22
+ sort?: string;
23
+ direction?: string;
24
+ }, options?: {
25
+ signal?: AbortSignal;
26
+ }): Promise<Repository[]>;
27
+ /**
28
+ * Check if repository is in favorites
29
+ * @param owner Repository owner
30
+ * @param repo Repository name
31
+ * @param options Опции запроса
32
+ * @returns void
33
+ */
34
+ isStarred(owner: string, repo: string, options?: {
35
+ signal?: AbortSignal;
36
+ }): Promise<void>;
37
+ /**
38
+ * Add repository to favorites
39
+ * @param owner Repository owner
40
+ * @param repo Repository name
41
+ * @param options Опции запроса
42
+ * @returns void
43
+ */
44
+ star(owner: string, repo: string, options?: {
45
+ signal?: AbortSignal;
46
+ }): Promise<void>;
47
+ /**
48
+ * Remove repository from favorites
49
+ * @param owner Repository owner
50
+ * @param repo Repository name
51
+ * @param options Опции запроса
52
+ * @returns void
53
+ */
54
+ unstar(owner: string, repo: string, options?: {
55
+ signal?: AbortSignal;
56
+ }): Promise<void>;
273
57
  }
274
- export { StarsApi };