@distilled.cloud/forgejo 0.0.0 → 1.0.0-rc.9

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 (88) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +71 -0
  3. package/lib/credentials.d.ts +35 -0
  4. package/lib/credentials.d.ts.map +1 -0
  5. package/lib/credentials.js +57 -0
  6. package/lib/credentials.js.map +1 -0
  7. package/lib/errors.d.ts +56 -0
  8. package/lib/errors.d.ts.map +1 -0
  9. package/lib/errors.js +36 -0
  10. package/lib/errors.js.map +1 -0
  11. package/lib/index.d.ts +28 -0
  12. package/lib/index.d.ts.map +1 -0
  13. package/lib/index.js +28 -0
  14. package/lib/index.js.map +1 -0
  15. package/lib/protocol.d.ts +18 -0
  16. package/lib/protocol.d.ts.map +1 -0
  17. package/lib/protocol.js +61 -0
  18. package/lib/protocol.js.map +1 -0
  19. package/lib/retry.d.ts +50 -0
  20. package/lib/retry.d.ts.map +1 -0
  21. package/lib/retry.js +43 -0
  22. package/lib/retry.js.map +1 -0
  23. package/lib/services/activitypub.d.ts +121 -0
  24. package/lib/services/activitypub.d.ts.map +1 -0
  25. package/lib/services/activitypub.js +202 -0
  26. package/lib/services/activitypub.js.map +1 -0
  27. package/lib/services/admin.d.ts +1196 -0
  28. package/lib/services/admin.d.ts.map +1 -0
  29. package/lib/services/admin.js +1276 -0
  30. package/lib/services/admin.js.map +1 -0
  31. package/lib/services/index.d.ts +11 -0
  32. package/lib/services/index.d.ts.map +1 -0
  33. package/lib/services/index.js +12 -0
  34. package/lib/services/index.js.map +1 -0
  35. package/lib/services/issue.d.ts +1479 -0
  36. package/lib/services/issue.d.ts.map +1 -0
  37. package/lib/services/issue.js +1732 -0
  38. package/lib/services/issue.js.map +1 -0
  39. package/lib/services/miscellaneous.d.ts +494 -0
  40. package/lib/services/miscellaneous.d.ts.map +1 -0
  41. package/lib/services/miscellaneous.js +471 -0
  42. package/lib/services/miscellaneous.js.map +1 -0
  43. package/lib/services/notification.d.ts +390 -0
  44. package/lib/services/notification.d.ts.map +1 -0
  45. package/lib/services/notification.js +344 -0
  46. package/lib/services/notification.js.map +1 -0
  47. package/lib/services/organization.d.ts +1593 -0
  48. package/lib/services/organization.d.ts.map +1 -0
  49. package/lib/services/organization.js +1672 -0
  50. package/lib/services/organization.js.map +1 -0
  51. package/lib/services/package.d.ts +347 -0
  52. package/lib/services/package.d.ts.map +1 -0
  53. package/lib/services/package.js +320 -0
  54. package/lib/services/package.js.map +1 -0
  55. package/lib/services/repository.d.ts +4770 -0
  56. package/lib/services/repository.d.ts.map +1 -0
  57. package/lib/services/repository.js +5449 -0
  58. package/lib/services/repository.js.map +1 -0
  59. package/lib/services/settings.d.ts +67 -0
  60. package/lib/services/settings.d.ts.map +1 -0
  61. package/lib/services/settings.js +87 -0
  62. package/lib/services/settings.js.map +1 -0
  63. package/lib/services/user.d.ts +1764 -0
  64. package/lib/services/user.d.ts.map +1 -0
  65. package/lib/services/user.js +1921 -0
  66. package/lib/services/user.js.map +1 -0
  67. package/lib/traits.d.ts +10 -0
  68. package/lib/traits.d.ts.map +1 -0
  69. package/lib/traits.js +11 -0
  70. package/lib/traits.js.map +1 -0
  71. package/package.json +78 -6
  72. package/src/credentials.ts +89 -0
  73. package/src/errors.ts +72 -0
  74. package/src/index.ts +31 -0
  75. package/src/protocol.ts +86 -0
  76. package/src/retry.ts +74 -0
  77. package/src/services/activitypub.ts +415 -0
  78. package/src/services/admin.ts +3103 -0
  79. package/src/services/index.ts +11 -0
  80. package/src/services/issue.ts +3949 -0
  81. package/src/services/miscellaneous.ts +1118 -0
  82. package/src/services/notification.ts +847 -0
  83. package/src/services/organization.ts +4008 -0
  84. package/src/services/package.ts +767 -0
  85. package/src/services/repository.ts +12839 -0
  86. package/src/services/settings.ts +190 -0
  87. package/src/services/user.ts +4669 -0
  88. package/src/traits.ts +44 -0
