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
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,1256 @@
|
|
|
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
|
+
declare const ContentType: {
|
|
28
|
+
readonly Directory: "dir"
|
|
29
|
+
readonly File: "file"
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
* Тип для типов содержимого
|
|
33
|
+
*/
|
|
34
|
+
type ContentType = (typeof ContentType)[keyof typeof ContentType];
|
|
35
|
+
/**
|
|
36
|
+
* Состояния pull request
|
|
37
|
+
*/
|
|
38
|
+
declare const PullRequestState: {
|
|
39
|
+
readonly Closed: "closed"
|
|
40
|
+
readonly Open: "open"
|
|
41
|
+
};
|
|
42
|
+
/**
|
|
43
|
+
* Тип для состояний pull request
|
|
44
|
+
*/
|
|
45
|
+
type PullRequestState = (typeof PullRequestState)[keyof typeof PullRequestState];
|
|
46
|
+
/**
|
|
47
|
+
* Состояния issue
|
|
48
|
+
*/
|
|
49
|
+
declare const IssueState: {
|
|
50
|
+
readonly Closed: "closed"
|
|
51
|
+
readonly Open: "open"
|
|
52
|
+
};
|
|
53
|
+
/**
|
|
54
|
+
* Тип для состояний issue
|
|
55
|
+
*/
|
|
56
|
+
type IssueState = (typeof IssueState)[keyof typeof IssueState];
|
|
57
|
+
/**
|
|
58
|
+
* Информация о лимитах запросов (Rate Limits)
|
|
59
|
+
*/
|
|
60
|
+
interface RateLimitInfo {
|
|
61
|
+
/** Максимальное количество запросов за час */
|
|
62
|
+
limit: number;
|
|
63
|
+
/** Оставшееся количество запросов */
|
|
64
|
+
remaining: number;
|
|
65
|
+
/** Количество секунд до сброса лимита */
|
|
66
|
+
retryAfter: number;
|
|
67
|
+
/** Unix timestamp когда лимит будет сброшен */
|
|
68
|
+
reset: number;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Информация о версии API
|
|
72
|
+
*/
|
|
73
|
+
interface ApiVersionInfo {
|
|
74
|
+
/** Текущая версия API */
|
|
75
|
+
version: string;
|
|
76
|
+
/** Последняя доступная версия API */
|
|
77
|
+
latestVersion: string;
|
|
78
|
+
/** Флаг устаревшей версии */
|
|
79
|
+
deprecated: boolean;
|
|
80
|
+
/** Дата вывода из эксплуатации (если версия устарела) */
|
|
81
|
+
decommissioning?: string;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Метаданные ответа API
|
|
85
|
+
*/
|
|
86
|
+
interface ApiResponseMetadata {
|
|
87
|
+
/** Информация о лимитах запросов */
|
|
88
|
+
rateLimit?: RateLimitInfo;
|
|
89
|
+
/** Информация о версии API */
|
|
90
|
+
apiVersion?: ApiVersionInfo;
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Интерфейс пользователя
|
|
94
|
+
*/
|
|
95
|
+
interface User2 {
|
|
96
|
+
/** Уникальный идентификатор пользователя */
|
|
97
|
+
id: number;
|
|
98
|
+
/** Имя пользователя */
|
|
99
|
+
name?: string;
|
|
100
|
+
/** Логин пользователя */
|
|
101
|
+
login: string;
|
|
102
|
+
/** Полное имя пользователя */
|
|
103
|
+
full_name?: string;
|
|
104
|
+
/** Тип аккаунта: пользователь или организация */
|
|
105
|
+
type: UserType;
|
|
106
|
+
/** Биография пользователя */
|
|
107
|
+
bio?: string;
|
|
108
|
+
/** Электронная почта пользователя */
|
|
109
|
+
email?: string;
|
|
110
|
+
/** URL аватара пользователя */
|
|
111
|
+
avatar_url: string;
|
|
112
|
+
/** Веб-ссылка на профиль пользователя */
|
|
113
|
+
html_url: string;
|
|
114
|
+
/** API-ссылка на профиль пользователя */
|
|
115
|
+
url?: string;
|
|
116
|
+
/** API-ссылка на список подписчиков пользователя */
|
|
117
|
+
followers_url?: string;
|
|
118
|
+
/** API-ссылка на репозитории пользователя */
|
|
119
|
+
repos_url?: string;
|
|
120
|
+
/** API-ссылка на организации пользователя */
|
|
121
|
+
organizations_url?: string;
|
|
122
|
+
/** Права администратора */
|
|
123
|
+
site_admin: boolean;
|
|
124
|
+
/** Местоположение пользователя */
|
|
125
|
+
location?: string;
|
|
126
|
+
/** Верификация аккаунта */
|
|
127
|
+
is_verified?: boolean;
|
|
128
|
+
/** Настройки приватности профиля */
|
|
129
|
+
visibility?: VisibilityType;
|
|
130
|
+
/** Персональный веб-сайт */
|
|
131
|
+
website?: string;
|
|
132
|
+
/** Количество подписчиков */
|
|
133
|
+
followers?: number;
|
|
134
|
+
/** Количество подписок */
|
|
135
|
+
following?: number;
|
|
136
|
+
/** Количество публичных репозиториев */
|
|
137
|
+
public_repos?: number;
|
|
138
|
+
/** Количество репозиториев, отмеченных звездой */
|
|
139
|
+
stars_count?: number;
|
|
140
|
+
/** Дата создания аккаунта */
|
|
141
|
+
created_at: string;
|
|
142
|
+
/** Дата последнего обновления аккаунта */
|
|
143
|
+
updated_at?: string;
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Интерфейс текущего авторизованного пользователя
|
|
147
|
+
* Получается из API метода /user
|
|
148
|
+
*/
|
|
149
|
+
interface CurrentUser {
|
|
150
|
+
/** Уникальный идентификатор пользователя */
|
|
151
|
+
id: number;
|
|
152
|
+
/** Имя пользователя (может быть пустым) */
|
|
153
|
+
name?: string;
|
|
154
|
+
/** Логин пользователя */
|
|
155
|
+
login: string;
|
|
156
|
+
/** Электронная почта пользователя (может быть недоступна) */
|
|
157
|
+
email?: string;
|
|
158
|
+
/** URL аватара пользователя */
|
|
159
|
+
avatar_url: string;
|
|
160
|
+
/** Веб-ссылка на профиль пользователя */
|
|
161
|
+
html_url: string;
|
|
162
|
+
/** Количество публичных репозиториев */
|
|
163
|
+
public_repos: number;
|
|
164
|
+
/** Количество подписчиков */
|
|
165
|
+
followers: number;
|
|
166
|
+
/** Дата создания аккаунта */
|
|
167
|
+
created_at: string;
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Интерфейс репозитория
|
|
171
|
+
*/
|
|
172
|
+
interface Repository {
|
|
173
|
+
/** Уникальный идентификатор репозитория */
|
|
174
|
+
id: number;
|
|
175
|
+
/** Информация о владельце репозитория */
|
|
176
|
+
owner: User2;
|
|
177
|
+
/** Название репозитория */
|
|
178
|
+
name: string;
|
|
179
|
+
/** Полное название репозитория в формате {owner}/{repo} */
|
|
180
|
+
full_name: string;
|
|
181
|
+
/** Описание репозитория */
|
|
182
|
+
description?: string;
|
|
183
|
+
/** Список тем, связанных с репозиторием */
|
|
184
|
+
topics?: string[] | null;
|
|
185
|
+
/** Является ли репозиторий приватным */
|
|
186
|
+
private: boolean;
|
|
187
|
+
/** Является ли репозиторий форком другого репозитория */
|
|
188
|
+
fork: boolean;
|
|
189
|
+
/** Информация о родительском репозитории (если это форк) */
|
|
190
|
+
parent?: Repository | null;
|
|
191
|
+
/** Размер репозитория в килобайтах */
|
|
192
|
+
size: number;
|
|
193
|
+
/** Основной язык программирования, используемый в репозитории */
|
|
194
|
+
language?: string;
|
|
195
|
+
/** SSH-URL для клонирования репозитория */
|
|
196
|
+
ssh_url: string;
|
|
197
|
+
/** HTTPS-URL для клонирования репозитория */
|
|
198
|
+
clone_url: string;
|
|
199
|
+
/** Веб-ссылка на репозиторий */
|
|
200
|
+
html_url: string;
|
|
201
|
+
/** API-ссылка на репозиторий */
|
|
202
|
+
url: string;
|
|
203
|
+
/** Git-URL для клонирования репозитория */
|
|
204
|
+
git_url: string;
|
|
205
|
+
/** Зеркало репозитория (если доступно) */
|
|
206
|
+
mirror_url?: string;
|
|
207
|
+
/** Ссылка на вебсайт проекта */
|
|
208
|
+
website?: string;
|
|
209
|
+
/** Альтернативная ссылка на домашнюю страницу проекта */
|
|
210
|
+
homepage?: string;
|
|
211
|
+
/** Количество звезд у репозитория */
|
|
212
|
+
stargazers_count: number;
|
|
213
|
+
/** Количество форков репозитория */
|
|
214
|
+
forks: number;
|
|
215
|
+
/** Количество форков репозитория (дублирует поле forks) */
|
|
216
|
+
forks_count: number;
|
|
217
|
+
/** Количество наблюдателей за репозиторием */
|
|
218
|
+
watchers: number;
|
|
219
|
+
/** Количество наблюдателей за репозиторием (дублирует поле watchers) */
|
|
220
|
+
watchers_count: number;
|
|
221
|
+
/** Количество репозиториев в сети (форков и оригинала) */
|
|
222
|
+
network_count: number;
|
|
223
|
+
/** Количество подписчиков на уведомления о репозитории */
|
|
224
|
+
subscribers_count: number;
|
|
225
|
+
/** Количество открытых задач (issues) в репозитории */
|
|
226
|
+
open_issues: number;
|
|
227
|
+
/** Количество открытых задач (дублирует поле open_issues) */
|
|
228
|
+
open_issues_count: number;
|
|
229
|
+
/** Количество открытых pull requests */
|
|
230
|
+
open_pr_counter: number;
|
|
231
|
+
/** Основная ветка репозитория */
|
|
232
|
+
default_branch: string;
|
|
233
|
+
/** Архивирован ли репозиторий */
|
|
234
|
+
archived: boolean;
|
|
235
|
+
/** Разрешено ли создание задач (issues) */
|
|
236
|
+
has_issues: boolean;
|
|
237
|
+
/** Разрешено ли использование проектов */
|
|
238
|
+
has_projects: boolean;
|
|
239
|
+
/** Разрешено ли использование обсуждений */
|
|
240
|
+
has_discussions: boolean;
|
|
241
|
+
/** Разрешено ли использование wiki */
|
|
242
|
+
has_wiki: boolean;
|
|
243
|
+
/** Разрешено ли использование GitHub Pages */
|
|
244
|
+
has_pages: boolean;
|
|
245
|
+
/** Отключен ли репозиторий */
|
|
246
|
+
disabled: boolean;
|
|
247
|
+
/** Настройки приватности репозитория */
|
|
248
|
+
visibility: VisibilityType;
|
|
249
|
+
/** Является ли репозиторий шаблоном */
|
|
250
|
+
is_template: boolean;
|
|
251
|
+
/** Информация о шаблоне репозитория (если доступно) */
|
|
252
|
+
template_repository?: Repository | null;
|
|
253
|
+
/** Разрешены ли слияния через merge commits */
|
|
254
|
+
allow_merge_commits: boolean;
|
|
255
|
+
/** Разрешены ли слияния через squash commits */
|
|
256
|
+
allow_squash_merge: boolean;
|
|
257
|
+
/** Удалять ли ветку после слияния по умолчанию */
|
|
258
|
+
default_delete_branch_after_merge: boolean;
|
|
259
|
+
/** Дата создания репозитория */
|
|
260
|
+
created_at: string;
|
|
261
|
+
/** Дата последнего обновления репозитория */
|
|
262
|
+
updated_at: string;
|
|
263
|
+
/** Дата последнего push-события в репозиторий */
|
|
264
|
+
pushed_at: string;
|
|
265
|
+
}
|
|
266
|
+
/**
|
|
267
|
+
* Интерфейс ответа с распределением языков в репозитории
|
|
268
|
+
*/
|
|
269
|
+
interface LanguagesResponse {
|
|
270
|
+
/** Количество байт кода на каждом языке */
|
|
271
|
+
[language: string]: number;
|
|
272
|
+
}
|
|
273
|
+
/**
|
|
274
|
+
* Интерфейс информации о файле
|
|
275
|
+
*/
|
|
276
|
+
interface FileContent {
|
|
277
|
+
/** Имя файла */
|
|
278
|
+
name: string;
|
|
279
|
+
/** Путь к файлу относительно корня репозитория */
|
|
280
|
+
path: string;
|
|
281
|
+
/** SHA-хеш содержимого файла */
|
|
282
|
+
sha: string;
|
|
283
|
+
/** Размер файла в байтах */
|
|
284
|
+
size: number;
|
|
285
|
+
/** Тип объекта (всегда 'file' для файла) */
|
|
286
|
+
type: typeof ContentType.File;
|
|
287
|
+
/** Кодировка содержимого файла (например, 'base64') */
|
|
288
|
+
encoding?: string;
|
|
289
|
+
/** Содержимое файла в формате Base64 */
|
|
290
|
+
content?: string;
|
|
291
|
+
/** Определенный язык программирования файла */
|
|
292
|
+
language?: string;
|
|
293
|
+
/** API-ссылка на файл */
|
|
294
|
+
url?: string;
|
|
295
|
+
/** Веб-ссылка на файл */
|
|
296
|
+
html_url?: string;
|
|
297
|
+
/** Git-URL для файла */
|
|
298
|
+
git_url?: string;
|
|
299
|
+
/** URL для скачивания файла */
|
|
300
|
+
download_url?: string;
|
|
301
|
+
}
|
|
302
|
+
/**
|
|
303
|
+
* Интерфейс информации о директории
|
|
304
|
+
*/
|
|
305
|
+
interface DirectoryContent {
|
|
306
|
+
/** Тип объекта (всегда 'dir' для директории) */
|
|
307
|
+
type: typeof ContentType.Directory;
|
|
308
|
+
/** Размер директории (всегда 0) */
|
|
309
|
+
size: number;
|
|
310
|
+
/** Имя директории */
|
|
311
|
+
name: string;
|
|
312
|
+
/** Путь к директории относительно корня репозитория */
|
|
313
|
+
path: string;
|
|
314
|
+
/** SHA-хеш объекта директории */
|
|
315
|
+
sha: string;
|
|
316
|
+
/** Список файлов и поддиректорий внутри директории */
|
|
317
|
+
entries: Array<FileContent | DirectoryContent>;
|
|
318
|
+
}
|
|
319
|
+
/**
|
|
320
|
+
* Тип для содержимого репозитория (файл или директория)
|
|
321
|
+
*/
|
|
322
|
+
type Content = FileContent | DirectoryContent;
|
|
323
|
+
/**
|
|
324
|
+
* Интерфейс информации о коммите
|
|
325
|
+
*/
|
|
326
|
+
interface CommitInfo {
|
|
327
|
+
/** SHA-хеш коммита */
|
|
328
|
+
sha: string;
|
|
329
|
+
/** Node ID коммита */
|
|
330
|
+
node_id?: string;
|
|
331
|
+
/** API-ссылка на коммит */
|
|
332
|
+
url: string;
|
|
333
|
+
/** Веб-ссылка на коммит */
|
|
334
|
+
html_url: string;
|
|
335
|
+
/** Информация об авторе коммита */
|
|
336
|
+
author: {
|
|
337
|
+
/** Имя автора */
|
|
338
|
+
name: string
|
|
339
|
+
/** Email автора */
|
|
340
|
+
email: string
|
|
341
|
+
/** Дата создания коммита */
|
|
342
|
+
date: string
|
|
343
|
+
};
|
|
344
|
+
/** Информация о коммиттере */
|
|
345
|
+
committer: {
|
|
346
|
+
/** Имя коммиттера */
|
|
347
|
+
name: string
|
|
348
|
+
/** Email коммиттера */
|
|
349
|
+
email: string
|
|
350
|
+
/** Дата коммита */
|
|
351
|
+
date: string
|
|
352
|
+
};
|
|
353
|
+
/** Сообщение коммита */
|
|
354
|
+
message: string;
|
|
355
|
+
/** Информация о дереве коммита */
|
|
356
|
+
tree: {
|
|
357
|
+
/** SHA-хеш дерева */
|
|
358
|
+
sha: string
|
|
359
|
+
/** URL дерева */
|
|
360
|
+
url: string
|
|
361
|
+
};
|
|
362
|
+
/** Родительские коммиты */
|
|
363
|
+
parents: Array<{
|
|
364
|
+
/** SHA-хеш родительского коммита */
|
|
365
|
+
sha: string
|
|
366
|
+
/** API-ссылка на родительский коммит */
|
|
367
|
+
url: string
|
|
368
|
+
/** Веб-ссылка на родительский коммит */
|
|
369
|
+
html_url: string
|
|
370
|
+
}>;
|
|
371
|
+
}
|
|
372
|
+
/**
|
|
373
|
+
* Интерфейс ответа на создание файла
|
|
374
|
+
*/
|
|
375
|
+
interface FileCreationResponse {
|
|
376
|
+
/** Информация о созданном файле */
|
|
377
|
+
content: FileContent;
|
|
378
|
+
/** Информация о коммите */
|
|
379
|
+
commit: CommitInfo;
|
|
380
|
+
}
|
|
381
|
+
/**
|
|
382
|
+
* Интерфейс ответа на удаление файла
|
|
383
|
+
*/
|
|
384
|
+
interface FileDeletionResponse {
|
|
385
|
+
/** Информация о содержимом (null для удаленного файла) */
|
|
386
|
+
content: null;
|
|
387
|
+
/** Информация о коммите удаления */
|
|
388
|
+
commit: CommitInfo;
|
|
389
|
+
}
|
|
390
|
+
/**
|
|
391
|
+
* Интерфейс параметров для создания форка
|
|
392
|
+
*/
|
|
393
|
+
interface CreateForkParams {
|
|
394
|
+
/** Имя нового форка */
|
|
395
|
+
name?: string;
|
|
396
|
+
/** Название организации, в которую будет создан форк */
|
|
397
|
+
organization?: string;
|
|
398
|
+
/** Описание нового форка */
|
|
399
|
+
description?: string;
|
|
400
|
+
}
|
|
401
|
+
/**
|
|
402
|
+
* Интерфейс параметров для создания файла
|
|
403
|
+
*/
|
|
404
|
+
interface CreateFileParams {
|
|
405
|
+
/** Имя ветки, в которую будет добавлен файл (по умолчанию - основная ветка) */
|
|
406
|
+
branch?: string;
|
|
407
|
+
/** Содержимое файла, закодированное в Base64 */
|
|
408
|
+
content: string;
|
|
409
|
+
/** Сообщение коммита */
|
|
410
|
+
message?: string;
|
|
411
|
+
/** Имя новой ветки, которая будет создана для этого изменения */
|
|
412
|
+
new_branch?: string;
|
|
413
|
+
/** Добавлять ли подпись (Signed-off-by) в коммит */
|
|
414
|
+
signoff?: boolean;
|
|
415
|
+
}
|
|
416
|
+
/**
|
|
417
|
+
* Интерфейс параметров для обновления файла
|
|
418
|
+
*/
|
|
419
|
+
interface UpdateFileParams {
|
|
420
|
+
/** Имя ветки, в которой находится файл */
|
|
421
|
+
branch?: string;
|
|
422
|
+
/** Новое содержимое файла, закодированное в Base64 */
|
|
423
|
+
content: string;
|
|
424
|
+
/** SHA-хеш текущего содержимого файла */
|
|
425
|
+
sha: string;
|
|
426
|
+
/** Если файл переименовывается, указывает старый путь к файлу */
|
|
427
|
+
from_path?: string;
|
|
428
|
+
/** Сообщение коммита */
|
|
429
|
+
message?: string;
|
|
430
|
+
/** Имя новой ветки, которая будет создана для этого изменения */
|
|
431
|
+
new_branch?: string;
|
|
432
|
+
/** Добавлять ли подпись (Signed-off-by) в коммит */
|
|
433
|
+
signoff?: boolean;
|
|
434
|
+
}
|
|
435
|
+
/**
|
|
436
|
+
* Интерфейс параметров для удаления файла
|
|
437
|
+
*/
|
|
438
|
+
interface DeleteFileParams {
|
|
439
|
+
/** SHA-хеш текущего содержимого файла */
|
|
440
|
+
sha: string;
|
|
441
|
+
/** Имя ветки, в которой находится файл */
|
|
442
|
+
branch?: string;
|
|
443
|
+
/** Сообщение коммита */
|
|
444
|
+
message?: string;
|
|
445
|
+
/** Имя новой ветки, которая будет создана для этого изменения */
|
|
446
|
+
new_branch?: string;
|
|
447
|
+
/** Добавлять ли подпись (Signed-off-by) в коммит */
|
|
448
|
+
signoff?: boolean;
|
|
449
|
+
}
|
|
450
|
+
/**
|
|
451
|
+
* Интерфейс базовой или целевой ветки для pull request
|
|
452
|
+
*/
|
|
453
|
+
interface PullRequestBase {
|
|
454
|
+
/** Метка ветки */
|
|
455
|
+
label: string;
|
|
456
|
+
/** Имя ветки */
|
|
457
|
+
ref: string;
|
|
458
|
+
/** SHA-хеш последнего коммита в ветке */
|
|
459
|
+
sha: string;
|
|
460
|
+
/** ID репозитория */
|
|
461
|
+
repo_id: number;
|
|
462
|
+
/** Информация о репозитории */
|
|
463
|
+
repo: {
|
|
464
|
+
/** ID репозитория */
|
|
465
|
+
id: number
|
|
466
|
+
/** Название репозитория */
|
|
467
|
+
name: string
|
|
468
|
+
/** Полное название репозитория в формате {owner}/{repo} */
|
|
469
|
+
full_name: string
|
|
470
|
+
/** Является ли репозиторий приватным */
|
|
471
|
+
private: boolean
|
|
472
|
+
/** Основная ветка репозитория */
|
|
473
|
+
default_branch: string
|
|
474
|
+
};
|
|
475
|
+
}
|
|
476
|
+
/**
|
|
477
|
+
* Интерфейс pull request
|
|
478
|
+
*/
|
|
479
|
+
interface PullRequest {
|
|
480
|
+
/** Уникальный идентификатор pull request */
|
|
481
|
+
id: number;
|
|
482
|
+
/** API-ссылка на pull request */
|
|
483
|
+
url: string;
|
|
484
|
+
/** Номер pull request в репозитории */
|
|
485
|
+
number: number;
|
|
486
|
+
/** Информация о пользователе, создавшем pull request */
|
|
487
|
+
user: {
|
|
488
|
+
/** ID пользователя */
|
|
489
|
+
id: number
|
|
490
|
+
/** Логин пользователя */
|
|
491
|
+
login: string
|
|
492
|
+
/** Тип аккаунта */
|
|
493
|
+
type: string
|
|
494
|
+
/** URL аватара пользователя */
|
|
495
|
+
avatar_url: string
|
|
496
|
+
/** Веб-ссылка на профиль пользователя */
|
|
497
|
+
html_url: string
|
|
498
|
+
/** Права администратора */
|
|
499
|
+
site_admin: boolean
|
|
500
|
+
};
|
|
501
|
+
/** Заголовок pull request */
|
|
502
|
+
title: string;
|
|
503
|
+
/** Описание pull request */
|
|
504
|
+
body?: string;
|
|
505
|
+
/** Список меток */
|
|
506
|
+
labels: Label[];
|
|
507
|
+
/** Информация о майлстоуне */
|
|
508
|
+
milestone?: Milestone;
|
|
509
|
+
/** Информация о назначенном пользователе */
|
|
510
|
+
assignee?: User2;
|
|
511
|
+
/** Список назначенных пользователей */
|
|
512
|
+
assignees?: User2[];
|
|
513
|
+
/** Состояние pull request (открыт/закрыт) */
|
|
514
|
+
state: PullRequestState;
|
|
515
|
+
/** Заблокирован ли pull request */
|
|
516
|
+
locked: boolean;
|
|
517
|
+
/** Количество комментариев */
|
|
518
|
+
comments: number;
|
|
519
|
+
/** Веб-ссылка на pull request */
|
|
520
|
+
html_url: string;
|
|
521
|
+
/** Ссылка на diff файл */
|
|
522
|
+
diff_url: string;
|
|
523
|
+
/** Ссылка на patch файл */
|
|
524
|
+
patch_url: string;
|
|
525
|
+
/** Можно ли слить pull request */
|
|
526
|
+
mergeable: boolean;
|
|
527
|
+
/** Был ли pull request слит */
|
|
528
|
+
merged: boolean;
|
|
529
|
+
/** Дата слияния (если был слит) */
|
|
530
|
+
merged_at?: string | null;
|
|
531
|
+
/** SHA-хеш коммита слияния (если был слит) */
|
|
532
|
+
merge_commit_sha?: string | null;
|
|
533
|
+
/** Пользователь, выполнивший слияние */
|
|
534
|
+
merged_by?: User2 | null;
|
|
535
|
+
/** Может ли мейнтейнер изменять pull request */
|
|
536
|
+
maintainer_can_modify: boolean;
|
|
537
|
+
/** Информация о целевой ветке */
|
|
538
|
+
base: PullRequestBase;
|
|
539
|
+
/** Информация о ветке с изменениями */
|
|
540
|
+
head: PullRequestBase;
|
|
541
|
+
/** Дата создания pull request */
|
|
542
|
+
created_at: string;
|
|
543
|
+
/** Дата обновления pull request */
|
|
544
|
+
updated_at: string;
|
|
545
|
+
/** Дата закрытия pull request (если закрыт) */
|
|
546
|
+
closed_at?: string | null;
|
|
547
|
+
}
|
|
548
|
+
/**
|
|
549
|
+
* Интерфейс параметров для создания pull request
|
|
550
|
+
*/
|
|
551
|
+
interface CreatePullRequestParams {
|
|
552
|
+
/** Заголовок pull request */
|
|
553
|
+
title: string;
|
|
554
|
+
/** Описание pull request */
|
|
555
|
+
body?: string;
|
|
556
|
+
/** Имя ветки, из которой предлагаются изменения */
|
|
557
|
+
head: string;
|
|
558
|
+
/** Имя ветки, в которую будут внесены изменения */
|
|
559
|
+
base: string;
|
|
560
|
+
}
|
|
561
|
+
/**
|
|
562
|
+
* Интерфейс метки (label) для issues и pull requests
|
|
563
|
+
*/
|
|
564
|
+
interface Label {
|
|
565
|
+
/** Идентификатор метки */
|
|
566
|
+
id: number;
|
|
567
|
+
/** Имя метки */
|
|
568
|
+
name: string;
|
|
569
|
+
/** Описание метки */
|
|
570
|
+
description?: string;
|
|
571
|
+
/** Цвет метки в формате HEX */
|
|
572
|
+
color: string;
|
|
573
|
+
/** URL метки */
|
|
574
|
+
url?: string;
|
|
575
|
+
}
|
|
576
|
+
/**
|
|
577
|
+
* Интерфейс майлстоуна (milestone)
|
|
578
|
+
*/
|
|
579
|
+
interface Milestone {
|
|
580
|
+
/** Идентификатор майлстоуна */
|
|
581
|
+
id: number;
|
|
582
|
+
/** Номер майлстоуна */
|
|
583
|
+
number: number;
|
|
584
|
+
/** Название майлстоуна */
|
|
585
|
+
title: string;
|
|
586
|
+
/** Описание майлстоуна */
|
|
587
|
+
description?: string;
|
|
588
|
+
/** Создатель майлстоуна */
|
|
589
|
+
creator: User2;
|
|
590
|
+
/** Состояние майлстоуна (open/closed) */
|
|
591
|
+
state: "open" | "closed";
|
|
592
|
+
/** Количество открытых задач */
|
|
593
|
+
open_issues: number;
|
|
594
|
+
/** Количество закрытых задач */
|
|
595
|
+
closed_issues: number;
|
|
596
|
+
/** Дата создания */
|
|
597
|
+
created_at: string;
|
|
598
|
+
/** Дата обновления */
|
|
599
|
+
updated_at: string;
|
|
600
|
+
/** Дата окончания (due date) */
|
|
601
|
+
due_on?: string;
|
|
602
|
+
}
|
|
603
|
+
/**
|
|
604
|
+
* Интерфейс ошибки API
|
|
605
|
+
*/
|
|
606
|
+
interface ApiError {
|
|
607
|
+
/** Тип ошибки */
|
|
608
|
+
error: string;
|
|
609
|
+
/** Сообщение об ошибке */
|
|
610
|
+
message: string;
|
|
611
|
+
/** HTTP-код статуса */
|
|
612
|
+
status: number;
|
|
613
|
+
}
|
|
614
|
+
/**
|
|
615
|
+
* Интерфейс email адреса
|
|
616
|
+
*/
|
|
617
|
+
interface Email {
|
|
618
|
+
/** Email адрес */
|
|
619
|
+
email: string;
|
|
620
|
+
/** Подтвержден ли email */
|
|
621
|
+
verified: boolean;
|
|
622
|
+
/** Является ли основным */
|
|
623
|
+
primary: boolean;
|
|
624
|
+
/** Публичный ли email */
|
|
625
|
+
is_public: boolean;
|
|
626
|
+
}
|
|
627
|
+
/**
|
|
628
|
+
* Параметры для добавления email адресов
|
|
629
|
+
*/
|
|
630
|
+
interface AddEmailParams {
|
|
631
|
+
/** Массив email адресов для добавления */
|
|
632
|
+
emails: string[];
|
|
633
|
+
}
|
|
634
|
+
/**
|
|
635
|
+
* Параметры для удаления email адресов
|
|
636
|
+
*/
|
|
637
|
+
interface RemoveEmailParams {
|
|
638
|
+
/** Массив email адресов для удаления */
|
|
639
|
+
emails: string[];
|
|
640
|
+
}
|
|
641
|
+
/**
|
|
642
|
+
* Ответ на операции с email
|
|
643
|
+
*/
|
|
644
|
+
interface EmailOperationResponse {
|
|
645
|
+
/** Сообщение о результате операции */
|
|
646
|
+
message: string;
|
|
647
|
+
/** Удаленные email адреса (только для операции удаления) */
|
|
648
|
+
deleted_emails?: string[];
|
|
649
|
+
/** HTTP статус код */
|
|
650
|
+
status: number;
|
|
651
|
+
}
|
|
652
|
+
/**
|
|
653
|
+
* Параметры для создания репозитория
|
|
654
|
+
*/
|
|
655
|
+
interface CreateRepositoryParams {
|
|
656
|
+
/** Имя репозитория */
|
|
657
|
+
name: string;
|
|
658
|
+
/** Описание репозитория */
|
|
659
|
+
description?: string;
|
|
660
|
+
/** Приватный ли репозиторий */
|
|
661
|
+
private?: boolean;
|
|
662
|
+
/** Создать ли инициализирующий коммит */
|
|
663
|
+
auto_init?: boolean;
|
|
664
|
+
/** Список .gitignore шаблонов */
|
|
665
|
+
gitignores?: string[];
|
|
666
|
+
/** Лицензия репозитория */
|
|
667
|
+
license?: string;
|
|
668
|
+
/** Ветка по умолчанию */
|
|
669
|
+
default_branch?: string;
|
|
670
|
+
}
|
|
671
|
+
/**
|
|
672
|
+
* Интерфейс issue
|
|
673
|
+
*/
|
|
674
|
+
interface Issue {
|
|
675
|
+
/** Уникальный идентификатор issue */
|
|
676
|
+
id: number;
|
|
677
|
+
/** Номер issue в репозитории */
|
|
678
|
+
number: number;
|
|
679
|
+
/** Заголовок issue */
|
|
680
|
+
title: string;
|
|
681
|
+
/** Описание issue */
|
|
682
|
+
body?: string;
|
|
683
|
+
/** Состояние issue */
|
|
684
|
+
state: IssueState;
|
|
685
|
+
/** Пользователь, создавший issue */
|
|
686
|
+
user: User2;
|
|
687
|
+
/** Список меток */
|
|
688
|
+
labels: Label[];
|
|
689
|
+
/** Назначенные пользователи */
|
|
690
|
+
assignees?: User2[];
|
|
691
|
+
/** Дата создания */
|
|
692
|
+
created_at: string;
|
|
693
|
+
/** Дата обновления */
|
|
694
|
+
updated_at: string;
|
|
695
|
+
/** Дата закрытия */
|
|
696
|
+
closed_at?: string | null;
|
|
697
|
+
/** Количество комментариев */
|
|
698
|
+
comments: number;
|
|
699
|
+
/** Веб-ссылка на issue */
|
|
700
|
+
html_url: string;
|
|
701
|
+
/** API-ссылка на issue */
|
|
702
|
+
url: string;
|
|
703
|
+
}
|
|
704
|
+
/**
|
|
705
|
+
* Интерфейс комментария к issue или pull request
|
|
706
|
+
*/
|
|
707
|
+
interface Comment {
|
|
708
|
+
/** Уникальный идентификатор комментария */
|
|
709
|
+
id: number;
|
|
710
|
+
/** Текст комментария */
|
|
711
|
+
body: string;
|
|
712
|
+
/** Пользователь, создавший комментарий */
|
|
713
|
+
user: User2;
|
|
714
|
+
/** Дата создания */
|
|
715
|
+
created_at: string;
|
|
716
|
+
/** Дата обновления */
|
|
717
|
+
updated_at: string;
|
|
718
|
+
/** Веб-ссылка на комментарий */
|
|
719
|
+
html_url: string;
|
|
720
|
+
/** API-ссылка на комментарий */
|
|
721
|
+
url: string;
|
|
722
|
+
}
|
|
723
|
+
/**
|
|
724
|
+
* Интерфейс события в timeline issue
|
|
725
|
+
*/
|
|
726
|
+
interface TimelineEvent {
|
|
727
|
+
/** Уникальный идентификатор события */
|
|
728
|
+
id: number;
|
|
729
|
+
/** Тип события */
|
|
730
|
+
event: string;
|
|
731
|
+
/** Пользователь, вызвавший событие */
|
|
732
|
+
actor: User2;
|
|
733
|
+
/** Дата создания события */
|
|
734
|
+
created_at: string;
|
|
735
|
+
/** Метка (для событий с метками) */
|
|
736
|
+
label?: Label;
|
|
737
|
+
/** Milestone (для событий с milestone) */
|
|
738
|
+
milestone?: Milestone;
|
|
739
|
+
/** Переименование (для событий переименования) */
|
|
740
|
+
rename?: {
|
|
741
|
+
from: string
|
|
742
|
+
to: string
|
|
743
|
+
};
|
|
744
|
+
}
|
|
745
|
+
/**
|
|
746
|
+
* Интерфейс ветки репозитория
|
|
747
|
+
*/
|
|
748
|
+
interface Branch {
|
|
749
|
+
/** Имя ветки */
|
|
750
|
+
name: string;
|
|
751
|
+
/** SHA-хеш последнего коммита */
|
|
752
|
+
commit: {
|
|
753
|
+
sha: string
|
|
754
|
+
url: string
|
|
755
|
+
};
|
|
756
|
+
/** Защищена ли ветка */
|
|
757
|
+
protected?: boolean;
|
|
758
|
+
}
|
|
759
|
+
/**
|
|
760
|
+
* Интерфейс коммита
|
|
761
|
+
*/
|
|
762
|
+
interface Commit {
|
|
763
|
+
/** SHA-хеш коммита */
|
|
764
|
+
sha: string;
|
|
765
|
+
/** Node ID коммита */
|
|
766
|
+
node_id?: string;
|
|
767
|
+
/** Информация о коммите */
|
|
768
|
+
commit: {
|
|
769
|
+
/** Автор коммита */
|
|
770
|
+
author: {
|
|
771
|
+
name: string
|
|
772
|
+
email: string
|
|
773
|
+
date: string
|
|
774
|
+
}
|
|
775
|
+
/** Коммиттер */
|
|
776
|
+
committer: {
|
|
777
|
+
name: string
|
|
778
|
+
email: string
|
|
779
|
+
date: string
|
|
780
|
+
}
|
|
781
|
+
/** Сообщение коммита */
|
|
782
|
+
message: string
|
|
783
|
+
/** Дерево коммита */
|
|
784
|
+
tree: {
|
|
785
|
+
sha: string
|
|
786
|
+
url: string
|
|
787
|
+
}
|
|
788
|
+
};
|
|
789
|
+
/** Автор (пользователь GitVerse) */
|
|
790
|
+
author?: User2 | null;
|
|
791
|
+
/** Коммиттер (пользователь GitVerse) */
|
|
792
|
+
committer?: User2 | null;
|
|
793
|
+
/** Родительские коммиты */
|
|
794
|
+
parents: Array<{
|
|
795
|
+
sha: string
|
|
796
|
+
url: string
|
|
797
|
+
html_url: string
|
|
798
|
+
}>;
|
|
799
|
+
/** API-ссылка на коммит */
|
|
800
|
+
url: string;
|
|
801
|
+
/** Веб-ссылка на коммит */
|
|
802
|
+
html_url: string;
|
|
803
|
+
}
|
|
804
|
+
/**
|
|
805
|
+
* Параметры для создания коммита
|
|
806
|
+
*/
|
|
807
|
+
interface CreateCommitParams {
|
|
808
|
+
/** Сообщение коммита */
|
|
809
|
+
message: string;
|
|
810
|
+
/** SHA-хеш дерева */
|
|
811
|
+
tree: string;
|
|
812
|
+
/** SHA-хеши родительских коммитов */
|
|
813
|
+
parents?: string[];
|
|
814
|
+
/** Информация об авторе */
|
|
815
|
+
author?: {
|
|
816
|
+
name: string
|
|
817
|
+
email: string
|
|
818
|
+
date?: string
|
|
819
|
+
};
|
|
820
|
+
/** Информация о коммиттере */
|
|
821
|
+
committer?: {
|
|
822
|
+
name: string
|
|
823
|
+
email: string
|
|
824
|
+
date?: string
|
|
825
|
+
};
|
|
826
|
+
/** GPG подпись */
|
|
827
|
+
signature?: string;
|
|
828
|
+
}
|
|
829
|
+
/**
|
|
830
|
+
* Параметры для обновления репозитория
|
|
831
|
+
*/
|
|
832
|
+
interface UpdateRepositoryParams {
|
|
833
|
+
/** Новое название репозитория */
|
|
834
|
+
name?: string;
|
|
835
|
+
/** Новое описание репозитория */
|
|
836
|
+
description?: string;
|
|
837
|
+
/** Веб-сайт проекта */
|
|
838
|
+
website?: string;
|
|
839
|
+
/** Приватный ли репозиторий */
|
|
840
|
+
private?: boolean;
|
|
841
|
+
/** Разрешены ли issues */
|
|
842
|
+
has_issues?: boolean;
|
|
843
|
+
/** Разрешена ли wiki */
|
|
844
|
+
has_wiki?: boolean;
|
|
845
|
+
/** Ветка по умолчанию */
|
|
846
|
+
default_branch?: string;
|
|
847
|
+
/** Архивирован ли репозиторий */
|
|
848
|
+
archived?: boolean;
|
|
849
|
+
}
|
|
850
|
+
/**
|
|
851
|
+
* Интерфейс результата сравнения веток/коммитов
|
|
852
|
+
*/
|
|
853
|
+
interface CompareResponse {
|
|
854
|
+
/** URL для сравнения */
|
|
855
|
+
url: string;
|
|
856
|
+
/** Веб-ссылка для сравнения */
|
|
857
|
+
html_url: string;
|
|
858
|
+
/** Diff-ссылка */
|
|
859
|
+
diff_url: string;
|
|
860
|
+
/** Patch-ссылка */
|
|
861
|
+
patch_url: string;
|
|
862
|
+
/** Базовый коммит */
|
|
863
|
+
base_commit: Commit;
|
|
864
|
+
/** Сравниваемый коммит */
|
|
865
|
+
merge_base_commit: Commit;
|
|
866
|
+
/** Статус сравнения */
|
|
867
|
+
status: "ahead" | "behind" | "identical" | "diverged";
|
|
868
|
+
/** Количество коммитов впереди */
|
|
869
|
+
ahead_by: number;
|
|
870
|
+
/** Количество коммитов позади */
|
|
871
|
+
behind_by: number;
|
|
872
|
+
/** Общее количество коммитов */
|
|
873
|
+
total_commits: number;
|
|
874
|
+
/** Список коммитов */
|
|
875
|
+
commits: Commit[];
|
|
876
|
+
/** Изменённые файлы */
|
|
877
|
+
files: PullRequestFile[];
|
|
878
|
+
}
|
|
879
|
+
/**
|
|
880
|
+
* Параметры для обновления pull request
|
|
881
|
+
*/
|
|
882
|
+
interface UpdatePullRequestParams {
|
|
883
|
+
/** Новый заголовок */
|
|
884
|
+
title?: string;
|
|
885
|
+
/** Новое описание */
|
|
886
|
+
body?: string;
|
|
887
|
+
/** Новое состояние */
|
|
888
|
+
state?: PullRequestState;
|
|
889
|
+
/** Базовая ветка */
|
|
890
|
+
base?: string;
|
|
891
|
+
/** Можно ли мейнтейнерам модифицировать */
|
|
892
|
+
maintainer_can_modify?: boolean;
|
|
893
|
+
}
|
|
894
|
+
/**
|
|
895
|
+
* Интерфейс файла в pull request
|
|
896
|
+
*/
|
|
897
|
+
interface PullRequestFile {
|
|
898
|
+
/** SHA-хеш файла */
|
|
899
|
+
sha: string;
|
|
900
|
+
/** Имя файла */
|
|
901
|
+
filename: string;
|
|
902
|
+
/** Статус изменения */
|
|
903
|
+
status: "added" | "removed" | "modified" | "renamed" | "copied" | "changed" | "unchanged";
|
|
904
|
+
/** Количество добавленных строк */
|
|
905
|
+
additions: number;
|
|
906
|
+
/** Количество удалённых строк */
|
|
907
|
+
deletions: number;
|
|
908
|
+
/** Общее количество изменений */
|
|
909
|
+
changes: number;
|
|
910
|
+
/** URL для получения содержимого */
|
|
911
|
+
blob_url: string;
|
|
912
|
+
/** Raw URL */
|
|
913
|
+
raw_url: string;
|
|
914
|
+
/** API URL */
|
|
915
|
+
contents_url: string;
|
|
916
|
+
/** Patch для файла */
|
|
917
|
+
patch?: string;
|
|
918
|
+
/** Предыдущее имя файла (для переименованных) */
|
|
919
|
+
previous_filename?: string;
|
|
920
|
+
}
|
|
921
|
+
/**
|
|
922
|
+
* Интерфейс команды (team)
|
|
923
|
+
*/
|
|
924
|
+
interface Team {
|
|
925
|
+
/** Идентификатор команды */
|
|
926
|
+
id: number;
|
|
927
|
+
/** Node ID команды */
|
|
928
|
+
node_id?: string;
|
|
929
|
+
/** Название команды */
|
|
930
|
+
name: string;
|
|
931
|
+
/** Slug команды */
|
|
932
|
+
slug: string;
|
|
933
|
+
/** Описание команды */
|
|
934
|
+
description?: string;
|
|
935
|
+
/** Приватность команды */
|
|
936
|
+
privacy?: "secret" | "closed";
|
|
937
|
+
/** Права доступа */
|
|
938
|
+
permission: "pull" | "push" | "admin";
|
|
939
|
+
/** Количество участников */
|
|
940
|
+
members_count?: number;
|
|
941
|
+
/** Количество репозиториев */
|
|
942
|
+
repos_count?: number;
|
|
943
|
+
/** Организация */
|
|
944
|
+
organization?: {
|
|
945
|
+
login: string
|
|
946
|
+
id: number
|
|
947
|
+
};
|
|
948
|
+
/** Веб-ссылка */
|
|
949
|
+
html_url: string;
|
|
950
|
+
/** API-ссылка */
|
|
951
|
+
url: string;
|
|
952
|
+
}
|
|
953
|
+
/**
|
|
954
|
+
* Интерфейс приглашения в команду
|
|
955
|
+
*/
|
|
956
|
+
interface Invitation {
|
|
957
|
+
/** Идентификатор приглашения */
|
|
958
|
+
id: number;
|
|
959
|
+
/** Приглашённый пользователь */
|
|
960
|
+
login: string;
|
|
961
|
+
/** Email приглашённого */
|
|
962
|
+
email?: string;
|
|
963
|
+
/** Роль */
|
|
964
|
+
role: string;
|
|
965
|
+
/** Дата создания */
|
|
966
|
+
created_at: string;
|
|
967
|
+
/** Приглашающий */
|
|
968
|
+
inviter: User2;
|
|
969
|
+
}
|
|
970
|
+
/**
|
|
971
|
+
* Интерфейс релиза
|
|
972
|
+
*/
|
|
973
|
+
interface Release {
|
|
974
|
+
/** Идентификатор релиза */
|
|
975
|
+
id: number;
|
|
976
|
+
/** Тег релиза */
|
|
977
|
+
tag_name: string;
|
|
978
|
+
/** Целевой коммит */
|
|
979
|
+
target_commitish: string;
|
|
980
|
+
/** Название релиза */
|
|
981
|
+
name: string;
|
|
982
|
+
/** Описание релиза */
|
|
983
|
+
body?: string;
|
|
984
|
+
/** Черновик ли релиз */
|
|
985
|
+
draft: boolean;
|
|
986
|
+
/** Пре-релиз ли */
|
|
987
|
+
prerelease: boolean;
|
|
988
|
+
/** Автор релиза */
|
|
989
|
+
author: User2;
|
|
990
|
+
/** Дата создания */
|
|
991
|
+
created_at: string;
|
|
992
|
+
/** Дата публикации */
|
|
993
|
+
published_at?: string;
|
|
994
|
+
/** Веб-ссылка */
|
|
995
|
+
html_url: string;
|
|
996
|
+
/** API-ссылка */
|
|
997
|
+
url: string;
|
|
998
|
+
/** Ссылка на архив tar.gz */
|
|
999
|
+
tarball_url: string;
|
|
1000
|
+
/** Ссылка на архив zip */
|
|
1001
|
+
zipball_url: string;
|
|
1002
|
+
/** Список ассетов */
|
|
1003
|
+
assets: Asset[];
|
|
1004
|
+
}
|
|
1005
|
+
/**
|
|
1006
|
+
* Параметры для создания релиза
|
|
1007
|
+
*/
|
|
1008
|
+
interface CreateReleaseParams {
|
|
1009
|
+
/** Тег релиза */
|
|
1010
|
+
tag_name: string;
|
|
1011
|
+
/** Целевой коммит (по умолчанию основная ветка) */
|
|
1012
|
+
target_commitish?: string;
|
|
1013
|
+
/** Название релиза */
|
|
1014
|
+
name?: string;
|
|
1015
|
+
/** Описание релиза */
|
|
1016
|
+
body?: string;
|
|
1017
|
+
/** Черновик ли релиз */
|
|
1018
|
+
draft?: boolean;
|
|
1019
|
+
/** Пре-релиз ли */
|
|
1020
|
+
prerelease?: boolean;
|
|
1021
|
+
}
|
|
1022
|
+
/**
|
|
1023
|
+
* Параметры для обновления релиза
|
|
1024
|
+
*/
|
|
1025
|
+
interface UpdateReleaseParams {
|
|
1026
|
+
/** Тег релиза */
|
|
1027
|
+
tag_name?: string;
|
|
1028
|
+
/** Целевой коммит */
|
|
1029
|
+
target_commitish?: string;
|
|
1030
|
+
/** Название релиза */
|
|
1031
|
+
name?: string;
|
|
1032
|
+
/** Описание релиза */
|
|
1033
|
+
body?: string;
|
|
1034
|
+
/** Черновик ли релиз */
|
|
1035
|
+
draft?: boolean;
|
|
1036
|
+
/** Пре-релиз ли */
|
|
1037
|
+
prerelease?: boolean;
|
|
1038
|
+
}
|
|
1039
|
+
/**
|
|
1040
|
+
* Интерфейс ассета релиза
|
|
1041
|
+
*/
|
|
1042
|
+
interface Asset {
|
|
1043
|
+
/** Идентификатор ассета */
|
|
1044
|
+
id: number;
|
|
1045
|
+
/** Название файла */
|
|
1046
|
+
name: string;
|
|
1047
|
+
/** Метка ассета */
|
|
1048
|
+
label?: string;
|
|
1049
|
+
/** Content-Type */
|
|
1050
|
+
content_type: string;
|
|
1051
|
+
/** Состояние ассета */
|
|
1052
|
+
state: "uploaded" | "open";
|
|
1053
|
+
/** Размер в байтах */
|
|
1054
|
+
size: number;
|
|
1055
|
+
/** Количество скачиваний */
|
|
1056
|
+
download_count: number;
|
|
1057
|
+
/** Дата создания */
|
|
1058
|
+
created_at: string;
|
|
1059
|
+
/** Дата обновления */
|
|
1060
|
+
updated_at: string;
|
|
1061
|
+
/** Загрузивший пользователь */
|
|
1062
|
+
uploader: User2;
|
|
1063
|
+
/** URL для скачивания */
|
|
1064
|
+
browser_download_url: string;
|
|
1065
|
+
/** API-ссылка */
|
|
1066
|
+
url: string;
|
|
1067
|
+
}
|
|
1068
|
+
/**
|
|
1069
|
+
* Параметры для загрузки ассета
|
|
1070
|
+
*/
|
|
1071
|
+
interface UploadAssetParams {
|
|
1072
|
+
/** Название файла */
|
|
1073
|
+
name: string;
|
|
1074
|
+
/** Метка ассета */
|
|
1075
|
+
label?: string;
|
|
1076
|
+
/** Содержимое файла */
|
|
1077
|
+
data: ArrayBuffer | Blob;
|
|
1078
|
+
}
|
|
1079
|
+
/**
|
|
1080
|
+
* Интерфейс Git-ссылки (reference)
|
|
1081
|
+
*/
|
|
1082
|
+
interface Reference {
|
|
1083
|
+
/** Имя ссылки (например, refs/heads/main) */
|
|
1084
|
+
ref: string;
|
|
1085
|
+
/** Node ID */
|
|
1086
|
+
node_id?: string;
|
|
1087
|
+
/** API-ссылка */
|
|
1088
|
+
url: string;
|
|
1089
|
+
/** Объект, на который указывает ссылка */
|
|
1090
|
+
object: {
|
|
1091
|
+
type: string
|
|
1092
|
+
sha: string
|
|
1093
|
+
url: string
|
|
1094
|
+
};
|
|
1095
|
+
}
|
|
1096
|
+
/**
|
|
1097
|
+
* Параметры для создания Git-ссылки
|
|
1098
|
+
*/
|
|
1099
|
+
interface CreateRefParams {
|
|
1100
|
+
/** Имя ссылки (например, refs/heads/feature-branch) */
|
|
1101
|
+
ref: string;
|
|
1102
|
+
/** SHA-хеш коммита */
|
|
1103
|
+
sha: string;
|
|
1104
|
+
}
|
|
1105
|
+
/**
|
|
1106
|
+
* Интерфейс Git-дерева
|
|
1107
|
+
*/
|
|
1108
|
+
interface Tree {
|
|
1109
|
+
/** SHA-хеш дерева */
|
|
1110
|
+
sha: string;
|
|
1111
|
+
/** API-ссылка на дерево */
|
|
1112
|
+
url: string;
|
|
1113
|
+
/** Список записей в дереве */
|
|
1114
|
+
tree: TreeEntry[];
|
|
1115
|
+
/** Обрезано ли дерево */
|
|
1116
|
+
truncated: boolean;
|
|
1117
|
+
}
|
|
1118
|
+
/**
|
|
1119
|
+
* Интерфейс записи в Git-дереве
|
|
1120
|
+
*/
|
|
1121
|
+
interface TreeEntry {
|
|
1122
|
+
/** Путь к файлу/директории */
|
|
1123
|
+
path: string;
|
|
1124
|
+
/** Режим доступа */
|
|
1125
|
+
mode: string;
|
|
1126
|
+
/** Тип объекта */
|
|
1127
|
+
type: "blob" | "tree" | "commit";
|
|
1128
|
+
/** SHA-хеш объекта */
|
|
1129
|
+
sha: string;
|
|
1130
|
+
/** Размер (для blob) */
|
|
1131
|
+
size?: number;
|
|
1132
|
+
/** URL объекта */
|
|
1133
|
+
url: string;
|
|
1134
|
+
}
|
|
1135
|
+
/**
|
|
1136
|
+
* Параметры для создания Git-дерева
|
|
1137
|
+
*/
|
|
1138
|
+
interface CreateTreeParams {
|
|
1139
|
+
/** Список записей дерева */
|
|
1140
|
+
tree: Array<{
|
|
1141
|
+
path: string
|
|
1142
|
+
mode: "100644" | "100755" | "040000" | "160000" | "120000"
|
|
1143
|
+
type: "blob" | "tree" | "commit"
|
|
1144
|
+
sha?: string
|
|
1145
|
+
content?: string
|
|
1146
|
+
}>;
|
|
1147
|
+
/** SHA-хеш базового дерева */
|
|
1148
|
+
base_tree?: string;
|
|
1149
|
+
}
|
|
1150
|
+
/**
|
|
1151
|
+
* Интерфейс раннера GitHub Actions
|
|
1152
|
+
*/
|
|
1153
|
+
interface Runner {
|
|
1154
|
+
/** Идентификатор раннера */
|
|
1155
|
+
id: number;
|
|
1156
|
+
/** Название раннера */
|
|
1157
|
+
name: string;
|
|
1158
|
+
/** Операционная система */
|
|
1159
|
+
os: string;
|
|
1160
|
+
/** Статус раннера */
|
|
1161
|
+
status: "online" | "offline";
|
|
1162
|
+
/** Занят ли раннер */
|
|
1163
|
+
busy: boolean;
|
|
1164
|
+
/** Метки раннера */
|
|
1165
|
+
labels: Array<{
|
|
1166
|
+
id: number
|
|
1167
|
+
name: string
|
|
1168
|
+
type: string
|
|
1169
|
+
}>;
|
|
1170
|
+
}
|
|
1171
|
+
/**
|
|
1172
|
+
* Интерфейс секрета GitHub Actions
|
|
1173
|
+
*/
|
|
1174
|
+
interface Secret {
|
|
1175
|
+
/** Название секрета */
|
|
1176
|
+
name: string;
|
|
1177
|
+
/** Дата создания */
|
|
1178
|
+
created_at: string;
|
|
1179
|
+
/** Дата обновления */
|
|
1180
|
+
updated_at: string;
|
|
1181
|
+
}
|
|
1182
|
+
/**
|
|
1183
|
+
* Параметры для создания/обновления секрета
|
|
1184
|
+
*/
|
|
1185
|
+
interface CreateSecretParams {
|
|
1186
|
+
/** Зашифрованное значение */
|
|
1187
|
+
encrypted_value: string;
|
|
1188
|
+
/** ID ключа для шифрования */
|
|
1189
|
+
key_id: string;
|
|
1190
|
+
}
|
|
1191
|
+
/**
|
|
1192
|
+
* Интерфейс переменной GitHub Actions
|
|
1193
|
+
*/
|
|
1194
|
+
interface Variable {
|
|
1195
|
+
/** Название переменной */
|
|
1196
|
+
name: string;
|
|
1197
|
+
/** Значение переменной */
|
|
1198
|
+
value: string;
|
|
1199
|
+
/** Дата создания */
|
|
1200
|
+
created_at: string;
|
|
1201
|
+
/** Дата обновления */
|
|
1202
|
+
updated_at: string;
|
|
1203
|
+
}
|
|
1204
|
+
/**
|
|
1205
|
+
* Параметры для создания переменной
|
|
1206
|
+
*/
|
|
1207
|
+
interface CreateVariableParams {
|
|
1208
|
+
/** Название переменной */
|
|
1209
|
+
name: string;
|
|
1210
|
+
/** Значение переменной */
|
|
1211
|
+
value: string;
|
|
1212
|
+
}
|
|
1213
|
+
/**
|
|
1214
|
+
* Параметры для обновления переменной
|
|
1215
|
+
*/
|
|
1216
|
+
interface UpdateVariableParams {
|
|
1217
|
+
/** Новое название (опционально) */
|
|
1218
|
+
name?: string;
|
|
1219
|
+
/** Новое значение */
|
|
1220
|
+
value?: string;
|
|
1221
|
+
}
|
|
1222
|
+
/**
|
|
1223
|
+
* Интерфейс артефакта GitHub Actions
|
|
1224
|
+
*/
|
|
1225
|
+
interface Artifact {
|
|
1226
|
+
/** Идентификатор артефакта */
|
|
1227
|
+
id: number;
|
|
1228
|
+
/** Node ID артефакта */
|
|
1229
|
+
node_id: string;
|
|
1230
|
+
/** Название артефакта */
|
|
1231
|
+
name: string;
|
|
1232
|
+
/** Размер в байтах */
|
|
1233
|
+
size_in_bytes: number;
|
|
1234
|
+
/** API-ссылка */
|
|
1235
|
+
url: string;
|
|
1236
|
+
/** Ссылка на архив */
|
|
1237
|
+
archive_download_url: string;
|
|
1238
|
+
/** Истёк ли срок действия */
|
|
1239
|
+
expired: boolean;
|
|
1240
|
+
/** Дата создания */
|
|
1241
|
+
created_at: string;
|
|
1242
|
+
/** Дата истечения */
|
|
1243
|
+
expires_at: string;
|
|
1244
|
+
/** Дата обновления */
|
|
1245
|
+
updated_at: string;
|
|
1246
|
+
}
|
|
1247
|
+
/**
|
|
1248
|
+
* Параметры для запуска workflow
|
|
1249
|
+
*/
|
|
1250
|
+
interface DispatchWorkflowParams {
|
|
1251
|
+
/** Ссылка на ветку или тег */
|
|
1252
|
+
ref: string;
|
|
1253
|
+
/** Входные параметры для workflow */
|
|
1254
|
+
inputs?: Record<string, string>;
|
|
1255
|
+
}
|
|
1256
|
+
export { Variable, User2 as User, UploadAssetParams, UpdateVariableParams, UpdateRepositoryParams, UpdateReleaseParams, UpdatePullRequestParams, UpdateFileParams, TreeEntry, Tree, TimelineEvent, Team, Secret, Runner, Repository, RemoveEmailParams, Release, Reference, RateLimitInfo, PullRequestFile, PullRequestBase, PullRequest, Milestone, LanguagesResponse, Label, Issue, Invitation, FileDeletionResponse, FileCreationResponse, FileContent, EmailOperationResponse, Email, DispatchWorkflowParams, DirectoryContent, DeleteFileParams, CurrentUser, CreateVariableParams, CreateTreeParams, CreateSecretParams, CreateRepositoryParams, CreateReleaseParams, CreateRefParams, CreatePullRequestParams, CreateForkParams, CreateFileParams, CreateCommitParams, Content, CompareResponse, CommitInfo, Commit, Comment, Branch, Asset, Artifact, ApiVersionInfo, ApiResponseMetadata, ApiError, AddEmailParams };
|