@scm-manager/ui-api 2.36.1 → 2.36.2-20220522-120507

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 (79) hide show
  1. package/build/index.d.ts +735 -0
  2. package/build/index.js +3200 -0
  3. package/build/index.mjs +3031 -0
  4. package/package.json +15 -10
  5. package/LICENSE.txt +0 -21
  6. package/src/ApiProvider.test.tsx +0 -60
  7. package/src/ApiProvider.tsx +0 -80
  8. package/src/LegacyContext.test.tsx +0 -52
  9. package/src/LegacyContext.tsx +0 -75
  10. package/src/admin.test.ts +0 -55
  11. package/src/admin.ts +0 -42
  12. package/src/alerts.ts +0 -107
  13. package/src/annotations.ts +0 -45
  14. package/src/apiKeys.ts +0 -82
  15. package/src/apiclient.test.ts +0 -126
  16. package/src/apiclient.ts +0 -336
  17. package/src/base.test.ts +0 -238
  18. package/src/base.ts +0 -120
  19. package/src/branches.test.ts +0 -234
  20. package/src/branches.ts +0 -201
  21. package/src/changesets.test.ts +0 -178
  22. package/src/changesets.ts +0 -82
  23. package/src/compare.ts +0 -90
  24. package/src/config.test.ts +0 -118
  25. package/src/config.ts +0 -60
  26. package/src/configLink.test.ts +0 -169
  27. package/src/configLink.ts +0 -89
  28. package/src/contentType.ts +0 -58
  29. package/src/diff.test.ts +0 -234
  30. package/src/diff.ts +0 -93
  31. package/src/errors.test.ts +0 -59
  32. package/src/errors.ts +0 -133
  33. package/src/fileContent.ts +0 -33
  34. package/src/groupSuggestions.ts +0 -32
  35. package/src/groups.test.ts +0 -241
  36. package/src/groups.ts +0 -141
  37. package/src/help/search/modal.de.ts +0 -33
  38. package/src/help/search/modal.en.ts +0 -33
  39. package/src/help/search/syntax.de.ts +0 -148
  40. package/src/help/search/syntax.en.ts +0 -145
  41. package/src/history.ts +0 -62
  42. package/src/import.ts +0 -114
  43. package/src/index.ts +0 -72
  44. package/src/keys.ts +0 -48
  45. package/src/links.test.ts +0 -99
  46. package/src/links.ts +0 -54
  47. package/src/login.test.ts +0 -240
  48. package/src/login.ts +0 -128
  49. package/src/loginInfo.ts +0 -43
  50. package/src/namespaceSuggestions.ts +0 -32
  51. package/src/namespaces.test.ts +0 -95
  52. package/src/namespaces.ts +0 -43
  53. package/src/notifications.ts +0 -183
  54. package/src/permissions.test.ts +0 -345
  55. package/src/permissions.ts +0 -202
  56. package/src/plugins.test.ts +0 -336
  57. package/src/plugins.ts +0 -259
  58. package/src/publicKeys.ts +0 -83
  59. package/src/repositories.test.ts +0 -508
  60. package/src/repositories.ts +0 -375
  61. package/src/repository-roles.test.ts +0 -229
  62. package/src/repository-roles.ts +0 -142
  63. package/src/reset.ts +0 -36
  64. package/src/search.ts +0 -153
  65. package/src/sources.test.ts +0 -233
  66. package/src/sources.ts +0 -136
  67. package/src/suggestions.ts +0 -47
  68. package/src/tags.test.ts +0 -272
  69. package/src/tags.ts +0 -118
  70. package/src/tests/createInfiniteCachingClient.ts +0 -37
  71. package/src/tests/createWrapper.tsx +0 -37
  72. package/src/tests/indexLinks.ts +0 -43
  73. package/src/urls.test.ts +0 -104
  74. package/src/urls.ts +0 -118
  75. package/src/usePluginCenterAuthInfo.ts +0 -91
  76. package/src/userSuggestions.ts +0 -32
  77. package/src/users.test.ts +0 -310
  78. package/src/users.ts +0 -240
  79. package/src/utils.ts +0 -29
