gitverse-api-sdk 1.0.0 → 2.0.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.
- package/README.md +328 -114
- package/dist/api/actions.d.ts +506 -0
- package/dist/api/actions.js +4 -0
- package/dist/api/actions.js.map +10 -0
- package/dist/api/branches.d.ts +154 -0
- package/dist/api/branches.js +4 -0
- package/dist/api/branches.js.map +10 -0
- package/dist/api/collaborators.d.ts +224 -0
- package/dist/api/collaborators.js +4 -0
- package/dist/api/collaborators.js.map +10 -0
- package/dist/api/commits.d.ts +302 -0
- package/dist/api/commits.js +4 -0
- package/dist/api/commits.js.map +10 -0
- package/dist/api/contents.d.ts +345 -0
- package/dist/api/contents.js +4 -0
- package/dist/api/contents.js.map +10 -0
- package/dist/api/emails.d.ts +184 -0
- package/dist/api/emails.js +4 -0
- package/dist/api/emails.js.map +10 -0
- package/dist/api/forks.d.ts +325 -0
- package/dist/api/forks.js +4 -0
- package/dist/api/forks.js.map +10 -0
- package/dist/api/git.d.ts +228 -0
- package/dist/api/git.js +4 -0
- package/dist/api/git.js.map +10 -0
- package/dist/api/issues.d.ts +380 -0
- package/dist/api/issues.js +4 -0
- package/dist/api/issues.js.map +10 -0
- package/dist/api/organizations.d.ts +140 -0
- package/dist/api/organizations.js +4 -0
- package/dist/api/organizations.js.map +10 -0
- package/dist/api/pulls.d.ts +517 -0
- package/dist/api/pulls.js +4 -0
- package/dist/api/pulls.js.map +10 -0
- package/dist/api/releases.d.ts +400 -0
- package/dist/api/releases.js +4 -0
- package/dist/api/releases.js.map +10 -0
- package/dist/api/repositories.d.ts +502 -0
- package/dist/api/repositories.js +4 -0
- package/dist/api/repositories.js.map +10 -0
- package/dist/api/stars.d.ts +328 -0
- package/dist/api/stars.js +4 -0
- package/dist/api/stars.js.map +10 -0
- package/dist/api/teams.d.ts +287 -0
- package/dist/api/teams.js +4 -0
- package/dist/api/teams.js.map +10 -0
- package/dist/api/users.d.ts +244 -0
- package/dist/api/users.js +4 -0
- package/dist/api/users.js.map +10 -0
- package/dist/client.d.ts +122 -0
- package/dist/client.js +4 -0
- package/dist/client.js.map +10 -0
- package/dist/enums.d.ts +57 -0
- package/dist/enums.js +4 -0
- package/dist/enums.js.map +10 -0
- package/dist/errors.d.ts +78 -0
- package/dist/errors.js +4 -0
- package/dist/errors.js.map +10 -0
- package/dist/index.d.ts +1801 -453
- package/dist/index.js +3 -1
- package/dist/index.js.map +10 -0
- package/dist/types.d.ts +1256 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +9 -0
- package/dist/utils.d.ts +39 -0
- package/dist/utils.js +3 -0
- package/dist/utils.js.map +10 -0
- package/package.json +99 -7
|
@@ -0,0 +1,502 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Типы пользователей в системе
|
|
3
|
+
*/
|
|
4
|
+
declare const UserType: {
|
|
5
|
+
readonly Organization: "Organization"
|
|
6
|
+
readonly User: "User"
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Тип для типов пользователей
|
|
10
|
+
*/
|
|
11
|
+
type UserType = (typeof UserType)[keyof typeof UserType];
|
|
12
|
+
/**
|
|
13
|
+
* Типы видимости для репозиториев и пользователей
|
|
14
|
+
*/
|
|
15
|
+
declare const VisibilityType: {
|
|
16
|
+
readonly Limited: "limited"
|
|
17
|
+
readonly Private: "private"
|
|
18
|
+
readonly Public: "public"
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* Тип для типов видимости
|
|
22
|
+
*/
|
|
23
|
+
type VisibilityType = (typeof VisibilityType)[keyof typeof VisibilityType];
|
|
24
|
+
/**
|
|
25
|
+
* Интерфейс пользователя
|
|
26
|
+
*/
|
|
27
|
+
interface User2 {
|
|
28
|
+
/** Уникальный идентификатор пользователя */
|
|
29
|
+
id: number;
|
|
30
|
+
/** Имя пользователя */
|
|
31
|
+
name?: string;
|
|
32
|
+
/** Логин пользователя */
|
|
33
|
+
login: string;
|
|
34
|
+
/** Полное имя пользователя */
|
|
35
|
+
full_name?: string;
|
|
36
|
+
/** Тип аккаунта: пользователь или организация */
|
|
37
|
+
type: UserType;
|
|
38
|
+
/** Биография пользователя */
|
|
39
|
+
bio?: string;
|
|
40
|
+
/** Электронная почта пользователя */
|
|
41
|
+
email?: string;
|
|
42
|
+
/** URL аватара пользователя */
|
|
43
|
+
avatar_url: string;
|
|
44
|
+
/** Веб-ссылка на профиль пользователя */
|
|
45
|
+
html_url: string;
|
|
46
|
+
/** API-ссылка на профиль пользователя */
|
|
47
|
+
url?: string;
|
|
48
|
+
/** API-ссылка на список подписчиков пользователя */
|
|
49
|
+
followers_url?: string;
|
|
50
|
+
/** API-ссылка на репозитории пользователя */
|
|
51
|
+
repos_url?: string;
|
|
52
|
+
/** API-ссылка на организации пользователя */
|
|
53
|
+
organizations_url?: string;
|
|
54
|
+
/** Права администратора */
|
|
55
|
+
site_admin: boolean;
|
|
56
|
+
/** Местоположение пользователя */
|
|
57
|
+
location?: string;
|
|
58
|
+
/** Верификация аккаунта */
|
|
59
|
+
is_verified?: boolean;
|
|
60
|
+
/** Настройки приватности профиля */
|
|
61
|
+
visibility?: VisibilityType;
|
|
62
|
+
/** Персональный веб-сайт */
|
|
63
|
+
website?: string;
|
|
64
|
+
/** Количество подписчиков */
|
|
65
|
+
followers?: number;
|
|
66
|
+
/** Количество подписок */
|
|
67
|
+
following?: number;
|
|
68
|
+
/** Количество публичных репозиториев */
|
|
69
|
+
public_repos?: number;
|
|
70
|
+
/** Количество репозиториев, отмеченных звездой */
|
|
71
|
+
stars_count?: number;
|
|
72
|
+
/** Дата создания аккаунта */
|
|
73
|
+
created_at: string;
|
|
74
|
+
/** Дата последнего обновления аккаунта */
|
|
75
|
+
updated_at?: string;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Интерфейс репозитория
|
|
79
|
+
*/
|
|
80
|
+
interface Repository {
|
|
81
|
+
/** Уникальный идентификатор репозитория */
|
|
82
|
+
id: number;
|
|
83
|
+
/** Информация о владельце репозитория */
|
|
84
|
+
owner: User2;
|
|
85
|
+
/** Название репозитория */
|
|
86
|
+
name: string;
|
|
87
|
+
/** Полное название репозитория в формате {owner}/{repo} */
|
|
88
|
+
full_name: string;
|
|
89
|
+
/** Описание репозитория */
|
|
90
|
+
description?: string;
|
|
91
|
+
/** Список тем, связанных с репозиторием */
|
|
92
|
+
topics?: string[] | null;
|
|
93
|
+
/** Является ли репозиторий приватным */
|
|
94
|
+
private: boolean;
|
|
95
|
+
/** Является ли репозиторий форком другого репозитория */
|
|
96
|
+
fork: boolean;
|
|
97
|
+
/** Информация о родительском репозитории (если это форк) */
|
|
98
|
+
parent?: Repository | null;
|
|
99
|
+
/** Размер репозитория в килобайтах */
|
|
100
|
+
size: number;
|
|
101
|
+
/** Основной язык программирования, используемый в репозитории */
|
|
102
|
+
language?: string;
|
|
103
|
+
/** SSH-URL для клонирования репозитория */
|
|
104
|
+
ssh_url: string;
|
|
105
|
+
/** HTTPS-URL для клонирования репозитория */
|
|
106
|
+
clone_url: string;
|
|
107
|
+
/** Веб-ссылка на репозиторий */
|
|
108
|
+
html_url: string;
|
|
109
|
+
/** API-ссылка на репозиторий */
|
|
110
|
+
url: string;
|
|
111
|
+
/** Git-URL для клонирования репозитория */
|
|
112
|
+
git_url: string;
|
|
113
|
+
/** Зеркало репозитория (если доступно) */
|
|
114
|
+
mirror_url?: string;
|
|
115
|
+
/** Ссылка на вебсайт проекта */
|
|
116
|
+
website?: string;
|
|
117
|
+
/** Альтернативная ссылка на домашнюю страницу проекта */
|
|
118
|
+
homepage?: string;
|
|
119
|
+
/** Количество звезд у репозитория */
|
|
120
|
+
stargazers_count: number;
|
|
121
|
+
/** Количество форков репозитория */
|
|
122
|
+
forks: number;
|
|
123
|
+
/** Количество форков репозитория (дублирует поле forks) */
|
|
124
|
+
forks_count: number;
|
|
125
|
+
/** Количество наблюдателей за репозиторием */
|
|
126
|
+
watchers: number;
|
|
127
|
+
/** Количество наблюдателей за репозиторием (дублирует поле watchers) */
|
|
128
|
+
watchers_count: number;
|
|
129
|
+
/** Количество репозиториев в сети (форков и оригинала) */
|
|
130
|
+
network_count: number;
|
|
131
|
+
/** Количество подписчиков на уведомления о репозитории */
|
|
132
|
+
subscribers_count: number;
|
|
133
|
+
/** Количество открытых задач (issues) в репозитории */
|
|
134
|
+
open_issues: number;
|
|
135
|
+
/** Количество открытых задач (дублирует поле open_issues) */
|
|
136
|
+
open_issues_count: number;
|
|
137
|
+
/** Количество открытых pull requests */
|
|
138
|
+
open_pr_counter: number;
|
|
139
|
+
/** Основная ветка репозитория */
|
|
140
|
+
default_branch: string;
|
|
141
|
+
/** Архивирован ли репозиторий */
|
|
142
|
+
archived: boolean;
|
|
143
|
+
/** Разрешено ли создание задач (issues) */
|
|
144
|
+
has_issues: boolean;
|
|
145
|
+
/** Разрешено ли использование проектов */
|
|
146
|
+
has_projects: boolean;
|
|
147
|
+
/** Разрешено ли использование обсуждений */
|
|
148
|
+
has_discussions: boolean;
|
|
149
|
+
/** Разрешено ли использование wiki */
|
|
150
|
+
has_wiki: boolean;
|
|
151
|
+
/** Разрешено ли использование GitHub Pages */
|
|
152
|
+
has_pages: boolean;
|
|
153
|
+
/** Отключен ли репозиторий */
|
|
154
|
+
disabled: boolean;
|
|
155
|
+
/** Настройки приватности репозитория */
|
|
156
|
+
visibility: VisibilityType;
|
|
157
|
+
/** Является ли репозиторий шаблоном */
|
|
158
|
+
is_template: boolean;
|
|
159
|
+
/** Информация о шаблоне репозитория (если доступно) */
|
|
160
|
+
template_repository?: Repository | null;
|
|
161
|
+
/** Разрешены ли слияния через merge commits */
|
|
162
|
+
allow_merge_commits: boolean;
|
|
163
|
+
/** Разрешены ли слияния через squash commits */
|
|
164
|
+
allow_squash_merge: boolean;
|
|
165
|
+
/** Удалять ли ветку после слияния по умолчанию */
|
|
166
|
+
default_delete_branch_after_merge: boolean;
|
|
167
|
+
/** Дата создания репозитория */
|
|
168
|
+
created_at: string;
|
|
169
|
+
/** Дата последнего обновления репозитория */
|
|
170
|
+
updated_at: string;
|
|
171
|
+
/** Дата последнего push-события в репозиторий */
|
|
172
|
+
pushed_at: string;
|
|
173
|
+
}
|
|
174
|
+
/**
|
|
175
|
+
* Интерфейс ответа с распределением языков в репозитории
|
|
176
|
+
*/
|
|
177
|
+
interface LanguagesResponse {
|
|
178
|
+
/** Количество байт кода на каждом языке */
|
|
179
|
+
[language: string]: number;
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Параметры для создания репозитория
|
|
183
|
+
*/
|
|
184
|
+
interface CreateRepositoryParams {
|
|
185
|
+
/** Имя репозитория */
|
|
186
|
+
name: string;
|
|
187
|
+
/** Описание репозитория */
|
|
188
|
+
description?: string;
|
|
189
|
+
/** Приватный ли репозиторий */
|
|
190
|
+
private?: boolean;
|
|
191
|
+
/** Создать ли инициализирующий коммит */
|
|
192
|
+
auto_init?: boolean;
|
|
193
|
+
/** Список .gitignore шаблонов */
|
|
194
|
+
gitignores?: string[];
|
|
195
|
+
/** Лицензия репозитория */
|
|
196
|
+
license?: string;
|
|
197
|
+
/** Ветка по умолчанию */
|
|
198
|
+
default_branch?: string;
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* Интерфейс коммита
|
|
202
|
+
*/
|
|
203
|
+
interface Commit {
|
|
204
|
+
/** SHA-хеш коммита */
|
|
205
|
+
sha: string;
|
|
206
|
+
/** Node ID коммита */
|
|
207
|
+
node_id?: string;
|
|
208
|
+
/** Информация о коммите */
|
|
209
|
+
commit: {
|
|
210
|
+
/** Автор коммита */
|
|
211
|
+
author: {
|
|
212
|
+
name: string
|
|
213
|
+
email: string
|
|
214
|
+
date: string
|
|
215
|
+
}
|
|
216
|
+
/** Коммиттер */
|
|
217
|
+
committer: {
|
|
218
|
+
name: string
|
|
219
|
+
email: string
|
|
220
|
+
date: string
|
|
221
|
+
}
|
|
222
|
+
/** Сообщение коммита */
|
|
223
|
+
message: string
|
|
224
|
+
/** Дерево коммита */
|
|
225
|
+
tree: {
|
|
226
|
+
sha: string
|
|
227
|
+
url: string
|
|
228
|
+
}
|
|
229
|
+
};
|
|
230
|
+
/** Автор (пользователь GitVerse) */
|
|
231
|
+
author?: User2 | null;
|
|
232
|
+
/** Коммиттер (пользователь GitVerse) */
|
|
233
|
+
committer?: User2 | null;
|
|
234
|
+
/** Родительские коммиты */
|
|
235
|
+
parents: Array<{
|
|
236
|
+
sha: string
|
|
237
|
+
url: string
|
|
238
|
+
html_url: string
|
|
239
|
+
}>;
|
|
240
|
+
/** API-ссылка на коммит */
|
|
241
|
+
url: string;
|
|
242
|
+
/** Веб-ссылка на коммит */
|
|
243
|
+
html_url: string;
|
|
244
|
+
}
|
|
245
|
+
/**
|
|
246
|
+
* Параметры для обновления репозитория
|
|
247
|
+
*/
|
|
248
|
+
interface UpdateRepositoryParams {
|
|
249
|
+
/** Новое название репозитория */
|
|
250
|
+
name?: string;
|
|
251
|
+
/** Новое описание репозитория */
|
|
252
|
+
description?: string;
|
|
253
|
+
/** Веб-сайт проекта */
|
|
254
|
+
website?: string;
|
|
255
|
+
/** Приватный ли репозиторий */
|
|
256
|
+
private?: boolean;
|
|
257
|
+
/** Разрешены ли issues */
|
|
258
|
+
has_issues?: boolean;
|
|
259
|
+
/** Разрешена ли wiki */
|
|
260
|
+
has_wiki?: boolean;
|
|
261
|
+
/** Ветка по умолчанию */
|
|
262
|
+
default_branch?: string;
|
|
263
|
+
/** Архивирован ли репозиторий */
|
|
264
|
+
archived?: boolean;
|
|
265
|
+
}
|
|
266
|
+
/**
|
|
267
|
+
* Интерфейс результата сравнения веток/коммитов
|
|
268
|
+
*/
|
|
269
|
+
interface CompareResponse {
|
|
270
|
+
/** URL для сравнения */
|
|
271
|
+
url: string;
|
|
272
|
+
/** Веб-ссылка для сравнения */
|
|
273
|
+
html_url: string;
|
|
274
|
+
/** Diff-ссылка */
|
|
275
|
+
diff_url: string;
|
|
276
|
+
/** Patch-ссылка */
|
|
277
|
+
patch_url: string;
|
|
278
|
+
/** Базовый коммит */
|
|
279
|
+
base_commit: Commit;
|
|
280
|
+
/** Сравниваемый коммит */
|
|
281
|
+
merge_base_commit: Commit;
|
|
282
|
+
/** Статус сравнения */
|
|
283
|
+
status: "ahead" | "behind" | "identical" | "diverged";
|
|
284
|
+
/** Количество коммитов впереди */
|
|
285
|
+
ahead_by: number;
|
|
286
|
+
/** Количество коммитов позади */
|
|
287
|
+
behind_by: number;
|
|
288
|
+
/** Общее количество коммитов */
|
|
289
|
+
total_commits: number;
|
|
290
|
+
/** Список коммитов */
|
|
291
|
+
commits: Commit[];
|
|
292
|
+
/** Изменённые файлы */
|
|
293
|
+
files: PullRequestFile[];
|
|
294
|
+
}
|
|
295
|
+
/**
|
|
296
|
+
* Интерфейс файла в pull request
|
|
297
|
+
*/
|
|
298
|
+
interface PullRequestFile {
|
|
299
|
+
/** SHA-хеш файла */
|
|
300
|
+
sha: string;
|
|
301
|
+
/** Имя файла */
|
|
302
|
+
filename: string;
|
|
303
|
+
/** Статус изменения */
|
|
304
|
+
status: "added" | "removed" | "modified" | "renamed" | "copied" | "changed" | "unchanged";
|
|
305
|
+
/** Количество добавленных строк */
|
|
306
|
+
additions: number;
|
|
307
|
+
/** Количество удалённых строк */
|
|
308
|
+
deletions: number;
|
|
309
|
+
/** Общее количество изменений */
|
|
310
|
+
changes: number;
|
|
311
|
+
/** URL для получения содержимого */
|
|
312
|
+
blob_url: string;
|
|
313
|
+
/** Raw URL */
|
|
314
|
+
raw_url: string;
|
|
315
|
+
/** API URL */
|
|
316
|
+
contents_url: string;
|
|
317
|
+
/** Patch для файла */
|
|
318
|
+
patch?: string;
|
|
319
|
+
/** Предыдущее имя файла (для переименованных) */
|
|
320
|
+
previous_filename?: string;
|
|
321
|
+
}
|
|
322
|
+
/**
|
|
323
|
+
* Предупреждение об устаревшей версии API
|
|
324
|
+
*/
|
|
325
|
+
declare class ApiVersionWarning {
|
|
326
|
+
/** Текущая используемая версия */
|
|
327
|
+
readonly currentVersion: string;
|
|
328
|
+
/** Последняя доступная версия */
|
|
329
|
+
readonly latestVersion: string;
|
|
330
|
+
/** Дата вывода из эксплуатации */
|
|
331
|
+
readonly decommissioning?: string;
|
|
332
|
+
constructor(currentVersion: string, latestVersion: string, decommissioning?: string);
|
|
333
|
+
/**
|
|
334
|
+
* Возвращает сообщение о предупреждении
|
|
335
|
+
*/
|
|
336
|
+
getMessage(): string;
|
|
337
|
+
}
|
|
338
|
+
declare const HTTPMethods: {
|
|
339
|
+
readonly DELETE: "DELETE"
|
|
340
|
+
readonly GET: "GET"
|
|
341
|
+
readonly PATCH: "PATCH"
|
|
342
|
+
readonly POST: "POST"
|
|
343
|
+
readonly PUT: "PUT"
|
|
344
|
+
};
|
|
345
|
+
type HTTPMethods = (typeof HTTPMethods)[keyof typeof HTTPMethods];
|
|
346
|
+
/**
|
|
347
|
+
* Параметры для конфигурации GitVerse клиента
|
|
348
|
+
*/
|
|
349
|
+
interface GitVerseClientConfig {
|
|
350
|
+
/**
|
|
351
|
+
* Базовый URL API GitVerse
|
|
352
|
+
* @default 'https://api.gitverse.ru'
|
|
353
|
+
*/
|
|
354
|
+
baseUrl?: string;
|
|
355
|
+
/**
|
|
356
|
+
* Токен доступа для авторизации в API
|
|
357
|
+
*/
|
|
358
|
+
token?: string;
|
|
359
|
+
/**
|
|
360
|
+
* Версия API
|
|
361
|
+
* @default '1'
|
|
362
|
+
*/
|
|
363
|
+
apiVersion?: string;
|
|
364
|
+
}
|
|
365
|
+
/**
|
|
366
|
+
* Основной класс для работы с GitVerse API
|
|
367
|
+
*/
|
|
368
|
+
declare class GitVerseClient {
|
|
369
|
+
private baseUrl;
|
|
370
|
+
private token?;
|
|
371
|
+
private apiVersion;
|
|
372
|
+
/**
|
|
373
|
+
* Callback для обработки предупреждений об устаревшей версии API
|
|
374
|
+
*/
|
|
375
|
+
onApiVersionWarning?: (warning: ApiVersionWarning) => void;
|
|
376
|
+
/**
|
|
377
|
+
* Создает новый экземпляр GitVerse клиента
|
|
378
|
+
* @param config Конфигурация клиента
|
|
379
|
+
*/
|
|
380
|
+
constructor(config?: GitVerseClientConfig);
|
|
381
|
+
/**
|
|
382
|
+
* Устанавливает токен авторизации
|
|
383
|
+
* @param token Токен доступа
|
|
384
|
+
*/
|
|
385
|
+
setToken(token: string): void;
|
|
386
|
+
/**
|
|
387
|
+
* Извлекает информацию о Rate Limit из заголовков ответа
|
|
388
|
+
*/
|
|
389
|
+
private extractRateLimitInfo;
|
|
390
|
+
/**
|
|
391
|
+
* Извлекает информацию о версии API из заголовков ответа
|
|
392
|
+
*/
|
|
393
|
+
private extractApiVersionInfo;
|
|
394
|
+
/**
|
|
395
|
+
* Извлекает метаданные из заголовков ответа
|
|
396
|
+
*/
|
|
397
|
+
private extractMetadata;
|
|
398
|
+
/**
|
|
399
|
+
* Выполняет API-запрос с учетом авторизации и версии API
|
|
400
|
+
* @param path Путь к API-ресурсу
|
|
401
|
+
* @param method HTTP-метод
|
|
402
|
+
* @param body Тело запроса (опционально)
|
|
403
|
+
* @returns Ответ от API
|
|
404
|
+
* @throws {RateLimitError} При превышении лимита запросов (429)
|
|
405
|
+
* @throws {GitVerseApiError} При других ошибках API
|
|
406
|
+
*/
|
|
407
|
+
request<T>(path: string, method: HTTPMethods, body?: unknown): Promise<T>;
|
|
408
|
+
/**
|
|
409
|
+
* Выполняет GET-запрос
|
|
410
|
+
* @param path Путь к API-ресурсу
|
|
411
|
+
* @returns Ответ от API
|
|
412
|
+
*/
|
|
413
|
+
get<T>(path: string): Promise<T>;
|
|
414
|
+
/**
|
|
415
|
+
* Выполняет POST-запрос
|
|
416
|
+
* @param path Путь к API-ресурсу
|
|
417
|
+
* @param body Тело запроса
|
|
418
|
+
* @returns Ответ от API
|
|
419
|
+
*/
|
|
420
|
+
post<T>(path: string, body?: unknown): Promise<T>;
|
|
421
|
+
/**
|
|
422
|
+
* Выполняет PUT-запрос
|
|
423
|
+
* @param path Путь к API-ресурсу
|
|
424
|
+
* @param body Тело запроса
|
|
425
|
+
* @returns Ответ от API
|
|
426
|
+
*/
|
|
427
|
+
put<T>(path: string, body?: unknown): Promise<T>;
|
|
428
|
+
/**
|
|
429
|
+
* Выполняет DELETE-запрос
|
|
430
|
+
* @param path Путь к API-ресурсу
|
|
431
|
+
* @param body Тело запроса (опционально)
|
|
432
|
+
* @returns Ответ от API
|
|
433
|
+
*/
|
|
434
|
+
delete<T>(path: string, body?: unknown): Promise<T>;
|
|
435
|
+
/**
|
|
436
|
+
* Выполняет PATCH-запрос
|
|
437
|
+
* @param path Путь к API-ресурсу
|
|
438
|
+
* @param body Тело запроса
|
|
439
|
+
* @returns Ответ от API
|
|
440
|
+
*/
|
|
441
|
+
patch<T>(path: string, body?: unknown): Promise<T>;
|
|
442
|
+
}
|
|
443
|
+
/**
|
|
444
|
+
* API для работы с репозиториями
|
|
445
|
+
*/
|
|
446
|
+
declare class RepositoriesApi {
|
|
447
|
+
private client;
|
|
448
|
+
/**
|
|
449
|
+
* Создает новый экземпляр API для работы с репозиториями
|
|
450
|
+
* @param client GitVerse клиент
|
|
451
|
+
*/
|
|
452
|
+
constructor(client: GitVerseClient);
|
|
453
|
+
/**
|
|
454
|
+
* Получает информацию о репозитории
|
|
455
|
+
* @param owner Владелец репозитория
|
|
456
|
+
* @param repo Название репозитория
|
|
457
|
+
* @returns Данные о репозитории
|
|
458
|
+
*/
|
|
459
|
+
get(owner: string, repo: string): Promise<Repository>;
|
|
460
|
+
/**
|
|
461
|
+
* Удаляет репозиторий
|
|
462
|
+
* @param owner Владелец репозитория
|
|
463
|
+
* @param repo Название репозитория
|
|
464
|
+
* @returns Результат операции
|
|
465
|
+
*/
|
|
466
|
+
delete(owner: string, repo: string): Promise<void>;
|
|
467
|
+
/**
|
|
468
|
+
* Обновляет информацию о репозитории
|
|
469
|
+
* @param owner Владелец репозитория
|
|
470
|
+
* @param repo Название репозитория
|
|
471
|
+
* @param params Параметры для обновления
|
|
472
|
+
* @returns Обновлённый репозиторий
|
|
473
|
+
*/
|
|
474
|
+
update(owner: string, repo: string, params: UpdateRepositoryParams): Promise<Repository>;
|
|
475
|
+
/**
|
|
476
|
+
* Сравнивает две ветки или коммита
|
|
477
|
+
* @param owner Владелец репозитория
|
|
478
|
+
* @param repo Название репозитория
|
|
479
|
+
* @param basehead Строка в формате "base...head" для сравнения
|
|
480
|
+
* @returns Результат сравнения с коммитами и изменёнными файлами
|
|
481
|
+
*/
|
|
482
|
+
compare(owner: string, repo: string, basehead: string): Promise<CompareResponse>;
|
|
483
|
+
/**
|
|
484
|
+
* Получает информацию о языках программирования в репозитории
|
|
485
|
+
* @param owner Владелец репозитория
|
|
486
|
+
* @param repo Название репозитория
|
|
487
|
+
* @returns Объект с языками и количеством байт кода
|
|
488
|
+
*/
|
|
489
|
+
getLanguages(owner: string, repo: string): Promise<LanguagesResponse>;
|
|
490
|
+
/**
|
|
491
|
+
* Получает список репозиториев авторизованного пользователя
|
|
492
|
+
* @returns Массив репозиториев пользователя
|
|
493
|
+
*/
|
|
494
|
+
listForAuthenticatedUser(): Promise<Repository[]>;
|
|
495
|
+
/**
|
|
496
|
+
* Создает новый репозиторий для авторизованного пользователя
|
|
497
|
+
* @param params Параметры создания репозитория
|
|
498
|
+
* @returns Созданный репозиторий
|
|
499
|
+
*/
|
|
500
|
+
create(params: CreateRepositoryParams): Promise<Repository>;
|
|
501
|
+
}
|
|
502
|
+
export { RepositoriesApi };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
class k{client;constructor(f){this.client=f}get(f,g){return this.client.get(`/repos/${f}/${g}`)}delete(f,g){return this.client.delete(`/repos/${f}/${g}`)}update(f,g,j){return this.client.patch(`/repos/${f}/${g}`,j)}compare(f,g,j){return this.client.get(`/repos/${f}/${g}/compare/${j}`)}getLanguages(f,g){return this.client.get(`/repos/${f}/${g}/languages`)}listForAuthenticatedUser(){return this.client.get("/user/repos")}create(f){return this.client.post("/user/repos",f)}}export{k as RepositoriesApi};
|
|
2
|
+
export{k as g};
|
|
3
|
+
|
|
4
|
+
//# debugId=0E93FD5F40DD639F64756E2164756E21
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/api/repositories.ts"],
|
|
4
|
+
"sourcesContent": [
|
|
5
|
+
"import type { GitVerseClient } from \"../client\";\nimport type {\n CompareResponse,\n CreateRepositoryParams,\n LanguagesResponse,\n Repository,\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 * Получает информацию о репозитории\n * @param owner Владелец репозитория\n * @param repo Название репозитория\n * @returns Данные о репозитории\n */\n get(owner: string, repo: string): Promise<Repository> {\n return this.client.get<Repository>(`/repos/${owner}/${repo}`);\n }\n\n /**\n * Удаляет репозиторий\n * @param owner Владелец репозитория\n * @param repo Название репозитория\n * @returns Результат операции\n */\n delete(owner: string, repo: string): Promise<void> {\n return this.client.delete<void>(`/repos/${owner}/${repo}`);\n }\n\n /**\n * Обновляет информацию о репозитории\n * @param owner Владелец репозитория\n * @param repo Название репозитория\n * @param params Параметры для обновления\n * @returns Обновлённый репозиторий\n */\n update(owner: string, repo: string, params: UpdateRepositoryParams): Promise<Repository> {\n return this.client.patch<Repository>(`/repos/${owner}/${repo}`, params);\n }\n\n /**\n * Сравнивает две ветки или коммита\n * @param owner Владелец репозитория\n * @param repo Название репозитория\n * @param basehead Строка в формате \"base...head\" для сравнения\n * @returns Результат сравнения с коммитами и изменёнными файлами\n */\n compare(owner: string, repo: string, basehead: string): Promise<CompareResponse> {\n return this.client.get<CompareResponse>(`/repos/${owner}/${repo}/compare/${basehead}`);\n }\n\n /**\n * Получает информацию о языках программирования в репозитории\n * @param owner Владелец репозитория\n * @param repo Название репозитория\n * @returns Объект с языками и количеством байт кода\n */\n getLanguages(owner: string, repo: string): Promise<LanguagesResponse> {\n return this.client.get<LanguagesResponse>(`/repos/${owner}/${repo}/languages`);\n }\n\n /**\n * Получает список репозиториев авторизованного пользователя\n * @returns Массив репозиториев пользователя\n */\n listForAuthenticatedUser(): Promise<Repository[]> {\n return this.client.get<Repository[]>(\"/user/repos\");\n }\n\n /**\n * Создает новый репозиторий для авторизованного пользователя\n * @param params Параметры создания репозитория\n * @returns Созданный репозиторий\n */\n create(params: CreateRepositoryParams): Promise<Repository> {\n return this.client.post<Repository>(\"/user/repos\", params);\n }\n}\n"
|
|
6
|
+
],
|
|
7
|
+
"mappings": "AAYO,MAAM,CAAgB,CACnB,OAMR,WAAW,CAAC,EAAwB,CAClC,KAAK,OAAS,EAShB,GAAG,CAAC,EAAe,EAAmC,CACpD,OAAO,KAAK,OAAO,IAAgB,UAAU,KAAS,GAAM,EAS9D,MAAM,CAAC,EAAe,EAA6B,CACjD,OAAO,KAAK,OAAO,OAAa,UAAU,KAAS,GAAM,EAU3D,MAAM,CAAC,EAAe,EAAc,EAAqD,CACvF,OAAO,KAAK,OAAO,MAAkB,UAAU,KAAS,IAAQ,CAAM,EAUxE,OAAO,CAAC,EAAe,EAAc,EAA4C,CAC/E,OAAO,KAAK,OAAO,IAAqB,UAAU,KAAS,aAAgB,GAAU,EASvF,YAAY,CAAC,EAAe,EAA0C,CACpE,OAAO,KAAK,OAAO,IAAuB,UAAU,KAAS,aAAgB,EAO/E,wBAAwB,EAA0B,CAChD,OAAO,KAAK,OAAO,IAAkB,aAAa,EAQpD,MAAM,CAAC,EAAqD,CAC1D,OAAO,KAAK,OAAO,KAAiB,cAAe,CAAM,EAE7D",
|
|
8
|
+
"debugId": "0E93FD5F40DD639F64756E2164756E21",
|
|
9
|
+
"names": []
|
|
10
|
+
}
|