@@ -0,0 +1,3103 @@
1
+ // AUTO-GENERATED by scripts/generate.ts from .generated-specs (specs/spec-mirror-forgejo). Do not edit.
2
+ import * as S from "@distilled.cloud/core/schema";
3
+ import * as Redacted from "effect/Redacted";
4
+ import * as API from "@distilled.cloud/core/api";
5
+ import * as C from "@distilled.cloud/core/category";
6
+ import * as T from "../traits.ts";
7
+ import {
8
+ ForgejoProtocol,
9
+ type ForgejoOpError,
10
+ type ForgejoOpContext,
11
+ } from "../protocol.ts";
12
+ import * as Retry from "../retry.ts";
13
+
14
+ export type { ForgejoOpError, ForgejoOpContext };
15
+
16
+ export class BadRequest
17
+ extends /*@__PURE__*/ T.applyErrorMatchers(
18
+ /*@__PURE__*/ S.TaggedError<BadRequest>()("BadRequest", {
19
+ code: S.Number,
20
+ message: S.String,
21
+ }).pipe(C.withBadRequestError),
22
+ [{ status: 400 }],
23
+ ) {}
24
+
25
+ export class Conflict
26
+ extends /*@__PURE__*/ T.applyErrorMatchers(
27
+ /*@__PURE__*/ S.TaggedError<Conflict>()("Conflict", {
28
+ code: S.Number,
29
+ message: S.String,
30
+ }).pipe(C.withConflictError),
31
+ [{ status: 409 }],
32
+ ) {}
33
+
34
+ export class Forbidden
35
+ extends /*@__PURE__*/ T.applyErrorMatchers(
36
+ /*@__PURE__*/ S.TaggedError<Forbidden>()("Forbidden", {
37
+ code: S.Number,
38
+ message: S.String,
39
+ }).pipe(C.withAuthError),
40
+ [{ status: 403 }],
41
+ ) {}
42
+
43
+ export class NotFound
44
+ extends /*@__PURE__*/ T.applyErrorMatchers(
45
+ /*@__PURE__*/ S.TaggedError<NotFound>()("NotFound", {
46
+ code: S.Number,
47
+ message: S.String,
48
+ }).pipe(C.withBadRequestError),
49
+ [{ status: 404 }],
50
+ ) {}
51
+
52
+ export class UnprocessableEntity
53
+ extends /*@__PURE__*/ T.applyErrorMatchers(
54
+ /*@__PURE__*/ S.TaggedError<UnprocessableEntity>()("UnprocessableEntity", {
55
+ code: S.Number,
56
+ message: S.String,
57
+ }).pipe(C.withBadRequestError),
58
+ [{ status: 422 }],
59
+ ) {}
60
+
61
+ export interface AdminAddRuleToQuotaGroupRequest {
62
+ /** quota group to add a rule to */
63
+ quotagroup: string;
64
+ /** the name of the quota rule to add to the group */
65
+ quotarule: string;
66
+ }
67
+ export const AdminAddRuleToQuotaGroupRequest = /*@__PURE__*/ S.suspend(() =>
68
+ S.Struct({
69
+ quotagroup: S.String.pipe(T.Label()),
70
+ quotarule: S.String.pipe(T.Label()),
71
+ }).pipe(
72
+ T.Http({
73
+ method: "PUT",
74
+ uri: "/admin/quota/groups/{quotagroup}/rules/{quotarule}",
75
+ code: 200,
76
+ }),
77
+ ),
78
+ ).annotate({
79
+ identifier: "AdminAddRuleToQuotaGroupRequest",
80
+ }) as any as S.Schema<AdminAddRuleToQuotaGroupRequest>;
81
+
82
+ export interface AdminAddRuleToQuotaGroupResponse {}
83
+ export const AdminAddRuleToQuotaGroupResponse = /*@__PURE__*/ S.suspend(() =>
84
+ S.Struct({}),
85
+ ).annotate({
86
+ identifier: "AdminAddRuleToQuotaGroupResponse",
87
+ }) as any as S.Schema<AdminAddRuleToQuotaGroupResponse>;
88
+
89
+ export interface AdminAddUserToQuotaGroupRequest {
90
+ /** quota group to add the user to */
91
+ quotagroup: string;
92
+ /** username of the user to add to the quota group */
93
+ username: string;
94
+ }
95
+ export const AdminAddUserToQuotaGroupRequest = /*@__PURE__*/ S.suspend(() =>
96
+ S.Struct({
97
+ quotagroup: S.String.pipe(T.Label()),
98
+ username: S.String.pipe(T.Label()),
99
+ }).pipe(
100
+ T.Http({
101
+ method: "PUT",
102
+ uri: "/admin/quota/groups/{quotagroup}/users/{username}",
103
+ code: 200,
104
+ }),
105
+ ),
106
+ ).annotate({
107
+ identifier: "AdminAddUserToQuotaGroupRequest",
108
+ }) as any as S.Schema<AdminAddUserToQuotaGroupRequest>;
109
+
110
+ export interface AdminAddUserToQuotaGroupResponse {}
111
+ export const AdminAddUserToQuotaGroupResponse = /*@__PURE__*/ S.suspend(() =>
112
+ S.Struct({}),
113
+ ).annotate({
114
+ identifier: "AdminAddUserToQuotaGroupResponse",
115
+ }) as any as S.Schema<AdminAddUserToQuotaGroupResponse>;
116
+
117
+ export interface AdminAdoptRepositoryRequest {
118
+ /** owner of the repo */
119
+ owner: string;
120
+ /** name of the repo */
121
+ repo: string;
122
+ }
123
+ export const AdminAdoptRepositoryRequest = /*@__PURE__*/ S.suspend(() =>
124
+ S.Struct({
125
+ owner: S.String.pipe(T.Label()),
126
+ repo: S.String.pipe(T.Label()),
127
+ }).pipe(
128
+ T.Http({
129
+ method: "POST",
130
+ uri: "/admin/unadopted/{owner}/{repo}",
131
+ code: 200,
132
+ }),
133
+ ),
134
+ ).annotate({
135
+ identifier: "AdminAdoptRepositoryRequest",
136
+ }) as any as S.Schema<AdminAdoptRepositoryRequest>;
137
+
138
+ export interface AdminAdoptRepositoryResponse {}
139
+ export const AdminAdoptRepositoryResponse = /*@__PURE__*/ S.suspend(() =>
140
+ S.Struct({}),
141
+ ).annotate({
142
+ identifier: "AdminAdoptRepositoryResponse",
143
+ }) as any as S.Schema<AdminAdoptRepositoryResponse>;
144
+
145
+ /** CreateHookOptionConfig has all config options in it required are "content_type" and "url" Required */
146
+ export type CreateHookOptionConfig = { [key: string]: string | undefined };
147
+ export const CreateHookOptionConfig = /*@__PURE__*/ S.Record(
148
+ S.String,
149
+ S.String,
150
+ ) as any as S.Schema<CreateHookOptionConfig>;
151
+
152
+ export type AdminCreateHookRequestEventsList = Array<string>;
153
+ export const AdminCreateHookRequestEventsList = /*@__PURE__*/ S.Array(
154
+ S.String,
155
+ ) as any as S.Schema<AdminCreateHookRequestEventsList>;
156
+
157
+ export type AdminCreateHookRequestType =
158
+ | "forgejo"
159
+ | "dingtalk"
160
+ | "discord"
161
+ | "gitea"
162
+ | "gogs"
163
+ | "msteams"
164
+ | "slack"
165
+ | "telegram"
166
+ | "feishu"
167
+ | "wechatwork"
168
+ | "packagist";
169
+ export const AdminCreateHookRequestType = /*@__PURE__*/ S.String;
170
+
171
+ export interface AdminCreateHookRequest {
172
+ active?: boolean;
173
+ authorization_header?: string;
174
+ branch_filter?: string;
175
+ config: CreateHookOptionConfig;
176
+ events?: AdminCreateHookRequestEventsList;
177
+ type: AdminCreateHookRequestType | (string & {});
178
+ }
179
+ export const AdminCreateHookRequest = /*@__PURE__*/ S.suspend(() =>
180
+ S.Struct({
181
+ active: S.optional(S.Boolean),
182
+ authorization_header: S.optional(S.String),
183
+ branch_filter: S.optional(S.String),
184
+ config: CreateHookOptionConfig,
185
+ events: S.optional(AdminCreateHookRequestEventsList),
186
+ type: AdminCreateHookRequestType,
187
+ }).pipe(T.Http({ method: "POST", uri: "/admin/hooks", code: 200 })),
188
+ ).annotate({
189
+ identifier: "AdminCreateHookRequest",
190
+ }) as any as S.Schema<AdminCreateHookRequest>;
191
+
192
+ /** Deprecated: use Metadata instead */
193
+ export type HookConfigMap = { [key: string]: string | undefined };
194
+ export const HookConfigMap = /*@__PURE__*/ S.Record(
195
+ S.String,
196
+ S.String,
197
+ ) as any as S.Schema<HookConfigMap>;
198
+
199
+ export type HookEventsList = Array<string>;
200
+ export const HookEventsList = /*@__PURE__*/ S.Array(
201
+ S.String,
202
+ ) as any as S.Schema<HookEventsList>;
203
+
204
+ /** Hook a hook is a web hook when one repository changed */
205
+ export interface Hook {
206
+ active: boolean;
207
+ authorization_header?: string;
208
+ branch_filter?: string;
209
+ /** Deprecated: use Metadata instead */
210
+ config?: HookConfigMap;
211
+ content_type?: string;
212
+ created_at: string;
213
+ events?: HookEventsList;
214
+ id: number;
215
+ metadata?: unknown;
216
+ type: string;
217
+ updated_at: string;
218
+ url: string;
219
+ }
220
+ export const Hook = /*@__PURE__*/ S.suspend(() =>
221
+ S.Struct({
222
+ active: S.Boolean,
223
+ authorization_header: S.optional(S.String),
224
+ branch_filter: S.optional(S.String),
225
+ config: S.optional(HookConfigMap),
226
+ content_type: S.optional(S.String),
227
+ created_at: S.String,
228
+ events: S.optional(HookEventsList),
229
+ id: S.Number,
230
+ metadata: S.optional(S.Unknown),
231
+ type: S.String,
232
+ updated_at: S.String,
233
+ url: S.String,
234
+ }),
235
+ ).annotate({ identifier: "Hook" }) as any as S.Schema<Hook>;
236
+
237
+ /** possible values are `public` (default), `limited` or `private` */
238
+ export type AdminCreateOrgRequestVisibility = "public" | "limited" | "private";
239
+ export const AdminCreateOrgRequestVisibility = /*@__PURE__*/ S.String;
240
+
241
+ export interface AdminCreateOrgRequest {
242
+ /** username of the user that will own the created organization */
243
+ owner: string;
244
+ description?: string;
245
+ email?: string;
246
+ full_name?: string;
247
+ location?: string;
248
+ repo_admin_change_team_access?: boolean;
249
+ username: string;
250
+ /** possible values are `public` (default), `limited` or `private` */
251
+ visibility?: AdminCreateOrgRequestVisibility | (string & {});
252
+ website?: string;
253
+ }
254
+ export const AdminCreateOrgRequest = /*@__PURE__*/ S.suspend(() =>
255
+ S.Struct({
256
+ owner: S.String.pipe(T.Label()),
257
+ description: S.optional(S.String),
258
+ email: S.optional(S.String),
259
+ full_name: S.optional(S.String),
260
+ location: S.optional(S.String),
261
+ repo_admin_change_team_access: S.optional(S.Boolean),
262
+ username: S.String,
263
+ visibility: S.optional(AdminCreateOrgRequestVisibility),
264
+ website: S.optional(S.String),
265
+ }).pipe(
266
+ T.Http({ method: "POST", uri: "/admin/users/{owner}/orgs", code: 200 }),
267
+ ),
268
+ ).annotate({
269
+ identifier: "AdminCreateOrgRequest",
270
+ }) as any as S.Schema<AdminCreateOrgRequest>;
271
+
272
+ /** Organization represents an organization */
273
+ export interface Organization {
274
+ avatar_url?: string;
275
+ created?: string;
276
+ description?: string;
277
+ email?: string;
278
+ full_name?: string;
279
+ id: number;
280
+ location?: string;
281
+ name?: string;
282
+ repo_admin_change_team_access?: boolean;
283
+ /** deprecated */
284
+ username: string;
285
+ visibility?: string;
286
+ website?: string;
287
+ }
288
+ export const Organization = /*@__PURE__*/ S.suspend(() =>
289
+ S.Struct({
290
+ avatar_url: S.optional(S.String),
291
+ created: S.optional(S.String),
292
+ description: S.optional(S.String),
293
+ email: S.optional(S.String),
294
+ full_name: S.optional(S.String),
295
+ id: S.Number,
296
+ location: S.optional(S.String),
297
+ name: S.optional(S.String),
298
+ repo_admin_change_team_access: S.optional(S.Boolean),
299
+ username: S.String,
300
+ visibility: S.optional(S.String),
301
+ website: S.optional(S.String),
302
+ }),
303
+ ).annotate({ identifier: "Organization" }) as any as S.Schema<Organization>;
304
+
305
+ export interface AdminCreatePublicKeyRequest {
306
+ /** username of the user */
307
+ username: string;
308
+ /** An armored SSH key to add */
309
+ key: string;
310
+ /** Describe if the key has only read access or read/write */
311
+ read_only?: boolean;
312
+ /** Title of the key to add */
313
+ title: string;
314
+ }
315
+ export const AdminCreatePublicKeyRequest = /*@__PURE__*/ S.suspend(() =>
316
+ S.Struct({
317
+ username: S.String.pipe(T.Label()),
318
+ key: S.String,
319
+ read_only: S.optional(S.Boolean),
320
+ title: S.String,
321
+ }).pipe(
322
+ T.Http({ method: "POST", uri: "/admin/users/{username}/keys", code: 200 }),
323
+ ),
324
+ ).annotate({
325
+ identifier: "AdminCreatePublicKeyRequest",
326
+ }) as any as S.Schema<AdminCreatePublicKeyRequest>;
327
+
328
+ /** User represents a user */
329
+ export interface User {
330
+ /** Is user active */
331
+ active?: boolean;
332
+ /** URL to the user's avatar */
333
+ avatar_url?: string;
334
+ created?: string;
335
+ /** the user's description */
336
+ description?: string;
337
+ email?: string;
338
+ /** user counts */
339
+ followers_count?: number;
340
+ following_count?: number;
341
+ /** the user's full name */
342
+ full_name?: string;
343
+ /** URL to the user's profile page */
344
+ html_url?: string;
345
+ /** the user's id */
346
+ id: number;
347
+ /** Is the user an administrator */
348
+ is_admin?: boolean;
349
+ /** User locale */
350
+ language?: string;
351
+ last_login?: string;
352
+ /** the user's location */
353
+ location?: string;
354
+ /** the user's username */
355
+ login: string;
356
+ /** the user's authentication sign-in name. */
357
+ login_name?: string;
358
+ /** Is user login prohibited */
359
+ prohibit_login?: boolean;
360
+ /** the user's pronouns */
361
+ pronouns?: string;
362
+ /** Is user restricted */
363
+ restricted?: boolean;
364
+ /** The ID of the user's Authentication Source */
365
+ source_id?: number;
366
+ starred_repos_count?: number;
367
+ /** User visibility level option: public, limited, private */
368
+ visibility?: string;
369
+ /** the user's website */
370
+ website?: string;
371
+ }
372
+ export const User = /*@__PURE__*/ S.suspend(() =>
373
+ S.Struct({
374
+ active: S.optional(S.Boolean),
375
+ avatar_url: S.optional(S.String),
376
+ created: S.optional(S.String),
377
+ description: S.optional(S.String),
378
+ email: S.optional(S.String),
379
+ followers_count: S.optional(S.Number),
380
+ following_count: S.optional(S.Number),
381
+ full_name: S.optional(S.String),
382
+ html_url: S.optional(S.String),
383
+ id: S.Number,
384
+ is_admin: S.optional(S.Boolean),
385
+ language: S.optional(S.String),
386
+ last_login: S.optional(S.String),
387
+ location: S.optional(S.String),
388
+ login: S.String,
389
+ login_name: S.optional(S.String),
390
+ prohibit_login: S.optional(S.Boolean),
391
+ pronouns: S.optional(S.String),
392
+ restricted: S.optional(S.Boolean),
393
+ source_id: S.optional(S.Number),
394
+ starred_repos_count: S.optional(S.Number),
395
+ visibility: S.optional(S.String),
396
+ website: S.optional(S.String),
397
+ }),
398
+ ).annotate({ identifier: "User" }) as any as S.Schema<User>;
399
+
400
+ /** PublicKey publickey is a user key to push code to repository */
401
+ export interface PublicKey {
402
+ created_at?: string;
403
+ fingerprint?: string;
404
+ id?: number;
405
+ key?: string;
406
+ key_type?: string;
407
+ read_only?: boolean;
408
+ title?: string;
409
+ updated_at?: string;
410
+ url?: string;
411
+ user?: User;
412
+ verified?: boolean;
413
+ }
414
+ export const PublicKey = /*@__PURE__*/ S.suspend(() =>
415
+ S.Struct({
416
+ created_at: S.optional(S.String),
417
+ fingerprint: S.optional(S.String),
418
+ id: S.optional(S.Number),
419
+ key: S.optional(S.String),
420
+ key_type: S.optional(S.String),
421
+ read_only: S.optional(S.Boolean),
422
+ title: S.optional(S.String),
423
+ updated_at: S.optional(S.String),
424
+ url: S.optional(S.String),
425
+ user: S.optional(User),
426
+ verified: S.optional(S.Boolean),
427
+ }),
428
+ ).annotate({ identifier: "PublicKey" }) as any as S.Schema<PublicKey>;
429
+
430
+ /** The subjects affected by the rule */
431
+ export type CreateQuotaRuleOptionsSubjectsList = Array<string>;
432
+ export const CreateQuotaRuleOptionsSubjectsList = /*@__PURE__*/ S.Array(
433
+ S.String,
434
+ ) as any as S.Schema<CreateQuotaRuleOptionsSubjectsList>;
435
+
436
+ /** CreateQuotaRuleOptions represents the options for creating a quota rule */
437
+ export interface CreateQuotaRuleOptions {
438
+ /** The limit set by the rule */
439
+ limit?: number;
440
+ /** Name of the rule to create */
441
+ name?: string;
442
+ /** The subjects affected by the rule */
443
+ subjects?: CreateQuotaRuleOptionsSubjectsList;
444
+ }
445
+ export const CreateQuotaRuleOptions = /*@__PURE__*/ S.suspend(() =>
446
+ S.Struct({
447
+ limit: S.optional(S.Number),
448
+ name: S.optional(S.String),
449
+ subjects: S.optional(CreateQuotaRuleOptionsSubjectsList),
450
+ }),
451
+ ).annotate({
452
+ identifier: "CreateQuotaRuleOptions",
453
+ }) as any as S.Schema<CreateQuotaRuleOptions>;
454
+
455
+ /** Rules to add to the newly created group. If a rule does not exist, it will be created. */
456
+ export type AdminCreateQuotaGroupRequestRulesList =
457
+ Array<CreateQuotaRuleOptions>;
458
+ export const AdminCreateQuotaGroupRequestRulesList = /*@__PURE__*/ S.Array(
459
+ CreateQuotaRuleOptions,
460
+ ) as any as S.Schema<AdminCreateQuotaGroupRequestRulesList>;
461
+
462
+ export interface AdminCreateQuotaGroupRequest {
463
+ /** Name of the quota group to create */
464
+ name?: string;
465
+ /** Rules to add to the newly created group. If a rule does not exist, it will be created. */
466
+ rules?: AdminCreateQuotaGroupRequestRulesList;
467
+ }
468
+ export const AdminCreateQuotaGroupRequest = /*@__PURE__*/ S.suspend(() =>
469
+ S.Struct({
470
+ name: S.optional(S.String),
471
+ rules: S.optional(AdminCreateQuotaGroupRequestRulesList),
472
+ }).pipe(T.Http({ method: "POST", uri: "/admin/quota/groups", code: 200 })),
473
+ ).annotate({
474
+ identifier: "AdminCreateQuotaGroupRequest",
475
+ }) as any as S.Schema<AdminCreateQuotaGroupRequest>;
476
+
477
+ /** Subjects the rule affects */
478
+ export type QuotaRuleInfoSubjectsList = Array<string>;
479
+ export const QuotaRuleInfoSubjectsList = /*@__PURE__*/ S.Array(
480
+ S.String,
481
+ ) as any as S.Schema<QuotaRuleInfoSubjectsList>;
482
+
483
+ /** QuotaRuleInfo contains information about a quota rule */
484
+ export interface QuotaRuleInfo {
485
+ /** The limit set by the rule */
486
+ limit?: number;
487
+ /** Name of the rule (only shown to admins) */
488
+ name?: string;
489
+ /** Subjects the rule affects */
490
+ subjects?: QuotaRuleInfoSubjectsList;
491
+ }
492
+ export const QuotaRuleInfo = /*@__PURE__*/ S.suspend(() =>
493
+ S.Struct({
494
+ limit: S.optional(S.Number),
495
+ name: S.optional(S.String),
496
+ subjects: S.optional(QuotaRuleInfoSubjectsList),
497
+ }),
498
+ ).annotate({ identifier: "QuotaRuleInfo" }) as any as S.Schema<QuotaRuleInfo>;
499
+
500
+ /** Rules associated with the group */
501
+ export type QuotaGroupRulesList = Array<QuotaRuleInfo>;
502
+ export const QuotaGroupRulesList = /*@__PURE__*/ S.Array(
503
+ QuotaRuleInfo,
504
+ ) as any as S.Schema<QuotaGroupRulesList>;
505
+
506
+ /** QuotaGroup represents a quota group */
507
+ export interface QuotaGroup {
508
+ /** Name of the group */
509
+ name?: string;
510
+ /** Rules associated with the group */
511
+ rules?: QuotaGroupRulesList;
512
+ }
513
+ export const QuotaGroup = /*@__PURE__*/ S.suspend(() =>
514
+ S.Struct({
515
+ name: S.optional(S.String),
516
+ rules: S.optional(QuotaGroupRulesList),
517
+ }),
518
+ ).annotate({ identifier: "QuotaGroup" }) as any as S.Schema<QuotaGroup>;
519
+
520
+ /** The subjects affected by the rule */
521
+ export type AdminCreateQuotaRuleRequestSubjectsList = Array<string>;
522
+ export const AdminCreateQuotaRuleRequestSubjectsList = /*@__PURE__*/ S.Array(
523
+ S.String,
524
+ ) as any as S.Schema<AdminCreateQuotaRuleRequestSubjectsList>;
525
+
526
+ export interface AdminCreateQuotaRuleRequest {
527
+ /** The limit set by the rule */
528
+ limit?: number;
529
+ /** Name of the rule to create */
530
+ name?: string;
531
+ /** The subjects affected by the rule */
532
+ subjects?: AdminCreateQuotaRuleRequestSubjectsList;
533
+ }
534
+ export const AdminCreateQuotaRuleRequest = /*@__PURE__*/ S.suspend(() =>
535
+ S.Struct({
536
+ limit: S.optional(S.Number),
537
+ name: S.optional(S.String),
538
+ subjects: S.optional(AdminCreateQuotaRuleRequestSubjectsList),
539
+ }).pipe(T.Http({ method: "POST", uri: "/admin/quota/rules", code: 200 })),
540
+ ).annotate({
541
+ identifier: "AdminCreateQuotaRuleRequest",
542
+ }) as any as S.Schema<AdminCreateQuotaRuleRequest>;
543
+
544
+ /** ObjectFormatName of the underlying git repository */
545
+ export type AdminCreateRepoRequestObjectFormatName = "sha1" | "sha256";
546
+ export const AdminCreateRepoRequestObjectFormatName = /*@__PURE__*/ S.String;
547
+
548
+ /** TrustModel of the repository */
549
+ export type AdminCreateRepoRequestTrustModel =
550
+ | "default"
551
+ | "collaborator"
552
+ | "committer"
553
+ | "collaboratorcommitter";
554
+ export const AdminCreateRepoRequestTrustModel = /*@__PURE__*/ S.String;
555
+
556
+ export interface AdminCreateRepoRequest {
557
+ /** username of the user. This user will own the created repository */
558
+ username: string;
559
+ /** Whether the repository should be auto-initialized? */
560
+ auto_init?: boolean;
561
+ /** DefaultBranch of the repository (used when initializes and in template) */
562
+ default_branch?: string;
563
+ /** Description of the repository to create */
564
+ description?: string;
565
+ /** Gitignores to use, separated by commas */
566
+ gitignores?: string;
567
+ /** Label-Set to use */
568
+ issue_labels?: string;
569
+ /** License to use */
570
+ license?: string;
571
+ /** Name of the repository to create */
572
+ name: string;
573
+ /** ObjectFormatName of the underlying git repository */
574
+ object_format_name?: AdminCreateRepoRequestObjectFormatName | (string & {});
575
+ /** Whether the repository is private */
576
+ private?: boolean;
577
+ /** Readme of the repository to create */
578
+ readme?: string;
579
+ /** Whether the repository is template */
580
+ template?: boolean;
581
+ /** TrustModel of the repository */
582
+ trust_model?: AdminCreateRepoRequestTrustModel | (string & {});
583
+ }
584
+ export const AdminCreateRepoRequest = /*@__PURE__*/ S.suspend(() =>
585
+ S.Struct({
586
+ username: S.String.pipe(T.Label()),
587
+ auto_init: S.optional(S.Boolean),
588
+ default_branch: S.optional(S.String),
589
+ description: S.optional(S.String),
590
+ gitignores: S.optional(S.String),
591
+ issue_labels: S.optional(S.String),
592
+ license: S.optional(S.String),
593
+ name: S.String,
594
+ object_format_name: S.optional(AdminCreateRepoRequestObjectFormatName),
595
+ private: S.optional(S.Boolean),
596
+ readme: S.optional(S.String),
597
+ template: S.optional(S.Boolean),
598
+ trust_model: S.optional(AdminCreateRepoRequestTrustModel),
599
+ }).pipe(
600
+ T.Http({ method: "POST", uri: "/admin/users/{username}/repos", code: 200 }),
601
+ ),
602
+ ).annotate({
603
+ identifier: "AdminCreateRepoRequest",
604
+ }) as any as S.Schema<AdminCreateRepoRequest>;
605
+
606
+ /** ExternalTracker represents settings for external tracker */
607
+ export interface ExternalTracker {
608
+ /** External Issue Tracker URL Format. Use the placeholders {user}, {repo} and {index} for the username, repository name and issue index. */
609
+ external_tracker_format?: string;
610
+ /** External Issue Tracker issue regular expression */
611
+ external_tracker_regexp_pattern?: string;
612
+ /** External Issue Tracker Number Format, either `numeric`, `alphanumeric`, or `regexp` */
613
+ external_tracker_style?: string;
614
+ /** URL of external issue tracker. */
615
+ external_tracker_url?: string;
616
+ }
617
+ export const ExternalTracker = /*@__PURE__*/ S.suspend(() =>
618
+ S.Struct({
619
+ external_tracker_format: S.optional(S.String),
620
+ external_tracker_regexp_pattern: S.optional(S.String),
621
+ external_tracker_style: S.optional(S.String),
622
+ external_tracker_url: S.optional(S.String),
623
+ }),
624
+ ).annotate({
625
+ identifier: "ExternalTracker",
626
+ }) as any as S.Schema<ExternalTracker>;
627
+
628
+ /** ExternalWiki represents setting for external wiki */
629
+ export interface ExternalWiki {
630
+ /** URL of external wiki. */
631
+ external_wiki_url?: string;
632
+ }
633
+ export const ExternalWiki = /*@__PURE__*/ S.suspend(() =>
634
+ S.Struct({
635
+ external_wiki_url: S.optional(S.String),
636
+ }),
637
+ ).annotate({ identifier: "ExternalWiki" }) as any as S.Schema<ExternalWiki>;
638
+
639
+ /** InternalTracker represents settings for internal tracker */
640
+ export interface InternalTracker {
641
+ /** Let only contributors track time (Built-in issue tracker) */
642
+ allow_only_contributors_to_track_time?: boolean;
643
+ /** Enable dependencies for issues and pull requests (Built-in issue tracker) */
644
+ enable_issue_dependencies?: boolean;
645
+ /** Enable time tracking (Built-in issue tracker) */
646
+ enable_time_tracker?: boolean;
647
+ }
648
+ export const InternalTracker = /*@__PURE__*/ S.suspend(() =>
649
+ S.Struct({
650
+ allow_only_contributors_to_track_time: S.optional(S.Boolean),
651
+ enable_issue_dependencies: S.optional(S.Boolean),
652
+ enable_time_tracker: S.optional(S.Boolean),
653
+ }),
654
+ ).annotate({
655
+ identifier: "InternalTracker",
656
+ }) as any as S.Schema<InternalTracker>;
657
+
658
+ /** ObjectFormatName of the underlying git repository */
659
+ export type RepositoryObjectFormatName = "sha1" | "sha256";
660
+ export const RepositoryObjectFormatName = /*@__PURE__*/ S.String;
661
+
662
+ /** Permission represents a set of permissions */
663
+ export interface Permission {
664
+ admin?: boolean;
665
+ pull?: boolean;
666
+ push?: boolean;
667
+ }
668
+ export const Permission = /*@__PURE__*/ S.suspend(() =>
669
+ S.Struct({
670
+ admin: S.optional(S.Boolean),
671
+ pull: S.optional(S.Boolean),
672
+ push: S.optional(S.Boolean),
673
+ }),
674
+ ).annotate({ identifier: "Permission" }) as any as S.Schema<Permission>;
675
+
676
+ export type TeamPermission = "none" | "read" | "write" | "admin" | "owner";
677
+ export const TeamPermission = /*@__PURE__*/ S.String;
678
+
679
+ export type TeamUnitsList = Array<string>;
680
+ export const TeamUnitsList = /*@__PURE__*/ S.Array(
681
+ S.String,
682
+ ) as any as S.Schema<TeamUnitsList>;
683
+
684
+ export type TeamUnitsMapMap = { [key: string]: string | undefined };
685
+ export const TeamUnitsMapMap = /*@__PURE__*/ S.Record(
686
+ S.String,
687
+ S.String,
688
+ ) as any as S.Schema<TeamUnitsMapMap>;
689
+
690
+ /** Team represents a team in an organization */
691
+ export interface Team {
692
+ can_create_org_repo?: boolean;
693
+ description?: string;
694
+ id: number;
695
+ includes_all_repositories?: boolean;
696
+ name: string;
697
+ organization?: Organization;
698
+ permission?: TeamPermission;
699
+ units?: TeamUnitsList;
700
+ units_map?: TeamUnitsMapMap;
701
+ }
702
+ export const Team = /*@__PURE__*/ S.suspend(() =>
703
+ S.Struct({
704
+ can_create_org_repo: S.optional(S.Boolean),
705
+ description: S.optional(S.String),
706
+ id: S.Number,
707
+ includes_all_repositories: S.optional(S.Boolean),
708
+ name: S.String,
709
+ organization: S.optional(Organization),
710
+ permission: S.optional(TeamPermission),
711
+ units: S.optional(TeamUnitsList),
712
+ units_map: S.optional(TeamUnitsMapMap),
713
+ }),
714
+ ).annotate({ identifier: "Team" }) as any as S.Schema<Team>;
715
+
716
+ export type RepoTransferTeamsList = Array<Team>;
717
+ export const RepoTransferTeamsList = /*@__PURE__*/ S.Array(
718
+ Team,
719
+ ) as any as S.Schema<RepoTransferTeamsList>;
720
+
721
+ /** RepoTransfer represents a pending repo transfer */
722
+ export interface RepoTransfer {
723
+ doer?: User;
724
+ recipient?: User;
725
+ teams?: RepoTransferTeamsList;
726
+ }
727
+ export const RepoTransfer = /*@__PURE__*/ S.suspend(() =>
728
+ S.Struct({
729
+ doer: S.optional(User),
730
+ recipient: S.optional(User),
731
+ teams: S.optional(RepoTransferTeamsList),
732
+ }),
733
+ ).annotate({ identifier: "RepoTransfer" }) as any as S.Schema<RepoTransfer>;
734
+
735
+ export type RepositoryTopicsList = Array<string>;
736
+ export const RepositoryTopicsList = /*@__PURE__*/ S.Array(
737
+ S.String,
738
+ ) as any as S.Schema<RepositoryTopicsList>;
739
+
740
+ /** Repository represents a repository */
741
+ export interface Repository {
742
+ allow_fast_forward_only_merge?: boolean;
743
+ allow_merge_commits?: boolean;
744
+ allow_rebase?: boolean;
745
+ allow_rebase_explicit?: boolean;
746
+ allow_rebase_update?: boolean;
747
+ allow_squash_merge?: boolean;
748
+ archived?: boolean;
749
+ archived_at?: string;
750
+ avatar_url?: string;
751
+ clone_url: string;
752
+ created_at: string;
753
+ default_allow_maintainer_edit?: boolean;
754
+ default_branch: string;
755
+ default_delete_branch_after_merge?: boolean;
756
+ default_merge_style?: string;
757
+ default_update_style?: string;
758
+ description?: string;
759
+ empty?: boolean;
760
+ external_tracker?: ExternalTracker;
761
+ external_wiki?: ExternalWiki;
762
+ fork?: boolean;
763
+ forks_count?: number;
764
+ full_name: string;
765
+ globally_editable_wiki?: boolean;
766
+ has_actions?: boolean;
767
+ has_issues?: boolean;
768
+ has_packages?: boolean;
769
+ has_projects?: boolean;
770
+ has_pull_requests?: boolean;
771
+ has_releases?: boolean;
772
+ /** is the wiki enabled */
773
+ has_wiki?: boolean;
774
+ /** have wiki pages ever been created */
775
+ has_wiki_contents?: boolean;
776
+ html_url: string;
777
+ id: number;
778
+ ignore_whitespace_conflicts?: boolean;
779
+ internal?: boolean;
780
+ internal_tracker?: InternalTracker;
781
+ language?: string;
782
+ languages_url?: string;
783
+ link?: string;
784
+ mirror?: boolean;
785
+ mirror_interval?: string;
786
+ mirror_updated?: string;
787
+ name: string;
788
+ /** ObjectFormatName of the underlying git repository */
789
+ object_format_name?: RepositoryObjectFormatName;
790
+ open_issues_count?: number;
791
+ open_pr_counter?: number;
792
+ original_url?: string;
793
+ owner: User;
794
+ parent?: Repository;
795
+ permissions?: Permission;
796
+ private?: boolean;
797
+ release_counter?: number;
798
+ repo_transfer?: RepoTransfer;
799
+ size?: number;
800
+ ssh_url: string;
801
+ stars_count?: number;
802
+ template?: boolean;
803
+ topics?: RepositoryTopicsList;
804
+ updated_at: string;
805
+ url?: string;
806
+ watchers_count?: number;
807
+ website?: string;
808
+ wiki_branch?: string;
809
+ wiki_clone_url?: string;
810
+ wiki_ssh_url?: string;
811
+ }
812
+ export const Repository = /*@__PURE__*/ S.suspend(() =>
813
+ S.Struct({
814
+ allow_fast_forward_only_merge: S.optional(S.Boolean),
815
+ allow_merge_commits: S.optional(S.Boolean),
816
+ allow_rebase: S.optional(S.Boolean),
817
+ allow_rebase_explicit: S.optional(S.Boolean),
818
+ allow_rebase_update: S.optional(S.Boolean),
819
+ allow_squash_merge: S.optional(S.Boolean),
820
+ archived: S.optional(S.Boolean),
821
+ archived_at: S.optional(S.String),
822
+ avatar_url: S.optional(S.String),
823
+ clone_url: S.String,
824
+ created_at: S.String,
825
+ default_allow_maintainer_edit: S.optional(S.Boolean),
826
+ default_branch: S.String,
827
+ default_delete_branch_after_merge: S.optional(S.Boolean),
828
+ default_merge_style: S.optional(S.String),
829
+ default_update_style: S.optional(S.String),
830
+ description: S.optional(S.String),
831
+ empty: S.optional(S.Boolean),
832
+ external_tracker: S.optional(ExternalTracker),
833
+ external_wiki: S.optional(ExternalWiki),
834
+ fork: S.optional(S.Boolean),
835
+ forks_count: S.optional(S.Number),
836
+ full_name: S.String,
837
+ globally_editable_wiki: S.optional(S.Boolean),
838
+ has_actions: S.optional(S.Boolean),
839
+ has_issues: S.optional(S.Boolean),
840
+ has_packages: S.optional(S.Boolean),
841
+ has_projects: S.optional(S.Boolean),
842
+ has_pull_requests: S.optional(S.Boolean),
843
+ has_releases: S.optional(S.Boolean),
844
+ has_wiki: S.optional(S.Boolean),
845
+ has_wiki_contents: S.optional(S.Boolean),
846
+ html_url: S.String,
847
+ id: S.Number,
848
+ ignore_whitespace_conflicts: S.optional(S.Boolean),
849
+ internal: S.optional(S.Boolean),
850
+ internal_tracker: S.optional(InternalTracker),
851
+ language: S.optional(S.String),
852
+ languages_url: S.optional(S.String),
853
+ link: S.optional(S.String),
854
+ mirror: S.optional(S.Boolean),
855
+ mirror_interval: S.optional(S.String),
856
+ mirror_updated: S.optional(S.String),
857
+ name: S.String,
858
+ object_format_name: S.optional(RepositoryObjectFormatName),
859
+ open_issues_count: S.optional(S.Number),
860
+ open_pr_counter: S.optional(S.Number),
861
+ original_url: S.optional(S.String),
862
+ owner: User,
863
+ parent: S.optional(Repository),
864
+ permissions: S.optional(Permission),
865
+ private: S.optional(S.Boolean),
866
+ release_counter: S.optional(S.Number),
867
+ repo_transfer: S.optional(RepoTransfer),
868
+ size: S.optional(S.Number),
869
+ ssh_url: S.String,
870
+ stars_count: S.optional(S.Number),
871
+ template: S.optional(S.Boolean),
872
+ topics: S.optional(RepositoryTopicsList),
873
+ updated_at: S.String,
874
+ url: S.optional(S.String),
875
+ watchers_count: S.optional(S.Number),
876
+ website: S.optional(S.String),
877
+ wiki_branch: S.optional(S.String),
878
+ wiki_clone_url: S.optional(S.String),
879
+ wiki_ssh_url: S.optional(S.String),
880
+ }),
881
+ ).annotate({ identifier: "Repository" }) as any as S.Schema<Repository>;
882
+
883
+ export interface AdminCreateUserRequest {
884
+ /** For explicitly setting the user creation timestamp. Useful when users are migrated from other systems. When omitted, the user's creation timestamp will be set to "now". */
885
+ created_at?: string;
886
+ email: string;
887
+ full_name?: string;
888
+ login_name?: string;
889
+ must_change_password?: boolean;
890
+ password?: string | Redacted.Redacted<string>;
891
+ restricted?: boolean;
892
+ send_notify?: boolean;
893
+ source_id?: number;
894
+ username: string;
895
+ visibility?: string;
896
+ }
897
+ export const AdminCreateUserRequest = /*@__PURE__*/ S.suspend(() =>
898
+ S.Struct({
899
+ created_at: S.optional(S.String),
900
+ email: S.String,
901
+ full_name: S.optional(S.String),
902
+ login_name: S.optional(S.String),
903
+ must_change_password: S.optional(S.Boolean),
904
+ password: S.optional(S.String.pipe(T.SensitiveValue({}))),
905
+ restricted: S.optional(S.Boolean),
906
+ send_notify: S.optional(S.Boolean),
907
+ source_id: S.optional(S.Number),
908
+ username: S.String,
909
+ visibility: S.optional(S.String),
910
+ }).pipe(T.Http({ method: "POST", uri: "/admin/users", code: 200 })),
911
+ ).annotate({
912
+ identifier: "AdminCreateUserRequest",
913
+ }) as any as S.Schema<AdminCreateUserRequest>;
914
+
915
+ export interface RepoTargetOption {
916
+ /** Name of repository */
917
+ name: string;
918
+ /** Name of user or organisation that owns the repository */
919
+ owner: string;
920
+ }
921
+ export const RepoTargetOption = /*@__PURE__*/ S.suspend(() =>
922
+ S.Struct({
923
+ name: S.String,
924
+ owner: S.String,
925
+ }),
926
+ ).annotate({
927
+ identifier: "RepoTargetOption",
928
+ }) as any as S.Schema<RepoTargetOption>;
929
+
930
+ /** If provided and not-empty, creates an access token with access only to specified repositories. */
931
+ export type AdminCreateUserAccessTokenRequestRepositoriesList =
932
+ Array<RepoTargetOption>;
933
+ export const AdminCreateUserAccessTokenRequestRepositoriesList =
934
+ /*@__PURE__*/ S.Array(
935
+ RepoTargetOption,
936
+ ) as any as S.Schema<AdminCreateUserAccessTokenRequestRepositoriesList>;
937
+
938
+ export type AdminCreateUserAccessTokenRequestScopesList = Array<string>;
939
+ export const AdminCreateUserAccessTokenRequestScopesList =
940
+ /*@__PURE__*/ S.Array(
941
+ S.String,
942
+ ) as any as S.Schema<AdminCreateUserAccessTokenRequestScopesList>;
943
+
944
+ export interface AdminCreateUserAccessTokenRequest {
945
+ /** username of user */
946
+ username: string;
947
+ name: string;
948
+ /** If provided and not-empty, creates an access token with access only to specified repositories. */
949
+ repositories?: AdminCreateUserAccessTokenRequestRepositoriesList;
950
+ scopes?: AdminCreateUserAccessTokenRequestScopesList;
951
+ }
952
+ export const AdminCreateUserAccessTokenRequest = /*@__PURE__*/ S.suspend(() =>
953
+ S.Struct({
954
+ username: S.String.pipe(T.Label()),
955
+ name: S.String,
956
+ repositories: S.optional(AdminCreateUserAccessTokenRequestRepositoriesList),
957
+ scopes: S.optional(AdminCreateUserAccessTokenRequestScopesList),
958
+ }).pipe(
959
+ T.Http({
960
+ method: "POST",
961
+ uri: "/admin/users/{username}/tokens",
962
+ code: 200,
963
+ }),
964
+ ),
965
+ ).annotate({
966
+ identifier: "AdminCreateUserAccessTokenRequest",
967
+ }) as any as S.Schema<AdminCreateUserAccessTokenRequest>;
968
+
969
+ /** RepositoryMeta basic repository information */
970
+ export interface RepositoryMeta {
971
+ full_name?: string;
972
+ id?: number;
973
+ name?: string;
974
+ owner?: string;
975
+ }
976
+ export const RepositoryMeta = /*@__PURE__*/ S.suspend(() =>
977
+ S.Struct({
978
+ full_name: S.optional(S.String),
979
+ id: S.optional(S.Number),
980
+ name: S.optional(S.String),
981
+ owner: S.optional(S.String),
982
+ }),
983
+ ).annotate({ identifier: "RepositoryMeta" }) as any as S.Schema<RepositoryMeta>;
984
+
985
+ /** Indicates that an access token only has access to the specified repositories. Will be null if the access token is not limited to a set of specified repositories. */
986
+ export type AccessTokenRepositoriesList = Array<RepositoryMeta>;
987
+ export const AccessTokenRepositoriesList = /*@__PURE__*/ S.Array(
988
+ RepositoryMeta,
989
+ ) as any as S.Schema<AccessTokenRepositoriesList>;
990
+
991
+ export type AccessTokenScopesList = Array<string>;
992
+ export const AccessTokenScopesList = /*@__PURE__*/ S.Array(
993
+ S.String,
994
+ ) as any as S.Schema<AccessTokenScopesList>;
995
+
996
+ export interface AccessToken {
997
+ created_at: string;
998
+ id: number;
999
+ name: string;
1000
+ /** Indicates that an access token only has access to the specified repositories. Will be null if the access token is not limited to a set of specified repositories. */
1001
+ repositories?: AccessTokenRepositoriesList;
1002
+ scopes?: AccessTokenScopesList;
1003
+ sha1?: string | Redacted.Redacted<string>;
1004
+ token_last_eight: string;
1005
+ }
1006
+ export const AccessToken = /*@__PURE__*/ S.suspend(() =>
1007
+ S.Struct({
1008
+ created_at: S.String,
1009
+ id: S.Number,
1010
+ name: S.String,
1011
+ repositories: S.optional(AccessTokenRepositoriesList),
1012
+ scopes: S.optional(AccessTokenScopesList),
1013
+ sha1: S.optional(S.String.pipe(T.SensitiveValue({}))),
1014
+ token_last_eight: S.String,
1015
+ }),
1016
+ ).annotate({ identifier: "AccessToken" }) as any as S.Schema<AccessToken>;
1017
+
1018
+ export interface AdminDeleteHookRequest {
1019
+ /** id of the hook to delete */
1020
+ id: number;
1021
+ }
1022
+ export const AdminDeleteHookRequest = /*@__PURE__*/ S.suspend(() =>
1023
+ S.Struct({
1024
+ id: S.Number.pipe(T.Label()),
1025
+ }).pipe(T.Http({ method: "DELETE", uri: "/admin/hooks/{id}", code: 200 })),
1026
+ ).annotate({
1027
+ identifier: "AdminDeleteHookRequest",
1028
+ }) as any as S.Schema<AdminDeleteHookRequest>;
1029
+
1030
+ export interface AdminDeleteHookResponse {}
1031
+ export const AdminDeleteHookResponse = /*@__PURE__*/ S.suspend(() =>
1032
+ S.Struct({}),
1033
+ ).annotate({
1034
+ identifier: "AdminDeleteHookResponse",
1035
+ }) as any as S.Schema<AdminDeleteHookResponse>;
1036
+
1037
+ export interface AdminDeleteQuotaGroupRequest {
1038
+ /** quota group to delete */
1039
+ quotagroup: string;
1040
+ }
1041
+ export const AdminDeleteQuotaGroupRequest = /*@__PURE__*/ S.suspend(() =>
1042
+ S.Struct({
1043
+ quotagroup: S.String.pipe(T.Label()),
1044
+ }).pipe(
1045
+ T.Http({
1046
+ method: "DELETE",
1047
+ uri: "/admin/quota/groups/{quotagroup}",
1048
+ code: 200,
1049
+ }),
1050
+ ),
1051
+ ).annotate({
1052
+ identifier: "AdminDeleteQuotaGroupRequest",
1053
+ }) as any as S.Schema<AdminDeleteQuotaGroupRequest>;
1054
+
1055
+ export interface AdminDeleteQuotaGroupResponse {}
1056
+ export const AdminDeleteQuotaGroupResponse = /*@__PURE__*/ S.suspend(() =>
1057
+ S.Struct({}),
1058
+ ).annotate({
1059
+ identifier: "AdminDeleteQuotaGroupResponse",
1060
+ }) as any as S.Schema<AdminDeleteQuotaGroupResponse>;
1061
+
1062
+ export interface AdminDeleteQuotaRuleRequest {
1063
+ /** quota rule to delete */
1064
+ quotarule: string;
1065
+ }
1066
+ export const AdminDeleteQuotaRuleRequest = /*@__PURE__*/ S.suspend(() =>
1067
+ S.Struct({
1068
+ quotarule: S.String.pipe(T.Label()),
1069
+ }).pipe(
1070
+ T.Http({
1071
+ method: "DELETE",
1072
+ uri: "/admin/quota/rules/{quotarule}",
1073
+ code: 200,
1074
+ }),
1075
+ ),
1076
+ ).annotate({
1077
+ identifier: "AdminDeleteQuotaRuleRequest",
1078
+ }) as any as S.Schema<AdminDeleteQuotaRuleRequest>;
1079
+
1080
+ export interface AdminDeleteQuotaRuleResponse {}
1081
+ export const AdminDeleteQuotaRuleResponse = /*@__PURE__*/ S.suspend(() =>
1082
+ S.Struct({}),
1083
+ ).annotate({
1084
+ identifier: "AdminDeleteQuotaRuleResponse",
1085
+ }) as any as S.Schema<AdminDeleteQuotaRuleResponse>;
1086
+
1087
+ export interface AdminDeleteUnadoptedRepositoryRequest {
1088
+ /** owner of the repo */
1089
+ owner: string;
1090
+ /** name of the repo */
1091
+ repo: string;
1092
+ }
1093
+ export const AdminDeleteUnadoptedRepositoryRequest = /*@__PURE__*/ S.suspend(
1094
+ () =>
1095
+ S.Struct({
1096
+ owner: S.String.pipe(T.Label()),
1097
+ repo: S.String.pipe(T.Label()),
1098
+ }).pipe(
1099
+ T.Http({
1100
+ method: "DELETE",
1101
+ uri: "/admin/unadopted/{owner}/{repo}",
1102
+ code: 200,
1103
+ }),
1104
+ ),
1105
+ ).annotate({
1106
+ identifier: "AdminDeleteUnadoptedRepositoryRequest",
1107
+ }) as any as S.Schema<AdminDeleteUnadoptedRepositoryRequest>;
1108
+
1109
+ export interface AdminDeleteUnadoptedRepositoryResponse {}
1110
+ export const AdminDeleteUnadoptedRepositoryResponse = /*@__PURE__*/ S.suspend(
1111
+ () => S.Struct({}),
1112
+ ).annotate({
1113
+ identifier: "AdminDeleteUnadoptedRepositoryResponse",
1114
+ }) as any as S.Schema<AdminDeleteUnadoptedRepositoryResponse>;
1115
+
1116
+ export interface AdminDeleteUserRequest {
1117
+ /** username of user to delete */
1118
+ username: string;
1119
+ /** purge the user from the system completely */
1120
+ purge?: boolean;
1121
+ }
1122
+ export const AdminDeleteUserRequest = /*@__PURE__*/ S.suspend(() =>
1123
+ S.Struct({
1124
+ username: S.String.pipe(T.Label()),
1125
+ purge: S.optional(S.Boolean.pipe(T.Query())),
1126
+ }).pipe(
1127
+ T.Http({ method: "DELETE", uri: "/admin/users/{username}", code: 200 }),
1128
+ ),
1129
+ ).annotate({
1130
+ identifier: "AdminDeleteUserRequest",
1131
+ }) as any as S.Schema<AdminDeleteUserRequest>;
1132
+
1133
+ export interface AdminDeleteUserResponse {}
1134
+ export const AdminDeleteUserResponse = /*@__PURE__*/ S.suspend(() =>
1135
+ S.Struct({}),
1136
+ ).annotate({
1137
+ identifier: "AdminDeleteUserResponse",
1138
+ }) as any as S.Schema<AdminDeleteUserResponse>;
1139
+
1140
+ export interface AdminDeleteUserAccessTokenRequest {
1141
+ /** username of user */
1142
+ username: string;
1143
+ /** token to be deleted, identified by ID and if not available by name */
1144
+ token: string;
1145
+ }
1146
+ export const AdminDeleteUserAccessTokenRequest = /*@__PURE__*/ S.suspend(() =>
1147
+ S.Struct({
1148
+ username: S.String.pipe(T.Label()),
1149
+ token: S.String.pipe(T.Label()),
1150
+ }).pipe(
1151
+ T.Http({
1152
+ method: "DELETE",
1153
+ uri: "/admin/users/{username}/tokens/{token}",
1154
+ code: 200,
1155
+ }),
1156
+ ),
1157
+ ).annotate({
1158
+ identifier: "AdminDeleteUserAccessTokenRequest",
1159
+ }) as any as S.Schema<AdminDeleteUserAccessTokenRequest>;
1160
+
1161
+ export interface AdminDeleteUserAccessTokenResponse {}
1162
+ export const AdminDeleteUserAccessTokenResponse = /*@__PURE__*/ S.suspend(() =>
1163
+ S.Struct({}),
1164
+ ).annotate({
1165
+ identifier: "AdminDeleteUserAccessTokenResponse",
1166
+ }) as any as S.Schema<AdminDeleteUserAccessTokenResponse>;
1167
+
1168
+ /** email addresses to delete */
1169
+ export type AdminDeleteUserEmailsRequestEmailsList = Array<string>;
1170
+ export const AdminDeleteUserEmailsRequestEmailsList = /*@__PURE__*/ S.Array(
1171
+ S.String,
1172
+ ) as any as S.Schema<AdminDeleteUserEmailsRequestEmailsList>;
1173
+
1174
+ export interface AdminDeleteUserEmailsRequest {
1175
+ /** username of user to delete email addresses from */
1176
+ username: string;
1177
+ /** email addresses to delete */
1178
+ emails?: AdminDeleteUserEmailsRequestEmailsList;
1179
+ }
1180
+ export const AdminDeleteUserEmailsRequest = /*@__PURE__*/ S.suspend(() =>
1181
+ S.Struct({
1182
+ username: S.String.pipe(T.Label()),
1183
+ emails: S.optional(AdminDeleteUserEmailsRequestEmailsList),
1184
+ }).pipe(
1185
+ T.Http({
1186
+ method: "DELETE",
1187
+ uri: "/admin/users/{username}/emails",
1188
+ code: 200,
1189
+ }),
1190
+ ),
1191
+ ).annotate({
1192
+ identifier: "AdminDeleteUserEmailsRequest",
1193
+ }) as any as S.Schema<AdminDeleteUserEmailsRequest>;
1194
+
1195
+ export interface AdminDeleteUserEmailsResponse {}
1196
+ export const AdminDeleteUserEmailsResponse = /*@__PURE__*/ S.suspend(() =>
1197
+ S.Struct({}),
1198
+ ).annotate({
1199
+ identifier: "AdminDeleteUserEmailsResponse",
1200
+ }) as any as S.Schema<AdminDeleteUserEmailsResponse>;
1201
+
1202
+ export interface AdminDeleteUserPublicKeyRequest {
1203
+ /** username of user */
1204
+ username: string;
1205
+ /** id of the key to delete */
1206
+ id: number;
1207
+ }
1208
+ export const AdminDeleteUserPublicKeyRequest = /*@__PURE__*/ S.suspend(() =>
1209
+ S.Struct({
1210
+ username: S.String.pipe(T.Label()),
1211
+ id: S.Number.pipe(T.Label()),
1212
+ }).pipe(
1213
+ T.Http({
1214
+ method: "DELETE",
1215
+ uri: "/admin/users/{username}/keys/{id}",
1216
+ code: 200,
1217
+ }),
1218
+ ),
1219
+ ).annotate({
1220
+ identifier: "AdminDeleteUserPublicKeyRequest",
1221
+ }) as any as S.Schema<AdminDeleteUserPublicKeyRequest>;
1222
+
1223
+ export interface AdminDeleteUserPublicKeyResponse {}
1224
+ export const AdminDeleteUserPublicKeyResponse = /*@__PURE__*/ S.suspend(() =>
1225
+ S.Struct({}),
1226
+ ).annotate({
1227
+ identifier: "AdminDeleteUserPublicKeyResponse",
1228
+ }) as any as S.Schema<AdminDeleteUserPublicKeyResponse>;
1229
+
1230
+ export type AdminEditHookRequestConfigMap = {
1231
+ [key: string]: string | undefined;
1232
+ };
1233
+ export const AdminEditHookRequestConfigMap = /*@__PURE__*/ S.Record(
1234
+ S.String,
1235
+ S.String,
1236
+ ) as any as S.Schema<AdminEditHookRequestConfigMap>;
1237
+
1238
+ export type AdminEditHookRequestEventsList = Array<string>;
1239
+ export const AdminEditHookRequestEventsList = /*@__PURE__*/ S.Array(
1240
+ S.String,
1241
+ ) as any as S.Schema<AdminEditHookRequestEventsList>;
1242
+
1243
+ export interface AdminEditHookRequest {
1244
+ /** id of the hook to update */
1245
+ id: number;
1246
+ active?: boolean;
1247
+ authorization_header?: string;
1248
+ branch_filter?: string;
1249
+ config?: AdminEditHookRequestConfigMap;
1250
+ events?: AdminEditHookRequestEventsList;
1251
+ }
1252
+ export const AdminEditHookRequest = /*@__PURE__*/ S.suspend(() =>
1253
+ S.Struct({
1254
+ id: S.Number.pipe(T.Label()),
1255
+ active: S.optional(S.Boolean),
1256
+ authorization_header: S.optional(S.String),
1257
+ branch_filter: S.optional(S.String),
1258
+ config: S.optional(AdminEditHookRequestConfigMap),
1259
+ events: S.optional(AdminEditHookRequestEventsList),
1260
+ }).pipe(T.Http({ method: "PATCH", uri: "/admin/hooks/{id}", code: 200 })),
1261
+ ).annotate({
1262
+ identifier: "AdminEditHookRequest",
1263
+ }) as any as S.Schema<AdminEditHookRequest>;
1264
+
1265
+ /** The subjects affected by the rule */
1266
+ export type AdminEditQuotaRuleRequestSubjectsList = Array<string>;
1267
+ export const AdminEditQuotaRuleRequestSubjectsList = /*@__PURE__*/ S.Array(
1268
+ S.String,
1269
+ ) as any as S.Schema<AdminEditQuotaRuleRequestSubjectsList>;
1270
+
1271
+ export interface AdminEditQuotaRuleRequest {
1272
+ /** Quota rule to change */
1273
+ quotarule: string;
1274
+ /** The limit set by the rule */
1275
+ limit?: number;
1276
+ /** The subjects affected by the rule */
1277
+ subjects?: AdminEditQuotaRuleRequestSubjectsList;
1278
+ }
1279
+ export const AdminEditQuotaRuleRequest = /*@__PURE__*/ S.suspend(() =>
1280
+ S.Struct({
1281
+ quotarule: S.String.pipe(T.Label()),
1282
+ limit: S.optional(S.Number),
1283
+ subjects: S.optional(AdminEditQuotaRuleRequestSubjectsList),
1284
+ }).pipe(
1285
+ T.Http({
1286
+ method: "PATCH",
1287
+ uri: "/admin/quota/rules/{quotarule}",
1288
+ code: 200,
1289
+ }),
1290
+ ),
1291
+ ).annotate({
1292
+ identifier: "AdminEditQuotaRuleRequest",
1293
+ }) as any as S.Schema<AdminEditQuotaRuleRequest>;
1294
+
1295
+ export interface AdminEditUserRequest {
1296
+ /** username of user to edit */
1297
+ username: string;
1298
+ active?: boolean;
1299
+ admin?: boolean;
1300
+ allow_create_organization?: boolean;
1301
+ allow_git_hook?: boolean;
1302
+ allow_import_local?: boolean;
1303
+ description?: string;
1304
+ email?: string;
1305
+ full_name?: string;
1306
+ hide_email?: boolean;
1307
+ location?: string;
1308
+ login_name?: string;
1309
+ max_repo_creation?: number;
1310
+ must_change_password?: boolean;
1311
+ password?: string | Redacted.Redacted<string>;
1312
+ prohibit_login?: boolean;
1313
+ pronouns?: string;
1314
+ restricted?: boolean;
1315
+ source_id?: number;
1316
+ visibility?: string;
1317
+ website?: string;
1318
+ }
1319
+ export const AdminEditUserRequest = /*@__PURE__*/ S.suspend(() =>
1320
+ S.Struct({
1321
+ username: S.String.pipe(T.Label()),
1322
+ active: S.optional(S.Boolean),
1323
+ admin: S.optional(S.Boolean),
1324
+ allow_create_organization: S.optional(S.Boolean),
1325
+ allow_git_hook: S.optional(S.Boolean),
1326
+ allow_import_local: S.optional(S.Boolean),
1327
+ description: S.optional(S.String),
1328
+ email: S.optional(S.String),
1329
+ full_name: S.optional(S.String),
1330
+ hide_email: S.optional(S.Boolean),
1331
+ location: S.optional(S.String),
1332
+ login_name: S.optional(S.String),
1333
+ max_repo_creation: S.optional(S.Number),
1334
+ must_change_password: S.optional(S.Boolean),
1335
+ password: S.optional(S.String.pipe(T.SensitiveValue({}))),
1336
+ prohibit_login: S.optional(S.Boolean),
1337
+ pronouns: S.optional(S.String),
1338
+ restricted: S.optional(S.Boolean),
1339
+ source_id: S.optional(S.Number),
1340
+ visibility: S.optional(S.String),
1341
+ website: S.optional(S.String),
1342
+ }).pipe(
1343
+ T.Http({ method: "PATCH", uri: "/admin/users/{username}", code: 200 }),
1344
+ ),
1345
+ ).annotate({
1346
+ identifier: "AdminEditUserRequest",
1347
+ }) as any as S.Schema<AdminEditUserRequest>;
1348
+
1349
+ export interface AdminGetActionRunJobsRequest {
1350
+ /** a comma separated list of labels to search for */
1351
+ labels?: string;
1352
+ }
1353
+ export const AdminGetActionRunJobsRequest = /*@__PURE__*/ S.suspend(() =>
1354
+ S.Struct({
1355
+ labels: S.optional(S.String.pipe(T.Query())),
1356
+ }).pipe(
1357
+ T.Http({ method: "GET", uri: "/admin/actions/runners/jobs", code: 200 }),
1358
+ ),
1359
+ ).annotate({
1360
+ identifier: "AdminGetActionRunJobsRequest",
1361
+ }) as any as S.Schema<AdminGetActionRunJobsRequest>;
1362
+
1363
+ /** the action run job needed ids */
1364
+ export type ActionRunJobNeedsList = Array<string>;
1365
+ export const ActionRunJobNeedsList = /*@__PURE__*/ S.Array(
1366
+ S.String,
1367
+ ) as any as S.Schema<ActionRunJobNeedsList>;
1368
+
1369
+ /** the action run job labels to run on */
1370
+ export type ActionRunJobRunsOnList = Array<string>;
1371
+ export const ActionRunJobRunsOnList = /*@__PURE__*/ S.Array(
1372
+ S.String,
1373
+ ) as any as S.Schema<ActionRunJobRunsOnList>;
1374
+
1375
+ /** ActionRunJob represents a job of a run */
1376
+ export interface ActionRunJob {
1377
+ /** How many times the job has been attempted including the current attempt. */
1378
+ attempt?: number;
1379
+ /** Opaque identifier that uniquely identifies a single attempt of a job. */
1380
+ handle?: string;
1381
+ /** Identifier of this job. */
1382
+ id?: number;
1383
+ /** the action run job name */
1384
+ name?: string;
1385
+ /** the action run job needed ids */
1386
+ needs?: ActionRunJobNeedsList;
1387
+ /** the owner id */
1388
+ owner_id?: number;
1389
+ /** the repository id */
1390
+ repo_id?: number;
1391
+ /** Identifier of the workflow run this job belongs to. */
1392
+ run_id?: number;
1393
+ /** the action run job labels to run on */
1394
+ runs_on?: ActionRunJobRunsOnList;
1395
+ /** the action run job status */
1396
+ status?: string;
1397
+ /** the action run job latest task id */
1398
+ task_id?: number;
1399
+ }
1400
+ export const ActionRunJob = /*@__PURE__*/ S.suspend(() =>
1401
+ S.Struct({
1402
+ attempt: S.optional(S.Number),
1403
+ handle: S.optional(S.String),
1404
+ id: S.optional(S.Number),
1405
+ name: S.optional(S.String),
1406
+ needs: S.optional(ActionRunJobNeedsList),
1407
+ owner_id: S.optional(S.Number),
1408
+ repo_id: S.optional(S.Number),
1409
+ run_id: S.optional(S.Number),
1410
+ runs_on: S.optional(ActionRunJobRunsOnList),
1411
+ status: S.optional(S.String),
1412
+ task_id: S.optional(S.Number),
1413
+ }),
1414
+ ).annotate({ identifier: "ActionRunJob" }) as any as S.Schema<ActionRunJob>;
1415
+
1416
+ export type AdminGetActionRunJobsResponseBodyList = Array<ActionRunJob>;
1417
+ export const AdminGetActionRunJobsResponseBodyList = /*@__PURE__*/ S.Array(
1418
+ ActionRunJob,
1419
+ ) as any as S.Schema<AdminGetActionRunJobsResponseBodyList>;
1420
+
1421
+ export type AdminGetActionRunJobsResponse =
1422
+ AdminGetActionRunJobsResponseBodyList;
1423
+ export const AdminGetActionRunJobsResponse = /*@__PURE__*/ S.suspend(() =>
1424
+ AdminGetActionRunJobsResponseBodyList.pipe(T.RawResponseRoot()),
1425
+ ).annotate({
1426
+ identifier: "AdminGetActionRunJobsResponse",
1427
+ }) as any as S.Schema<AdminGetActionRunJobsResponse>;
1428
+
1429
+ export interface AdminGetAllEmailsRequest {
1430
+ /** page number of results to return (1-based) */
1431
+ page?: number;
1432
+ /** page size of results */
1433
+ limit?: number;
1434
+ }
1435
+ export const AdminGetAllEmailsRequest = /*@__PURE__*/ S.suspend(() =>
1436
+ S.Struct({
1437
+ page: S.optional(S.Number.pipe(T.Query())),
1438
+ limit: S.optional(S.Number.pipe(T.Query())),
1439
+ }).pipe(T.Http({ method: "GET", uri: "/admin/emails", code: 200 })),
1440
+ ).annotate({
1441
+ identifier: "AdminGetAllEmailsRequest",
1442
+ }) as any as S.Schema<AdminGetAllEmailsRequest>;
1443
+
1444
+ /** Email an email address belonging to a user */
1445
+ export interface Email {
1446
+ email?: string;
1447
+ primary?: boolean;
1448
+ user_id?: number;
1449
+ username?: string;
1450
+ verified?: boolean;
1451
+ }
1452
+ export const Email = /*@__PURE__*/ S.suspend(() =>
1453
+ S.Struct({
1454
+ email: S.optional(S.String),
1455
+ primary: S.optional(S.Boolean),
1456
+ user_id: S.optional(S.Number),
1457
+ username: S.optional(S.String),
1458
+ verified: S.optional(S.Boolean),
1459
+ }),
1460
+ ).annotate({ identifier: "Email" }) as any as S.Schema<Email>;
1461
+
1462
+ export type AdminGetAllEmailsResponseBodyList = Array<Email>;
1463
+ export const AdminGetAllEmailsResponseBodyList = /*@__PURE__*/ S.Array(
1464
+ Email,
1465
+ ) as any as S.Schema<AdminGetAllEmailsResponseBodyList>;
1466
+
1467
+ export type AdminGetAllEmailsResponse = AdminGetAllEmailsResponseBodyList;
1468
+ export const AdminGetAllEmailsResponse = /*@__PURE__*/ S.suspend(() =>
1469
+ AdminGetAllEmailsResponseBodyList.pipe(T.RawResponseRoot()),
1470
+ ).annotate({
1471
+ identifier: "AdminGetAllEmailsResponse",
1472
+ }) as any as S.Schema<AdminGetAllEmailsResponse>;
1473
+
1474
+ export interface AdminGetAllOrgsRequest {
1475
+ /** page number of results to return (1-based) */
1476
+ page?: number;
1477
+ /** page size of results */
1478
+ limit?: number;
1479
+ }
1480
+ export const AdminGetAllOrgsRequest = /*@__PURE__*/ S.suspend(() =>
1481
+ S.Struct({
1482
+ page: S.optional(S.Number.pipe(T.Query())),
1483
+ limit: S.optional(S.Number.pipe(T.Query())),
1484
+ }).pipe(T.Http({ method: "GET", uri: "/admin/orgs", code: 200 })),
1485
+ ).annotate({
1486
+ identifier: "AdminGetAllOrgsRequest",
1487
+ }) as any as S.Schema<AdminGetAllOrgsRequest>;
1488
+
1489
+ export type AdminGetAllOrgsResponseBodyList = Array<Organization>;
1490
+ export const AdminGetAllOrgsResponseBodyList = /*@__PURE__*/ S.Array(
1491
+ Organization,
1492
+ ) as any as S.Schema<AdminGetAllOrgsResponseBodyList>;
1493
+
1494
+ export type AdminGetAllOrgsResponse = AdminGetAllOrgsResponseBodyList;
1495
+ export const AdminGetAllOrgsResponse = /*@__PURE__*/ S.suspend(() =>
1496
+ AdminGetAllOrgsResponseBodyList.pipe(T.RawResponseRoot()),
1497
+ ).annotate({
1498
+ identifier: "AdminGetAllOrgsResponse",
1499
+ }) as any as S.Schema<AdminGetAllOrgsResponse>;
1500
+
1501
+ export interface AdminGetHookRequest {
1502
+ /** id of the hook to get */
1503
+ id: number;
1504
+ }
1505
+ export const AdminGetHookRequest = /*@__PURE__*/ S.suspend(() =>
1506
+ S.Struct({
1507
+ id: S.Number.pipe(T.Label()),
1508
+ }).pipe(T.Http({ method: "GET", uri: "/admin/hooks/{id}", code: 200 })),
1509
+ ).annotate({
1510
+ identifier: "AdminGetHookRequest",
1511
+ }) as any as S.Schema<AdminGetHookRequest>;
1512
+
1513
+ export interface AdminGetQuotaGroupRequest {
1514
+ /** quota group to query */
1515
+ quotagroup: string;
1516
+ }
1517
+ export const AdminGetQuotaGroupRequest = /*@__PURE__*/ S.suspend(() =>
1518
+ S.Struct({
1519
+ quotagroup: S.String.pipe(T.Label()),
1520
+ }).pipe(
1521
+ T.Http({
1522
+ method: "GET",
1523
+ uri: "/admin/quota/groups/{quotagroup}",
1524
+ code: 200,
1525
+ }),
1526
+ ),
1527
+ ).annotate({
1528
+ identifier: "AdminGetQuotaGroupRequest",
1529
+ }) as any as S.Schema<AdminGetQuotaGroupRequest>;
1530
+
1531
+ export interface AdminGetQuotaRuleRequest {
1532
+ /** quota rule to query */
1533
+ quotarule: string;
1534
+ }
1535
+ export const AdminGetQuotaRuleRequest = /*@__PURE__*/ S.suspend(() =>
1536
+ S.Struct({
1537
+ quotarule: S.String.pipe(T.Label()),
1538
+ }).pipe(
1539
+ T.Http({ method: "GET", uri: "/admin/quota/rules/{quotarule}", code: 200 }),
1540
+ ),
1541
+ ).annotate({
1542
+ identifier: "AdminGetQuotaRuleRequest",
1543
+ }) as any as S.Schema<AdminGetQuotaRuleRequest>;
1544
+
1545
+ export interface AdminGetUserQuotaRequest {
1546
+ /** username of user to query */
1547
+ username: string;
1548
+ }
1549
+ export const AdminGetUserQuotaRequest = /*@__PURE__*/ S.suspend(() =>
1550
+ S.Struct({
1551
+ username: S.String.pipe(T.Label()),
1552
+ }).pipe(
1553
+ T.Http({ method: "GET", uri: "/admin/users/{username}/quota", code: 200 }),
1554
+ ),
1555
+ ).annotate({
1556
+ identifier: "AdminGetUserQuotaRequest",
1557
+ }) as any as S.Schema<AdminGetUserQuotaRequest>;
1558
+
1559
+ /** QuotaGroupList represents a list of quota groups */
1560
+ export type QuotaGroupList = Array<QuotaGroup>;
1561
+ export const QuotaGroupList = /*@__PURE__*/ S.Array(
1562
+ QuotaGroup,
1563
+ ) as any as S.Schema<QuotaGroupList>;
1564
+
1565
+ /** QuotaUsedSizeAssetsAttachments represents the size-based attachment quota usage of a user */
1566
+ export interface QuotaUsedSizeAssetsAttachments {
1567
+ /** Storage size used for the user's issue & comment attachments */
1568
+ issues?: number;
1569
+ /** Storage size used for the user's release attachments */
1570
+ releases?: number;
1571
+ }
1572
+ export const QuotaUsedSizeAssetsAttachments = /*@__PURE__*/ S.suspend(() =>
1573
+ S.Struct({
1574
+ issues: S.optional(S.Number),
1575
+ releases: S.optional(S.Number),
1576
+ }),
1577
+ ).annotate({
1578
+ identifier: "QuotaUsedSizeAssetsAttachments",
1579
+ }) as any as S.Schema<QuotaUsedSizeAssetsAttachments>;
1580
+
1581
+ /** QuotaUsedSizeAssetsPackages represents the size-based package quota usage of a user */
1582
+ export interface QuotaUsedSizeAssetsPackages {
1583
+ /** Storage suze used for the user's packages */
1584
+ all?: number;
1585
+ }
1586
+ export const QuotaUsedSizeAssetsPackages = /*@__PURE__*/ S.suspend(() =>
1587
+ S.Struct({
1588
+ all: S.optional(S.Number),
1589
+ }),
1590
+ ).annotate({
1591
+ identifier: "QuotaUsedSizeAssetsPackages",
1592
+ }) as any as S.Schema<QuotaUsedSizeAssetsPackages>;
1593
+
1594
+ /** QuotaUsedSizeAssets represents the size-based asset usage of a user */
1595
+ export interface QuotaUsedSizeAssets {
1596
+ /** Storage size used for the user's artifacts */
1597
+ artifacts?: number;
1598
+ attachments?: QuotaUsedSizeAssetsAttachments;
1599
+ packages?: QuotaUsedSizeAssetsPackages;
1600
+ }
1601
+ export const QuotaUsedSizeAssets = /*@__PURE__*/ S.suspend(() =>
1602
+ S.Struct({
1603
+ artifacts: S.optional(S.Number),
1604
+ attachments: S.optional(QuotaUsedSizeAssetsAttachments),
1605
+ packages: S.optional(QuotaUsedSizeAssetsPackages),
1606
+ }),
1607
+ ).annotate({
1608
+ identifier: "QuotaUsedSizeAssets",
1609
+ }) as any as S.Schema<QuotaUsedSizeAssets>;
1610
+
1611
+ /** QuotaUsedSizeGit represents the size-based git (lfs) quota usage of a user */
1612
+ export interface QuotaUsedSizeGit {
1613
+ /** Storage size of the user's Git LFS objects */
1614
+ LFS?: number;
1615
+ }
1616
+ export const QuotaUsedSizeGit = /*@__PURE__*/ S.suspend(() =>
1617
+ S.Struct({
1618
+ LFS: S.optional(S.Number),
1619
+ }),
1620
+ ).annotate({
1621
+ identifier: "QuotaUsedSizeGit",
1622
+ }) as any as S.Schema<QuotaUsedSizeGit>;
1623
+
1624
+ /** QuotaUsedSizeRepos represents the size-based repository quota usage of a user */
1625
+ export interface QuotaUsedSizeRepos {
1626
+ /** Storage size of the user's private repositories */
1627
+ private?: number;
1628
+ /** Storage size of the user's public repositories */
1629
+ public?: number;
1630
+ }
1631
+ export const QuotaUsedSizeRepos = /*@__PURE__*/ S.suspend(() =>
1632
+ S.Struct({
1633
+ private: S.optional(S.Number),
1634
+ public: S.optional(S.Number),
1635
+ }),
1636
+ ).annotate({
1637
+ identifier: "QuotaUsedSizeRepos",
1638
+ }) as any as S.Schema<QuotaUsedSizeRepos>;
1639
+
1640
+ /** QuotaUsedSize represents the size-based quota usage of a user */
1641
+ export interface QuotaUsedSize {
1642
+ assets?: QuotaUsedSizeAssets;
1643
+ git?: QuotaUsedSizeGit;
1644
+ repos?: QuotaUsedSizeRepos;
1645
+ }
1646
+ export const QuotaUsedSize = /*@__PURE__*/ S.suspend(() =>
1647
+ S.Struct({
1648
+ assets: S.optional(QuotaUsedSizeAssets),
1649
+ git: S.optional(QuotaUsedSizeGit),
1650
+ repos: S.optional(QuotaUsedSizeRepos),
1651
+ }),
1652
+ ).annotate({ identifier: "QuotaUsedSize" }) as any as S.Schema<QuotaUsedSize>;
1653
+
1654
+ /** QuotaUsed represents the quota usage of a user */
1655
+ export interface QuotaUsed {
1656
+ size?: QuotaUsedSize;
1657
+ }
1658
+ export const QuotaUsed = /*@__PURE__*/ S.suspend(() =>
1659
+ S.Struct({
1660
+ size: S.optional(QuotaUsedSize),
1661
+ }),
1662
+ ).annotate({ identifier: "QuotaUsed" }) as any as S.Schema<QuotaUsed>;
1663
+
1664
+ /** QuotaInfo represents information about a user's quota */
1665
+ export interface QuotaInfo {
1666
+ groups?: QuotaGroupList;
1667
+ used?: QuotaUsed;
1668
+ }
1669
+ export const QuotaInfo = /*@__PURE__*/ S.suspend(() =>
1670
+ S.Struct({
1671
+ groups: S.optional(QuotaGroupList),
1672
+ used: S.optional(QuotaUsed),
1673
+ }),
1674
+ ).annotate({ identifier: "QuotaInfo" }) as any as S.Schema<QuotaInfo>;
1675
+
1676
+ export interface AdminListHooksRequest {
1677
+ /** page number of results to return (1-based) */
1678
+ page?: number;
1679
+ /** page size of results */
1680
+ limit?: number;
1681
+ }
1682
+ export const AdminListHooksRequest = /*@__PURE__*/ S.suspend(() =>
1683
+ S.Struct({
1684
+ page: S.optional(S.Number.pipe(T.Query())),
1685
+ limit: S.optional(S.Number.pipe(T.Query())),
1686
+ }).pipe(T.Http({ method: "GET", uri: "/admin/hooks", code: 200 })),
1687
+ ).annotate({
1688
+ identifier: "AdminListHooksRequest",
1689
+ }) as any as S.Schema<AdminListHooksRequest>;
1690
+
1691
+ export type AdminListHooksResponseBodyList = Array<Hook>;
1692
+ export const AdminListHooksResponseBodyList = /*@__PURE__*/ S.Array(
1693
+ Hook,
1694
+ ) as any as S.Schema<AdminListHooksResponseBodyList>;
1695
+
1696
+ export type AdminListHooksResponse = AdminListHooksResponseBodyList;
1697
+ export const AdminListHooksResponse = /*@__PURE__*/ S.suspend(() =>
1698
+ AdminListHooksResponseBodyList.pipe(T.RawResponseRoot()),
1699
+ ).annotate({
1700
+ identifier: "AdminListHooksResponse",
1701
+ }) as any as S.Schema<AdminListHooksResponse>;
1702
+
1703
+ export interface AdminListQuotaGroupsRequest {}
1704
+ export const AdminListQuotaGroupsRequest = /*@__PURE__*/ S.suspend(() =>
1705
+ S.Struct({}).pipe(
1706
+ T.Http({ method: "GET", uri: "/admin/quota/groups", code: 200 }),
1707
+ ),
1708
+ ).annotate({
1709
+ identifier: "AdminListQuotaGroupsRequest",
1710
+ }) as any as S.Schema<AdminListQuotaGroupsRequest>;
1711
+
1712
+ export type AdminListQuotaGroupsResponse = QuotaGroupList;
1713
+ export const AdminListQuotaGroupsResponse = /*@__PURE__*/ S.suspend(() =>
1714
+ QuotaGroupList.pipe(T.RawResponseRoot()),
1715
+ ).annotate({
1716
+ identifier: "AdminListQuotaGroupsResponse",
1717
+ }) as any as S.Schema<AdminListQuotaGroupsResponse>;
1718
+
1719
+ export interface AdminListQuotaRulesRequest {}
1720
+ export const AdminListQuotaRulesRequest = /*@__PURE__*/ S.suspend(() =>
1721
+ S.Struct({}).pipe(
1722
+ T.Http({ method: "GET", uri: "/admin/quota/rules", code: 200 }),
1723
+ ),
1724
+ ).annotate({
1725
+ identifier: "AdminListQuotaRulesRequest",
1726
+ }) as any as S.Schema<AdminListQuotaRulesRequest>;
1727
+
1728
+ export type AdminListQuotaRulesResponseBodyList = Array<QuotaRuleInfo>;
1729
+ export const AdminListQuotaRulesResponseBodyList = /*@__PURE__*/ S.Array(
1730
+ QuotaRuleInfo,
1731
+ ) as any as S.Schema<AdminListQuotaRulesResponseBodyList>;
1732
+
1733
+ export type AdminListQuotaRulesResponse = AdminListQuotaRulesResponseBodyList;
1734
+ export const AdminListQuotaRulesResponse = /*@__PURE__*/ S.suspend(() =>
1735
+ AdminListQuotaRulesResponseBodyList.pipe(T.RawResponseRoot()),
1736
+ ).annotate({
1737
+ identifier: "AdminListQuotaRulesResponse",
1738
+ }) as any as S.Schema<AdminListQuotaRulesResponse>;
1739
+
1740
+ export interface AdminListUserAccessTokensRequest {
1741
+ /** username of user */
1742
+ username: string;
1743
+ /** page number of results to return (1-based) */
1744
+ page?: number;
1745
+ /** page size of results */
1746
+ limit?: number;
1747
+ }
1748
+ export const AdminListUserAccessTokensRequest = /*@__PURE__*/ S.suspend(() =>
1749
+ S.Struct({
1750
+ username: S.String.pipe(T.Label()),
1751
+ page: S.optional(S.Number.pipe(T.Query())),
1752
+ limit: S.optional(S.Number.pipe(T.Query())),
1753
+ }).pipe(
1754
+ T.Http({ method: "GET", uri: "/admin/users/{username}/tokens", code: 200 }),
1755
+ ),
1756
+ ).annotate({
1757
+ identifier: "AdminListUserAccessTokensRequest",
1758
+ }) as any as S.Schema<AdminListUserAccessTokensRequest>;
1759
+
1760
+ export type AdminListUserAccessTokensResponseBodyList = Array<AccessToken>;
1761
+ export const AdminListUserAccessTokensResponseBodyList = /*@__PURE__*/ S.Array(
1762
+ AccessToken,
1763
+ ) as any as S.Schema<AdminListUserAccessTokensResponseBodyList>;
1764
+
1765
+ export type AdminListUserAccessTokensResponse =
1766
+ AdminListUserAccessTokensResponseBodyList;
1767
+ export const AdminListUserAccessTokensResponse = /*@__PURE__*/ S.suspend(() =>
1768
+ AdminListUserAccessTokensResponseBodyList.pipe(T.RawResponseRoot()),
1769
+ ).annotate({
1770
+ identifier: "AdminListUserAccessTokensResponse",
1771
+ }) as any as S.Schema<AdminListUserAccessTokensResponse>;
1772
+
1773
+ export interface AdminListUserEmailsRequest {
1774
+ /** username of user to get email addresses of */
1775
+ username: string;
1776
+ }
1777
+ export const AdminListUserEmailsRequest = /*@__PURE__*/ S.suspend(() =>
1778
+ S.Struct({
1779
+ username: S.String.pipe(T.Label()),
1780
+ }).pipe(
1781
+ T.Http({ method: "GET", uri: "/admin/users/{username}/emails", code: 200 }),
1782
+ ),
1783
+ ).annotate({
1784
+ identifier: "AdminListUserEmailsRequest",
1785
+ }) as any as S.Schema<AdminListUserEmailsRequest>;
1786
+
1787
+ export type AdminListUserEmailsResponseBodyList = Array<Email>;
1788
+ export const AdminListUserEmailsResponseBodyList = /*@__PURE__*/ S.Array(
1789
+ Email,
1790
+ ) as any as S.Schema<AdminListUserEmailsResponseBodyList>;
1791
+
1792
+ export type AdminListUserEmailsResponse = AdminListUserEmailsResponseBodyList;
1793
+ export const AdminListUserEmailsResponse = /*@__PURE__*/ S.suspend(() =>
1794
+ AdminListUserEmailsResponseBodyList.pipe(T.RawResponseRoot()),
1795
+ ).annotate({
1796
+ identifier: "AdminListUserEmailsResponse",
1797
+ }) as any as S.Schema<AdminListUserEmailsResponse>;
1798
+
1799
+ export interface AdminListUsersInQuotaGroupRequest {
1800
+ /** quota group to list members of */
1801
+ quotagroup: string;
1802
+ }
1803
+ export const AdminListUsersInQuotaGroupRequest = /*@__PURE__*/ S.suspend(() =>
1804
+ S.Struct({
1805
+ quotagroup: S.String.pipe(T.Label()),
1806
+ }).pipe(
1807
+ T.Http({
1808
+ method: "GET",
1809
+ uri: "/admin/quota/groups/{quotagroup}/users",
1810
+ code: 200,
1811
+ }),
1812
+ ),
1813
+ ).annotate({
1814
+ identifier: "AdminListUsersInQuotaGroupRequest",
1815
+ }) as any as S.Schema<AdminListUsersInQuotaGroupRequest>;
1816
+
1817
+ export type AdminListUsersInQuotaGroupResponseBodyList = Array<User>;
1818
+ export const AdminListUsersInQuotaGroupResponseBodyList = /*@__PURE__*/ S.Array(
1819
+ User,
1820
+ ) as any as S.Schema<AdminListUsersInQuotaGroupResponseBodyList>;
1821
+
1822
+ export type AdminListUsersInQuotaGroupResponse =
1823
+ AdminListUsersInQuotaGroupResponseBodyList;
1824
+ export const AdminListUsersInQuotaGroupResponse = /*@__PURE__*/ S.suspend(() =>
1825
+ AdminListUsersInQuotaGroupResponseBodyList.pipe(T.RawResponseRoot()),
1826
+ ).annotate({
1827
+ identifier: "AdminListUsersInQuotaGroupResponse",
1828
+ }) as any as S.Schema<AdminListUsersInQuotaGroupResponse>;
1829
+
1830
+ export interface AdminRemoveRuleFromQuotaGroupRequest {
1831
+ /** quota group to remove a rule from */
1832
+ quotagroup: string;
1833
+ /** the name of the quota rule to remove from the group */
1834
+ quotarule: string;
1835
+ }
1836
+ export const AdminRemoveRuleFromQuotaGroupRequest = /*@__PURE__*/ S.suspend(
1837
+ () =>
1838
+ S.Struct({
1839
+ quotagroup: S.String.pipe(T.Label()),
1840
+ quotarule: S.String.pipe(T.Label()),
1841
+ }).pipe(
1842
+ T.Http({
1843
+ method: "DELETE",
1844
+ uri: "/admin/quota/groups/{quotagroup}/rules/{quotarule}",
1845
+ code: 200,
1846
+ }),
1847
+ ),
1848
+ ).annotate({
1849
+ identifier: "AdminRemoveRuleFromQuotaGroupRequest",
1850
+ }) as any as S.Schema<AdminRemoveRuleFromQuotaGroupRequest>;
1851
+
1852
+ export interface AdminRemoveRuleFromQuotaGroupResponse {}
1853
+ export const AdminRemoveRuleFromQuotaGroupResponse = /*@__PURE__*/ S.suspend(
1854
+ () => S.Struct({}),
1855
+ ).annotate({
1856
+ identifier: "AdminRemoveRuleFromQuotaGroupResponse",
1857
+ }) as any as S.Schema<AdminRemoveRuleFromQuotaGroupResponse>;
1858
+
1859
+ export interface AdminRemoveUserFromQuotaGroupRequest {
1860
+ /** quota group to remove a user from */
1861
+ quotagroup: string;
1862
+ /** username of the user to remove from the quota group */
1863
+ username: string;
1864
+ }
1865
+ export const AdminRemoveUserFromQuotaGroupRequest = /*@__PURE__*/ S.suspend(
1866
+ () =>
1867
+ S.Struct({
1868
+ quotagroup: S.String.pipe(T.Label()),
1869
+ username: S.String.pipe(T.Label()),
1870
+ }).pipe(
1871
+ T.Http({
1872
+ method: "DELETE",
1873
+ uri: "/admin/quota/groups/{quotagroup}/users/{username}",
1874
+ code: 200,
1875
+ }),
1876
+ ),
1877
+ ).annotate({
1878
+ identifier: "AdminRemoveUserFromQuotaGroupRequest",
1879
+ }) as any as S.Schema<AdminRemoveUserFromQuotaGroupRequest>;
1880
+
1881
+ export interface AdminRemoveUserFromQuotaGroupResponse {}
1882
+ export const AdminRemoveUserFromQuotaGroupResponse = /*@__PURE__*/ S.suspend(
1883
+ () => S.Struct({}),
1884
+ ).annotate({
1885
+ identifier: "AdminRemoveUserFromQuotaGroupResponse",
1886
+ }) as any as S.Schema<AdminRemoveUserFromQuotaGroupResponse>;
1887
+
1888
+ export interface AdminRenameUserRequest {
1889
+ /** existing username of user */
1890
+ username: string;
1891
+ /** New username for this user. This name cannot be in use yet by any other user. */
1892
+ new_username: string;
1893
+ }
1894
+ export const AdminRenameUserRequest = /*@__PURE__*/ S.suspend(() =>
1895
+ S.Struct({
1896
+ username: S.String.pipe(T.Label()),
1897
+ new_username: S.String,
1898
+ }).pipe(
1899
+ T.Http({
1900
+ method: "POST",
1901
+ uri: "/admin/users/{username}/rename",
1902
+ code: 200,
1903
+ }),
1904
+ ),
1905
+ ).annotate({
1906
+ identifier: "AdminRenameUserRequest",
1907
+ }) as any as S.Schema<AdminRenameUserRequest>;
1908
+
1909
+ export interface AdminRenameUserResponse {}
1910
+ export const AdminRenameUserResponse = /*@__PURE__*/ S.suspend(() =>
1911
+ S.Struct({}),
1912
+ ).annotate({
1913
+ identifier: "AdminRenameUserResponse",
1914
+ }) as any as S.Schema<AdminRenameUserResponse>;
1915
+
1916
+ export interface AdminSearchEmailsRequest {
1917
+ /** keyword */
1918
+ q?: string;
1919
+ /** page number of results to return (1-based) */
1920
+ page?: number;
1921
+ /** page size of results */
1922
+ limit?: number;
1923
+ }
1924
+ export const AdminSearchEmailsRequest = /*@__PURE__*/ S.suspend(() =>
1925
+ S.Struct({
1926
+ q: S.optional(S.String.pipe(T.Query())),
1927
+ page: S.optional(S.Number.pipe(T.Query())),
1928
+ limit: S.optional(S.Number.pipe(T.Query())),
1929
+ }).pipe(T.Http({ method: "GET", uri: "/admin/emails/search", code: 200 })),
1930
+ ).annotate({
1931
+ identifier: "AdminSearchEmailsRequest",
1932
+ }) as any as S.Schema<AdminSearchEmailsRequest>;
1933
+
1934
+ export type AdminSearchEmailsResponseBodyList = Array<Email>;
1935
+ export const AdminSearchEmailsResponseBodyList = /*@__PURE__*/ S.Array(
1936
+ Email,
1937
+ ) as any as S.Schema<AdminSearchEmailsResponseBodyList>;
1938
+
1939
+ export type AdminSearchEmailsResponse = AdminSearchEmailsResponseBodyList;
1940
+ export const AdminSearchEmailsResponse = /*@__PURE__*/ S.suspend(() =>
1941
+ AdminSearchEmailsResponseBodyList.pipe(T.RawResponseRoot()),
1942
+ ).annotate({
1943
+ identifier: "AdminSearchEmailsResponse",
1944
+ }) as any as S.Schema<AdminSearchEmailsResponse>;
1945
+
1946
+ export type AdminSearchUsersRequestSort =
1947
+ | "oldest"
1948
+ | "newest"
1949
+ | "alphabetically"
1950
+ | "reversealphabetically"
1951
+ | "recentupdate"
1952
+ | "leastupdate";
1953
+ export const AdminSearchUsersRequestSort = /*@__PURE__*/ S.String;
1954
+
1955
+ export interface AdminSearchUsersRequest {
1956
+ /** ID of the user's login source to search for */
1957
+ source_id?: number;
1958
+ /** user's login name to search for */
1959
+ login_name?: string;
1960
+ /** whether or not to filter users with the 2fa enabled */
1961
+ is_2fa_enabled?: boolean;
1962
+ /** sort order of results */
1963
+ sort?: AdminSearchUsersRequestSort | (string & {});
1964
+ /** page number of results to return (1-based) */
1965
+ page?: number;
1966
+ /** page size of results */
1967
+ limit?: number;
1968
+ }
1969
+ export const AdminSearchUsersRequest = /*@__PURE__*/ S.suspend(() =>
1970
+ S.Struct({
1971
+ source_id: S.optional(S.Number.pipe(T.Query())),
1972
+ login_name: S.optional(S.String.pipe(T.Query())),
1973
+ is_2fa_enabled: S.optional(S.Boolean.pipe(T.Query())),
1974
+ sort: S.optional(AdminSearchUsersRequestSort.pipe(T.Query())),
1975
+ page: S.optional(S.Number.pipe(T.Query())),
1976
+ limit: S.optional(S.Number.pipe(T.Query())),
1977
+ }).pipe(T.Http({ method: "GET", uri: "/admin/users", code: 200 })),
1978
+ ).annotate({
1979
+ identifier: "AdminSearchUsersRequest",
1980
+ }) as any as S.Schema<AdminSearchUsersRequest>;
1981
+
1982
+ export type AdminSearchUsersResponseBodyList = Array<User>;
1983
+ export const AdminSearchUsersResponseBodyList = /*@__PURE__*/ S.Array(
1984
+ User,
1985
+ ) as any as S.Schema<AdminSearchUsersResponseBodyList>;
1986
+
1987
+ export type AdminSearchUsersResponse = AdminSearchUsersResponseBodyList;
1988
+ export const AdminSearchUsersResponse = /*@__PURE__*/ S.suspend(() =>
1989
+ AdminSearchUsersResponseBodyList.pipe(T.RawResponseRoot()),
1990
+ ).annotate({
1991
+ identifier: "AdminSearchUsersResponse",
1992
+ }) as any as S.Schema<AdminSearchUsersResponse>;
1993
+
1994
+ /** Quota groups the user shall have */
1995
+ export type AdminSetUserQuotaGroupsRequestGroupsList = Array<string>;
1996
+ export const AdminSetUserQuotaGroupsRequestGroupsList = /*@__PURE__*/ S.Array(
1997
+ S.String,
1998
+ ) as any as S.Schema<AdminSetUserQuotaGroupsRequestGroupsList>;
1999
+
2000
+ export interface AdminSetUserQuotaGroupsRequest {
2001
+ /** username of the user to modify the quota groups from */
2002
+ username: string;
2003
+ /** Quota groups the user shall have */
2004
+ groups: AdminSetUserQuotaGroupsRequestGroupsList;
2005
+ }
2006
+ export const AdminSetUserQuotaGroupsRequest = /*@__PURE__*/ S.suspend(() =>
2007
+ S.Struct({
2008
+ username: S.String.pipe(T.Label()),
2009
+ groups: AdminSetUserQuotaGroupsRequestGroupsList,
2010
+ }).pipe(
2011
+ T.Http({
2012
+ method: "POST",
2013
+ uri: "/admin/users/{username}/quota/groups",
2014
+ code: 200,
2015
+ }),
2016
+ ),
2017
+ ).annotate({
2018
+ identifier: "AdminSetUserQuotaGroupsRequest",
2019
+ }) as any as S.Schema<AdminSetUserQuotaGroupsRequest>;
2020
+
2021
+ export interface AdminSetUserQuotaGroupsResponse {}
2022
+ export const AdminSetUserQuotaGroupsResponse = /*@__PURE__*/ S.suspend(() =>
2023
+ S.Struct({}),
2024
+ ).annotate({
2025
+ identifier: "AdminSetUserQuotaGroupsResponse",
2026
+ }) as any as S.Schema<AdminSetUserQuotaGroupsResponse>;
2027
+
2028
+ export interface DeleteAdminRunnerRequest {
2029
+ /** ID of the runner */
2030
+ runner_id: string;
2031
+ }
2032
+ export const DeleteAdminRunnerRequest = /*@__PURE__*/ S.suspend(() =>
2033
+ S.Struct({
2034
+ runner_id: S.String.pipe(T.Label()),
2035
+ }).pipe(
2036
+ T.Http({
2037
+ method: "DELETE",
2038
+ uri: "/admin/actions/runners/{runner_id}",
2039
+ code: 200,
2040
+ }),
2041
+ ),
2042
+ ).annotate({
2043
+ identifier: "DeleteAdminRunnerRequest",
2044
+ }) as any as S.Schema<DeleteAdminRunnerRequest>;
2045
+
2046
+ export interface DeleteAdminRunnerResponse {}
2047
+ export const DeleteAdminRunnerResponse = /*@__PURE__*/ S.suspend(() =>
2048
+ S.Struct({}),
2049
+ ).annotate({
2050
+ identifier: "DeleteAdminRunnerResponse",
2051
+ }) as any as S.Schema<DeleteAdminRunnerResponse>;
2052
+
2053
+ export interface GetAdminRunnerRequest {
2054
+ /** ID of the runner */
2055
+ runner_id: string;
2056
+ }
2057
+ export const GetAdminRunnerRequest = /*@__PURE__*/ S.suspend(() =>
2058
+ S.Struct({
2059
+ runner_id: S.String.pipe(T.Label()),
2060
+ }).pipe(
2061
+ T.Http({
2062
+ method: "GET",
2063
+ uri: "/admin/actions/runners/{runner_id}",
2064
+ code: 200,
2065
+ }),
2066
+ ),
2067
+ ).annotate({
2068
+ identifier: "GetAdminRunnerRequest",
2069
+ }) as any as S.Schema<GetAdminRunnerRequest>;
2070
+
2071
+ /** Labels is a list of labels attached to this runner. */
2072
+ export type ActionRunnerLabelsList = Array<string>;
2073
+ export const ActionRunnerLabelsList = /*@__PURE__*/ S.Array(
2074
+ S.String,
2075
+ ) as any as S.Schema<ActionRunnerLabelsList>;
2076
+
2077
+ /** Status indicates whether this runner is offline, or active, for example. */
2078
+ export type ActionRunnerStatus = "offline" | "idle" | "active";
2079
+ export const ActionRunnerStatus = /*@__PURE__*/ S.String;
2080
+
2081
+ /** ActionRunner represents a runner */
2082
+ export interface ActionRunner {
2083
+ /** Description provides optional details about this runner. */
2084
+ description?: string;
2085
+ /** Indicates if runner is ephemeral runner */
2086
+ ephemeral?: boolean;
2087
+ /** ID uniquely identifies this runner. */
2088
+ id?: number;
2089
+ /** Labels is a list of labels attached to this runner. */
2090
+ labels?: ActionRunnerLabelsList;
2091
+ /** Name of the runner; not unique. */
2092
+ name?: string;
2093
+ /** OwnerID is the identifier of the user or organization this runner belongs to. O if the runner is owned by a repository. */
2094
+ owner_id?: number;
2095
+ /** RepoID is the identifier of the repository this runner belongs to. 0 if the runner belongs to a user or organization. */
2096
+ repo_id?: number;
2097
+ /** Status indicates whether this runner is offline, or active, for example. */
2098
+ status?: ActionRunnerStatus;
2099
+ /** UUID uniquely identifies this runner. */
2100
+ uuid?: string;
2101
+ /** Version is the self-reported version string of Forgejo Runner. */
2102
+ version?: string;
2103
+ }
2104
+ export const ActionRunner = /*@__PURE__*/ S.suspend(() =>
2105
+ S.Struct({
2106
+ description: S.optional(S.String),
2107
+ ephemeral: S.optional(S.Boolean),
2108
+ id: S.optional(S.Number),
2109
+ labels: S.optional(ActionRunnerLabelsList),
2110
+ name: S.optional(S.String),
2111
+ owner_id: S.optional(S.Number),
2112
+ repo_id: S.optional(S.Number),
2113
+ status: S.optional(ActionRunnerStatus),
2114
+ uuid: S.optional(S.String),
2115
+ version: S.optional(S.String),
2116
+ }),
2117
+ ).annotate({ identifier: "ActionRunner" }) as any as S.Schema<ActionRunner>;
2118
+
2119
+ export interface GetAdminRunnersRequest {
2120
+ /** whether to include all visible runners (true) or only those that are directly owned by the instance (false) */
2121
+ visible?: boolean;
2122
+ /** page number of results to return (1-based) */
2123
+ page?: number;
2124
+ /** page size of results */
2125
+ limit?: number;
2126
+ }
2127
+ export const GetAdminRunnersRequest = /*@__PURE__*/ S.suspend(() =>
2128
+ S.Struct({
2129
+ visible: S.optional(S.Boolean.pipe(T.Query())),
2130
+ page: S.optional(S.Number.pipe(T.Query())),
2131
+ limit: S.optional(S.Number.pipe(T.Query())),
2132
+ }).pipe(T.Http({ method: "GET", uri: "/admin/actions/runners", code: 200 })),
2133
+ ).annotate({
2134
+ identifier: "GetAdminRunnersRequest",
2135
+ }) as any as S.Schema<GetAdminRunnersRequest>;
2136
+
2137
+ export type GetAdminRunnersResponseBodyList = Array<ActionRunner>;
2138
+ export const GetAdminRunnersResponseBodyList = /*@__PURE__*/ S.Array(
2139
+ ActionRunner,
2140
+ ) as any as S.Schema<GetAdminRunnersResponseBodyList>;
2141
+
2142
+ export type GetAdminRunnersResponse = GetAdminRunnersResponseBodyList;
2143
+ export const GetAdminRunnersResponse = /*@__PURE__*/ S.suspend(() =>
2144
+ GetAdminRunnersResponseBodyList.pipe(T.RawResponseRoot()),
2145
+ ).annotate({
2146
+ identifier: "GetAdminRunnersResponse",
2147
+ }) as any as S.Schema<GetAdminRunnersResponse>;
2148
+
2149
+ export interface ListAdminCronRequest {
2150
+ /** page number of results to return (1-based) */
2151
+ page?: number;
2152
+ /** page size of results */
2153
+ limit?: number;
2154
+ }
2155
+ export const ListAdminCronRequest = /*@__PURE__*/ S.suspend(() =>
2156
+ S.Struct({
2157
+ page: S.optional(S.Number.pipe(T.Query())),
2158
+ limit: S.optional(S.Number.pipe(T.Query())),
2159
+ }).pipe(T.Http({ method: "GET", uri: "/admin/cron", code: 200 })),
2160
+ ).annotate({
2161
+ identifier: "ListAdminCronRequest",
2162
+ }) as any as S.Schema<ListAdminCronRequest>;
2163
+
2164
+ /** Cron represents a Cron task */
2165
+ export interface Cron {
2166
+ exec_times?: number;
2167
+ name?: string;
2168
+ next?: string;
2169
+ prev?: string;
2170
+ schedule?: string;
2171
+ }
2172
+ export const Cron = /*@__PURE__*/ S.suspend(() =>
2173
+ S.Struct({
2174
+ exec_times: S.optional(S.Number),
2175
+ name: S.optional(S.String),
2176
+ next: S.optional(S.String),
2177
+ prev: S.optional(S.String),
2178
+ schedule: S.optional(S.String),
2179
+ }),
2180
+ ).annotate({ identifier: "Cron" }) as any as S.Schema<Cron>;
2181
+
2182
+ export type ListAdminCronResponseBodyList = Array<Cron>;
2183
+ export const ListAdminCronResponseBodyList = /*@__PURE__*/ S.Array(
2184
+ Cron,
2185
+ ) as any as S.Schema<ListAdminCronResponseBodyList>;
2186
+
2187
+ export type ListAdminCronResponse = ListAdminCronResponseBodyList;
2188
+ export const ListAdminCronResponse = /*@__PURE__*/ S.suspend(() =>
2189
+ ListAdminCronResponseBodyList.pipe(T.RawResponseRoot()),
2190
+ ).annotate({
2191
+ identifier: "ListAdminCronResponse",
2192
+ }) as any as S.Schema<ListAdminCronResponse>;
2193
+
2194
+ export interface ListAdminUnadoptedRequest {
2195
+ /** page number of results to return (1-based) */
2196
+ page?: number;
2197
+ /** page size of results */
2198
+ limit?: number;
2199
+ /** pattern of repositories to search for */
2200
+ pattern?: string;
2201
+ }
2202
+ export const ListAdminUnadoptedRequest = /*@__PURE__*/ S.suspend(() =>
2203
+ S.Struct({
2204
+ page: S.optional(S.Number.pipe(T.Query())),
2205
+ limit: S.optional(S.Number.pipe(T.Query())),
2206
+ pattern: S.optional(S.String.pipe(T.Query())),
2207
+ }).pipe(T.Http({ method: "GET", uri: "/admin/unadopted", code: 200 })),
2208
+ ).annotate({
2209
+ identifier: "ListAdminUnadoptedRequest",
2210
+ }) as any as S.Schema<ListAdminUnadoptedRequest>;
2211
+
2212
+ export type ListAdminUnadoptedResponseBodyList = Array<string>;
2213
+ export const ListAdminUnadoptedResponseBodyList = /*@__PURE__*/ S.Array(
2214
+ S.String,
2215
+ ) as any as S.Schema<ListAdminUnadoptedResponseBodyList>;
2216
+
2217
+ export type ListAdminUnadoptedResponse = ListAdminUnadoptedResponseBodyList;
2218
+ export const ListAdminUnadoptedResponse = /*@__PURE__*/ S.suspend(() =>
2219
+ ListAdminUnadoptedResponseBodyList.pipe(T.RawResponseRoot()),
2220
+ ).annotate({
2221
+ identifier: "ListAdminUnadoptedResponse",
2222
+ }) as any as S.Schema<ListAdminUnadoptedResponse>;
2223
+
2224
+ export interface RegisterAdminRunnerRequest {
2225
+ /** Description of the runner to register. */
2226
+ description?: string;
2227
+ /** Register as ephemeral runner https://forgejo.org/docs/latest/admin/actions/security/#ephemeral-runner */
2228
+ ephemeral?: boolean;
2229
+ /** Name of the runner to register. The name of the runner does not have to be unique. */
2230
+ name: string;
2231
+ }
2232
+ export const RegisterAdminRunnerRequest = /*@__PURE__*/ S.suspend(() =>
2233
+ S.Struct({
2234
+ description: S.optional(S.String),
2235
+ ephemeral: S.optional(S.Boolean),
2236
+ name: S.String,
2237
+ }).pipe(T.Http({ method: "POST", uri: "/admin/actions/runners", code: 200 })),
2238
+ ).annotate({
2239
+ identifier: "RegisterAdminRunnerRequest",
2240
+ }) as any as S.Schema<RegisterAdminRunnerRequest>;
2241
+
2242
+ export interface RegisterRunnerResponse {
2243
+ id?: number;
2244
+ token?: string;
2245
+ uuid?: string;
2246
+ }
2247
+ export const RegisterRunnerResponse = /*@__PURE__*/ S.suspend(() =>
2248
+ S.Struct({
2249
+ id: S.optional(S.Number),
2250
+ token: S.optional(S.String),
2251
+ uuid: S.optional(S.String),
2252
+ }),
2253
+ ).annotate({
2254
+ identifier: "RegisterRunnerResponse",
2255
+ }) as any as S.Schema<RegisterRunnerResponse>;
2256
+
2257
+ export interface RunAdminCronRequest {
2258
+ /** task to run */
2259
+ task: string;
2260
+ }
2261
+ export const RunAdminCronRequest = /*@__PURE__*/ S.suspend(() =>
2262
+ S.Struct({
2263
+ task: S.String.pipe(T.Label()),
2264
+ }).pipe(T.Http({ method: "POST", uri: "/admin/cron/{task}", code: 200 })),
2265
+ ).annotate({
2266
+ identifier: "RunAdminCronRequest",
2267
+ }) as any as S.Schema<RunAdminCronRequest>;
2268
+
2269
+ export interface RunAdminCronResponse {}
2270
+ export const RunAdminCronResponse = /*@__PURE__*/ S.suspend(() =>
2271
+ S.Struct({}),
2272
+ ).annotate({
2273
+ identifier: "RunAdminCronResponse",
2274
+ }) as any as S.Schema<RunAdminCronResponse>;
2275
+
2276
+ export type AdminAddRuleToQuotaGroupError =
2277
+ | BadRequest
2278
+ | Forbidden
2279
+ | NotFound
2280
+ | Conflict
2281
+ | UnprocessableEntity
2282
+ | ForgejoOpError;
2283
+ /** Adds a rule to a quota group */
2284
+ export const adminAddRuleToQuotaGroup: API.OperationMethod<
2285
+ AdminAddRuleToQuotaGroupRequest,
2286
+ AdminAddRuleToQuotaGroupResponse,
2287
+ AdminAddRuleToQuotaGroupError,
2288
+ ForgejoOpContext
2289
+ > = /*@__PURE__*/ API.make(() => ({
2290
+ input: AdminAddRuleToQuotaGroupRequest,
2291
+ output: AdminAddRuleToQuotaGroupResponse,
2292
+ errors: [BadRequest, Forbidden, NotFound, Conflict, UnprocessableEntity],
2293
+ protocol: ForgejoProtocol,
2294
+ retry: Retry.Retry,
2295
+ }));
2296
+
2297
+ export type AdminAddUserToQuotaGroupError =
2298
+ | BadRequest
2299
+ | Forbidden
2300
+ | NotFound
2301
+ | Conflict
2302
+ | UnprocessableEntity
2303
+ | ForgejoOpError;
2304
+ /** Add a user to a quota group */
2305
+ export const adminAddUserToQuotaGroup: API.OperationMethod<
2306
+ AdminAddUserToQuotaGroupRequest,
2307
+ AdminAddUserToQuotaGroupResponse,
2308
+ AdminAddUserToQuotaGroupError,
2309
+ ForgejoOpContext
2310
+ > = /*@__PURE__*/ API.make(() => ({
2311
+ input: AdminAddUserToQuotaGroupRequest,
2312
+ output: AdminAddUserToQuotaGroupResponse,
2313
+ errors: [BadRequest, Forbidden, NotFound, Conflict, UnprocessableEntity],
2314
+ protocol: ForgejoProtocol,
2315
+ retry: Retry.Retry,
2316
+ }));
2317
+
2318
+ export type AdminAdoptRepositoryError = Forbidden | NotFound | ForgejoOpError;
2319
+ /** Adopt unadopted files as a repository */
2320
+ export const adminAdoptRepository: API.OperationMethod<
2321
+ AdminAdoptRepositoryRequest,
2322
+ AdminAdoptRepositoryResponse,
2323
+ AdminAdoptRepositoryError,
2324
+ ForgejoOpContext
2325
+ > = /*@__PURE__*/ API.make(() => ({
2326
+ input: AdminAdoptRepositoryRequest,
2327
+ output: AdminAdoptRepositoryResponse,
2328
+ errors: [Forbidden, NotFound],
2329
+ protocol: ForgejoProtocol,
2330
+ retry: Retry.Retry,
2331
+ }));
2332
+
2333
+ export type AdminCreateHookError = ForgejoOpError;
2334
+ /** Create a hook */
2335
+ export const adminCreateHook: API.OperationMethod<
2336
+ AdminCreateHookRequest,
2337
+ Hook,
2338
+ AdminCreateHookError,
2339
+ ForgejoOpContext
2340
+ > = /*@__PURE__*/ API.make(() => ({
2341
+ input: AdminCreateHookRequest,
2342
+ output: Hook,
2343
+ errors: [],
2344
+ protocol: ForgejoProtocol,
2345
+ retry: Retry.Retry,
2346
+ }));
2347
+
2348
+ export type AdminCreateOrgError =
2349
+ | Forbidden
2350
+ | UnprocessableEntity
2351
+ | ForgejoOpError;
2352
+ /** Create an organization */
2353
+ export const adminCreateOrg: API.OperationMethod<
2354
+ AdminCreateOrgRequest,
2355
+ Organization,
2356
+ AdminCreateOrgError,
2357
+ ForgejoOpContext
2358
+ > = /*@__PURE__*/ API.make(() => ({
2359
+ input: AdminCreateOrgRequest,
2360
+ output: Organization,
2361
+ errors: [Forbidden, UnprocessableEntity],
2362
+ protocol: ForgejoProtocol,
2363
+ retry: Retry.Retry,
2364
+ }));
2365
+
2366
+ export type AdminCreatePublicKeyError =
2367
+ | Forbidden
2368
+ | UnprocessableEntity
2369
+ | ForgejoOpError;
2370
+ /** Add an SSH public key to user's account */
2371
+ export const adminCreatePublicKey: API.OperationMethod<
2372
+ AdminCreatePublicKeyRequest,
2373
+ PublicKey,
2374
+ AdminCreatePublicKeyError,
2375
+ ForgejoOpContext
2376
+ > = /*@__PURE__*/ API.make(() => ({
2377
+ input: AdminCreatePublicKeyRequest,
2378
+ output: PublicKey,
2379
+ errors: [Forbidden, UnprocessableEntity],
2380
+ protocol: ForgejoProtocol,
2381
+ retry: Retry.Retry,
2382
+ }));
2383
+
2384
+ export type AdminCreateQuotaGroupError =
2385
+ | BadRequest
2386
+ | Forbidden
2387
+ | Conflict
2388
+ | UnprocessableEntity
2389
+ | ForgejoOpError;
2390
+ /** Create a new quota group */
2391
+ export const adminCreateQuotaGroup: API.OperationMethod<
2392
+ AdminCreateQuotaGroupRequest,
2393
+ QuotaGroup,
2394
+ AdminCreateQuotaGroupError,
2395
+ ForgejoOpContext
2396
+ > = /*@__PURE__*/ API.make(() => ({
2397
+ input: AdminCreateQuotaGroupRequest,
2398
+ output: QuotaGroup,
2399
+ errors: [BadRequest, Forbidden, Conflict, UnprocessableEntity],
2400
+ protocol: ForgejoProtocol,
2401
+ retry: Retry.Retry,
2402
+ }));
2403
+
2404
+ export type AdminCreateQuotaRuleError =
2405
+ | BadRequest
2406
+ | Forbidden
2407
+ | Conflict
2408
+ | UnprocessableEntity
2409
+ | ForgejoOpError;
2410
+ /** Create a new quota rule */
2411
+ export const adminCreateQuotaRule: API.OperationMethod<
2412
+ AdminCreateQuotaRuleRequest,
2413
+ QuotaRuleInfo,
2414
+ AdminCreateQuotaRuleError,
2415
+ ForgejoOpContext
2416
+ > = /*@__PURE__*/ API.make(() => ({
2417
+ input: AdminCreateQuotaRuleRequest,
2418
+ output: QuotaRuleInfo,
2419
+ errors: [BadRequest, Forbidden, Conflict, UnprocessableEntity],
2420
+ protocol: ForgejoProtocol,
2421
+ retry: Retry.Retry,
2422
+ }));
2423
+
2424
+ export type AdminCreateRepoError =
2425
+ | BadRequest
2426
+ | Forbidden
2427
+ | NotFound
2428
+ | Conflict
2429
+ | UnprocessableEntity
2430
+ | ForgejoOpError;
2431
+ /** Create a repository on behalf of a user */
2432
+ export const adminCreateRepo: API.OperationMethod<
2433
+ AdminCreateRepoRequest,
2434
+ Repository,
2435
+ AdminCreateRepoError,
2436
+ ForgejoOpContext
2437
+ > = /*@__PURE__*/ API.make(() => ({
2438
+ input: AdminCreateRepoRequest,
2439
+ output: Repository,
2440
+ errors: [BadRequest, Forbidden, NotFound, Conflict, UnprocessableEntity],
2441
+ protocol: ForgejoProtocol,
2442
+ retry: Retry.Retry,
2443
+ }));
2444
+
2445
+ export type AdminCreateUserError =
2446
+ | BadRequest
2447
+ | Forbidden
2448
+ | UnprocessableEntity
2449
+ | ForgejoOpError;
2450
+ /** Create a user account */
2451
+ export const adminCreateUser: API.OperationMethod<
2452
+ AdminCreateUserRequest,
2453
+ User,
2454
+ AdminCreateUserError,
2455
+ ForgejoOpContext
2456
+ > = /*@__PURE__*/ API.make(() => ({
2457
+ input: AdminCreateUserRequest,
2458
+ output: User,
2459
+ errors: [BadRequest, Forbidden, UnprocessableEntity],
2460
+ protocol: ForgejoProtocol,
2461
+ retry: Retry.Retry,
2462
+ }));
2463
+
2464
+ export type AdminCreateUserAccessTokenError =
2465
+ | BadRequest
2466
+ | Forbidden
2467
+ | NotFound
2468
+ | ForgejoOpError;
2469
+ /** Create an access token for the specified user */
2470
+ export const adminCreateUserAccessToken: API.OperationMethod<
2471
+ AdminCreateUserAccessTokenRequest,
2472
+ AccessToken,
2473
+ AdminCreateUserAccessTokenError,
2474
+ ForgejoOpContext
2475
+ > = /*@__PURE__*/ API.make(() => ({
2476
+ input: AdminCreateUserAccessTokenRequest,
2477
+ output: AccessToken,
2478
+ errors: [BadRequest, Forbidden, NotFound],
2479
+ protocol: ForgejoProtocol,
2480
+ retry: Retry.Retry,
2481
+ }));
2482
+
2483
+ export type AdminDeleteHookError = ForgejoOpError;
2484
+ /** Delete a hook */
2485
+ export const adminDeleteHook: API.OperationMethod<
2486
+ AdminDeleteHookRequest,
2487
+ AdminDeleteHookResponse,
2488
+ AdminDeleteHookError,
2489
+ ForgejoOpContext
2490
+ > = /*@__PURE__*/ API.make(() => ({
2491
+ input: AdminDeleteHookRequest,
2492
+ output: AdminDeleteHookResponse,
2493
+ errors: [],
2494
+ protocol: ForgejoProtocol,
2495
+ retry: Retry.Retry,
2496
+ }));
2497
+
2498
+ export type AdminDeleteQuotaGroupError =
2499
+ | BadRequest
2500
+ | Forbidden
2501
+ | NotFound
2502
+ | ForgejoOpError;
2503
+ /** Delete a quota group */
2504
+ export const adminDeleteQuotaGroup: API.OperationMethod<
2505
+ AdminDeleteQuotaGroupRequest,
2506
+ AdminDeleteQuotaGroupResponse,
2507
+ AdminDeleteQuotaGroupError,
2508
+ ForgejoOpContext
2509
+ > = /*@__PURE__*/ API.make(() => ({
2510
+ input: AdminDeleteQuotaGroupRequest,
2511
+ output: AdminDeleteQuotaGroupResponse,
2512
+ errors: [BadRequest, Forbidden, NotFound],
2513
+ protocol: ForgejoProtocol,
2514
+ retry: Retry.Retry,
2515
+ }));
2516
+
2517
+ export type AdminDeleteQuotaRuleError =
2518
+ | BadRequest
2519
+ | Forbidden
2520
+ | NotFound
2521
+ | ForgejoOpError;
2522
+ /** Deletes a quota rule */
2523
+ export const adminDeleteQuotaRule: API.OperationMethod<
2524
+ AdminDeleteQuotaRuleRequest,
2525
+ AdminDeleteQuotaRuleResponse,
2526
+ AdminDeleteQuotaRuleError,
2527
+ ForgejoOpContext
2528
+ > = /*@__PURE__*/ API.make(() => ({
2529
+ input: AdminDeleteQuotaRuleRequest,
2530
+ output: AdminDeleteQuotaRuleResponse,
2531
+ errors: [BadRequest, Forbidden, NotFound],
2532
+ protocol: ForgejoProtocol,
2533
+ retry: Retry.Retry,
2534
+ }));
2535
+
2536
+ export type AdminDeleteUnadoptedRepositoryError = Forbidden | ForgejoOpError;
2537
+ /** Delete unadopted files */
2538
+ export const adminDeleteUnadoptedRepository: API.OperationMethod<
2539
+ AdminDeleteUnadoptedRepositoryRequest,
2540
+ AdminDeleteUnadoptedRepositoryResponse,
2541
+ AdminDeleteUnadoptedRepositoryError,
2542
+ ForgejoOpContext
2543
+ > = /*@__PURE__*/ API.make(() => ({
2544
+ input: AdminDeleteUnadoptedRepositoryRequest,
2545
+ output: AdminDeleteUnadoptedRepositoryResponse,
2546
+ errors: [Forbidden],
2547
+ protocol: ForgejoProtocol,
2548
+ retry: Retry.Retry,
2549
+ }));
2550
+
2551
+ export type AdminDeleteUserError =
2552
+ | Forbidden
2553
+ | NotFound
2554
+ | UnprocessableEntity
2555
+ | ForgejoOpError;
2556
+ /** Delete user account */
2557
+ export const adminDeleteUser: API.OperationMethod<
2558
+ AdminDeleteUserRequest,
2559
+ AdminDeleteUserResponse,
2560
+ AdminDeleteUserError,
2561
+ ForgejoOpContext
2562
+ > = /*@__PURE__*/ API.make(() => ({
2563
+ input: AdminDeleteUserRequest,
2564
+ output: AdminDeleteUserResponse,
2565
+ errors: [Forbidden, NotFound, UnprocessableEntity],
2566
+ protocol: ForgejoProtocol,
2567
+ retry: Retry.Retry,
2568
+ }));
2569
+
2570
+ export type AdminDeleteUserAccessTokenError =
2571
+ | Forbidden
2572
+ | NotFound
2573
+ | UnprocessableEntity
2574
+ | ForgejoOpError;
2575
+ /** Delete an access token for the specified user */
2576
+ export const adminDeleteUserAccessToken: API.OperationMethod<
2577
+ AdminDeleteUserAccessTokenRequest,
2578
+ AdminDeleteUserAccessTokenResponse,
2579
+ AdminDeleteUserAccessTokenError,
2580
+ ForgejoOpContext
2581
+ > = /*@__PURE__*/ API.make(() => ({
2582
+ input: AdminDeleteUserAccessTokenRequest,
2583
+ output: AdminDeleteUserAccessTokenResponse,
2584
+ errors: [Forbidden, NotFound, UnprocessableEntity],
2585
+ protocol: ForgejoProtocol,
2586
+ retry: Retry.Retry,
2587
+ }));
2588
+
2589
+ export type AdminDeleteUserEmailsError =
2590
+ | Forbidden
2591
+ | UnprocessableEntity
2592
+ | ForgejoOpError;
2593
+ /** Delete email addresses from a user's account */
2594
+ export const adminDeleteUserEmails: API.OperationMethod<
2595
+ AdminDeleteUserEmailsRequest,
2596
+ AdminDeleteUserEmailsResponse,
2597
+ AdminDeleteUserEmailsError,
2598
+ ForgejoOpContext
2599
+ > = /*@__PURE__*/ API.make(() => ({
2600
+ input: AdminDeleteUserEmailsRequest,
2601
+ output: AdminDeleteUserEmailsResponse,
2602
+ errors: [Forbidden, UnprocessableEntity],
2603
+ protocol: ForgejoProtocol,
2604
+ retry: Retry.Retry,
2605
+ }));
2606
+
2607
+ export type AdminDeleteUserPublicKeyError =
2608
+ | Forbidden
2609
+ | NotFound
2610
+ | ForgejoOpError;
2611
+ /** Remove a public key from user's account */
2612
+ export const adminDeleteUserPublicKey: API.OperationMethod<
2613
+ AdminDeleteUserPublicKeyRequest,
2614
+ AdminDeleteUserPublicKeyResponse,
2615
+ AdminDeleteUserPublicKeyError,
2616
+ ForgejoOpContext
2617
+ > = /*@__PURE__*/ API.make(() => ({
2618
+ input: AdminDeleteUserPublicKeyRequest,
2619
+ output: AdminDeleteUserPublicKeyResponse,
2620
+ errors: [Forbidden, NotFound],
2621
+ protocol: ForgejoProtocol,
2622
+ retry: Retry.Retry,
2623
+ }));
2624
+
2625
+ export type AdminEditHookError = ForgejoOpError;
2626
+ /** Update a hook */
2627
+ export const adminEditHook: API.OperationMethod<
2628
+ AdminEditHookRequest,
2629
+ Hook,
2630
+ AdminEditHookError,
2631
+ ForgejoOpContext
2632
+ > = /*@__PURE__*/ API.make(() => ({
2633
+ input: AdminEditHookRequest,
2634
+ output: Hook,
2635
+ errors: [],
2636
+ protocol: ForgejoProtocol,
2637
+ retry: Retry.Retry,
2638
+ }));
2639
+
2640
+ export type AdminEditQuotaRuleError =
2641
+ | BadRequest
2642
+ | Forbidden
2643
+ | NotFound
2644
+ | UnprocessableEntity
2645
+ | ForgejoOpError;
2646
+ /** Change an existing quota rule */
2647
+ export const adminEditQuotaRule: API.OperationMethod<
2648
+ AdminEditQuotaRuleRequest,
2649
+ QuotaRuleInfo,
2650
+ AdminEditQuotaRuleError,
2651
+ ForgejoOpContext
2652
+ > = /*@__PURE__*/ API.make(() => ({
2653
+ input: AdminEditQuotaRuleRequest,
2654
+ output: QuotaRuleInfo,
2655
+ errors: [BadRequest, Forbidden, NotFound, UnprocessableEntity],
2656
+ protocol: ForgejoProtocol,
2657
+ retry: Retry.Retry,
2658
+ }));
2659
+
2660
+ export type AdminEditUserError =
2661
+ | BadRequest
2662
+ | Forbidden
2663
+ | UnprocessableEntity
2664
+ | ForgejoOpError;
2665
+ /** Edit an existing user */
2666
+ export const adminEditUser: API.OperationMethod<
2667
+ AdminEditUserRequest,
2668
+ User,
2669
+ AdminEditUserError,
2670
+ ForgejoOpContext
2671
+ > = /*@__PURE__*/ API.make(() => ({
2672
+ input: AdminEditUserRequest,
2673
+ output: User,
2674
+ errors: [BadRequest, Forbidden, UnprocessableEntity],
2675
+ protocol: ForgejoProtocol,
2676
+ retry: Retry.Retry,
2677
+ }));
2678
+
2679
+ export type AdminGetActionRunJobsError = Forbidden | ForgejoOpError;
2680
+ /** Get action run jobs */
2681
+ export const adminGetActionRunJobs: API.OperationMethod<
2682
+ AdminGetActionRunJobsRequest,
2683
+ AdminGetActionRunJobsResponse,
2684
+ AdminGetActionRunJobsError,
2685
+ ForgejoOpContext
2686
+ > = /*@__PURE__*/ API.make(() => ({
2687
+ input: AdminGetActionRunJobsRequest,
2688
+ output: AdminGetActionRunJobsResponse,
2689
+ errors: [Forbidden],
2690
+ protocol: ForgejoProtocol,
2691
+ retry: Retry.Retry,
2692
+ }));
2693
+
2694
+ export type AdminGetAllEmailsError = Forbidden | ForgejoOpError;
2695
+ /** List all users' email addresses */
2696
+ export const adminGetAllEmails: API.OperationMethod<
2697
+ AdminGetAllEmailsRequest,
2698
+ AdminGetAllEmailsResponse,
2699
+ AdminGetAllEmailsError,
2700
+ ForgejoOpContext
2701
+ > = /*@__PURE__*/ API.make(() => ({
2702
+ input: AdminGetAllEmailsRequest,
2703
+ output: AdminGetAllEmailsResponse,
2704
+ errors: [Forbidden],
2705
+ protocol: ForgejoProtocol,
2706
+ retry: Retry.Retry,
2707
+ }));
2708
+
2709
+ export type AdminGetAllOrgsError = Forbidden | ForgejoOpError;
2710
+ /** List all organizations */
2711
+ export const adminGetAllOrgs: API.OperationMethod<
2712
+ AdminGetAllOrgsRequest,
2713
+ AdminGetAllOrgsResponse,
2714
+ AdminGetAllOrgsError,
2715
+ ForgejoOpContext
2716
+ > = /*@__PURE__*/ API.make(() => ({
2717
+ input: AdminGetAllOrgsRequest,
2718
+ output: AdminGetAllOrgsResponse,
2719
+ errors: [Forbidden],
2720
+ protocol: ForgejoProtocol,
2721
+ retry: Retry.Retry,
2722
+ }));
2723
+
2724
+ export type AdminGetHookError = ForgejoOpError;
2725
+ /** Get a hook */
2726
+ export const adminGetHook: API.OperationMethod<
2727
+ AdminGetHookRequest,
2728
+ Hook,
2729
+ AdminGetHookError,
2730
+ ForgejoOpContext
2731
+ > = /*@__PURE__*/ API.make(() => ({
2732
+ input: AdminGetHookRequest,
2733
+ output: Hook,
2734
+ errors: [],
2735
+ protocol: ForgejoProtocol,
2736
+ retry: Retry.Retry,
2737
+ }));
2738
+
2739
+ export type AdminGetQuotaGroupError =
2740
+ | BadRequest
2741
+ | Forbidden
2742
+ | NotFound
2743
+ | ForgejoOpError;
2744
+ /** Get information about the quota group */
2745
+ export const adminGetQuotaGroup: API.OperationMethod<
2746
+ AdminGetQuotaGroupRequest,
2747
+ QuotaGroup,
2748
+ AdminGetQuotaGroupError,
2749
+ ForgejoOpContext
2750
+ > = /*@__PURE__*/ API.make(() => ({
2751
+ input: AdminGetQuotaGroupRequest,
2752
+ output: QuotaGroup,
2753
+ errors: [BadRequest, Forbidden, NotFound],
2754
+ protocol: ForgejoProtocol,
2755
+ retry: Retry.Retry,
2756
+ }));
2757
+
2758
+ export type AdminGetQuotaRuleError =
2759
+ | BadRequest
2760
+ | Forbidden
2761
+ | NotFound
2762
+ | ForgejoOpError;
2763
+ /** Get information about a quota rule */
2764
+ export const adminGetQuotaRule: API.OperationMethod<
2765
+ AdminGetQuotaRuleRequest,
2766
+ QuotaRuleInfo,
2767
+ AdminGetQuotaRuleError,
2768
+ ForgejoOpContext
2769
+ > = /*@__PURE__*/ API.make(() => ({
2770
+ input: AdminGetQuotaRuleRequest,
2771
+ output: QuotaRuleInfo,
2772
+ errors: [BadRequest, Forbidden, NotFound],
2773
+ protocol: ForgejoProtocol,
2774
+ retry: Retry.Retry,
2775
+ }));
2776
+
2777
+ export type AdminGetUserQuotaError =
2778
+ | BadRequest
2779
+ | Forbidden
2780
+ | NotFound
2781
+ | UnprocessableEntity
2782
+ | ForgejoOpError;
2783
+ /** Get the user's quota info */
2784
+ export const adminGetUserQuota: API.OperationMethod<
2785
+ AdminGetUserQuotaRequest,
2786
+ QuotaInfo,
2787
+ AdminGetUserQuotaError,
2788
+ ForgejoOpContext
2789
+ > = /*@__PURE__*/ API.make(() => ({
2790
+ input: AdminGetUserQuotaRequest,
2791
+ output: QuotaInfo,
2792
+ errors: [BadRequest, Forbidden, NotFound, UnprocessableEntity],
2793
+ protocol: ForgejoProtocol,
2794
+ retry: Retry.Retry,
2795
+ }));
2796
+
2797
+ export type AdminListHooksError = ForgejoOpError;
2798
+ /** List global (system) webhooks */
2799
+ export const adminListHooks: API.OperationMethod<
2800
+ AdminListHooksRequest,
2801
+ AdminListHooksResponse,
2802
+ AdminListHooksError,
2803
+ ForgejoOpContext
2804
+ > = /*@__PURE__*/ API.make(() => ({
2805
+ input: AdminListHooksRequest,
2806
+ output: AdminListHooksResponse,
2807
+ errors: [],
2808
+ protocol: ForgejoProtocol,
2809
+ retry: Retry.Retry,
2810
+ }));
2811
+
2812
+ export type AdminListQuotaGroupsError = Forbidden | ForgejoOpError;
2813
+ /** List the available quota groups */
2814
+ export const adminListQuotaGroups: API.OperationMethod<
2815
+ AdminListQuotaGroupsRequest,
2816
+ AdminListQuotaGroupsResponse,
2817
+ AdminListQuotaGroupsError,
2818
+ ForgejoOpContext
2819
+ > = /*@__PURE__*/ API.make(() => ({
2820
+ input: AdminListQuotaGroupsRequest,
2821
+ output: AdminListQuotaGroupsResponse,
2822
+ errors: [Forbidden],
2823
+ protocol: ForgejoProtocol,
2824
+ retry: Retry.Retry,
2825
+ }));
2826
+
2827
+ export type AdminListQuotaRulesError = Forbidden | ForgejoOpError;
2828
+ /** List the available quota rules */
2829
+ export const adminListQuotaRules: API.OperationMethod<
2830
+ AdminListQuotaRulesRequest,
2831
+ AdminListQuotaRulesResponse,
2832
+ AdminListQuotaRulesError,
2833
+ ForgejoOpContext
2834
+ > = /*@__PURE__*/ API.make(() => ({
2835
+ input: AdminListQuotaRulesRequest,
2836
+ output: AdminListQuotaRulesResponse,
2837
+ errors: [Forbidden],
2838
+ protocol: ForgejoProtocol,
2839
+ retry: Retry.Retry,
2840
+ }));
2841
+
2842
+ export type AdminListUserAccessTokensError =
2843
+ | Forbidden
2844
+ | NotFound
2845
+ | ForgejoOpError;
2846
+ /** List the specified user's access tokens */
2847
+ export const adminListUserAccessTokens: API.OperationMethod<
2848
+ AdminListUserAccessTokensRequest,
2849
+ AdminListUserAccessTokensResponse,
2850
+ AdminListUserAccessTokensError,
2851
+ ForgejoOpContext
2852
+ > = /*@__PURE__*/ API.make(() => ({
2853
+ input: AdminListUserAccessTokensRequest,
2854
+ output: AdminListUserAccessTokensResponse,
2855
+ errors: [Forbidden, NotFound],
2856
+ protocol: ForgejoProtocol,
2857
+ retry: Retry.Retry,
2858
+ }));
2859
+
2860
+ export type AdminListUserEmailsError = Forbidden | NotFound | ForgejoOpError;
2861
+ /** List all email addresses for a user */
2862
+ export const adminListUserEmails: API.OperationMethod<
2863
+ AdminListUserEmailsRequest,
2864
+ AdminListUserEmailsResponse,
2865
+ AdminListUserEmailsError,
2866
+ ForgejoOpContext
2867
+ > = /*@__PURE__*/ API.make(() => ({
2868
+ input: AdminListUserEmailsRequest,
2869
+ output: AdminListUserEmailsResponse,
2870
+ errors: [Forbidden, NotFound],
2871
+ protocol: ForgejoProtocol,
2872
+ retry: Retry.Retry,
2873
+ }));
2874
+
2875
+ export type AdminListUsersInQuotaGroupError =
2876
+ | BadRequest
2877
+ | Forbidden
2878
+ | NotFound
2879
+ | ForgejoOpError;
2880
+ /** List users in a quota group */
2881
+ export const adminListUsersInQuotaGroup: API.OperationMethod<
2882
+ AdminListUsersInQuotaGroupRequest,
2883
+ AdminListUsersInQuotaGroupResponse,
2884
+ AdminListUsersInQuotaGroupError,
2885
+ ForgejoOpContext
2886
+ > = /*@__PURE__*/ API.make(() => ({
2887
+ input: AdminListUsersInQuotaGroupRequest,
2888
+ output: AdminListUsersInQuotaGroupResponse,
2889
+ errors: [BadRequest, Forbidden, NotFound],
2890
+ protocol: ForgejoProtocol,
2891
+ retry: Retry.Retry,
2892
+ }));
2893
+
2894
+ export type AdminRemoveRuleFromQuotaGroupError =
2895
+ | BadRequest
2896
+ | Forbidden
2897
+ | NotFound
2898
+ | ForgejoOpError;
2899
+ /** Removes a rule from a quota group */
2900
+ export const adminRemoveRuleFromQuotaGroup: API.OperationMethod<
2901
+ AdminRemoveRuleFromQuotaGroupRequest,
2902
+ AdminRemoveRuleFromQuotaGroupResponse,
2903
+ AdminRemoveRuleFromQuotaGroupError,
2904
+ ForgejoOpContext
2905
+ > = /*@__PURE__*/ API.make(() => ({
2906
+ input: AdminRemoveRuleFromQuotaGroupRequest,
2907
+ output: AdminRemoveRuleFromQuotaGroupResponse,
2908
+ errors: [BadRequest, Forbidden, NotFound],
2909
+ protocol: ForgejoProtocol,
2910
+ retry: Retry.Retry,
2911
+ }));
2912
+
2913
+ export type AdminRemoveUserFromQuotaGroupError =
2914
+ | BadRequest
2915
+ | Forbidden
2916
+ | NotFound
2917
+ | ForgejoOpError;
2918
+ /** Remove a user from a quota group */
2919
+ export const adminRemoveUserFromQuotaGroup: API.OperationMethod<
2920
+ AdminRemoveUserFromQuotaGroupRequest,
2921
+ AdminRemoveUserFromQuotaGroupResponse,
2922
+ AdminRemoveUserFromQuotaGroupError,
2923
+ ForgejoOpContext
2924
+ > = /*@__PURE__*/ API.make(() => ({
2925
+ input: AdminRemoveUserFromQuotaGroupRequest,
2926
+ output: AdminRemoveUserFromQuotaGroupResponse,
2927
+ errors: [BadRequest, Forbidden, NotFound],
2928
+ protocol: ForgejoProtocol,
2929
+ retry: Retry.Retry,
2930
+ }));
2931
+
2932
+ export type AdminRenameUserError =
2933
+ | Forbidden
2934
+ | UnprocessableEntity
2935
+ | ForgejoOpError;
2936
+ /** Rename a user */
2937
+ export const adminRenameUser: API.OperationMethod<
2938
+ AdminRenameUserRequest,
2939
+ AdminRenameUserResponse,
2940
+ AdminRenameUserError,
2941
+ ForgejoOpContext
2942
+ > = /*@__PURE__*/ API.make(() => ({
2943
+ input: AdminRenameUserRequest,
2944
+ output: AdminRenameUserResponse,
2945
+ errors: [Forbidden, UnprocessableEntity],
2946
+ protocol: ForgejoProtocol,
2947
+ retry: Retry.Retry,
2948
+ }));
2949
+
2950
+ export type AdminSearchEmailsError = Forbidden | ForgejoOpError;
2951
+ /** Search users' email addresses */
2952
+ export const adminSearchEmails: API.OperationMethod<
2953
+ AdminSearchEmailsRequest,
2954
+ AdminSearchEmailsResponse,
2955
+ AdminSearchEmailsError,
2956
+ ForgejoOpContext
2957
+ > = /*@__PURE__*/ API.make(() => ({
2958
+ input: AdminSearchEmailsRequest,
2959
+ output: AdminSearchEmailsResponse,
2960
+ errors: [Forbidden],
2961
+ protocol: ForgejoProtocol,
2962
+ retry: Retry.Retry,
2963
+ }));
2964
+
2965
+ export type AdminSearchUsersError = Forbidden | ForgejoOpError;
2966
+ /** Search users according filter conditions */
2967
+ export const adminSearchUsers: API.OperationMethod<
2968
+ AdminSearchUsersRequest,
2969
+ AdminSearchUsersResponse,
2970
+ AdminSearchUsersError,
2971
+ ForgejoOpContext
2972
+ > = /*@__PURE__*/ API.make(() => ({
2973
+ input: AdminSearchUsersRequest,
2974
+ output: AdminSearchUsersResponse,
2975
+ errors: [Forbidden],
2976
+ protocol: ForgejoProtocol,
2977
+ retry: Retry.Retry,
2978
+ }));
2979
+
2980
+ export type AdminSetUserQuotaGroupsError =
2981
+ | BadRequest
2982
+ | Forbidden
2983
+ | NotFound
2984
+ | UnprocessableEntity
2985
+ | ForgejoOpError;
2986
+ /** Set the user's quota groups to a given list. */
2987
+ export const adminSetUserQuotaGroups: API.OperationMethod<
2988
+ AdminSetUserQuotaGroupsRequest,
2989
+ AdminSetUserQuotaGroupsResponse,
2990
+ AdminSetUserQuotaGroupsError,
2991
+ ForgejoOpContext
2992
+ > = /*@__PURE__*/ API.make(() => ({
2993
+ input: AdminSetUserQuotaGroupsRequest,
2994
+ output: AdminSetUserQuotaGroupsResponse,
2995
+ errors: [BadRequest, Forbidden, NotFound, UnprocessableEntity],
2996
+ protocol: ForgejoProtocol,
2997
+ retry: Retry.Retry,
2998
+ }));
2999
+
3000
+ export type DeleteAdminRunnerError = BadRequest | NotFound | ForgejoOpError;
3001
+ /** Delete a particular runner, no matter whether it is a global runner or scoped to an organization, user, or repository */
3002
+ export const deleteAdminRunner: API.OperationMethod<
3003
+ DeleteAdminRunnerRequest,
3004
+ DeleteAdminRunnerResponse,
3005
+ DeleteAdminRunnerError,
3006
+ ForgejoOpContext
3007
+ > = /*@__PURE__*/ API.make(() => ({
3008
+ input: DeleteAdminRunnerRequest,
3009
+ output: DeleteAdminRunnerResponse,
3010
+ errors: [BadRequest, NotFound],
3011
+ protocol: ForgejoProtocol,
3012
+ retry: Retry.Retry,
3013
+ }));
3014
+
3015
+ export type GetAdminRunnerError = BadRequest | NotFound | ForgejoOpError;
3016
+ /** Get a particular runner, no matter whether it is a global runner or scoped to an organization, user, or repository */
3017
+ export const getAdminRunner: API.OperationMethod<
3018
+ GetAdminRunnerRequest,
3019
+ ActionRunner,
3020
+ GetAdminRunnerError,
3021
+ ForgejoOpContext
3022
+ > = /*@__PURE__*/ API.make(() => ({
3023
+ input: GetAdminRunnerRequest,
3024
+ output: ActionRunner,
3025
+ errors: [BadRequest, NotFound],
3026
+ protocol: ForgejoProtocol,
3027
+ retry: Retry.Retry,
3028
+ }));
3029
+
3030
+ export type GetAdminRunnersError = BadRequest | NotFound | ForgejoOpError;
3031
+ /** Get all runners, no matter whether they are global runners or scoped to an organization, user, or repository */
3032
+ export const getAdminRunners: API.OperationMethod<
3033
+ GetAdminRunnersRequest,
3034
+ GetAdminRunnersResponse,
3035
+ GetAdminRunnersError,
3036
+ ForgejoOpContext
3037
+ > = /*@__PURE__*/ API.make(() => ({
3038
+ input: GetAdminRunnersRequest,
3039
+ output: GetAdminRunnersResponse,
3040
+ errors: [BadRequest, NotFound],
3041
+ protocol: ForgejoProtocol,
3042
+ retry: Retry.Retry,
3043
+ }));
3044
+
3045
+ export type ListAdminCronError = Forbidden | ForgejoOpError;
3046
+ /** List cron tasks */
3047
+ export const listAdminCron: API.OperationMethod<
3048
+ ListAdminCronRequest,
3049
+ ListAdminCronResponse,
3050
+ ListAdminCronError,
3051
+ ForgejoOpContext
3052
+ > = /*@__PURE__*/ API.make(() => ({
3053
+ input: ListAdminCronRequest,
3054
+ output: ListAdminCronResponse,
3055
+ errors: [Forbidden],
3056
+ protocol: ForgejoProtocol,
3057
+ retry: Retry.Retry,
3058
+ }));
3059
+
3060
+ export type ListAdminUnadoptedError = Forbidden | ForgejoOpError;
3061
+ /** List unadopted repositories */
3062
+ export const listAdminUnadopted: API.OperationMethod<
3063
+ ListAdminUnadoptedRequest,
3064
+ ListAdminUnadoptedResponse,
3065
+ ListAdminUnadoptedError,
3066
+ ForgejoOpContext
3067
+ > = /*@__PURE__*/ API.make(() => ({
3068
+ input: ListAdminUnadoptedRequest,
3069
+ output: ListAdminUnadoptedResponse,
3070
+ errors: [Forbidden],
3071
+ protocol: ForgejoProtocol,
3072
+ retry: Retry.Retry,
3073
+ }));
3074
+
3075
+ export type RegisterAdminRunnerError = BadRequest | NotFound | ForgejoOpError;
3076
+ /** Register a new global runner */
3077
+ export const registerAdminRunner: API.OperationMethod<
3078
+ RegisterAdminRunnerRequest,
3079
+ RegisterRunnerResponse,
3080
+ RegisterAdminRunnerError,
3081
+ ForgejoOpContext
3082
+ > = /*@__PURE__*/ API.make(() => ({
3083
+ input: RegisterAdminRunnerRequest,
3084
+ output: RegisterRunnerResponse,
3085
+ errors: [BadRequest, NotFound],
3086
+ protocol: ForgejoProtocol,
3087
+ retry: Retry.Retry,
3088
+ }));
3089
+
3090
+ export type RunAdminCronError = NotFound | ForgejoOpError;
3091
+ /** Run cron task */
3092
+ export const runAdminCron: API.OperationMethod<
3093
+ RunAdminCronRequest,
3094
+ RunAdminCronResponse,
3095
+ RunAdminCronError,
3096
+ ForgejoOpContext
3097
+ > = /*@__PURE__*/ API.make(() => ({
3098
+ input: RunAdminCronRequest,
3099
+ output: RunAdminCronResponse,
3100
+ errors: [NotFound],
3101
+ protocol: ForgejoProtocol,
3102
+ retry: Retry.Retry,
3103
+ }));