@@ -0,0 +1,735 @@
1
+ import * as _scm_manager_ui_types from '@scm-manager/ui-types';
2
+ import { IndexResources, HalRepresentation, Me, GroupCollection, Group, GroupCreation, UserCollection, User, UserCreation, SelectValue, Namespace, RepositoryCollection, RepositoryCreation, Repository, RepositoryTypeCollection, ExportInfo, Paths, NamespaceCollection, NamespaceStrategies, BranchCollection, Branch, BranchDetails, BranchCreation, NamespaceAndName, ChangesetCollection, Changeset, TagCollection, Tag, Config, UpdateInfo, PluginCollection, PendingPlugins, Plugin, RepositoryRoleCollection, RepositoryRole, RepositoryRoleCreation, RepositoryVerbs, PermissionCollection, PermissionCreateEntry, Permission, GlobalPermissionsCollection, File as File$1, RepositoryType, RepositoryUrlImport, Diff, NotificationCollection, Notification, AlertsResponse, ApiKeysCollection, ApiKeyCreation, ApiKeyWithToken, ApiKey, PublicKeysCollection, PublicKeyCreation, PublicKey, ContentType, AnnotatedSource, SearchableType, QueryResult, LoginInfo, PluginCenterAuthenticationInfo } from '@scm-manager/ui-types';
3
+ export { ContentType } from '@scm-manager/ui-types';
4
+ import * as react_query from 'react-query';
5
+ import { FC } from 'react';
6
+
7
+ declare const contextPath: any;
8
+ declare function withContextPath(path: string): string;
9
+ declare function withEndingSlash(url: string): string;
10
+ declare function withStartingSlash(url: string): string;
11
+ declare function concat(base: string, ...parts: string[]): string;
12
+ declare function getNamespaceAndPageFromMatch(match: any): {
13
+ namespace: undefined;
14
+ page: number;
15
+ } | {
16
+ namespace: string;
17
+ page: number;
18
+ };
19
+ declare function getPageFromMatch(match: any): number;
20
+ declare function getQueryStringFromLocation(location: {
21
+ search?: string;
22
+ }): string | undefined;
23
+ declare function stripEndingSlash(url: string): string;
24
+ declare function matchedUrlFromMatch(match: any): string;
25
+ declare function matchedUrl(props: any): string;
26
+ declare function escapeUrlForRoute(url: string): string;
27
+ declare function unescapeUrlForRoute(url: string): string;
28
+
29
+ declare const urls_contextPath: typeof contextPath;
30
+ declare const urls_withContextPath: typeof withContextPath;
31
+ declare const urls_withEndingSlash: typeof withEndingSlash;
32
+ declare const urls_withStartingSlash: typeof withStartingSlash;
33
+ declare const urls_concat: typeof concat;
34
+ declare const urls_getNamespaceAndPageFromMatch: typeof getNamespaceAndPageFromMatch;
35
+ declare const urls_getPageFromMatch: typeof getPageFromMatch;
36
+ declare const urls_getQueryStringFromLocation: typeof getQueryStringFromLocation;
37
+ declare const urls_stripEndingSlash: typeof stripEndingSlash;
38
+ declare const urls_matchedUrlFromMatch: typeof matchedUrlFromMatch;
39
+ declare const urls_matchedUrl: typeof matchedUrl;
40
+ declare const urls_escapeUrlForRoute: typeof escapeUrlForRoute;
41
+ declare const urls_unescapeUrlForRoute: typeof unescapeUrlForRoute;
42
+ declare namespace urls {
43
+ export {
44
+ urls_contextPath as contextPath,
45
+ urls_withContextPath as withContextPath,
46
+ urls_withEndingSlash as withEndingSlash,
47
+ urls_withStartingSlash as withStartingSlash,
48
+ urls_concat as concat,
49
+ urls_getNamespaceAndPageFromMatch as getNamespaceAndPageFromMatch,
50
+ urls_getPageFromMatch as getPageFromMatch,
51
+ urls_getQueryStringFromLocation as getQueryStringFromLocation,
52
+ urls_stripEndingSlash as stripEndingSlash,
53
+ urls_matchedUrlFromMatch as matchedUrlFromMatch,
54
+ urls_matchedUrl as matchedUrl,
55
+ urls_escapeUrlForRoute as escapeUrlForRoute,
56
+ urls_unescapeUrlForRoute as unescapeUrlForRoute,
57
+ };
58
+ }
59
+
60
+ declare type Context = {
61
+ type: string;
62
+ id: string;
63
+ }[];
64
+ declare type Violation = {
65
+ path?: string;
66
+ message: string;
67
+ key?: string;
68
+ };
69
+ declare type AdditionalMessage = {
70
+ key?: string;
71
+ message?: string;
72
+ };
73
+ declare type BackendErrorContent = {
74
+ transactionId: string;
75
+ errorCode: string;
76
+ message: string;
77
+ url?: string;
78
+ context: Context;
79
+ violations: Violation[];
80
+ additionalMessages?: AdditionalMessage[];
81
+ };
82
+ declare class BackendError extends Error {
83
+ transactionId: string;
84
+ errorCode: string;
85
+ url: string | null | undefined;
86
+ context: Context;
87
+ statusCode: number;
88
+ violations: Violation[];
89
+ additionalMessages?: AdditionalMessage[];
90
+ constructor(content: BackendErrorContent, name: string, statusCode: number);
91
+ }
92
+ declare class UnauthorizedError extends Error {
93
+ statusCode: number;
94
+ constructor(message: string, statusCode: number);
95
+ }
96
+ declare class BadGatewayError extends Error {
97
+ statusCode: number;
98
+ constructor(message: string, statusCode: number);
99
+ }
100
+ declare class TokenExpiredError extends UnauthorizedError {
101
+ }
102
+ declare class ForbiddenError extends Error {
103
+ statusCode: number;
104
+ constructor(message: string, statusCode: number);
105
+ }
106
+ declare class NotFoundError extends BackendError {
107
+ constructor(content: BackendErrorContent, statusCode: number);
108
+ }
109
+ declare class ConflictError extends BackendError {
110
+ constructor(content: BackendErrorContent, statusCode: number);
111
+ }
112
+ declare class MissingLinkError extends Error {
113
+ name: string;
114
+ }
115
+ declare function createBackendError(content: BackendErrorContent, statusCode: number): BackendError;
116
+ declare function isBackendError(response: Response): boolean;
117
+ declare const TOKEN_EXPIRED_ERROR_CODE = "DDS8D8unr1";
118
+
119
+ declare type SubscriptionEvent = {
120
+ type: string;
121
+ };
122
+ declare type OpenEvent = SubscriptionEvent;
123
+ declare type ErrorEvent = SubscriptionEvent & {
124
+ error: Error;
125
+ };
126
+ declare type MessageEvent = SubscriptionEvent & {
127
+ data: string;
128
+ lastEventId?: string;
129
+ };
130
+ declare type MessageListeners = {
131
+ [eventType: string]: (event: MessageEvent) => void;
132
+ };
133
+ declare type SubscriptionContext = {
134
+ onOpen?: OpenEvent;
135
+ onMessage: MessageListeners;
136
+ onError?: ErrorEvent;
137
+ };
138
+ declare type SubscriptionArgument = MessageListeners | SubscriptionContext;
139
+ declare type Cancel = () => void;
140
+ declare const extractXsrfTokenFromCookie: (cookieString?: string | undefined) => any;
141
+ declare function createUrl(url: string): string;
142
+ declare function createUrlWithIdentifiers(url: string): string;
143
+ declare type ErrorListener = (error: Error) => void;
144
+ declare type RequestListener = (url: string, options?: RequestInit) => void;
145
+ declare class ApiClient {
146
+ errorListeners: ErrorListener[];
147
+ requestListeners: RequestListener[];
148
+ get: (url: string) => Promise<Response>;
149
+ post: (url: string, payload?: any, contentType?: string, additionalHeaders?: Record<string, string>) => Promise<Response>;
150
+ postText: (url: string, payload: string, additionalHeaders?: Record<string, string>) => Promise<Response>;
151
+ putText: (url: string, payload: string, additionalHeaders?: Record<string, string>) => Promise<Response>;
152
+ postBinary: (url: string, fileAppender: (p: FormData) => void, additionalHeaders?: Record<string, string>) => Promise<Response>;
153
+ put(url: string, payload: any, contentType?: string, additionalHeaders?: Record<string, string>): Promise<Response>;
154
+ head: (url: string) => Promise<Response>;
155
+ delete: (url: string) => Promise<Response>;
156
+ httpRequestWithJSONBody: (method: string, url: string, contentType: string, additionalHeaders: Record<string, string>, payload?: any) => Promise<Response>;
157
+ httpRequestWithTextBody: (method: string, url: string, additionalHeaders: Record<string, string> | undefined, payload: string) => Promise<Response>;
158
+ httpRequestWithBinaryBody: (options: RequestInit, url: string, contentType?: string | undefined) => Promise<Response>;
159
+ subscribe(url: string, argument: SubscriptionArgument): Cancel;
160
+ onRequest: (requestListener: RequestListener) => void;
161
+ onError: (errorListener: ErrorListener) => void;
162
+ private request;
163
+ private notifyRequestListeners;
164
+ private notifyAndRethrow;
165
+ }
166
+ declare const apiClient: ApiClient;
167
+
168
+ declare type ApiResult<T> = {
169
+ isLoading: boolean;
170
+ error: Error | null;
171
+ data?: T;
172
+ };
173
+ declare type ApiResultWithFetching<T> = ApiResult<T> & {
174
+ isFetching: boolean;
175
+ };
176
+ declare type DeleteFunction<T> = (entity: T) => void;
177
+ declare const useIndex: () => ApiResult<IndexResources>;
178
+ declare const useIndexLink: (name: string) => string | undefined;
179
+ declare const useIndexLinks: () => _scm_manager_ui_types.Links;
180
+ declare const useRequiredIndexLink: (name: string) => string;
181
+ declare const useVersion: () => string;
182
+ declare const useIndexJsonResource: <T>(name: string) => ApiResult<T>;
183
+ declare const useJsonResource: <T>(entity: HalRepresentation, name: string, key: string[]) => ApiResult<T>;
184
+ declare function fetchResourceFromLocationHeader(response: Response): Promise<Response>;
185
+ declare const getResponseJson: (response: Response) => Promise<any>;
186
+
187
+ declare const useMe: () => ApiResult<Me>;
188
+ declare const useRequiredMe: () => Me;
189
+ declare const useSubject: () => {
190
+ isAuthenticated: boolean;
191
+ isAnonymous: boolean;
192
+ isLoading: boolean;
193
+ error: Error | null;
194
+ me: Me | undefined;
195
+ };
196
+ declare const useLogin: () => {
197
+ login: ((username: string, password: string) => void) | undefined;
198
+ isLoading: boolean;
199
+ error: Error | null;
200
+ };
201
+ declare const useLogout: () => {
202
+ logout: (() => void) | undefined;
203
+ isLoading: boolean;
204
+ error: Error | null;
205
+ };
206
+
207
+ declare type UseGroupsRequest = {
208
+ page?: number | string;
209
+ search?: string;
210
+ };
211
+ declare const useGroups: (request?: UseGroupsRequest | undefined) => ApiResult<GroupCollection>;
212
+ declare const useGroup: (name: string) => ApiResult<Group>;
213
+ declare const useCreateGroup: () => {
214
+ create: (group: GroupCreation) => void;
215
+ isLoading: boolean;
216
+ error: Error | null;
217
+ group: Group | undefined;
218
+ };
219
+ declare const useUpdateGroup: () => {
220
+ update: (group: Group) => void;
221
+ isLoading: boolean;
222
+ error: Error | null;
223
+ isUpdated: boolean;
224
+ };
225
+ declare const useDeleteGroup: () => {
226
+ remove: (group: Group) => void;
227
+ isLoading: boolean;
228
+ error: Error | null;
229
+ isDeleted: boolean;
230
+ };
231
+
232
+ declare type UseUsersRequest = {
233
+ page?: number | string;
234
+ search?: string;
235
+ };
236
+ declare const useUsers: (request?: UseUsersRequest | undefined) => ApiResult<UserCollection>;
237
+ declare const useUser: (name: string) => ApiResult<User>;
238
+ declare const useCreateUser: () => {
239
+ create: (user: UserCreation) => void;
240
+ isLoading: boolean;
241
+ error: Error | null;
242
+ user: User | undefined;
243
+ };
244
+ declare const useUpdateUser: () => {
245
+ update: (user: User) => void;
246
+ isLoading: boolean;
247
+ error: Error | null;
248
+ isUpdated: boolean;
249
+ };
250
+ declare const useDeleteUser: () => {
251
+ remove: (user: User) => void;
252
+ isLoading: boolean;
253
+ error: Error | null;
254
+ isDeleted: boolean;
255
+ };
256
+ declare type ConvertToInternalRequest = {
257
+ user: User;
258
+ password: string;
259
+ };
260
+ declare const useConvertToInternal: () => {
261
+ convertToInternal: (user: User, password: string) => void;
262
+ isLoading: boolean;
263
+ error: Error | null;
264
+ isConverted: boolean;
265
+ };
266
+ declare const useConvertToExternal: () => {
267
+ convertToExternal: (user: User) => void;
268
+ isLoading: boolean;
269
+ error: Error | null;
270
+ isConverted: boolean;
271
+ };
272
+ declare const useSetUserPassword: (user: User) => {
273
+ setPassword: (newPassword: string) => void;
274
+ passwordOverwritten: boolean;
275
+ isLoading: boolean;
276
+ error: Error | null;
277
+ reset: () => void;
278
+ };
279
+ declare const useChangeUserPassword: (user: User | Me) => {
280
+ changePassword: (oldPassword: string, newPassword: string) => void;
281
+ passwordChanged: boolean;
282
+ isLoading: boolean;
283
+ error: Error | null;
284
+ reset: () => void;
285
+ };
286
+
287
+ declare const useSuggestions: (link?: string) => (query: string) => Promise<SelectValue[]>;
288
+
289
+ declare const useUserSuggestions: () => (query: string) => Promise<_scm_manager_ui_types.SelectValue[]>;
290
+
291
+ declare const useGroupSuggestions: () => (query: string) => Promise<_scm_manager_ui_types.SelectValue[]>;
292
+
293
+ declare const useNamespaceSuggestions: () => (query: string) => Promise<_scm_manager_ui_types.SelectValue[]>;
294
+
295
+ declare type UseRepositoriesRequest = {
296
+ namespace?: Namespace;
297
+ search?: string;
298
+ page?: number | string;
299
+ disabled?: boolean;
300
+ };
301
+ declare const useRepositories: (request?: UseRepositoriesRequest | undefined) => ApiResult<RepositoryCollection>;
302
+ declare const useCreateRepository: () => {
303
+ create: (repository: RepositoryCreation, initialize: boolean) => void;
304
+ isLoading: boolean;
305
+ error: Error | null;
306
+ repository: Repository | undefined;
307
+ };
308
+ declare const useRepositoryTypes: () => ApiResult<RepositoryTypeCollection>;
309
+ declare const useRepository: (namespace: string, name: string) => ApiResult<Repository>;
310
+ declare type UseDeleteRepositoryOptions = {
311
+ onSuccess: (repository: Repository) => void;
312
+ };
313
+ declare const useDeleteRepository: (options?: UseDeleteRepositoryOptions | undefined) => {
314
+ remove: (repository: Repository) => void;
315
+ isLoading: boolean;
316
+ error: Error | null;
317
+ isDeleted: boolean;
318
+ };
319
+ declare const useUpdateRepository: () => {
320
+ update: (repository: Repository) => void;
321
+ isLoading: boolean;
322
+ error: Error | null;
323
+ isUpdated: boolean;
324
+ };
325
+ declare const useArchiveRepository: () => {
326
+ archive: (repository: Repository) => void;
327
+ isLoading: boolean;
328
+ error: Error | null;
329
+ isArchived: boolean;
330
+ };
331
+ declare const useUnarchiveRepository: () => {
332
+ unarchive: (repository: Repository) => void;
333
+ isLoading: boolean;
334
+ error: Error | null;
335
+ isUnarchived: boolean;
336
+ };
337
+ declare const useRunHealthCheck: () => {
338
+ runHealthCheck: (repository: Repository) => void;
339
+ isLoading: boolean;
340
+ error: Error | null;
341
+ isRunning: boolean;
342
+ };
343
+ declare const useExportInfo: (repository: Repository) => ApiResultWithFetching<ExportInfo>;
344
+ declare type ExportOptions = {
345
+ compressed: boolean;
346
+ withMetadata: boolean;
347
+ password?: string;
348
+ };
349
+ declare const useExportRepository: () => {
350
+ exportRepository: (repository: Repository, options: ExportOptions) => void;
351
+ isLoading: boolean;
352
+ error: Error | null;
353
+ data: ExportInfo | undefined;
354
+ };
355
+ declare const usePaths: (repository: Repository, revision: string) => ApiResult<Paths>;
356
+ declare const useRenameRepository: (repository: Repository) => {
357
+ renameRepository: (namespace: string, name: string) => void;
358
+ isLoading: boolean;
359
+ error: Error | null;
360
+ isRenamed: boolean;
361
+ };
362
+
363
+ declare const useNamespaces: () => ApiResult<NamespaceCollection>;
364
+ declare const useNamespace: (name: string) => ApiResult<Namespace>;
365
+ declare const useNamespaceStrategies: () => ApiResult<NamespaceStrategies>;
366
+
367
+ declare const useBranches: (repository: Repository) => ApiResult<BranchCollection>;
368
+ declare const useBranch: (repository: Repository, name: string) => ApiResultWithFetching<Branch>;
369
+ declare const useBranchDetailsCollection: (repository: Repository, branches: Branch[]) => {
370
+ data: (BranchDetails | undefined)[] | undefined;
371
+ isLoading: boolean;
372
+ error: Error | null;
373
+ };
374
+ declare const useBranchDetails: (repository: Repository, branch: Branch) => react_query.UseQueryResult<BranchDetails, Error>;
375
+ declare const useCreateBranch: (repository: Repository) => {
376
+ create: (branch: BranchCreation) => void;
377
+ isLoading: boolean;
378
+ error: Error | null;
379
+ branch: Branch | undefined;
380
+ };
381
+ declare const useDeleteBranch: (repository: Repository) => {
382
+ remove: (branch: Branch) => void;
383
+ isLoading: boolean;
384
+ error: Error | null;
385
+ isDeleted: boolean;
386
+ };
387
+ declare type DefaultBranch = {
388
+ defaultBranch: string;
389
+ };
390
+ declare const useDefaultBranch: (repository: Repository) => ApiResult<DefaultBranch>;
391
+
392
+ declare type UseChangesetsRequest = {
393
+ branch?: Branch;
394
+ page?: string | number;
395
+ limit?: number;
396
+ };
397
+ declare const changesetQueryKey: (repository: NamespaceAndName, id: string) => unknown[];
398
+ declare const useChangesets: (repository: Repository, request?: UseChangesetsRequest | undefined) => ApiResultWithFetching<ChangesetCollection>;
399
+ declare const useChangeset: (repository: Repository, id: string) => ApiResult<Changeset>;
400
+
401
+ declare const useTags: (repository: Repository) => ApiResult<TagCollection>;
402
+ declare const useTag: (repository: Repository, name: string) => ApiResult<Tag>;
403
+ declare const useCreateTag: (repository: Repository, changeset: Changeset) => {
404
+ isLoading: boolean;
405
+ error: Error | null;
406
+ create: (name: string) => void;
407
+ tag: Tag | undefined;
408
+ };
409
+ declare const useDeleteTag: (repository: Repository) => {
410
+ remove: (tag: Tag) => void;
411
+ isLoading: boolean;
412
+ error: Error | null;
413
+ isDeleted: boolean;
414
+ };
415
+
416
+ declare const useConfig: () => ApiResult<Config>;
417
+ declare const useUpdateConfig: () => {
418
+ update: (config: Config) => void;
419
+ isLoading: boolean;
420
+ error: Error | null;
421
+ isUpdated: boolean;
422
+ reset: () => void;
423
+ };
424
+
425
+ declare const useUpdateInfo: () => ApiResult<UpdateInfo | null>;
426
+
427
+ declare type WaitForRestartOptions = {
428
+ initialDelay?: number;
429
+ timeout?: number;
430
+ };
431
+ declare const waitForRestartAfter: (promise: Promise<any>, { initialDelay, timeout }?: WaitForRestartOptions) => Promise<void>;
432
+ declare type UseAvailablePluginsOptions = {
433
+ enabled?: boolean;
434
+ };
435
+ declare const useAvailablePlugins: ({ enabled }?: UseAvailablePluginsOptions) => ApiResult<PluginCollection>;
436
+ declare type UseInstalledPluginsOptions = {
437
+ enabled?: boolean;
438
+ };
439
+ declare const useInstalledPlugins: ({ enabled }?: UseInstalledPluginsOptions) => ApiResult<PluginCollection>;
440
+ declare const usePendingPlugins: () => ApiResult<PendingPlugins>;
441
+ declare type RestartOptions = WaitForRestartOptions & {
442
+ restart?: boolean;
443
+ };
444
+ declare const useInstallPlugin: () => {
445
+ install: (plugin: Plugin, restartOptions?: RestartOptions) => void;
446
+ isLoading: boolean;
447
+ error: Error | null;
448
+ data: unknown;
449
+ isInstalled: boolean;
450
+ };
451
+ declare const useUninstallPlugin: () => {
452
+ uninstall: (plugin: Plugin, restartOptions?: RestartOptions) => void;
453
+ isLoading: boolean;
454
+ error: Error | null;
455
+ isUninstalled: boolean;
456
+ };
457
+ declare const useUpdatePlugins: () => {
458
+ update: (plugin: Plugin | PluginCollection, restartOptions?: RestartOptions) => void;
459
+ isLoading: boolean;
460
+ error: Error | null;
461
+ isUpdated: boolean;
462
+ };
463
+ declare const useExecutePendingPlugins: () => {
464
+ update: (pending: PendingPlugins, restartOptions?: WaitForRestartOptions) => void;
465
+ isLoading: boolean;
466
+ error: Error | null;
467
+ isExecuted: boolean;
468
+ };
469
+ declare const useCancelPendingPlugins: () => {
470
+ update: (pending: PendingPlugins) => void;
471
+ isLoading: boolean;
472
+ error: Error | null;
473
+ isCancelled: boolean;
474
+ };
475
+
476
+ declare type UseRepositoryRolesRequest = {
477
+ page?: number | string;
478
+ };
479
+ declare const useRepositoryRoles: (request?: UseRepositoryRolesRequest | undefined) => ApiResult<RepositoryRoleCollection>;
480
+ declare const useRepositoryRole: (name: string) => ApiResult<RepositoryRole>;
481
+ declare const useCreateRepositoryRole: () => {
482
+ create: (repositoryRole: RepositoryRoleCreation) => void;
483
+ isLoading: boolean;
484
+ error: Error | null;
485
+ repositoryRole: RepositoryRole | undefined;
486
+ };
487
+ declare const useUpdateRepositoryRole: () => {
488
+ update: (repositoryRole: RepositoryRole) => void;
489
+ isLoading: boolean;
490
+ error: Error | null;
491
+ isUpdated: boolean;
492
+ };
493
+ declare const useDeleteRepositoryRole: () => {
494
+ remove: (repositoryRole: RepositoryRole) => void;
495
+ isLoading: boolean;
496
+ error: Error | null;
497
+ isDeleted: boolean;
498
+ };
499
+
500
+ declare const useRepositoryVerbs: () => ApiResult<RepositoryVerbs>;
501
+ /**
502
+ * *IMPORTANT NOTE:* These are actually *REPOSITORY* permissions.
503
+ */
504
+ declare const useAvailablePermissions: () => {
505
+ isLoading: boolean;
506
+ error: Error | null;
507
+ data: {
508
+ repositoryVerbs: string[];
509
+ repositoryRoles: _scm_manager_ui_types.RepositoryRole[];
510
+ } | undefined;
511
+ };
512
+ declare const usePermissions: (namespaceOrRepository: Namespace | Repository) => ApiResult<PermissionCollection>;
513
+ declare const useCreatePermission: (namespaceOrRepository: Namespace | Repository) => {
514
+ isLoading: boolean;
515
+ error: Error | null;
516
+ create: (permission: PermissionCreateEntry) => void;
517
+ permission: Permission | undefined;
518
+ };
519
+ declare const useUpdatePermission: (namespaceOrRepository: Namespace | Repository) => {
520
+ isLoading: boolean;
521
+ error: Error | null;
522
+ update: (permission: Permission) => void;
523
+ isUpdated: boolean;
524
+ };
525
+ declare const useDeletePermission: (namespaceOrRepository: Namespace | Repository) => {
526
+ isLoading: boolean;
527
+ error: Error | null;
528
+ remove: (permission: Permission) => void;
529
+ isDeleted: boolean;
530
+ };
531
+ declare const useGroupPermissions: (group: Group) => ApiResult<GlobalPermissionsCollection>;
532
+ declare const useUserPermissions: (user: User) => ApiResult<GlobalPermissionsCollection>;
533
+ declare const useAvailableGlobalPermissions: () => ApiResult<Omit<GlobalPermissionsCollection, "_links">>;
534
+ declare const useSetUserPermissions: (user: User, permissions?: GlobalPermissionsCollection | undefined) => {
535
+ isLoading: boolean;
536
+ error: Error | null;
537
+ setPermissions: ((permissions: string[]) => void) | undefined;
538
+ isUpdated: boolean;
539
+ };
540
+ declare const useSetGroupPermissions: (group: Group, permissions?: GlobalPermissionsCollection | undefined) => {
541
+ isLoading: boolean;
542
+ error: Error | null;
543
+ setPermissions: ((permissions: string[]) => void) | undefined;
544
+ isUpdated: boolean;
545
+ };
546
+
547
+ declare type UseSourcesOptions = {
548
+ revision?: string;
549
+ path?: string;
550
+ refetchPartialInterval?: number;
551
+ enabled?: boolean;
552
+ collapse?: boolean;
553
+ };
554
+ declare const useSources: (repository: Repository, opts?: UseSourcesOptions) => {
555
+ isLoading: boolean;
556
+ error: Error | null;
557
+ data: File$1 | undefined;
558
+ isFetchingNextPage: boolean;
559
+ fetchNextPage: () => void;
560
+ };
561
+
562
+ declare const useImportLog: (logId: string) => ApiResult<string>;
563
+ declare const useImportRepositoryFromUrl: (repositoryType: RepositoryType) => {
564
+ isLoading: boolean;
565
+ error: Error | null;
566
+ importRepositoryFromUrl: (repository: RepositoryUrlImport) => void;
567
+ importedRepository: Repository | undefined;
568
+ };
569
+ declare const useImportRepositoryFromBundle: (repositoryType: RepositoryType) => {
570
+ isLoading: boolean;
571
+ error: Error | null;
572
+ importRepositoryFromBundle: (repository: RepositoryCreation, file: File, compressed?: boolean | undefined, password?: string | undefined) => void;
573
+ importedRepository: Repository | undefined;
574
+ };
575
+ declare const useImportFullRepository: (repositoryType: RepositoryType) => {
576
+ isLoading: boolean;
577
+ error: Error | null;
578
+ importFullRepository: (repository: RepositoryCreation, file: File, password?: string | undefined) => void;
579
+ importedRepository: Repository | undefined;
580
+ };
581
+
582
+ declare type UseDiffOptions = {
583
+ limit?: number;
584
+ refetchOnWindowFocus?: boolean;
585
+ };
586
+ declare const useDiff: (link: string, options?: UseDiffOptions) => {
587
+ isLoading: boolean;
588
+ error: Error | null;
589
+ isFetchingNextPage: boolean;
590
+ fetchNextPage: () => void;
591
+ data: Diff | undefined;
592
+ };
593
+
594
+ declare const useNotifications: () => {
595
+ data: NotificationCollection | undefined;
596
+ error: Error | null;
597
+ isLoading: boolean;
598
+ refetch: () => Promise<NotificationCollection | undefined>;
599
+ };
600
+ declare const useDismissNotification: (notification: Notification) => {
601
+ isLoading: boolean;
602
+ error: Error | null;
603
+ dismiss: () => void;
604
+ isCleared: boolean;
605
+ };
606
+ declare const useClearNotifications: (notificationCollection: NotificationCollection) => {
607
+ isLoading: boolean;
608
+ error: Error | null;
609
+ clear: () => void;
610
+ isCleared: boolean;
611
+ };
612
+ declare const useNotificationSubscription: (refetch: () => Promise<NotificationCollection | undefined>, notificationCollection?: NotificationCollection | undefined) => {
613
+ notifications: Notification[];
614
+ remove: (notification: Notification) => void;
615
+ clear: () => void;
616
+ };
617
+
618
+ declare const useAlerts: () => ApiResult<AlertsResponse>;
619
+
620
+ declare const useConfigLink: <C extends HalRepresentation>(link: string) => {
621
+ isLoading: boolean;
622
+ isUpdating: boolean;
623
+ isReadOnly: boolean;
624
+ error: Error | null;
625
+ initialConfiguration: C | undefined;
626
+ update: (configuration: C) => void;
627
+ isUpdated: boolean;
628
+ };
629
+
630
+ declare const useApiKeys: (user: User | Me) => ApiResult<ApiKeysCollection>;
631
+ declare const useCreateApiKey: (user: User | Me, apiKeys: ApiKeysCollection) => {
632
+ create: (key: ApiKeyCreation) => void;
633
+ isLoading: boolean;
634
+ error: Error | null;
635
+ apiKey: ApiKeyWithToken | undefined;
636
+ reset: () => void;
637
+ };
638
+ declare const useDeleteApiKey: (user: User | Me) => {
639
+ remove: (apiKey: ApiKey) => void;
640
+ isLoading: boolean;
641
+ error: Error | null;
642
+ isDeleted: boolean;
643
+ };
644
+
645
+ declare const CONTENT_TYPE_PUBLIC_KEY = "application/vnd.scmm-publicKey+json;v=2";
646
+ declare const usePublicKeys: (user: User | Me) => ApiResult<PublicKeysCollection>;
647
+ declare const useCreatePublicKey: (user: User | Me, publicKeys: PublicKeysCollection) => {
648
+ create: (key: PublicKeyCreation) => void;
649
+ isLoading: boolean;
650
+ error: Error | null;
651
+ apiKey: PublicKey | undefined;
652
+ reset: () => void;
653
+ };
654
+ declare const useDeletePublicKey: (user: User | Me) => {
655
+ remove: (publicKey: PublicKey) => void;
656
+ isLoading: boolean;
657
+ error: Error | null;
658
+ isDeleted: boolean;
659
+ };
660
+
661
+ declare const useFileContent: (file: File$1) => ApiResult<string>;
662
+
663
+ declare type UseHistoryRequest = {
664
+ page?: number | string;
665
+ };
666
+ declare const useHistory: (repository: Repository, revision: string, file: File$1, request?: UseHistoryRequest | undefined) => ApiResult<ChangesetCollection>;
667
+
668
+ declare const useContentType: (url: string) => ApiResultWithFetching<ContentType>;
669
+
670
+ declare const useAnnotations: (repository: Repository, revision: string, file: File$1) => ApiResultWithFetching<AnnotatedSource>;
671
+
672
+ declare type SearchOptions = {
673
+ type: string;
674
+ page?: number;
675
+ pageSize?: number;
676
+ };
677
+ declare const useSearchTypes: () => string[];
678
+ declare const useSearchableTypes: () => ApiResult<SearchableType[]>;
679
+ declare const useSearchCounts: (types: string[], query: string) => {
680
+ [type: string]: ApiResultWithFetching<number>;
681
+ };
682
+ declare const useSearch: (query: string, optionParam?: SearchOptions) => ApiResult<QueryResult>;
683
+ declare const useSearchHelpContent: (language: string) => {
684
+ data: "Our search uses Lucene and you may use the [full syntax](http://lucene.apache.org/core/8_9_0/index.html).\n\nTo learn about advanced search read our [Expert Search Site](/help/search-syntax).\n\n### Basic Search\n\n- The most relevant repositories are shown in the quick results.\n- Press \"enter\" or click the \"Show all results\" button to find more results for all entities like users or groups.\n- A multi-character wildcard (*) is added to your search by default.\n- Do not enter Wildcards in front of the search!" | "Unsere Suche basiert auf Lucene. Sie können die [vollständige Syntax](http://lucene.apache.org/core/8_9_0/index.html) nutzen.\n\nUm mehr über die fortgeschrittene Suche zu erfahren, lesen sie unsere [Expertenseite](/help/search-syntax).\n\n### Einfache Suche\n\n- Die relevantesten Repositories werden in den Quick Results angezeigt.\n- Über die Eingabe-Taste oder den Button \"Alle Ergebnisse anzeigen\" bekommen Sie Ergebnisse aller durchsuchten Entitäten wie Nutzern oder Gruppen.\n- Eine Wildcard für eine beliebige Anzahl an beliebigen Zeichen wird Ihrer Suche standardmäßig angehängt.\n- Geben Sie keine Wildcards vor dem Suchbegriff ein!" | undefined;
685
+ isLoading: boolean;
686
+ error: Error | undefined;
687
+ };
688
+ declare const useSearchSyntaxContent: (language: string) => {
689
+ data: "### Modifiers\n\nNote: You can not use wildcards as the first character of a search.\n\n<table>\n <tr>\n <th>Definition</th>\n <th>Example</th>\n </tr>\n <tr>\n <td>? - single character Wildcard</td>\n <td>Ultimate?Repo – finds e.g. Ultimate-Repo, Ultimate Repo, Ultimate+Repo</td>\n </tr>\n <tr>\n <td>* - multiple character Wildcard</td>\n <td>Ultimat*y - finds e.g. Ultimate Repository, Ultimate-Special-Repository, Ultimately</td>\n </tr>\n</table>\n\n\n### Ranges\n\nRange Queries allow one to match documents whose field(s) values are between the lower and upper bound specified by the Range Query. Range Queries can be inclusive or exclusive of the upper and lower bounds. Sorting is done lexicographically.\n\nRanges are not reserved to numerical fields. \n\n<table>\n <tr>\n <th>Definition</th>\n <th>Example</th>\n </tr>\n <tr>\n <td>[ … TO … ] - inclusive range</td>\n <td>creationDate:[1609459200000 TO 1612137600000] – finds e.G. repositories created between 2021-01-01 and 2021-02-01 </td>\n </tr>\n <tr>\n <td>{… TO …} - exclusive range</td>\n <td>name:{Aida TO Carmen} – finds e.G. repositories with names between Aida and Carmen, excluding these to values.</td>\n </tr>\n</table>\n\n\n### Boosting\n\nBoosting allows you to control the relevance of a document by boosting its term. \n\n<table>\n <tr>\n <th>Definition</th>\n <th>Example</th>\n </tr>\n <tr>\n <td>term^number</td>\n <td>ultimate^2 repository – makes the term \"ultimate\" more relevant. </td>\n </tr>\n</table>\n\n\nBy default, the boost factor is 1. Although the boost factor must be positive, it can be less than 1 (e.g. 0.2)\n\nBy default Repository names are boosted by 1.5, namespace by 1.25.\n\n## Boolean Operators\n\nNote: Logical Operators must be entered in upper case (e.g. \"AND\").\n\n<table>\n <tr>\n <th>Definition</th>\n <th>Example</th>\n </tr>\n <tr>\n <td>AND – both terms must be included</td>\n <td>Ultimate AND Repository – finds e.g. Ultimate Repository, Ultimate Special Repository</td>\n </tr>\n <tr>\n <td>OR – at least one of the terms must be included</td>\n <td>Ultimate OR Repository – finds e.g. Ultimate Repository, Ultimate User, Special Repository</td>\n </tr>\n <tr>\n <td>NOT – following term may not be included, \"!\" may be used alternatively</td>\n <td>Ultimate NOT Repository – finds e.g. Ultimate user, excludes e.g. Ultimate Repository</td>\n </tr>\n <tr>\n <td>– excludes following term from search</td>\n <td>Ultimate Repository -Special – finds e.g. Ultimate Repository, excludes e.g. Ultimate Special Repository</td>\n </tr>\n <tr>\n <td>– following term must be included</td>\n <td>Ultimate +Repository – finds e.g. my Repository, Ultimate Repository</td>\n </tr>\n</table>\n\n\n## Grouping\n\nSearch supports using parentheses to group clauses to form sub queries. This can be very useful if you want to control the boolean logic for a query.\n\n<table>\n <tr>\n <th>Definition</th>\n <th>Example</th>\n </tr>\n <tr>\n <td>() – terms inside parentheses are grouped together</td>\n <td>(Ultimate OR my) AND Repository – finds e.g. Ultimate Repository, my Repository, excludes e.g. Super Repository. Either \"Ultimate\" or “My” must exist, “Repository” must always exist.\n </td>\n </tr>\n</table>\n\n\n## Escaping Special Characters\n\nThe search supports escaping special characters that are part of the query syntax. The current list special characters are\n\n&plus; &minus; && || ! ( ) { } [ ] ^ \" ~ * ? : &bsol; /\n\nTo escape these characters use the \"&bsol;\" before the character. For example to search for (1+1):2 use the query:\n\n&bsol;(1&bsol;+1&bsol;)&bsol;:2\n\nSource: [https://javadoc.io/static/org.apache.lucene/lucene-queryparser/8.9.0/org/apache/lucene/queryparser/classic/package-summary.html#package.description](https://javadoc.io/static/org.apache.lucene/lucene-queryparser/8.9.0/org/apache/lucene/queryparser/classic/package-summary.html#package.description)" | "## Modifikatoren\n\nHinweis: Sie können keine Wildcards als erstes Zeichen einer Suche verwenden.\n\n<table>\n <tr>\n <th>Definition</th>\n <th>Beispiel</th>\n </tr>\n <tr>\n <td>? - Einzelzeichen-Wildcard</td>\n <td>Ultimate?Repo - findet z.B. Ultimate-Repo, Ultimate Repo, Ultimate+Repo</td>\n </tr>\n <tr>\n <td>* - mehrstelliger Platzhalter</td>\n <td>Ultimat*y - findet z.B. Ultimate Repository, Ultimates-Spezial-Repository, Ultimate</td>\n </tr>\n</table>\n\n\n### Bereiche\n\nBereichsabfragen ermöglichen den Abgleich von Dokumenten, deren Feldwerte zwischen der unteren und der oberen Grenze liegen, die in der Bereichsabfrage angegeben sind. Bereichsabfragen können die obere und untere Grenze einschließen oder ausschließen. Die Sortierung erfolgt lexikografisch.\n\nBereiche sind nicht auf numerische Felder beschränkt. \n\n<table>\n <tr>\n <th>Definition</th>\n <th>Beispiel</th>\n </tr>\n <tr>\n <td>[ … TO … ] - inklusiver Bereich</td>\n <td>creationDate:[1609459200000 TO 1612137600000] – findet z.B. Repositories, die zwischen dem 01.01.2021 und dem 01.02.2021 angelegt wurden.</td>\n </tr>\n <tr>\n <td>{… TO …} - ausschließender Bereich</td>\n <td>name:{Aida TO Carmen} – findet Namen zwischen Aida und Carmen, jedoch ohne die beiden Namen einzuschließen.</td>\n </tr>\n</table>\n\n\n## Boosten\n\nMit dem Boosting können Sie die Relevanz eines Dokuments steuern, indem Sie seinen Term verstärken.\n\n<table>\n <tr>\n <th>Definition</th>\n <th>Beispiel</th>\n </tr>\n <tr>\n <td>term^Zahl</td>\n <td>ultimate^2 repository – erhöht die Relevanz von „ultimate\"</td>\n </tr>\n</table>\n\n\nStandardmäßig ist der Boost-Faktor 1. Obwohl der Boost-Faktor positiv sein muss, kann er kleiner als 1 sein (z. B. 0,2)\n\nStandardmäßig werden Repository-Namen um 1,5 und Namespace-Namen um 1,25 geboostet.\n\n## Boolesche Operatoren\n\nHinweis: Logische Operatoren müssen in Großbuchstaben eingegeben werden (z. B. „AND\").\n\n<table>\n <tr>\n <th>Definition</th>\n <th>Beispiel</th>\n </tr>\n <tr>\n <td>AND – beide Terme müssen enthalten sein</td>\n <td>Ultimate AND Repository – findet z.B. Ultimate Repository, Ultimate Special Repository\n </td>\n </tr>\n <tr>\n <td>OR – mindestens einer der Terme muss enthalten sein</td>\n <td>Ultimate OR Repository – findet z.B.. Ultimate Repository, Ultimate User, Special Repository</td>\n </tr>\n <tr>\n <td>NOT – der nachfolgende Term darf nicht enthalten sein. „!\" kann alternativ verwendet werden.</td>\n <td>Ultimate NOT Repository – findet z.B.. Ultimate user, nicht jedoch z.B. Ultimate Repository</td>\n </tr>\n <tr>\n <td>– schließt den folgenden Term von der Suche aus</td>\n <td>Ultimate Repository -Special – findet z.B. Ultimate Repository, schließt z.B. Ultimate Special Repository aus</td>\n </tr>\n <tr>\n <td>– der folgende Term muss enthalten sein</td>\n <td>Ultimate +Repository – findet z.B. my Repository, Ultimate Repository</td>\n </tr>\n</table>\n\n\n## Gruppieren\n\nDie Suche unterstützt die Verwendung von Klammern zur Gruppierung von Begriffen, um Teilabfragen zu bilden. Dies kann sehr nützlich sein, wenn Sie die boolesche Logik für eine Abfrage steuern möchten.\n\n<table>\n <tr>\n <th>Definition</th>\n <th>Beispiel</th>\n </tr>\n <tr>\n <td>() – Terme zwischen den Klammern werden gruppiert</td>\n <td>(Ultimate OR my) AND Repository – findet z.B.. Ultimate Repository, my Repository, schließt z.B. Super Repository. Entweder \"Ultimate\" oder “My” müssen im Ergebnis existieren, “Repository” muss immer enthalten sein.\n </td>\n </tr>\n</table>\n\n\n## Umgang mit Sonderzeichen\n\nDie Suche unterstützt Sonderzeichen, die Teil der Abfragesyntax sind. Die aktuellen Sonderzeichen der Liste sind\n\n&plus; &minus; && || ! ( ) { } [ ] ^ \" ~ * ? : &bsol; /\n\nUm diese Zeichen zu nutzen, verwenden Sie „&bsol;\" vor dem jeweiligen Zeichen. Um zum Beispiel nach (1+1):2 zu suchen, verwenden Sie diese Abfrage:\n\n&bsol;(1&bsol;+1&bsol;)&bsol;:2\n\nPartiell übersetzt mit www.DeepL.com/Translator (kostenlose Version)\n\nQuelle [https://javadoc.io/static/org.apache.lucene/lucene-queryparser/8.9.0/org/apache/lucene/queryparser/classic/package-summary.html#package.description](https://javadoc.io/static/org.apache.lucene/lucene-queryparser/8.9.0/org/apache/lucene/queryparser/classic/package-summary.html#package.description)" | undefined;
690
+ isLoading: boolean;
691
+ error: Error | undefined;
692
+ };
693
+
694
+ declare const useLoginInfo: (disabled?: boolean) => ApiResult<LoginInfo>;
695
+
696
+ declare const usePluginCenterAuthInfo: () => ApiResult<PluginCenterAuthenticationInfo>;
697
+ declare const usePluginCenterLogout: (authenticationInfo: PluginCenterAuthenticationInfo) => {
698
+ logout: () => void;
699
+ isLoading: boolean;
700
+ error: Error | null;
701
+ };
702
+
703
+ declare function createChangesetUrl(repository: Repository, source: string, target: string): string;
704
+ declare function createDiffUrl(repository: Repository, source: string, target: string): string;
705
+ declare type UseIncomingChangesetsRequest = {
706
+ page?: string | number;
707
+ limit?: number;
708
+ };
709
+ declare const useIncomingChangesets: (repository: Repository, source: string, target: string, request?: UseIncomingChangesetsRequest | undefined) => ApiResultWithFetching<ChangesetCollection>;
710
+
711
+ declare const createQueryString: (params: Record<string, string>) => string;
712
+
713
+ declare const requiredLink: (object: HalRepresentation, name: string, subName?: string | undefined) => string;
714
+ declare const objectLink: (object: HalRepresentation, name: string) => string | null;
715
+
716
+ declare type BaseContext = {
717
+ onIndexFetched?: (index: IndexResources) => void;
718
+ onMeFetched?: (me: Me) => void;
719
+ };
720
+ declare type LegacyContext = BaseContext & {
721
+ initialize: () => void;
722
+ };
723
+ declare const useLegacyContext: () => LegacyContext;
724
+ declare const LegacyContextProvider: FC<BaseContext>;
725
+
726
+ declare type Props = LegacyContext & {
727
+ index?: IndexResources;
728
+ me?: Me;
729
+ devtools?: boolean;
730
+ };
731
+ declare const ApiProvider: FC<Props>;
732
+
733
+ declare const clearCache: () => Promise<void>;
734
+
735
+ export { AdditionalMessage, ApiProvider, Props as ApiProviderProps, ApiResult, ApiResultWithFetching, BackendError, BackendErrorContent, BadGatewayError, BaseContext, CONTENT_TYPE_PUBLIC_KEY, ConflictError, ConvertToInternalRequest, DeleteFunction, ForbiddenError, LegacyContext, LegacyContextProvider, MissingLinkError, NotFoundError, SearchOptions, TOKEN_EXPIRED_ERROR_CODE, TokenExpiredError, UnauthorizedError, UseAvailablePluginsOptions, UseDeleteRepositoryOptions, UseGroupsRequest, UseHistoryRequest, UseInstalledPluginsOptions, UseRepositoriesRequest, UseRepositoryRolesRequest, UseSourcesOptions, UseUsersRequest, Violation, apiClient, changesetQueryKey, clearCache, createBackendError, createChangesetUrl, createDiffUrl, createQueryString, createUrl, createUrlWithIdentifiers, extractXsrfTokenFromCookie, fetchResourceFromLocationHeader, getResponseJson, isBackendError, objectLink, requiredLink, urls, useAlerts, useAnnotations, useApiKeys, useArchiveRepository, useAvailableGlobalPermissions, useAvailablePermissions, useAvailablePlugins, useBranch, useBranchDetails, useBranchDetailsCollection, useBranches, useCancelPendingPlugins, useChangeUserPassword, useChangeset, useChangesets, useClearNotifications, useConfig, useConfigLink, useContentType, useConvertToExternal, useConvertToInternal, useCreateApiKey, useCreateBranch, useCreateGroup, useCreatePermission, useCreatePublicKey, useCreateRepository, useCreateRepositoryRole, useCreateTag, useCreateUser, useDefaultBranch, useDeleteApiKey, useDeleteBranch, useDeleteGroup, useDeletePermission, useDeletePublicKey, useDeleteRepository, useDeleteRepositoryRole, useDeleteTag, useDeleteUser, useDiff, useDismissNotification, useExecutePendingPlugins, useExportInfo, useExportRepository, useFileContent, useGroup, useGroupPermissions, useGroupSuggestions, useGroups, useHistory, useImportFullRepository, useImportLog, useImportRepositoryFromBundle, useImportRepositoryFromUrl, useIncomingChangesets, useIndex, useIndexJsonResource, useIndexLink, useIndexLinks, useInstallPlugin, useInstalledPlugins, useJsonResource, useLegacyContext, useLogin, useLoginInfo, useLogout, useMe, useNamespace, useNamespaceStrategies, useNamespaceSuggestions, useNamespaces, useNotificationSubscription, useNotifications, usePaths, usePendingPlugins, usePermissions, usePluginCenterAuthInfo, usePluginCenterLogout, usePublicKeys, useRenameRepository, useRepositories, useRepository, useRepositoryRole, useRepositoryRoles, useRepositoryTypes, useRepositoryVerbs, useRequiredIndexLink, useRequiredMe, useRunHealthCheck, useSearch, useSearchCounts, useSearchHelpContent, useSearchSyntaxContent, useSearchTypes, useSearchableTypes, useSetGroupPermissions, useSetUserPassword, useSetUserPermissions, useSources, useSubject, useSuggestions, useTag, useTags, useUnarchiveRepository, useUninstallPlugin, useUpdateConfig, useUpdateGroup, useUpdateInfo, useUpdatePermission, useUpdatePlugins, useUpdateRepository, useUpdateRepositoryRole, useUpdateUser, useUser, useUserPermissions, useUserSuggestions, useUsers, useVersion, waitForRestartAfter };