gitverse-api-sdk 5.0.0 → 5.1.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.
Files changed (67) hide show
  1. package/README.md +1 -21
  2. package/dist/api/actions.d.ts +326 -378
  3. package/dist/api/actions.js +3 -3
  4. package/dist/api/actions.js.map +3 -3
  5. package/dist/api/emails.d.ts +41 -46
  6. package/dist/api/emails.js +3 -3
  7. package/dist/api/emails.js.map +3 -3
  8. package/dist/api/issues.d.ts +264 -391
  9. package/dist/api/issues.js +3 -3
  10. package/dist/api/issues.js.map +3 -3
  11. package/dist/api/organizations.d.ts +68 -7
  12. package/dist/api/organizations.js +3 -3
  13. package/dist/api/organizations.js.map +3 -3
  14. package/dist/api/{branches.d.ts → pages.d.ts} +35 -41
  15. package/dist/api/pages.js +4 -0
  16. package/dist/api/pages.js.map +10 -0
  17. package/dist/api/pulls.d.ts +309 -526
  18. package/dist/api/pulls.js +3 -3
  19. package/dist/api/pulls.js.map +3 -3
  20. package/dist/api/releases.d.ts +183 -244
  21. package/dist/api/releases.js +3 -3
  22. package/dist/api/releases.js.map +3 -3
  23. package/dist/api/repositories.d.ts +859 -395
  24. package/dist/api/repositories.js +3 -3
  25. package/dist/api/repositories.js.map +3 -3
  26. package/dist/api/stars.d.ts +95 -231
  27. package/dist/api/stars.js +3 -3
  28. package/dist/api/stars.js.map +3 -3
  29. package/dist/api/teams.d.ts +96 -122
  30. package/dist/api/teams.js +3 -3
  31. package/dist/api/teams.js.map +3 -3
  32. package/dist/api/users.d.ts +78 -170
  33. package/dist/api/users.js +3 -3
  34. package/dist/api/users.js.map +3 -3
  35. package/dist/client.d.ts +4 -0
  36. package/dist/client.js +3 -3
  37. package/dist/client.js.map +1 -1
  38. package/dist/enums.d.ts +27 -71
  39. package/dist/enums.js +3 -3
  40. package/dist/enums.js.map +3 -3
  41. package/dist/errors.d.ts +12 -10
  42. package/dist/errors.js +2 -2
  43. package/dist/errors.js.map +1 -1
  44. package/dist/index.d.ts +1865 -2422
  45. package/dist/index.js +2 -2
  46. package/dist/index.js.map +3 -3
  47. package/dist/types.d.ts +771 -1689
  48. package/dist/utils.js +1 -2
  49. package/dist/utils.js.map +1 -1
  50. package/package.json +1 -1
  51. package/dist/api/branches.js +0 -4
  52. package/dist/api/branches.js.map +0 -10
  53. package/dist/api/collaborators.d.ts +0 -440
  54. package/dist/api/collaborators.js +0 -4
  55. package/dist/api/collaborators.js.map +0 -10
  56. package/dist/api/commits.d.ts +0 -406
  57. package/dist/api/commits.js +0 -4
  58. package/dist/api/commits.js.map +0 -10
  59. package/dist/api/contents.d.ts +0 -389
  60. package/dist/api/contents.js +0 -4
  61. package/dist/api/contents.js.map +0 -10
  62. package/dist/api/forks.d.ts +0 -387
  63. package/dist/api/forks.js +0 -4
  64. package/dist/api/forks.js.map +0 -10
  65. package/dist/api/git.d.ts +0 -277
  66. package/dist/api/git.js +0 -4
  67. package/dist/api/git.js.map +0 -10
