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.
Files changed (68) hide show
  1. package/README.md +328 -114
  2. package/dist/api/actions.d.ts +506 -0
  3. package/dist/api/actions.js +4 -0
  4. package/dist/api/actions.js.map +10 -0
  5. package/dist/api/branches.d.ts +154 -0
  6. package/dist/api/branches.js +4 -0
  7. package/dist/api/branches.js.map +10 -0
  8. package/dist/api/collaborators.d.ts +224 -0
  9. package/dist/api/collaborators.js +4 -0
  10. package/dist/api/collaborators.js.map +10 -0
  11. package/dist/api/commits.d.ts +302 -0
  12. package/dist/api/commits.js +4 -0
  13. package/dist/api/commits.js.map +10 -0
  14. package/dist/api/contents.d.ts +345 -0
  15. package/dist/api/contents.js +4 -0
  16. package/dist/api/contents.js.map +10 -0
  17. package/dist/api/emails.d.ts +184 -0
  18. package/dist/api/emails.js +4 -0
  19. package/dist/api/emails.js.map +10 -0
  20. package/dist/api/forks.d.ts +325 -0
  21. package/dist/api/forks.js +4 -0
  22. package/dist/api/forks.js.map +10 -0
  23. package/dist/api/git.d.ts +228 -0
  24. package/dist/api/git.js +4 -0
  25. package/dist/api/git.js.map +10 -0
  26. package/dist/api/issues.d.ts +380 -0
  27. package/dist/api/issues.js +4 -0
  28. package/dist/api/issues.js.map +10 -0
  29. package/dist/api/organizations.d.ts +140 -0
  30. package/dist/api/organizations.js +4 -0
  31. package/dist/api/organizations.js.map +10 -0
  32. package/dist/api/pulls.d.ts +517 -0
  33. package/dist/api/pulls.js +4 -0
  34. package/dist/api/pulls.js.map +10 -0
  35. package/dist/api/releases.d.ts +400 -0
  36. package/dist/api/releases.js +4 -0
  37. package/dist/api/releases.js.map +10 -0
  38. package/dist/api/repositories.d.ts +502 -0
  39. package/dist/api/repositories.js +4 -0
  40. package/dist/api/repositories.js.map +10 -0
  41. package/dist/api/stars.d.ts +328 -0
  42. package/dist/api/stars.js +4 -0
  43. package/dist/api/stars.js.map +10 -0
  44. package/dist/api/teams.d.ts +287 -0
  45. package/dist/api/teams.js +4 -0
  46. package/dist/api/teams.js.map +10 -0
  47. package/dist/api/users.d.ts +244 -0
  48. package/dist/api/users.js +4 -0
  49. package/dist/api/users.js.map +10 -0
  50. package/dist/client.d.ts +122 -0
  51. package/dist/client.js +4 -0
  52. package/dist/client.js.map +10 -0
  53. package/dist/enums.d.ts +57 -0
  54. package/dist/enums.js +4 -0
  55. package/dist/enums.js.map +10 -0
  56. package/dist/errors.d.ts +78 -0
  57. package/dist/errors.js +4 -0
  58. package/dist/errors.js.map +10 -0
  59. package/dist/index.d.ts +1801 -453
  60. package/dist/index.js +3 -1
  61. package/dist/index.js.map +10 -0
  62. package/dist/types.d.ts +1256 -0
  63. package/dist/types.js +2 -0
  64. package/dist/types.js.map +9 -0
  65. package/dist/utils.d.ts +39 -0
  66. package/dist/utils.js +3 -0
  67. package/dist/utils.js.map +10 -0
  68. package/package.json +99 -7
@@ -0,0 +1,140 @@
1
+ /**
2
+ * Предупреждение об устаревшей версии API
3
+ */
4
+ declare class ApiVersionWarning {
5
+ /** Текущая используемая версия */
6
+ readonly currentVersion: string;
7
+ /** Последняя доступная версия */
8
+ readonly latestVersion: string;
9
+ /** Дата вывода из эксплуатации */
10
+ readonly decommissioning?: string;
11
+ constructor(currentVersion: string, latestVersion: string, decommissioning?: string);
12
+ /**
13
+ * Возвращает сообщение о предупреждении
14
+ */
15
+ getMessage(): string;
16
+ }
17
+ declare const HTTPMethods: {
18
+ readonly DELETE: "DELETE"
19
+ readonly GET: "GET"
20
+ readonly PATCH: "PATCH"
21
+ readonly POST: "POST"
22
+ readonly PUT: "PUT"
23
+ };
24
+ type HTTPMethods = (typeof HTTPMethods)[keyof typeof HTTPMethods];
25
+ /**
26
+ * Параметры для конфигурации GitVerse клиента
27
+ */
28
+ interface GitVerseClientConfig {
29
+ /**
30
+ * Базовый URL API GitVerse
31
+ * @default 'https://api.gitverse.ru'
32
+ */
33
+ baseUrl?: string;
34
+ /**
35
+ * Токен доступа для авторизации в API
36
+ */
37
+ token?: string;
38
+ /**
39
+ * Версия API
40
+ * @default '1'
41
+ */
42
+ apiVersion?: string;
43
+ }
44
+ /**
45
+ * Основной класс для работы с GitVerse API
46
+ */
47
+ declare class GitVerseClient {
48
+ private baseUrl;
49
+ private token?;
50
+ private apiVersion;
51
+ /**
52
+ * Callback для обработки предупреждений об устаревшей версии API
53
+ */
54
+ onApiVersionWarning?: (warning: ApiVersionWarning) => void;
55
+ /**
56
+ * Создает новый экземпляр GitVerse клиента
57
+ * @param config Конфигурация клиента
58
+ */
59
+ constructor(config?: GitVerseClientConfig);
60
+ /**
61
+ * Устанавливает токен авторизации
62
+ * @param token Токен доступа
63
+ */
64
+ setToken(token: string): void;
65
+ /**
66
+ * Извлекает информацию о Rate Limit из заголовков ответа
67
+ */
68
+ private extractRateLimitInfo;
69
+ /**
70
+ * Извлекает информацию о версии API из заголовков ответа
71
+ */
72
+ private extractApiVersionInfo;
73
+ /**
74
+ * Извлекает метаданные из заголовков ответа
75
+ */
76
+ private extractMetadata;
77
+ /**
78
+ * Выполняет API-запрос с учетом авторизации и версии API
79
+ * @param path Путь к API-ресурсу
80
+ * @param method HTTP-метод
81
+ * @param body Тело запроса (опционально)
82
+ * @returns Ответ от API
83
+ * @throws {RateLimitError} При превышении лимита запросов (429)
84
+ * @throws {GitVerseApiError} При других ошибках API
85
+ */
86
+ request<T>(path: string, method: HTTPMethods, body?: unknown): Promise<T>;
87
+ /**
88
+ * Выполняет GET-запрос
89
+ * @param path Путь к API-ресурсу
90
+ * @returns Ответ от API
91
+ */
92
+ get<T>(path: string): Promise<T>;
93
+ /**
94
+ * Выполняет POST-запрос
95
+ * @param path Путь к API-ресурсу
96
+ * @param body Тело запроса
97
+ * @returns Ответ от API
98
+ */
99
+ post<T>(path: string, body?: unknown): Promise<T>;
100
+ /**
101
+ * Выполняет PUT-запрос
102
+ * @param path Путь к API-ресурсу
103
+ * @param body Тело запроса
104
+ * @returns Ответ от API
105
+ */
106
+ put<T>(path: string, body?: unknown): Promise<T>;
107
+ /**
108
+ * Выполняет DELETE-запрос
109
+ * @param path Путь к API-ресурсу
110
+ * @param body Тело запроса (опционально)
111
+ * @returns Ответ от API
112
+ */
113
+ delete<T>(path: string, body?: unknown): Promise<T>;
114
+ /**
115
+ * Выполняет PATCH-запрос
116
+ * @param path Путь к API-ресурсу
117
+ * @param body Тело запроса
118
+ * @returns Ответ от API
119
+ */
120
+ patch<T>(path: string, body?: unknown): Promise<T>;
121
+ }
122
+ /**
123
+ * API для работы с организациями
124
+ */
125
+ declare class OrganizationsApi {
126
+ private client;
127
+ /**
128
+ * Создает новый экземпляр API для работы с организациями
129
+ * @param client GitVerse клиент
130
+ */
131
+ constructor(client: GitVerseClient);
132
+ /**
133
+ * Проверяет членство пользователя в организации
134
+ * @param org Название организации
135
+ * @param username Имя пользователя
136
+ * @returns true если пользователь является членом организации, false если нет
137
+ */
138
+ checkMembership(org: string, username: string): Promise<boolean>;
139
+ }
140
+ export { OrganizationsApi };
@@ -0,0 +1,4 @@
1
+ class j{client;constructor(b){this.client=b}async checkMembership(b,h){try{return await this.client.get(`/orgs/${b}/members/${h}`),!0}catch(d){if(d instanceof Error&&d.message.includes("404"))return!1;throw d}}}export{j as OrganizationsApi};
2
+ export{j as a};
3
+
4
+ //# debugId=C13270CF8AD6E2A964756E2164756E21
@@ -0,0 +1,10 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/api/organizations.ts"],
4
+ "sourcesContent": [
5
+ "import type { GitVerseClient } from \"../client\";\n\n/**\n * API для работы с организациями\n */\nexport class OrganizationsApi {\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 org Название организации\n * @param username Имя пользователя\n * @returns true если пользователь является членом организации, false если нет\n */\n async checkMembership(org: string, username: string): Promise<boolean> {\n try {\n await this.client.get<void>(`/orgs/${org}/members/${username}`);\n return true;\n } catch (error: unknown) {\n if (error instanceof Error && error.message.includes(\"404\")) {\n return false;\n }\n throw error;\n }\n }\n}\n"
6
+ ],
7
+ "mappings": "AAKO,MAAM,CAAiB,CACpB,OAMR,WAAW,CAAC,EAAwB,CAClC,KAAK,OAAS,OASV,gBAAe,CAAC,EAAa,EAAoC,CACrE,GAAI,CAEF,OADA,MAAM,KAAK,OAAO,IAAU,SAAS,aAAe,GAAU,EACvD,GACP,MAAO,EAAgB,CACvB,GAAI,aAAiB,OAAS,EAAM,QAAQ,SAAS,KAAK,EACxD,MAAO,GAET,MAAM,GAGZ",
8
+ "debugId": "C13270CF8AD6E2A964756E2164756E21",
9
+ "names": []
10
+ }
@@ -0,0 +1,517 @@
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
+ * Состояния 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
+ * Интерфейс пользователя
37
+ */
38
+ interface User2 {
39
+ /** Уникальный идентификатор пользователя */
40
+ id: number;
41
+ /** Имя пользователя */
42
+ name?: string;
43
+ /** Логин пользователя */
44
+ login: string;
45
+ /** Полное имя пользователя */
46
+ full_name?: string;
47
+ /** Тип аккаунта: пользователь или организация */
48
+ type: UserType;
49
+ /** Биография пользователя */
50
+ bio?: string;
51
+ /** Электронная почта пользователя */
52
+ email?: string;
53
+ /** URL аватара пользователя */
54
+ avatar_url: string;
55
+ /** Веб-ссылка на профиль пользователя */
56
+ html_url: string;
57
+ /** API-ссылка на профиль пользователя */
58
+ url?: string;
59
+ /** API-ссылка на список подписчиков пользователя */
60
+ followers_url?: string;
61
+ /** API-ссылка на репозитории пользователя */
62
+ repos_url?: string;
63
+ /** API-ссылка на организации пользователя */
64
+ organizations_url?: string;
65
+ /** Права администратора */
66
+ site_admin: boolean;
67
+ /** Местоположение пользователя */
68
+ location?: string;
69
+ /** Верификация аккаунта */
70
+ is_verified?: boolean;
71
+ /** Настройки приватности профиля */
72
+ visibility?: VisibilityType;
73
+ /** Персональный веб-сайт */
74
+ website?: string;
75
+ /** Количество подписчиков */
76
+ followers?: number;
77
+ /** Количество подписок */
78
+ following?: number;
79
+ /** Количество публичных репозиториев */
80
+ public_repos?: number;
81
+ /** Количество репозиториев, отмеченных звездой */
82
+ stars_count?: number;
83
+ /** Дата создания аккаунта */
84
+ created_at: string;
85
+ /** Дата последнего обновления аккаунта */
86
+ updated_at?: string;
87
+ }
88
+ /**
89
+ * Интерфейс базовой или целевой ветки для pull request
90
+ */
91
+ interface PullRequestBase {
92
+ /** Метка ветки */
93
+ label: string;
94
+ /** Имя ветки */
95
+ ref: string;
96
+ /** SHA-хеш последнего коммита в ветке */
97
+ sha: string;
98
+ /** ID репозитория */
99
+ repo_id: number;
100
+ /** Информация о репозитории */
101
+ repo: {
102
+ /** ID репозитория */
103
+ id: number
104
+ /** Название репозитория */
105
+ name: string
106
+ /** Полное название репозитория в формате {owner}/{repo} */
107
+ full_name: string
108
+ /** Является ли репозиторий приватным */
109
+ private: boolean
110
+ /** Основная ветка репозитория */
111
+ default_branch: string
112
+ };
113
+ }
114
+ /**
115
+ * Интерфейс pull request
116
+ */
117
+ interface PullRequest {
118
+ /** Уникальный идентификатор pull request */
119
+ id: number;
120
+ /** API-ссылка на pull request */
121
+ url: string;
122
+ /** Номер pull request в репозитории */
123
+ number: number;
124
+ /** Информация о пользователе, создавшем pull request */
125
+ user: {
126
+ /** ID пользователя */
127
+ id: number
128
+ /** Логин пользователя */
129
+ login: string
130
+ /** Тип аккаунта */
131
+ type: string
132
+ /** URL аватара пользователя */
133
+ avatar_url: string
134
+ /** Веб-ссылка на профиль пользователя */
135
+ html_url: string
136
+ /** Права администратора */
137
+ site_admin: boolean
138
+ };
139
+ /** Заголовок pull request */
140
+ title: string;
141
+ /** Описание pull request */
142
+ body?: string;
143
+ /** Список меток */
144
+ labels: Label[];
145
+ /** Информация о майлстоуне */
146
+ milestone?: Milestone;
147
+ /** Информация о назначенном пользователе */
148
+ assignee?: User2;
149
+ /** Список назначенных пользователей */
150
+ assignees?: User2[];
151
+ /** Состояние pull request (открыт/закрыт) */
152
+ state: PullRequestState;
153
+ /** Заблокирован ли pull request */
154
+ locked: boolean;
155
+ /** Количество комментариев */
156
+ comments: number;
157
+ /** Веб-ссылка на pull request */
158
+ html_url: string;
159
+ /** Ссылка на diff файл */
160
+ diff_url: string;
161
+ /** Ссылка на patch файл */
162
+ patch_url: string;
163
+ /** Можно ли слить pull request */
164
+ mergeable: boolean;
165
+ /** Был ли pull request слит */
166
+ merged: boolean;
167
+ /** Дата слияния (если был слит) */
168
+ merged_at?: string | null;
169
+ /** SHA-хеш коммита слияния (если был слит) */
170
+ merge_commit_sha?: string | null;
171
+ /** Пользователь, выполнивший слияние */
172
+ merged_by?: User2 | null;
173
+ /** Может ли мейнтейнер изменять pull request */
174
+ maintainer_can_modify: boolean;
175
+ /** Информация о целевой ветке */
176
+ base: PullRequestBase;
177
+ /** Информация о ветке с изменениями */
178
+ head: PullRequestBase;
179
+ /** Дата создания pull request */
180
+ created_at: string;
181
+ /** Дата обновления pull request */
182
+ updated_at: string;
183
+ /** Дата закрытия pull request (если закрыт) */
184
+ closed_at?: string | null;
185
+ }
186
+ /**
187
+ * Интерфейс параметров для создания pull request
188
+ */
189
+ interface CreatePullRequestParams {
190
+ /** Заголовок pull request */
191
+ title: string;
192
+ /** Описание pull request */
193
+ body?: string;
194
+ /** Имя ветки, из которой предлагаются изменения */
195
+ head: string;
196
+ /** Имя ветки, в которую будут внесены изменения */
197
+ base: string;
198
+ }
199
+ /**
200
+ * Интерфейс метки (label) для issues и pull requests
201
+ */
202
+ interface Label {
203
+ /** Идентификатор метки */
204
+ id: number;
205
+ /** Имя метки */
206
+ name: string;
207
+ /** Описание метки */
208
+ description?: string;
209
+ /** Цвет метки в формате HEX */
210
+ color: string;
211
+ /** URL метки */
212
+ url?: string;
213
+ }
214
+ /**
215
+ * Интерфейс майлстоуна (milestone)
216
+ */
217
+ interface Milestone {
218
+ /** Идентификатор майлстоуна */
219
+ id: number;
220
+ /** Номер майлстоуна */
221
+ number: number;
222
+ /** Название майлстоуна */
223
+ title: string;
224
+ /** Описание майлстоуна */
225
+ description?: string;
226
+ /** Создатель майлстоуна */
227
+ creator: User2;
228
+ /** Состояние майлстоуна (open/closed) */
229
+ state: "open" | "closed";
230
+ /** Количество открытых задач */
231
+ open_issues: number;
232
+ /** Количество закрытых задач */
233
+ closed_issues: number;
234
+ /** Дата создания */
235
+ created_at: string;
236
+ /** Дата обновления */
237
+ updated_at: string;
238
+ /** Дата окончания (due date) */
239
+ due_on?: string;
240
+ }
241
+ /**
242
+ * Интерфейс коммита
243
+ */
244
+ interface Commit {
245
+ /** SHA-хеш коммита */
246
+ sha: string;
247
+ /** Node ID коммита */
248
+ node_id?: string;
249
+ /** Информация о коммите */
250
+ commit: {
251
+ /** Автор коммита */
252
+ author: {
253
+ name: string
254
+ email: string
255
+ date: string
256
+ }
257
+ /** Коммиттер */
258
+ committer: {
259
+ name: string
260
+ email: string
261
+ date: string
262
+ }
263
+ /** Сообщение коммита */
264
+ message: string
265
+ /** Дерево коммита */
266
+ tree: {
267
+ sha: string
268
+ url: string
269
+ }
270
+ };
271
+ /** Автор (пользователь GitVerse) */
272
+ author?: User2 | null;
273
+ /** Коммиттер (пользователь GitVerse) */
274
+ committer?: User2 | null;
275
+ /** Родительские коммиты */
276
+ parents: Array<{
277
+ sha: string
278
+ url: string
279
+ html_url: string
280
+ }>;
281
+ /** API-ссылка на коммит */
282
+ url: string;
283
+ /** Веб-ссылка на коммит */
284
+ html_url: string;
285
+ }
286
+ /**
287
+ * Параметры для обновления pull request
288
+ */
289
+ interface UpdatePullRequestParams {
290
+ /** Новый заголовок */
291
+ title?: string;
292
+ /** Новое описание */
293
+ body?: string;
294
+ /** Новое состояние */
295
+ state?: PullRequestState;
296
+ /** Базовая ветка */
297
+ base?: string;
298
+ /** Можно ли мейнтейнерам модифицировать */
299
+ maintainer_can_modify?: boolean;
300
+ }
301
+ /**
302
+ * Интерфейс файла в pull request
303
+ */
304
+ interface PullRequestFile {
305
+ /** SHA-хеш файла */
306
+ sha: string;
307
+ /** Имя файла */
308
+ filename: string;
309
+ /** Статус изменения */
310
+ status: "added" | "removed" | "modified" | "renamed" | "copied" | "changed" | "unchanged";
311
+ /** Количество добавленных строк */
312
+ additions: number;
313
+ /** Количество удалённых строк */
314
+ deletions: number;
315
+ /** Общее количество изменений */
316
+ changes: number;
317
+ /** URL для получения содержимого */
318
+ blob_url: string;
319
+ /** Raw URL */
320
+ raw_url: string;
321
+ /** API URL */
322
+ contents_url: string;
323
+ /** Patch для файла */
324
+ patch?: string;
325
+ /** Предыдущее имя файла (для переименованных) */
326
+ previous_filename?: string;
327
+ }
328
+ /**
329
+ * Предупреждение об устаревшей версии API
330
+ */
331
+ declare class ApiVersionWarning {
332
+ /** Текущая используемая версия */
333
+ readonly currentVersion: string;
334
+ /** Последняя доступная версия */
335
+ readonly latestVersion: string;
336
+ /** Дата вывода из эксплуатации */
337
+ readonly decommissioning?: string;
338
+ constructor(currentVersion: string, latestVersion: string, decommissioning?: string);
339
+ /**
340
+ * Возвращает сообщение о предупреждении
341
+ */
342
+ getMessage(): string;
343
+ }
344
+ declare const HTTPMethods: {
345
+ readonly DELETE: "DELETE"
346
+ readonly GET: "GET"
347
+ readonly PATCH: "PATCH"
348
+ readonly POST: "POST"
349
+ readonly PUT: "PUT"
350
+ };
351
+ type HTTPMethods = (typeof HTTPMethods)[keyof typeof HTTPMethods];
352
+ /**
353
+ * Параметры для конфигурации GitVerse клиента
354
+ */
355
+ interface GitVerseClientConfig {
356
+ /**
357
+ * Базовый URL API GitVerse
358
+ * @default 'https://api.gitverse.ru'
359
+ */
360
+ baseUrl?: string;
361
+ /**
362
+ * Токен доступа для авторизации в API
363
+ */
364
+ token?: string;
365
+ /**
366
+ * Версия API
367
+ * @default '1'
368
+ */
369
+ apiVersion?: string;
370
+ }
371
+ /**
372
+ * Основной класс для работы с GitVerse API
373
+ */
374
+ declare class GitVerseClient {
375
+ private baseUrl;
376
+ private token?;
377
+ private apiVersion;
378
+ /**
379
+ * Callback для обработки предупреждений об устаревшей версии API
380
+ */
381
+ onApiVersionWarning?: (warning: ApiVersionWarning) => void;
382
+ /**
383
+ * Создает новый экземпляр GitVerse клиента
384
+ * @param config Конфигурация клиента
385
+ */
386
+ constructor(config?: GitVerseClientConfig);
387
+ /**
388
+ * Устанавливает токен авторизации
389
+ * @param token Токен доступа
390
+ */
391
+ setToken(token: string): void;
392
+ /**
393
+ * Извлекает информацию о Rate Limit из заголовков ответа
394
+ */
395
+ private extractRateLimitInfo;
396
+ /**
397
+ * Извлекает информацию о версии API из заголовков ответа
398
+ */
399
+ private extractApiVersionInfo;
400
+ /**
401
+ * Извлекает метаданные из заголовков ответа
402
+ */
403
+ private extractMetadata;
404
+ /**
405
+ * Выполняет API-запрос с учетом авторизации и версии API
406
+ * @param path Путь к API-ресурсу
407
+ * @param method HTTP-метод
408
+ * @param body Тело запроса (опционально)
409
+ * @returns Ответ от API
410
+ * @throws {RateLimitError} При превышении лимита запросов (429)
411
+ * @throws {GitVerseApiError} При других ошибках API
412
+ */
413
+ request<T>(path: string, method: HTTPMethods, body?: unknown): Promise<T>;
414
+ /**
415
+ * Выполняет GET-запрос
416
+ * @param path Путь к API-ресурсу
417
+ * @returns Ответ от API
418
+ */
419
+ get<T>(path: string): Promise<T>;
420
+ /**
421
+ * Выполняет POST-запрос
422
+ * @param path Путь к API-ресурсу
423
+ * @param body Тело запроса
424
+ * @returns Ответ от API
425
+ */
426
+ post<T>(path: string, body?: unknown): Promise<T>;
427
+ /**
428
+ * Выполняет PUT-запрос
429
+ * @param path Путь к API-ресурсу
430
+ * @param body Тело запроса
431
+ * @returns Ответ от API
432
+ */
433
+ put<T>(path: string, body?: unknown): Promise<T>;
434
+ /**
435
+ * Выполняет DELETE-запрос
436
+ * @param path Путь к API-ресурсу
437
+ * @param body Тело запроса (опционально)
438
+ * @returns Ответ от API
439
+ */
440
+ delete<T>(path: string, body?: unknown): Promise<T>;
441
+ /**
442
+ * Выполняет PATCH-запрос
443
+ * @param path Путь к API-ресурсу
444
+ * @param body Тело запроса
445
+ * @returns Ответ от API
446
+ */
447
+ patch<T>(path: string, body?: unknown): Promise<T>;
448
+ }
449
+ /**
450
+ * API для работы с запросами на слияние (пулл-реквестами)
451
+ */
452
+ declare class PullsApi {
453
+ private client;
454
+ /**
455
+ * Создает новый экземпляр API для работы с пулл-реквестами
456
+ * @param client GitVerse клиент
457
+ */
458
+ constructor(client: GitVerseClient);
459
+ /**
460
+ * Создает новый запрос на слияние в репозитории
461
+ * @param owner Владелец репозитория
462
+ * @param repo Название репозитория
463
+ * @param params Параметры создания запроса на слияние
464
+ * @returns Информация о созданном запросе на слияние
465
+ */
466
+ create(owner: string, repo: string, params: CreatePullRequestParams): Promise<PullRequest>;
467
+ /**
468
+ * Получает запрос на слияние по его номеру
469
+ * @param owner Владелец репозитория
470
+ * @param repo Название репозитория
471
+ * @param number Номер запроса на слияние
472
+ * @returns Информация о запросе на слияние
473
+ */
474
+ get(owner: string, repo: string, number: number): Promise<PullRequest>;
475
+ /**
476
+ * Получает список запросов на слияние в репозитории
477
+ * @param owner Владелец репозитория
478
+ * @param repo Название репозитория
479
+ * @param state Состояние запросов на слияние (открытые/закрытые/все)
480
+ * @returns Список запросов на слияние
481
+ */
482
+ list(owner: string, repo: string, state?: PullRequestState): Promise<PullRequest[]>;
483
+ /**
484
+ * Обновляет pull request
485
+ * @param owner Владелец репозитория
486
+ * @param repo Название репозитория
487
+ * @param number Номер pull request
488
+ * @param params Параметры для обновления
489
+ * @returns Обновлённый pull request
490
+ */
491
+ update(owner: string, repo: string, number: number, params: UpdatePullRequestParams): Promise<PullRequest>;
492
+ /**
493
+ * Получает список файлов в pull request
494
+ * @param owner Владелец репозитория
495
+ * @param repo Название репозитория
496
+ * @param number Номер pull request
497
+ * @returns Список изменённых файлов
498
+ */
499
+ getFiles(owner: string, repo: string, number: number): Promise<PullRequestFile[]>;
500
+ /**
501
+ * Обновляет ветку pull request с базовой веткой
502
+ * @param owner Владелец репозитория
503
+ * @param repo Название репозитория
504
+ * @param number Номер pull request
505
+ * @returns Результат операции
506
+ */
507
+ updateBranch(owner: string, repo: string, number: number): Promise<void>;
508
+ /**
509
+ * Получает список коммитов в pull request
510
+ * @param owner Владелец репозитория
511
+ * @param repo Название репозитория
512
+ * @param number Номер pull request
513
+ * @returns Список коммитов
514
+ */
515
+ getCommits(owner: string, repo: string, number: number): Promise<Commit[]>;
516
+ }
517
+ export { PullsApi };
@@ -0,0 +1,4 @@
1
+ class v{client;constructor(d){this.client=d}create(d,g,f){return this.client.post(`/repos/${d}/${g}/pulls`,f)}get(d,g,f){return this.client.get(`/repos/${d}/${g}/pulls/${f}`)}list(d,g,f){let k=new URL(`/repos/${d}/${g}/pulls`,"http://localhost");if(f)k.searchParams.set("state",f);return this.client.get(k.href.replace("http://localhost",""))}update(d,g,f,j){return this.client.patch(`/repos/${d}/${g}/pulls/${f}`,j)}getFiles(d,g,f){return this.client.get(`/repos/${d}/${g}/pulls/${f}/files`)}updateBranch(d,g,f){return this.client.put(`/repos/${d}/${g}/pulls/${f}/update-branch`,{})}getCommits(d,g,f){return this.client.get(`/repos/${d}/${g}/pulls/${f}/commits`)}}export{v as PullsApi};
2
+ export{v as m};
3
+
4
+ //# debugId=35A0A924DAC8BD1664756E2164756E21