@@ -1,73 +1,7 @@
1
1
  /**
2
- * Типы пользователей в системе
2
+ * Типы данных для GitVerse API
3
+ * @generated Сгенерировано автоматически из OpenAPI спецификации
3
4
  */
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
- * Состояния pull request
26
- */
27
- declare const PullRequestState: {
28
- readonly Closed: "closed"
29
- readonly Open: "open"
30
- };
31
- /**
32
- * Тип для состояний pull request
33
- */
34
- type PullRequestState = (typeof PullRequestState)[keyof typeof PullRequestState];
35
- /**
36
- * Фильтры состояний pull request, включая "все"
37
- */
38
- declare const PullRequestStateFilter: {
39
- readonly All: "all"
40
- readonly Closed: "closed"
41
- readonly Open: "open"
42
- };
43
- /**
44
- * Тип для фильтров состояний pull request
45
- */
46
- type PullRequestStateFilter = (typeof PullRequestStateFilter)[keyof typeof PullRequestStateFilter];
47
- /**
48
- * Критерии сортировки pull request
49
- */
50
- declare const PullRequestSortCriteria: {
51
- readonly Created: "created"
52
- readonly LongRunning: "long-running"
53
- readonly Popularity: "popularity"
54
- readonly Updated: "updated"
55
- };
56
- /**
57
- * Тип для критериев сортировки pull request
58
- */
59
- type PullRequestSortCriteria = (typeof PullRequestSortCriteria)[keyof typeof PullRequestSortCriteria];
60
- /**
61
- * Направления сортировки pull request
62
- */
63
- declare const PullRequestSortDirection: {
64
- readonly Ascending: "asc"
65
- readonly Descending: "desc"
66
- };
67
- /**
68
- * Тип для направлений сортировки pull request
69
- */
70
- type PullRequestSortDirection = (typeof PullRequestSortDirection)[keyof typeof PullRequestSortDirection];
71
5
  /**
72
6
  * Опции для выполнения HTTP-запросов
73
7
  */
@@ -81,460 +15,298 @@ interface RequestOptions {
81
15
  */
82
16
  signal?: AbortSignal;
83
17
  }
84
- /**
85
- * Базовые параметры пагинации
86
- */
87
- interface PaginationParams {
88
- /** Номер страницы (начиная с 1) */
89
- page?: number;
90
- /** Количество элементов на странице */
91
- per_page?: number;
18
+ interface CreatePullRequestParams {
19
+ /** список ответственных */
20
+ assignees?: string[];
21
+ /** ветка в которую происходит слияние */
22
+ base?: string;
23
+ /** тело запроса */
24
+ body?: string;
25
+ /** черновик */
26
+ draft?: boolean;
27
+ /** Deadline */
28
+ due_date?: string;
29
+ /** ветка из которой происходит слияние */
30
+ head?: string;
31
+ /** ветка из которой происходит слияние */
32
+ head_repo?: string;
33
+ /** Метки */
34
+ labels?: number[];
35
+ /** могут ли мэйнтейнеры изменять PR */
36
+ maintainer_can_modify?: boolean;
37
+ /** идентификатор "этапа" */
38
+ milestone?: number;
39
+ /** заголовок запроса */
40
+ title?: string;
92
41
  }
93
- /**
94
- * Параметры для получения файлов pull request
95
- */
96
- interface GetPullFilesParams extends PaginationParams {}
97
- /**
98
- * Параметры для получения коммитов pull request
99
- */
100
- interface GetPullCommitsParams extends PaginationParams {}
101
- /**
102
- * Параметры для обновления ветки pull request
103
- */
104
42
  interface UpdateBranchParams {
105
- /** Ожидаемый SHA головы ветки */
106
43
  expected_head_sha?: string;
107
44
  }
108
- /**
109
- * Ответ на обновление ветки pull request
110
- */
111
- interface UpdateBranchResponse {
112
- /** Сообщение о результате */
113
- message: string;
114
- /** URL обновлённого pull request */
45
+ interface CommitMeta {
46
+ created?: string;
47
+ html_url?: string;
48
+ sha?: string;
115
49
  url?: string;
116
50
  }
117
- /**
118
- * Интерфейс пользователя
119
- */
120
- interface User2 {
121
- /** Уникальный идентификатор пользователя */
122
- id: number;
123
- /** Имя пользователя */
51
+ interface Permissions {
52
+ admin?: boolean;
53
+ pull?: boolean;
54
+ push?: boolean;
55
+ }
56
+ interface UserPublicInfo {
57
+ avatar_url?: string;
58
+ followers_url?: string;
59
+ following_url?: string;
60
+ html_url?: string;
61
+ id?: number;
62
+ login?: string;
63
+ organizations_url?: string;
64
+ repos_url?: string;
65
+ site_admin?: boolean;
66
+ type?: string;
67
+ url?: string;
68
+ }
69
+ interface CommitFiles {
70
+ additions?: number;
71
+ blob_url?: string;
72
+ changes?: number;
73
+ contents_url?: string;
74
+ deletions?: number;
75
+ filename?: string;
76
+ patch?: string;
77
+ raw_url?: string;
78
+ sha?: string;
79
+ status?: string;
80
+ }
81
+ interface CommitUser {
82
+ date?: string;
83
+ email?: string;
124
84
  name?: string;
125
- /** Логин пользователя */
126
- login: string;
127
- /** Полное имя пользователя */
128
- full_name?: string;
129
- /** Тип аккаунта: пользователь или организация */
130
- type: UserType;
131
- /** Биография пользователя */
85
+ }
86
+ interface TreeMeta {
87
+ created?: string;
88
+ sha?: string;
89
+ url?: string;
90
+ }
91
+ interface RepoCommit {
92
+ author?: CommitUser;
93
+ committer?: CommitUser;
94
+ message?: string;
95
+ tree?: TreeMeta;
96
+ url?: string;
97
+ }
98
+ interface CommitStats {
99
+ additions?: number;
100
+ deletions?: number;
101
+ total?: number;
102
+ }
103
+ interface Commit {
104
+ author?: UserPublicInfo;
105
+ branch?: string;
106
+ commit?: RepoCommit;
107
+ committer?: UserPublicInfo;
108
+ created?: string;
109
+ files?: CommitFiles[];
110
+ html_url?: string;
111
+ parents?: CommitMeta[];
112
+ sha?: string;
113
+ stats?: CommitStats;
114
+ url?: string;
115
+ }
116
+ interface User {
117
+ /** Адрес аватарки */
118
+ avatar_url?: string;
119
+ /** О себе */
132
120
  bio?: string;
133
- /** Электронная почта пользователя */
121
+ /** Дата создания учетной записи */
122
+ created_at?: string;
123
+ /** Почта */
134
124
  email?: string;
135
- /** URL аватара пользователя */
136
- avatar_url: string;
137
- /** Веб-ссылка на профиль пользователя */
138
- html_url: string;
139
- /** API-ссылка на профиль пользователя */
140
- url?: string;
141
- /** API-ссылка на список подписчиков пользователя */
142
- followers_url?: string;
143
- /** API-ссылка на репозитории пользователя */
144
- repos_url?: string;
145
- /** API-ссылка на организации пользователя */
146
- organizations_url?: string;
147
- /** Права администратора */
148
- site_admin: boolean;
149
- /** Местоположение пользователя */
150
- location?: string;
151
- /** Верификация аккаунта */
152
- is_verified?: boolean;
153
- /** Настройки приватности профиля */
154
- visibility?: VisibilityType;
155
- /** Персональный веб-сайт */
156
- website?: string;
157
- /** Количество подписчиков */
125
+ /** Счетчики */
158
126
  followers?: number;
159
- /** Количество подписок */
127
+ /** Url для получения подписчиков пользователя */
128
+ followers_url?: string;
160
129
  following?: number;
161
- /** Количество публичных репозиториев */
162
- public_repos?: number;
163
- /** Количество репозиториев, отмеченных звездой */
164
- stars_count?: number;
165
- /** API-ссылка на подписки пользователя */
130
+ /** Url для получения подписок пользователя */
166
131
  following_url?: string;
167
- /** API-ссылка на избранные репозитории */
132
+ /** Полное имя */
133
+ full_name?: string;
134
+ /** Адрес страницы пользователя */
135
+ html_url?: string;
136
+ /** Идентификатор */
137
+ id?: number;
138
+ /** Верифицирован? */
139
+ is_verified?: boolean;
140
+ /** Местоположение */
141
+ location?: string;
142
+ /** Логин пользователя */
143
+ login?: string;
144
+ /** Имя пользователя */
145
+ name?: string;
146
+ /** Url для получения организаций пользователя */
147
+ organizations_url?: string;
148
+ /** Публичные репозитории */
149
+ public_repos?: number;
150
+ /** Url для получения репозиториев пользователя */
151
+ repos_url?: string;
152
+ /** Есть ли права админа */
153
+ site_admin?: boolean;
154
+ /** Url для получения репозиториев пользователя, которые были добавлены в избранное */
168
155
  starred_url?: string;
169
- /** API-ссылка на подписки на уведомления */
156
+ /** Количество репозиториев в избранном */
157
+ stars_count?: number;
158
+ /** Url для получения подписок пользователя */
170
159
  subscriptions_url?: string;
171
- /** Дата создания аккаунта */
172
- created_at: string;
173
- /** Дата последнего обновления аккаунта */
160
+ /** Тип пользователя */
161
+ type?: string;
162
+ /** Дата изменения учетной записи */
174
163
  updated_at?: string;
164
+ /** Url для получения пользователя */
165
+ url?: string;
166
+ /** Вебсайт */
167
+ website?: string;
175
168
  }
176
- /**
177
- * Интерфейс базовой или целевой ветки для pull request
178
- */
179
- interface PullRequestBase {
180
- /** Метка ветки */
181
- label: string;
182
- /** Имя ветки */
183
- ref: string;
184
- /** SHA-хеш последнего коммита в ветке */
185
- sha: string;
186
- /** ID репозитория */
187
- repo_id: number;
188
- /** Информация о репозитории */
189
- repo: {
190
- /** ID репозитория */
191
- id: number
192
- /** Название репозитория */
193
- name: string
194
- /** Полное название репозитория в формате {owner}/{repo} */
195
- full_name: string
196
- /** Является ли репозиторий приватным */
197
- private: boolean
198
- /** Основная ветка репозитория */
199
- default_branch: string
200
- };
201
- }
202
- /**
203
- * Интерфейс pull request
204
- */
205
- interface PullRequest {
206
- /** Уникальный идентификатор pull request */
207
- id: number;
208
- /** API-ссылка на pull request */
209
- url: string;
210
- /** Номер pull request в репозитории */
211
- number: number;
212
- /** Информация о пользователе, создавшем pull request */
213
- user: {
214
- /** ID пользователя */
215
- id: number
216
- /** Логин пользователя */
217
- login: string
218
- /** Тип аккаунта */
219
- type: string
220
- /** URL аватара пользователя */
221
- avatar_url: string
222
- /** Веб-ссылка на профиль пользователя */
223
- html_url: string
224
- /** Права администратора */
225
- site_admin: boolean
226
- };
227
- /** Заголовок pull request */
228
- title: string;
229
- /** Описание pull request */
230
- body?: string;
231
- /** Список меток */
232
- labels: Label[];
233
- /** Информация о майлстоуне */
234
- milestone?: Milestone;
235
- /** Информация о назначенном пользователе */
236
- assignee?: User2;
237
- /** Список назначенных пользователей */
238
- assignees?: User2[];
239
- /** Состояние pull request (открыт/закрыт) */
240
- state: PullRequestState;
241
- /** Заблокирован ли pull request */
242
- locked: boolean;
243
- /** Количество комментариев */
244
- comments: number;
245
- /** Веб-ссылка на pull request */
246
- html_url: string;
247
- /** Ссылка на diff файл */
248
- diff_url: string;
249
- /** Ссылка на patch файл */
250
- patch_url: string;
251
- /** Можно ли слить pull request */
252
- mergeable: boolean;
253
- /** Был ли pull request слит */
254
- merged: boolean;
255
- /** Дата слияния (если был слит) */
256
- merged_at?: string | null;
257
- /** SHA-хеш коммита слияния (если был слит) */
258
- merge_commit_sha?: string | null;
259
- /** Пользователь, выполнивший слияние */
260
- merged_by?: User2 | null;
261
- /** Может ли мейнтейнер изменять pull request */
262
- maintainer_can_modify: boolean;
263
- /** Является ли pull request черновиком */
264
- is_draft?: boolean;
265
- /** Запрошенные ревьюеры */
266
- requested_reviewers?: User2[];
267
- /** Запрошенные команды для ревью */
268
- requested_teams?: Team[];
269
- /** Информация о целевой ветке */
270
- base: PullRequestBase;
271
- /** Информация о ветке с изменениями */
272
- head: PullRequestBase;
273
- /** Дата создания pull request */
274
- created_at: string;
275
- /** Дата обновления pull request */
276
- updated_at: string;
277
- /** Дата закрытия pull request (если закрыт) */
278
- closed_at?: string | null;
279
- }
280
- /**
281
- * Интерфейс параметров для создания pull request
282
- */
283
- interface CreatePullRequestParams {
284
- /** Заголовок pull request */
285
- title: string;
286
- /** Описание pull request */
287
- body?: string;
288
- /** Имя ветки, из которой предлагаются изменения */
289
- head: string;
290
- /** Имя ветки, в которую будут внесены изменения */
291
- base: string;
292
- /** Назначенные пользователи */
293
- assignees?: string[];
294
- /** Черновик ли pull request */
295
- draft?: boolean;
296
- /** Срок выполнения */
297
- due_date?: string;
298
- /** Репозиторий head ветки (для кросс-репозиторных PR) */
299
- head_repo?: string;
300
- /** ID меток */
301
- labels?: number[];
302
- /** Может ли мейнтейнер модифицировать */
303
- maintainer_can_modify?: boolean;
304
- /** ID milestone */
305
- milestone?: number;
306
- }
307
- /**
308
- * Интерфейс параметров для получения списка pull requests
309
- */
310
- interface ListPullRequestsParams {
311
- /**
312
- * Фильтр по состоянию pull request
313
- *
314
- * @default "open"
315
- */
316
- state?: PullRequestStateFilter;
317
- /** Фильтр по ветке-источнику в формате branch, user:branch или user:repo:branch */
318
- head?: string;
319
- /** Фильтр по целевой ветке */
320
- base?: string;
321
- /**
322
- * Критерий сортировки
323
- *
324
- * @default "created"
325
- */
326
- sort?: PullRequestSortCriteria;
327
- /**
328
- * Направление сортировки
329
- *
330
- * @default "desc"
331
- */
332
- direction?: PullRequestSortDirection;
333
- /** Номер страницы (начиная с 1) */
334
- page?: number;
335
- /** Количество элементов на странице (максимум 100) */
336
- per_page?: number;
337
- }
338
- /**
339
- * Интерфейс метки (label) для issues и pull requests
340
- */
341
169
  interface Label {
342
- /** Идентификатор метки */
343
- id: number;
344
- /** Имя метки */
345
- name: string;
346
- /** Описание метки */
170
+ /** example: 00aabb */
171
+ color?: string;
347
172
  description?: string;
348
- /** Цвет метки в формате HEX */
349
- color: string;
350
- /** URL метки */
351
- url?: string;
352
- /** Эксклюзивная метка (взаимоисключающая в группе) */
173
+ /** example: false */
353
174
  exclusive?: boolean;
354
- /** Архивирована ли метка */
175
+ id?: number;
176
+ /** example: false */
355
177
  is_archived?: boolean;
178
+ name?: string;
179
+ url?: string;
356
180
  }
357
- /**
358
- * Интерфейс майлстоуна (milestone)
359
- */
360
181
  interface Milestone {
361
- /** Идентификатор майлстоуна */
362
- id: number;
363
- /** Номер майлстоуна */
364
- number: number;
365
- /** Название майлстоуна */
366
- title: string;
367
- /** Описание майлстоуна */
182
+ closed_at?: string;
183
+ closed_issues?: number;
184
+ created_at?: string;
368
185
  description?: string;
369
- /** Создатель майлстоуна */
370
- creator: User2;
371
- /** Состояние майлстоуна (open/closed) */
372
- state: "open" | "closed";
373
- /** Количество открытых задач */
374
- open_issues: number;
375
- /** Количество закрытых задач */
376
- closed_issues: number;
377
- /** Дата создания */
378
- created_at: string;
379
- /** Дата обновления */
380
- updated_at: string;
381
- /** Дата окончания (due date) */
382
186
  due_on?: string;
187
+ id?: number;
188
+ open_issues?: number;
189
+ state?: string;
190
+ title?: string;
191
+ updated_at?: string;
383
192
  }
384
- /**
385
- * Интерфейс коммита
386
- */
387
- interface Commit {
388
- /** SHA-хеш коммита */
389
- sha: string;
390
- /** Node ID коммита */
391
- node_id?: string;
392
- /** Информация о коммите */
393
- commit: {
394
- /** Автор коммита */
395
- author: {
396
- name: string
397
- email: string
398
- date: string
399
- }
400
- /** Коммиттер */
401
- committer: {
402
- name: string
403
- email: string
404
- date: string
405
- }
406
- /** Сообщение коммита */
407
- message: string
408
- /** Дерево коммита */
409
- tree: {
410
- sha: string
411
- url: string
412
- /** Дата создания */
413
- created?: string
414
- }
415
- };
416
- /** Автор (пользователь GitVerse) */
417
- author?: User2 | null;
418
- /** Коммиттер (пользователь GitVerse) */
419
- committer?: User2 | null;
420
- /** Родительские коммиты */
421
- parents: Array<{
422
- sha: string
423
- url: string
424
- html_url: string
425
- }>;
426
- /** API-ссылка на коммит */
427
- url: string;
428
- /** Веб-ссылка на коммит */
429
- html_url: string;
430
- /** Ветка коммита */
431
- branch?: string;
432
- /** Дата создания */
433
- created?: string;
434
- /** Изменённые файлы */
435
- files?: CommitFile[];
436
- /** Статистика изменений */
437
- stats?: {
438
- additions: number
439
- deletions: number
440
- total: number
441
- };
442
- }
443
- /**
444
- * Файл в коммите
445
- */
446
- interface CommitFile {
447
- /** Имя файла */
448
- filename: string;
449
- /** Количество добавленных строк */
450
- additions: number;
451
- /** Количество удалённых строк */
452
- deletions: number;
453
- /** Общее количество изменений */
454
- changes: number;
455
- /** Статус файла (added, modified, removed, renamed) */
456
- status: string;
457
- /** Предыдущее имя файла (при переименовании) */
458
- previous_filename?: string;
459
- /** SHA-хеш blob файла */
460
- sha?: string;
461
- /** URL blob файла */
462
- blob_url?: string;
463
- /** URL contents файла */
193
+ interface Repository {
194
+ allow_merge_commit?: boolean;
195
+ allow_rebase_merge?: boolean;
196
+ allow_squash_merge?: boolean;
197
+ archived?: boolean;
198
+ clone_url?: string;
464
199
  contents_url?: string;
465
- /** URL raw файла */
466
- raw_url?: string;
467
- /** Патч с изменениями */
468
- patch?: string;
469
- }
470
- /**
471
- * Параметры для обновления pull request
472
- */
473
- interface UpdatePullRequestParams {
474
- /** Новый заголовок */
475
- title?: string;
476
- /** Новое описание */
477
- body?: string;
478
- /** Новое состояние */
479
- state?: PullRequestState;
480
- /** Базовая ветка */
481
- base?: string;
482
- /** Можно ли мейнтейнерам модифицировать */
483
- maintainer_can_modify?: boolean;
200
+ created_at?: string;
201
+ default_branch?: string;
202
+ delete_branch_on_merge?: boolean;
203
+ description?: string;
204
+ disabled?: boolean;
205
+ fork?: boolean;
206
+ forks?: number;
207
+ forks_count?: number;
208
+ forks_url?: string;
209
+ full_name?: string;
210
+ has_issues?: boolean;
211
+ has_wiki?: boolean;
212
+ id?: number;
213
+ is_template?: boolean;
214
+ issue_comment_url?: string;
215
+ issues_url?: string;
216
+ language?: string;
217
+ languages_url?: string;
218
+ mirror_url?: string;
219
+ name?: string;
220
+ open_issues?: number;
221
+ open_issues_count?: number;
222
+ owner?: UserPublicInfo;
223
+ parent?: Repository;
224
+ permissions?: Permissions;
225
+ private?: boolean;
226
+ pulls_url?: string;
227
+ pushed_at?: string;
228
+ size?: number;
229
+ ssh_url?: string;
230
+ stargazers_count?: number;
231
+ template_repository?: Repository;
232
+ topics?: string[];
233
+ updated_at?: string;
234
+ url?: string;
235
+ visibility?: string;
236
+ watchers?: number;
237
+ watchers_count?: number;
484
238
  }
485
- /**
486
- * Интерфейс файла в pull request
487
- */
488
- interface PullRequestFile {
489
- /** SHA-хеш файла */
490
- sha: string;
491
- /** Имя файла */
492
- filename: string;
493
- /** Статус изменения */
494
- status: "added" | "removed" | "modified" | "renamed" | "copied" | "changed" | "unchanged";
495
- /** Количество добавленных строк */
496
- additions: number;
497
- /** Количество удалённых строк */
498
- deletions: number;
499
- /** Общее количество изменений */
500
- changes: number;
501
- /** URL для получения содержимого */
502
- blob_url: string;
503
- /** Raw URL */
504
- raw_url: string;
505
- /** API URL */
506
- contents_url: string;
507
- /** Patch для файла */
508
- patch?: string;
239
+ interface PRBranchInfo {
240
+ label?: string;
241
+ ref?: string;
242
+ repo?: Repository;
243
+ repo_id?: number;
244
+ sha?: string;
509
245
  }
510
246
  interface Team {
511
- /** Идентификатор команды */
512
- id: number;
513
- /** Название команды */
514
- name: string;
247
+ /** Полномочия на создание репозиториев */
248
+ can_create_org_repo?: boolean;
515
249
  /** Описание команды */
516
250
  description?: string;
517
- /** Права доступа */
518
- permission: "pull" | "push" | "admin";
251
+ /** Идентификатор */
252
+ id?: number;
253
+ /** Включает все репозитории */
254
+ includes_all_repositories?: boolean;
255
+ /** Название команды */
256
+ name?: string;
519
257
  /** Количество участников */
520
258
  num_members?: number;
521
259
  /** Количество репозиториев */
522
260
  num_repos?: number;
523
- /** Может создавать репозитории в организации */
524
- can_create_org_repo?: boolean;
525
- /** Включает все репозитории */
526
- includes_all_repositories?: boolean;
527
- /** Права на Actions */
261
+ /** Полномочия */
262
+ permission?: string;
263
+ /** Полномочие на действия с ветками */
528
264
  permission_actions?: string;
529
- /** Права на код */
265
+ /** Код полномочия */
530
266
  permission_code?: string;
531
- /** Права на packages */
267
+ /** Полномочие на пакеты */
532
268
  permission_packages?: string;
533
- /** Права на pull requests */
269
+ /** Полномочие на отправку пулл-реквестов */
534
270
  permission_pulls?: string;
535
- /** Права на релизы */
271
+ /** Полномочие на релизы */
536
272
  permission_releases?: string;
537
273
  }
274
+ interface PullRequest {
275
+ assignee?: User;
276
+ assignees?: User[];
277
+ base?: PRBranchInfo;
278
+ body?: string;
279
+ closed_at?: string;
280
+ comments?: number;
281
+ created_at?: string;
282
+ diff_url?: string;
283
+ head?: PRBranchInfo;
284
+ html_url?: string;
285
+ id?: number;
286
+ is_draft?: boolean;
287
+ labels?: Label[];
288
+ locked?: boolean;
289
+ maintainer_can_modify?: boolean;
290
+ merge_commit_sha?: string;
291
+ mergeable?: boolean;
292
+ merged?: boolean;
293
+ merged_at?: string;
294
+ merged_by?: User;
295
+ milestone?: Milestone;
296
+ number?: number;
297
+ patch_url?: string;
298
+ requested_reviewers?: User[];
299
+ requested_teams?: Team[];
300
+ state?: string;
301
+ title?: string;
302
+ updated_at?: string;
303
+ url?: string;
304
+ user?: User;
305
+ }
306
+ interface UpdateBranchResponse {
307
+ message?: string;
308
+ url?: string;
309
+ }
538
310
  /**
539
311
  * Предупреждение об устаревшей версии API
540
312
  */
@@ -673,67 +445,78 @@ declare class GitVerseClient {
673
445
  uploadFile<T>(path: string, fieldName: string, file: Blob | ArrayBuffer, fileName: string, options?: RequestOptions): Promise<T>;
674
446
  }
675
447
  /**
676
- * API для работы с запросами на слияние (пулл-реквестами)
448
+ * API для работы с запросами на слияние
677
449
  */
678
450
  declare class PullsApi {
679
451
  private client;
680
452
  /**
681
- * Создает новый экземпляр API для работы с пулл-реквестами
453
+ * Создает новый экземпляр API
682
454
  * @param client GitVerse клиент
683
455
  */
684
456
  constructor(client: GitVerseClient);
685
457
  /**
686
- * Создает новый запрос на слияние в репозитории
687
- * @param owner Владелец репозитория
688
- * @param repo Название репозитория
689
- * @param params Параметры создания запроса на слияние
690
- * @returns Информация о созданном запросе на слияние
691
- */
692
- create(owner: string, repo: string, params: CreatePullRequestParams, options?: RequestOptions): Promise<PullRequest>;
693
- /**
694
- * Получает запрос на слияние по его номеру
695
- * @param owner Владелец репозитория
696
- * @param repo Название репозитория
697
- * @param number Номер запроса на слияние
698
- * @returns Информация о запросе на слияние
699
- */
700
- get(owner: string, repo: string, number: number, options?: RequestOptions): Promise<PullRequest>;
701
- /**
702
- * Получает список запросов на слияние в репозитории
703
- * @param owner Владелец репозитория
704
- * @param repo Название репозитория
705
- * @param state Состояние запросов на слияние (открытые/закрытые/все)
706
- * @returns Список запросов на слияние
707
- */
708
- list(owner: string, repo: string, params?: ListPullRequestsParams, options?: RequestOptions): Promise<PullRequest[]>;
709
- /**
710
- * Обновляет pull request
711
- * @param owner Владелец репозитория
712
- * @param repo Название репозитория
713
- * @param number Номер pull request
714
- * @param params Параметры для обновления
715
- * @returns Обновлённый pull request
458
+ * Create a pull request
459
+ * @param owner Repository owner
460
+ * @param repo Repository name
461
+ * @param params Pull request creation parameters
462
+ * @param options Опции запроса
463
+ * @returns PullRequest
716
464
  */
717
- update(owner: string, repo: string, number: number, params: UpdatePullRequestParams, options?: RequestOptions): Promise<PullRequest>;
465
+ create(owner: string, repo: string, params: CreatePullRequestParams, options?: {
466
+ signal?: AbortSignal
467
+ }): Promise<PullRequest>;
718
468
  /**
719
- * Получает список файлов в pull request
469
+ * List pull request commits
470
+ * @param owner Owner of the repository (username or organization)
471
+ * @param repo Name of the repository without .git extension
472
+ * @param pull_number The number that identifies the pull request
473
+ * @param queryParams Параметры запроса
474
+ * @param options Опции запроса
475
+ * @returns Commit[]
720
476
  */
721
- getFiles(owner: string, repo: string, number: number, params?: GetPullFilesParams, options?: RequestOptions): Promise<PullRequestFile[]>;
477
+ listCommits(owner: string, repo: string, pull_number: number, queryParams?: {
478
+ page?: number
479
+ per_page?: number
480
+ }, options?: {
481
+ signal?: AbortSignal
482
+ }): Promise<Commit[]>;
722
483
  /**
723
- * Обновляет ветку pull request с базовой веткой
484
+ * List pull request files
485
+ * @param owner Owner of the repository (username or organization)
486
+ * @param repo Name of the repository without .git extension
487
+ * @param pull_number The number that identifies the pull request
488
+ * @param queryParams Параметры запроса
489
+ * @param options Опции запроса
490
+ * @returns CommitFiles[]
724
491
  */
725
- updateBranch(owner: string, repo: string, number: number, params?: UpdateBranchParams, options?: RequestOptions): Promise<UpdateBranchResponse>;
492
+ listFiles(owner: string, repo: string, pull_number: number, queryParams?: {
493
+ page?: number
494
+ per_page?: number
495
+ }, options?: {
496
+ signal?: AbortSignal
497
+ }): Promise<CommitFiles[]>;
726
498
  /**
727
- * Получает список коммитов в pull request
499
+ * Checks if a pull request has been merged into the base branch.
500
+ * @param owner Owner of the repository (username or organization)
501
+ * @param repo Name of the repository without .git extension
502
+ * @param pull_number The number that identifies the pull request
503
+ * @param options Опции запроса
504
+ * @returns void
728
505
  */
729
- getCommits(owner: string, repo: string, number: number, params?: GetPullCommitsParams, options?: RequestOptions): Promise<Commit[]>;
506
+ isMerged(owner: string, repo: string, pull_number: number, options?: {
507
+ signal?: AbortSignal
508
+ }): Promise<void>;
730
509
  /**
731
- * Проверяет, был ли pull request влит в базовую ветку
732
- * @param owner Владелец репозитория
733
- * @param repo Название репозитория
734
- * @param number Номер pull request
735
- * @returns true если PR был влит, false если не был влит или не существует
510
+ * Update a pull request branch
511
+ * @param owner Repository owner
512
+ * @param repo Repository name
513
+ * @param pull_number The number that identifies the pull request
514
+ * @param params Expected head SHA
515
+ * @param options Опции запроса
516
+ * @returns UpdateBranchResponse
736
517
  */
737
- checkIfMerged(owner: string, repo: string, number: number, options?: RequestOptions): Promise<boolean>;
518
+ updateBranch(owner: string, repo: string, pull_number: number, params: UpdateBranchParams, options?: {
519
+ signal?: AbortSignal
520
+ }): Promise<UpdateBranchResponse>;
738
521
  }
739
522
  export { PullsApi };