@sailpoint/api-client 2.2.51 → 2.2.52

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 (208) hide show
  1. package/dist/approvals/api.d.ts +121 -46
  2. package/dist/approvals/api.js +37 -24
  3. package/dist/approvals/api.js.map +1 -1
  4. package/dist/capabilities/api.d.ts +2 -2
  5. package/dist/capabilities/api.js +2 -2
  6. package/dist/capabilities/api.js.map +1 -1
  7. package/dist/capabilities/base.d.ts +2 -2
  8. package/dist/capabilities/base.js +2 -2
  9. package/dist/capabilities/base.js.map +1 -1
  10. package/dist/capabilities/common.d.ts +2 -2
  11. package/dist/capabilities/common.js +2 -2
  12. package/dist/capabilities/common.js.map +1 -1
  13. package/dist/capabilities/configuration.d.ts +2 -2
  14. package/dist/capabilities/configuration.js +2 -2
  15. package/dist/capabilities/configuration.js.map +1 -1
  16. package/dist/capabilities/index.d.ts +2 -2
  17. package/dist/capabilities/index.js +2 -2
  18. package/dist/capabilities/index.js.map +1 -1
  19. package/dist/credentials/api.d.ts +2 -2
  20. package/dist/credentials/api.js +2 -2
  21. package/dist/credentials/api.js.map +1 -1
  22. package/dist/credentials/base.d.ts +2 -2
  23. package/dist/credentials/base.js +2 -2
  24. package/dist/credentials/base.js.map +1 -1
  25. package/dist/credentials/common.d.ts +2 -2
  26. package/dist/credentials/common.js +2 -2
  27. package/dist/credentials/common.js.map +1 -1
  28. package/dist/credentials/configuration.d.ts +2 -2
  29. package/dist/credentials/configuration.js +2 -2
  30. package/dist/credentials/configuration.js.map +1 -1
  31. package/dist/credentials/index.d.ts +2 -2
  32. package/dist/credentials/index.js +2 -2
  33. package/dist/credentials/index.js.map +1 -1
  34. package/dist/devices/api.d.ts +2 -2
  35. package/dist/devices/api.js +2 -2
  36. package/dist/devices/api.js.map +1 -1
  37. package/dist/devices/base.d.ts +2 -2
  38. package/dist/devices/base.js +2 -2
  39. package/dist/devices/base.js.map +1 -1
  40. package/dist/devices/common.d.ts +2 -2
  41. package/dist/devices/common.js +2 -2
  42. package/dist/devices/common.js.map +1 -1
  43. package/dist/devices/configuration.d.ts +2 -2
  44. package/dist/devices/configuration.js +2 -2
  45. package/dist/devices/configuration.js.map +1 -1
  46. package/dist/devices/index.d.ts +2 -2
  47. package/dist/devices/index.js +2 -2
  48. package/dist/devices/index.js.map +1 -1
  49. package/dist/esm/approvals/api.js +36 -23
  50. package/dist/esm/capabilities/api.js +2 -2
  51. package/dist/esm/capabilities/base.js +2 -2
  52. package/dist/esm/capabilities/common.js +2 -2
  53. package/dist/esm/capabilities/configuration.js +2 -2
  54. package/dist/esm/capabilities/index.js +2 -2
  55. package/dist/esm/credentials/api.js +2 -2
  56. package/dist/esm/credentials/base.js +2 -2
  57. package/dist/esm/credentials/common.js +2 -2
  58. package/dist/esm/credentials/configuration.js +2 -2
  59. package/dist/esm/credentials/index.js +2 -2
  60. package/dist/esm/devices/api.js +2 -2
  61. package/dist/esm/devices/base.js +2 -2
  62. package/dist/esm/devices/common.js +2 -2
  63. package/dist/esm/devices/configuration.js +2 -2
  64. package/dist/esm/devices/index.js +2 -2
  65. package/dist/esm/generic_request_approval_config/api.js +2 -2
  66. package/dist/esm/generic_request_approval_config/base.js +2 -2
  67. package/dist/esm/generic_request_approval_config/common.js +2 -2
  68. package/dist/esm/generic_request_approval_config/configuration.js +2 -2
  69. package/dist/esm/generic_request_approval_config/index.js +2 -2
  70. package/dist/esm/index.js +6 -0
  71. package/dist/esm/machine_account_recommendation/api.js +2 -2
  72. package/dist/esm/machine_account_recommendation/base.js +2 -2
  73. package/dist/esm/machine_account_recommendation/common.js +2 -2
  74. package/dist/esm/machine_account_recommendation/configuration.js +2 -2
  75. package/dist/esm/machine_account_recommendation/index.js +2 -2
  76. package/dist/esm/machine_identities_lifecycle_actions/api.js +35 -32
  77. package/dist/esm/machine_identity_metadata/api.js +2 -2
  78. package/dist/esm/machine_identity_metadata/base.js +2 -2
  79. package/dist/esm/machine_identity_metadata/common.js +2 -2
  80. package/dist/esm/machine_identity_metadata/configuration.js +2 -2
  81. package/dist/esm/machine_identity_metadata/index.js +2 -2
  82. package/dist/esm/machine_mapping_metadata/api.js +2 -2
  83. package/dist/esm/machine_mapping_metadata/base.js +2 -2
  84. package/dist/esm/machine_mapping_metadata/common.js +2 -2
  85. package/dist/esm/machine_mapping_metadata/configuration.js +2 -2
  86. package/dist/esm/machine_mapping_metadata/index.js +2 -2
  87. package/dist/esm/nerm/common.js +2 -2
  88. package/dist/esm/nermv2025/common.js +2 -2
  89. package/dist/esm/reminder_escalations/api.js +522 -0
  90. package/dist/esm/reminder_escalations/base.js +83 -0
  91. package/dist/esm/reminder_escalations/common.js +287 -0
  92. package/dist/esm/reminder_escalations/configuration.js +42 -0
  93. package/dist/esm/reminder_escalations/index.js +15 -0
  94. package/dist/esm/roles/api.js +529 -2
  95. package/dist/esm/sources/api.js +2 -1
  96. package/dist/esm/ui_plugins/api.js +1657 -0
  97. package/dist/esm/ui_plugins/base.js +83 -0
  98. package/dist/esm/ui_plugins/common.js +287 -0
  99. package/dist/esm/ui_plugins/configuration.js +42 -0
  100. package/dist/esm/ui_plugins/index.js +15 -0
  101. package/dist/generic_request_approval_config/api.d.ts +2 -2
  102. package/dist/generic_request_approval_config/api.js +2 -2
  103. package/dist/generic_request_approval_config/api.js.map +1 -1
  104. package/dist/generic_request_approval_config/base.d.ts +2 -2
  105. package/dist/generic_request_approval_config/base.js +2 -2
  106. package/dist/generic_request_approval_config/base.js.map +1 -1
  107. package/dist/generic_request_approval_config/common.d.ts +2 -2
  108. package/dist/generic_request_approval_config/common.js +2 -2
  109. package/dist/generic_request_approval_config/common.js.map +1 -1
  110. package/dist/generic_request_approval_config/configuration.d.ts +2 -2
  111. package/dist/generic_request_approval_config/configuration.js +2 -2
  112. package/dist/generic_request_approval_config/configuration.js.map +1 -1
  113. package/dist/generic_request_approval_config/index.d.ts +2 -2
  114. package/dist/generic_request_approval_config/index.js +2 -2
  115. package/dist/generic_request_approval_config/index.js.map +1 -1
  116. package/dist/index.d.ts +6 -0
  117. package/dist/index.js +103 -97
  118. package/dist/index.js.map +1 -1
  119. package/dist/machine_account_recommendation/api.d.ts +2 -2
  120. package/dist/machine_account_recommendation/api.js +2 -2
  121. package/dist/machine_account_recommendation/api.js.map +1 -1
  122. package/dist/machine_account_recommendation/base.d.ts +2 -2
  123. package/dist/machine_account_recommendation/base.js +2 -2
  124. package/dist/machine_account_recommendation/base.js.map +1 -1
  125. package/dist/machine_account_recommendation/common.d.ts +2 -2
  126. package/dist/machine_account_recommendation/common.js +2 -2
  127. package/dist/machine_account_recommendation/common.js.map +1 -1
  128. package/dist/machine_account_recommendation/configuration.d.ts +2 -2
  129. package/dist/machine_account_recommendation/configuration.js +2 -2
  130. package/dist/machine_account_recommendation/configuration.js.map +1 -1
  131. package/dist/machine_account_recommendation/index.d.ts +2 -2
  132. package/dist/machine_account_recommendation/index.js +2 -2
  133. package/dist/machine_account_recommendation/index.js.map +1 -1
  134. package/dist/machine_identities_lifecycle_actions/api.d.ts +67 -63
  135. package/dist/machine_identities_lifecycle_actions/api.js +36 -33
  136. package/dist/machine_identities_lifecycle_actions/api.js.map +1 -1
  137. package/dist/machine_identity_metadata/api.d.ts +2 -2
  138. package/dist/machine_identity_metadata/api.js +2 -2
  139. package/dist/machine_identity_metadata/api.js.map +1 -1
  140. package/dist/machine_identity_metadata/base.d.ts +2 -2
  141. package/dist/machine_identity_metadata/base.js +2 -2
  142. package/dist/machine_identity_metadata/base.js.map +1 -1
  143. package/dist/machine_identity_metadata/common.d.ts +2 -2
  144. package/dist/machine_identity_metadata/common.js +2 -2
  145. package/dist/machine_identity_metadata/common.js.map +1 -1
  146. package/dist/machine_identity_metadata/configuration.d.ts +2 -2
  147. package/dist/machine_identity_metadata/configuration.js +2 -2
  148. package/dist/machine_identity_metadata/configuration.js.map +1 -1
  149. package/dist/machine_identity_metadata/index.d.ts +2 -2
  150. package/dist/machine_identity_metadata/index.js +2 -2
  151. package/dist/machine_identity_metadata/index.js.map +1 -1
  152. package/dist/machine_mapping_metadata/api.d.ts +2 -2
  153. package/dist/machine_mapping_metadata/api.js +2 -2
  154. package/dist/machine_mapping_metadata/api.js.map +1 -1
  155. package/dist/machine_mapping_metadata/base.d.ts +2 -2
  156. package/dist/machine_mapping_metadata/base.js +2 -2
  157. package/dist/machine_mapping_metadata/base.js.map +1 -1
  158. package/dist/machine_mapping_metadata/common.d.ts +2 -2
  159. package/dist/machine_mapping_metadata/common.js +2 -2
  160. package/dist/machine_mapping_metadata/common.js.map +1 -1
  161. package/dist/machine_mapping_metadata/configuration.d.ts +2 -2
  162. package/dist/machine_mapping_metadata/configuration.js +2 -2
  163. package/dist/machine_mapping_metadata/configuration.js.map +1 -1
  164. package/dist/machine_mapping_metadata/index.d.ts +2 -2
  165. package/dist/machine_mapping_metadata/index.js +2 -2
  166. package/dist/machine_mapping_metadata/index.js.map +1 -1
  167. package/dist/nerm/common.js +2 -2
  168. package/dist/nerm/common.js.map +1 -1
  169. package/dist/nermv2025/common.js +2 -2
  170. package/dist/nermv2025/common.js.map +1 -1
  171. package/dist/reminder_escalations/api.d.ts +665 -0
  172. package/dist/reminder_escalations/api.js +532 -0
  173. package/dist/reminder_escalations/api.js.map +1 -0
  174. package/dist/reminder_escalations/base.d.ts +66 -0
  175. package/dist/reminder_escalations/base.js +90 -0
  176. package/dist/reminder_escalations/base.js.map +1 -0
  177. package/dist/reminder_escalations/common.d.ts +65 -0
  178. package/dist/reminder_escalations/common.js +300 -0
  179. package/dist/reminder_escalations/common.js.map +1 -0
  180. package/dist/reminder_escalations/configuration.d.ts +91 -0
  181. package/dist/reminder_escalations/configuration.js +46 -0
  182. package/dist/reminder_escalations/configuration.js.map +1 -0
  183. package/dist/reminder_escalations/index.d.ts +13 -0
  184. package/dist/reminder_escalations/index.js +32 -0
  185. package/dist/reminder_escalations/index.js.map +1 -0
  186. package/dist/roles/api.d.ts +972 -88
  187. package/dist/roles/api.js +530 -3
  188. package/dist/roles/api.js.map +1 -1
  189. package/dist/sources/api.d.ts +2 -1
  190. package/dist/sources/api.js +2 -1
  191. package/dist/sources/api.js.map +1 -1
  192. package/dist/ui_plugins/api.d.ts +1514 -0
  193. package/dist/ui_plugins/api.js +1667 -0
  194. package/dist/ui_plugins/api.js.map +1 -0
  195. package/dist/ui_plugins/base.d.ts +66 -0
  196. package/dist/ui_plugins/base.js +90 -0
  197. package/dist/ui_plugins/base.js.map +1 -0
  198. package/dist/ui_plugins/common.d.ts +65 -0
  199. package/dist/ui_plugins/common.js +300 -0
  200. package/dist/ui_plugins/common.js.map +1 -0
  201. package/dist/ui_plugins/configuration.d.ts +91 -0
  202. package/dist/ui_plugins/configuration.js +46 -0
  203. package/dist/ui_plugins/configuration.js.map +1 -0
  204. package/dist/ui_plugins/index.d.ts +13 -0
  205. package/dist/ui_plugins/index.js +32 -0
  206. package/dist/ui_plugins/index.js.map +1 -0
  207. package/package.json +1 -1
  208. package/sailpoint-scopes.json +325 -1
@@ -0,0 +1,1514 @@
1
+ /**
2
+ * SailPoint Identity Security API - UI Plugins
3
+ * Use these APIs to interact with the SailPoint Identity Security platform to achieve repeatable, automated processes with greater scalability. We encourage you to join the SailPoint Developer Community forum at https://developer.sailpoint.com/discuss to connect with other developers using our APIs.
4
+ *
5
+ * The version of the OpenAPI document: v1
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { Configuration } from '../configuration';
13
+ import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios';
14
+ import type { RequestArgs } from './base';
15
+ import { BaseAPI } from './base';
16
+ /**
17
+ *
18
+ * @export
19
+ * @interface AssetFileEntry
20
+ */
21
+ export interface AssetFileEntry {
22
+ /**
23
+ * Relative path within the asset bundle directory
24
+ * @type {string}
25
+ * @memberof AssetFileEntry
26
+ */
27
+ 'path': string;
28
+ /**
29
+ * Uncompressed file size in bytes
30
+ * @type {number}
31
+ * @memberof AssetFileEntry
32
+ */
33
+ 'sizeBytes': number;
34
+ /**
35
+ * SHA-256 hex digest of file contents
36
+ * @type {string}
37
+ * @memberof AssetFileEntry
38
+ */
39
+ 'sha256': string;
40
+ }
41
+ /**
42
+ *
43
+ * @export
44
+ * @interface CreateUIPluginRequest
45
+ */
46
+ export interface CreateUIPluginRequest {
47
+ /**
48
+ * Human-readable deterministic alias unique per tenant. Letters, numbers, dashes only; no leading/trailing/consecutive dashes. Normalized to lowercase on write.
49
+ * @type {string}
50
+ * @memberof CreateUIPluginRequest
51
+ */
52
+ 'alias': string;
53
+ /**
54
+ * Localized string keyed by locale code. At least one non-empty locale entry is required on create/update. Conventionally includes `en`.
55
+ * @type {{ [key: string]: string; }}
56
+ * @memberof CreateUIPluginRequest
57
+ */
58
+ 'name': {
59
+ [key: string]: string;
60
+ };
61
+ /**
62
+ * Localized string keyed by locale code. At least one non-empty locale entry is required on create/update. Conventionally includes `en`.
63
+ * @type {{ [key: string]: string; }}
64
+ * @memberof CreateUIPluginRequest
65
+ */
66
+ 'description': {
67
+ [key: string]: string;
68
+ };
69
+ /**
70
+ * OAuth scopes the plugin requests at registration. Defaults to `[]`.
71
+ * @type {Array<string>}
72
+ * @memberof CreateUIPluginRequest
73
+ */
74
+ 'apiScopes'?: Array<string>;
75
+ /**
76
+ * UI extension point declarations (at least one required)
77
+ * @type {Array<PluginSlot>}
78
+ * @memberof CreateUIPluginRequest
79
+ */
80
+ 'slots': Array<PluginSlot>;
81
+ /**
82
+ * Map of directive name to allowlist values. Used for CSP, Permissions-Policy, and iframe-allow on create/update. Only platform allowlisted directives/keywords are accepted (see UMS validators).
83
+ * @type {{ [key: string]: Array<string>; }}
84
+ * @memberof CreateUIPluginRequest
85
+ */
86
+ 'contentSecurityPolicies': {
87
+ [key: string]: Array<string>;
88
+ };
89
+ /**
90
+ * Map of directive name to allowlist values. Used for CSP, Permissions-Policy, and iframe-allow on create/update. Only platform allowlisted directives/keywords are accepted (see UMS validators).
91
+ * @type {{ [key: string]: Array<string>; }}
92
+ * @memberof CreateUIPluginRequest
93
+ */
94
+ 'permissionPolicy': {
95
+ [key: string]: Array<string>;
96
+ };
97
+ /**
98
+ * Map of directive name to allowlist values. Used for CSP, Permissions-Policy, and iframe-allow on create/update. Only platform allowlisted directives/keywords are accepted (see UMS validators).
99
+ * @type {{ [key: string]: Array<string>; }}
100
+ * @memberof CreateUIPluginRequest
101
+ */
102
+ 'iframeAllow': {
103
+ [key: string]: Array<string>;
104
+ };
105
+ /**
106
+ * Opt-in iframe `sandbox` grants. Optional; omitted or empty means no grants. Defaults to `[]`.
107
+ * @type {Array<string>}
108
+ * @memberof CreateUIPluginRequest
109
+ */
110
+ 'iframeSandbox'?: Array<CreateUIPluginRequestIframeSandboxEnum>;
111
+ }
112
+ export declare const CreateUIPluginRequestIframeSandboxEnum: {
113
+ readonly AllowTopNavigation: "allow-top-navigation";
114
+ readonly AllowPopups: "allow-popups";
115
+ readonly AllowPopupsToEscapeSandbox: "allow-popups-to-escape-sandbox";
116
+ readonly AllowDownloads: "allow-downloads";
117
+ readonly AllowModals: "allow-modals";
118
+ };
119
+ export type CreateUIPluginRequestIframeSandboxEnum = typeof CreateUIPluginRequestIframeSandboxEnum[keyof typeof CreateUIPluginRequestIframeSandboxEnum];
120
+ /**
121
+ * A plugin instance plus the ephemeral `devDocumentHeaders` returned only when the instance is created. These headers are not returned when listing or fetching plugin instances.
122
+ * @export
123
+ * @interface CreateUIPluginResponse
124
+ */
125
+ export interface CreateUIPluginResponse {
126
+ /**
127
+ * Unique identifier of the plugin instance
128
+ * @type {string}
129
+ * @memberof CreateUIPluginResponse
130
+ */
131
+ 'pluginInstanceId': string;
132
+ /**
133
+ * Tenant-unique alias for the plugin instance, normalized to lowercase
134
+ * @type {string}
135
+ * @memberof CreateUIPluginResponse
136
+ */
137
+ 'alias': string;
138
+ /**
139
+ * Localized string keyed by locale code. At least one non-empty locale entry is required on create/update. Conventionally includes `en`.
140
+ * @type {{ [key: string]: string; }}
141
+ * @memberof CreateUIPluginResponse
142
+ */
143
+ 'name': {
144
+ [key: string]: string;
145
+ };
146
+ /**
147
+ * Localized string keyed by locale code. At least one non-empty locale entry is required on create/update. Conventionally includes `en`.
148
+ * @type {{ [key: string]: string; }}
149
+ * @memberof CreateUIPluginResponse
150
+ */
151
+ 'description': {
152
+ [key: string]: string;
153
+ };
154
+ /**
155
+ * OAuth scopes the plugin requests at registration
156
+ * @type {Array<string>}
157
+ * @memberof CreateUIPluginResponse
158
+ */
159
+ 'apiScopes': Array<string>;
160
+ /**
161
+ * Map of directive name to allowlist values. Used for CSP, Permissions-Policy, and iframe-allow on create/update. Only platform allowlisted directives/keywords are accepted (see UMS validators).
162
+ * @type {{ [key: string]: Array<string>; }}
163
+ * @memberof CreateUIPluginResponse
164
+ */
165
+ 'contentSecurityPolicies': {
166
+ [key: string]: Array<string>;
167
+ };
168
+ /**
169
+ * Map of directive name to allowlist values. Used for CSP, Permissions-Policy, and iframe-allow on create/update. Only platform allowlisted directives/keywords are accepted (see UMS validators).
170
+ * @type {{ [key: string]: Array<string>; }}
171
+ * @memberof CreateUIPluginResponse
172
+ */
173
+ 'permissionPolicy': {
174
+ [key: string]: Array<string>;
175
+ };
176
+ /**
177
+ * Map of directive name to allowlist values. Used for CSP, Permissions-Policy, and iframe-allow on create/update. Only platform allowlisted directives/keywords are accepted (see UMS validators).
178
+ * @type {{ [key: string]: Array<string>; }}
179
+ * @memberof CreateUIPluginResponse
180
+ */
181
+ 'iframeAllow': {
182
+ [key: string]: Array<string>;
183
+ };
184
+ /**
185
+ * Opt-in iframe `sandbox` grants, de-duplicated and sorted. Empty when the plugin has none, including instances created before this field existed.
186
+ * @type {Array<string>}
187
+ * @memberof CreateUIPluginResponse
188
+ */
189
+ 'iframeSandbox': Array<CreateUIPluginResponseIframeSandboxEnum>;
190
+ /**
191
+ * Currently active asset bundle, or null/omitted if none uploaded yet
192
+ * @type {string}
193
+ * @memberof CreateUIPluginResponse
194
+ */
195
+ 'activeAssetBundleId'?: string | null;
196
+ /**
197
+ *
198
+ * @type {Array<PluginSlot>}
199
+ * @memberof CreateUIPluginResponse
200
+ */
201
+ 'slots': Array<PluginSlot>;
202
+ /**
203
+ *
204
+ * @type {PluginInstanceState}
205
+ * @memberof CreateUIPluginResponse
206
+ */
207
+ 'state': PluginInstanceState;
208
+ /**
209
+ * ISO 8601 creation timestamp
210
+ * @type {string}
211
+ * @memberof CreateUIPluginResponse
212
+ */
213
+ 'created': string;
214
+ /**
215
+ * ISO 8601 last-modified timestamp
216
+ * @type {string}
217
+ * @memberof CreateUIPluginResponse
218
+ */
219
+ 'modified': string;
220
+ /**
221
+ *
222
+ * @type {PluginDocumentHeaders}
223
+ * @memberof CreateUIPluginResponse
224
+ */
225
+ 'devDocumentHeaders': PluginDocumentHeaders;
226
+ }
227
+ export declare const CreateUIPluginResponseIframeSandboxEnum: {
228
+ readonly AllowTopNavigation: "allow-top-navigation";
229
+ readonly AllowPopups: "allow-popups";
230
+ readonly AllowPopupsToEscapeSandbox: "allow-popups-to-escape-sandbox";
231
+ readonly AllowDownloads: "allow-downloads";
232
+ readonly AllowModals: "allow-modals";
233
+ };
234
+ export type CreateUIPluginResponseIframeSandboxEnum = typeof CreateUIPluginResponseIframeSandboxEnum[keyof typeof CreateUIPluginResponseIframeSandboxEnum];
235
+ /**
236
+ *
237
+ * @export
238
+ * @interface CreateUiPluginAssetBundleV1Request
239
+ */
240
+ export interface CreateUiPluginAssetBundleV1Request {
241
+ /**
242
+ * Repeatable form field. Send one part per file; use the part filename for the bundle-relative path (e.g. `assets/app.js`).
243
+ * @type {Array<File>}
244
+ * @memberof CreateUiPluginAssetBundleV1Request
245
+ */
246
+ 'file': Array<File>;
247
+ }
248
+ /**
249
+ *
250
+ * @export
251
+ * @interface ErrorMessageDto
252
+ */
253
+ export interface ErrorMessageDto {
254
+ /**
255
+ * The locale for the message text, a BCP 47 language tag.
256
+ * @type {string}
257
+ * @memberof ErrorMessageDto
258
+ */
259
+ 'locale'?: string | null;
260
+ /**
261
+ *
262
+ * @type {LocaleOrigin}
263
+ * @memberof ErrorMessageDto
264
+ */
265
+ 'localeOrigin'?: LocaleOrigin | null;
266
+ /**
267
+ * Actual text of the error message in the indicated locale.
268
+ * @type {string}
269
+ * @memberof ErrorMessageDto
270
+ */
271
+ 'text'?: string;
272
+ }
273
+ /**
274
+ *
275
+ * @export
276
+ * @interface ErrorResponseDto
277
+ */
278
+ export interface ErrorResponseDto {
279
+ /**
280
+ * Fine-grained error code providing more detail of the error.
281
+ * @type {string}
282
+ * @memberof ErrorResponseDto
283
+ */
284
+ 'detailCode'?: string;
285
+ /**
286
+ * Unique tracking id for the error.
287
+ * @type {string}
288
+ * @memberof ErrorResponseDto
289
+ */
290
+ 'trackingId'?: string;
291
+ /**
292
+ * Generic localized reason for error
293
+ * @type {Array<ErrorMessageDto>}
294
+ * @memberof ErrorResponseDto
295
+ */
296
+ 'messages'?: Array<ErrorMessageDto>;
297
+ /**
298
+ * Plain-text descriptive reasons to provide additional detail to the text provided in the messages field
299
+ * @type {Array<ErrorMessageDto>}
300
+ * @memberof ErrorResponseDto
301
+ */
302
+ 'causes'?: Array<ErrorMessageDto>;
303
+ }
304
+ /**
305
+ *
306
+ * @export
307
+ * @interface LinkUIPluginRequest
308
+ */
309
+ export interface LinkUIPluginRequest {
310
+ /**
311
+ * Local dev server port. UMS constructs `https://localhost:{port}` server-side. Clients do not send a URL.
312
+ * @type {number}
313
+ * @memberof LinkUIPluginRequest
314
+ */
315
+ 'port': number;
316
+ }
317
+ /**
318
+ *
319
+ * @export
320
+ * @interface LinkUIPluginResponse
321
+ */
322
+ export interface LinkUIPluginResponse {
323
+ /**
324
+ * Updated `devOverrides` map of `identityId` to `https://localhost:{port}`.
325
+ * @type {{ [key: string]: string; }}
326
+ * @memberof LinkUIPluginResponse
327
+ */
328
+ 'devOverrides': {
329
+ [key: string]: string;
330
+ };
331
+ /**
332
+ *
333
+ * @type {PluginDocumentHeaders}
334
+ * @memberof LinkUIPluginResponse
335
+ */
336
+ 'devDocumentHeaders': PluginDocumentHeaders;
337
+ }
338
+ /**
339
+ *
340
+ * @export
341
+ * @interface ListUiPluginsV1401Response
342
+ */
343
+ export interface ListUiPluginsV1401Response {
344
+ /**
345
+ * A message describing the error
346
+ * @type {any}
347
+ * @memberof ListUiPluginsV1401Response
348
+ */
349
+ 'error'?: any;
350
+ }
351
+ /**
352
+ *
353
+ * @export
354
+ * @interface ListUiPluginsV1429Response
355
+ */
356
+ export interface ListUiPluginsV1429Response {
357
+ /**
358
+ * A message describing the error
359
+ * @type {any}
360
+ * @memberof ListUiPluginsV1429Response
361
+ */
362
+ 'message'?: any;
363
+ }
364
+ /**
365
+ * An indicator of how the locale was selected. *DEFAULT* means the locale is the system default. *REQUEST* means the locale was selected from the request context (i.e., best match based on the *Accept-Language* header). Additional values may be added in the future without notice.
366
+ * @export
367
+ * @enum {string}
368
+ */
369
+ export declare const LocaleOrigin: {
370
+ readonly Default: "DEFAULT";
371
+ readonly Request: "REQUEST";
372
+ };
373
+ export type LocaleOrigin = typeof LocaleOrigin[keyof typeof LocaleOrigin];
374
+ /**
375
+ * Ephemeral plugin-document security headers, for example to give a local dev server the same CSP as the deployed plugin.
376
+ * @export
377
+ * @interface PluginDocumentHeaders
378
+ */
379
+ export interface PluginDocumentHeaders {
380
+ /**
381
+ * Effective `Content-Security-Policy` header value for plugin documents.
382
+ * @type {string}
383
+ * @memberof PluginDocumentHeaders
384
+ */
385
+ 'Content-Security-Policy': string;
386
+ /**
387
+ * Effective `Permissions-Policy` header value for plugin documents. Features are denied by default unless the plugin opts in.
388
+ * @type {string}
389
+ * @memberof PluginDocumentHeaders
390
+ */
391
+ 'Permissions-Policy': string;
392
+ }
393
+ /**
394
+ * Lifecycle state for a tenant plugin installation. DISABLED instances are omitted from active-slots delivery.
395
+ * @export
396
+ * @enum {string}
397
+ */
398
+ export declare const PluginInstanceState: {
399
+ readonly Enabled: "ENABLED";
400
+ readonly Disabled: "DISABLED";
401
+ };
402
+ export type PluginInstanceState = typeof PluginInstanceState[keyof typeof PluginInstanceState];
403
+ /**
404
+ *
405
+ * @export
406
+ * @interface PluginSlot
407
+ */
408
+ export interface PluginSlot {
409
+ /**
410
+ * Identifier referencing an entry in the slot registry
411
+ * @type {string}
412
+ * @memberof PluginSlot
413
+ */
414
+ 'slotId': string;
415
+ /**
416
+ * ISC capabilities the user must hold (AND logic) to see this plugin in the slot. Empty means unrestricted.
417
+ * @type {Array<string>}
418
+ * @memberof PluginSlot
419
+ */
420
+ 'requiredCapabilities'?: Array<PluginSlotRequiredCapabilitiesEnum>;
421
+ /**
422
+ * User GUIDs (32-char hex) limiting visibility during development. Empty means no user restriction.
423
+ * @type {Array<string>}
424
+ * @memberof PluginSlot
425
+ */
426
+ 'restrictToUsers'?: Array<string>;
427
+ }
428
+ export declare const PluginSlotRequiredCapabilitiesEnum: {
429
+ readonly OrgAdmin: "ORG_ADMIN";
430
+ readonly SourceAdmin: "SOURCE_ADMIN";
431
+ readonly ReportAdmin: "REPORT_ADMIN";
432
+ readonly AccessRequestAdmin: "ACCESS_REQUEST_ADMIN";
433
+ readonly RoleAdmin: "ROLE_ADMIN";
434
+ readonly CertAdmin: "CERT_ADMIN";
435
+ readonly Dashboard: "DASHBOARD";
436
+ readonly SourceSubadmin: "SOURCE_SUBADMIN";
437
+ readonly Helpdesk: "HELPDESK";
438
+ readonly CloudGovAdmin: "CLOUD_GOV_ADMIN";
439
+ readonly CloudGovUser: "CLOUD_GOV_USER";
440
+ };
441
+ export type PluginSlotRequiredCapabilitiesEnum = typeof PluginSlotRequiredCapabilitiesEnum[keyof typeof PluginSlotRequiredCapabilitiesEnum];
442
+ /**
443
+ * - active: accepts new plugin registrations - deprecated: still works; avoid for new plugins - removed: no longer functions
444
+ * @export
445
+ * @enum {string}
446
+ */
447
+ export declare const SlotState: {
448
+ readonly Active: "active";
449
+ readonly Deprecated: "deprecated";
450
+ readonly Removed: "removed";
451
+ };
452
+ export type SlotState = typeof SlotState[keyof typeof SlotState];
453
+ /**
454
+ * How the App Shell renders plugins in this slot (Armada 2.0 patterns)
455
+ * @export
456
+ * @enum {string}
457
+ */
458
+ export declare const SlotType: {
459
+ readonly FullPage: "full-page";
460
+ readonly Embed: "embed";
461
+ readonly Aside: "aside";
462
+ readonly Popup: "popup";
463
+ };
464
+ export type SlotType = typeof SlotType[keyof typeof SlotType];
465
+ /**
466
+ * API response for a plugin instance (tenantId and internal fields omitted)
467
+ * @export
468
+ * @interface UIPlugin
469
+ */
470
+ export interface UIPlugin {
471
+ /**
472
+ * Unique identifier of the plugin instance
473
+ * @type {string}
474
+ * @memberof UIPlugin
475
+ */
476
+ 'pluginInstanceId': string;
477
+ /**
478
+ * Tenant-unique alias for the plugin instance, normalized to lowercase
479
+ * @type {string}
480
+ * @memberof UIPlugin
481
+ */
482
+ 'alias': string;
483
+ /**
484
+ * Localized string keyed by locale code. At least one non-empty locale entry is required on create/update. Conventionally includes `en`.
485
+ * @type {{ [key: string]: string; }}
486
+ * @memberof UIPlugin
487
+ */
488
+ 'name': {
489
+ [key: string]: string;
490
+ };
491
+ /**
492
+ * Localized string keyed by locale code. At least one non-empty locale entry is required on create/update. Conventionally includes `en`.
493
+ * @type {{ [key: string]: string; }}
494
+ * @memberof UIPlugin
495
+ */
496
+ 'description': {
497
+ [key: string]: string;
498
+ };
499
+ /**
500
+ * OAuth scopes the plugin requests at registration
501
+ * @type {Array<string>}
502
+ * @memberof UIPlugin
503
+ */
504
+ 'apiScopes': Array<string>;
505
+ /**
506
+ * Map of directive name to allowlist values. Used for CSP, Permissions-Policy, and iframe-allow on create/update. Only platform allowlisted directives/keywords are accepted (see UMS validators).
507
+ * @type {{ [key: string]: Array<string>; }}
508
+ * @memberof UIPlugin
509
+ */
510
+ 'contentSecurityPolicies': {
511
+ [key: string]: Array<string>;
512
+ };
513
+ /**
514
+ * Map of directive name to allowlist values. Used for CSP, Permissions-Policy, and iframe-allow on create/update. Only platform allowlisted directives/keywords are accepted (see UMS validators).
515
+ * @type {{ [key: string]: Array<string>; }}
516
+ * @memberof UIPlugin
517
+ */
518
+ 'permissionPolicy': {
519
+ [key: string]: Array<string>;
520
+ };
521
+ /**
522
+ * Map of directive name to allowlist values. Used for CSP, Permissions-Policy, and iframe-allow on create/update. Only platform allowlisted directives/keywords are accepted (see UMS validators).
523
+ * @type {{ [key: string]: Array<string>; }}
524
+ * @memberof UIPlugin
525
+ */
526
+ 'iframeAllow': {
527
+ [key: string]: Array<string>;
528
+ };
529
+ /**
530
+ * Opt-in iframe `sandbox` grants, de-duplicated and sorted. Empty when the plugin has none, including instances created before this field existed.
531
+ * @type {Array<string>}
532
+ * @memberof UIPlugin
533
+ */
534
+ 'iframeSandbox': Array<UIPluginIframeSandboxEnum>;
535
+ /**
536
+ * Currently active asset bundle, or null/omitted if none uploaded yet
537
+ * @type {string}
538
+ * @memberof UIPlugin
539
+ */
540
+ 'activeAssetBundleId'?: string | null;
541
+ /**
542
+ *
543
+ * @type {Array<PluginSlot>}
544
+ * @memberof UIPlugin
545
+ */
546
+ 'slots': Array<PluginSlot>;
547
+ /**
548
+ *
549
+ * @type {PluginInstanceState}
550
+ * @memberof UIPlugin
551
+ */
552
+ 'state': PluginInstanceState;
553
+ /**
554
+ * ISO 8601 creation timestamp
555
+ * @type {string}
556
+ * @memberof UIPlugin
557
+ */
558
+ 'created': string;
559
+ /**
560
+ * ISO 8601 last-modified timestamp
561
+ * @type {string}
562
+ * @memberof UIPlugin
563
+ */
564
+ 'modified': string;
565
+ }
566
+ export declare const UIPluginIframeSandboxEnum: {
567
+ readonly AllowTopNavigation: "allow-top-navigation";
568
+ readonly AllowPopups: "allow-popups";
569
+ readonly AllowPopupsToEscapeSandbox: "allow-popups-to-escape-sandbox";
570
+ readonly AllowDownloads: "allow-downloads";
571
+ readonly AllowModals: "allow-modals";
572
+ };
573
+ export type UIPluginIframeSandboxEnum = typeof UIPluginIframeSandboxEnum[keyof typeof UIPluginIframeSandboxEnum];
574
+ /**
575
+ * API response for an asset bundle (tenantId omitted)
576
+ * @export
577
+ * @interface UIPluginAssetBundle
578
+ */
579
+ export interface UIPluginAssetBundle {
580
+ /**
581
+ * Unique identifier of the asset bundle
582
+ * @type {string}
583
+ * @memberof UIPluginAssetBundle
584
+ */
585
+ 'assetBundleId': string;
586
+ /**
587
+ * Plugin instance this bundle belongs to
588
+ * @type {string}
589
+ * @memberof UIPluginAssetBundle
590
+ */
591
+ 'pluginInstanceId': string;
592
+ /**
593
+ *
594
+ * @type {Array<AssetFileEntry>}
595
+ * @memberof UIPluginAssetBundle
596
+ */
597
+ 'assets': Array<AssetFileEntry>;
598
+ /**
599
+ * S3 key prefix where the bundle\'s files are stored
600
+ * @type {string}
601
+ * @memberof UIPluginAssetBundle
602
+ */
603
+ 'assetBasePath': string;
604
+ /**
605
+ * ISO 8601 timestamp after which S3 assets may be cleaned up; null/omitted if active
606
+ * @type {string}
607
+ * @memberof UIPluginAssetBundle
608
+ */
609
+ 'cleanupAfter'?: string | null;
610
+ /**
611
+ * ISO 8601 creation timestamp
612
+ * @type {string}
613
+ * @memberof UIPluginAssetBundle
614
+ */
615
+ 'created': string;
616
+ }
617
+ /**
618
+ *
619
+ * @export
620
+ * @interface UIPluginSlot
621
+ */
622
+ export interface UIPluginSlot {
623
+ /**
624
+ * Identifier of the UI extension point
625
+ * @type {string}
626
+ * @memberof UIPluginSlot
627
+ */
628
+ 'slotId': string;
629
+ /**
630
+ *
631
+ * @type {UIPluginSlotName}
632
+ * @memberof UIPluginSlot
633
+ */
634
+ 'name': UIPluginSlotName;
635
+ /**
636
+ *
637
+ * @type {UIPluginSlotDescription}
638
+ * @memberof UIPluginSlot
639
+ */
640
+ 'description': UIPluginSlotDescription;
641
+ /**
642
+ *
643
+ * @type {SlotState}
644
+ * @memberof UIPluginSlot
645
+ */
646
+ 'state': SlotState;
647
+ /**
648
+ * JSON Schema for data the App Shell provides to plugins in this slot
649
+ * @type {{ [key: string]: any; }}
650
+ * @memberof UIPluginSlot
651
+ */
652
+ 'inputSchema': {
653
+ [key: string]: any;
654
+ };
655
+ /**
656
+ *
657
+ * @type {SlotType}
658
+ * @memberof UIPluginSlot
659
+ */
660
+ 'slotType': SlotType;
661
+ /**
662
+ * Max concurrent plugins in this slot; `-1` means unlimited
663
+ * @type {number}
664
+ * @memberof UIPluginSlot
665
+ */
666
+ 'maxPlugins': number;
667
+ }
668
+ /**
669
+ * @type UIPluginSlotDescription
670
+ * Localized description. Single translated string by default; locale map when `allLangs=true`.
671
+ * @export
672
+ */
673
+ export type UIPluginSlotDescription = string | {
674
+ [key: string]: string;
675
+ };
676
+ /**
677
+ * @type UIPluginSlotName
678
+ * Localized display name. Single translated string by default; locale map when `allLangs=true`.
679
+ * @export
680
+ */
681
+ export type UIPluginSlotName = string | {
682
+ [key: string]: string;
683
+ };
684
+ /**
685
+ * All fields optional; only supplied fields are updated.
686
+ * @export
687
+ * @interface UpdateUIPluginRequest
688
+ */
689
+ export interface UpdateUIPluginRequest {
690
+ /**
691
+ * Replacement alias, unique per tenant and normalized to lowercase
692
+ * @type {string}
693
+ * @memberof UpdateUIPluginRequest
694
+ */
695
+ 'alias'?: string;
696
+ /**
697
+ * Localized string keyed by locale code. At least one non-empty locale entry is required on create/update. Conventionally includes `en`.
698
+ * @type {{ [key: string]: string; }}
699
+ * @memberof UpdateUIPluginRequest
700
+ */
701
+ 'name'?: {
702
+ [key: string]: string;
703
+ };
704
+ /**
705
+ * Localized string keyed by locale code. At least one non-empty locale entry is required on create/update. Conventionally includes `en`.
706
+ * @type {{ [key: string]: string; }}
707
+ * @memberof UpdateUIPluginRequest
708
+ */
709
+ 'description'?: {
710
+ [key: string]: string;
711
+ };
712
+ /**
713
+ * Replaces the existing list entirely when provided
714
+ * @type {Array<string>}
715
+ * @memberof UpdateUIPluginRequest
716
+ */
717
+ 'apiScopes'?: Array<string>;
718
+ /**
719
+ * Replaces the existing list when provided
720
+ * @type {Array<PluginSlot>}
721
+ * @memberof UpdateUIPluginRequest
722
+ */
723
+ 'slots'?: Array<PluginSlot>;
724
+ /**
725
+ * Map of directive name to allowlist values. Used for CSP, Permissions-Policy, and iframe-allow on create/update. Only platform allowlisted directives/keywords are accepted (see UMS validators).
726
+ * @type {{ [key: string]: Array<string>; }}
727
+ * @memberof UpdateUIPluginRequest
728
+ */
729
+ 'contentSecurityPolicies'?: {
730
+ [key: string]: Array<string>;
731
+ };
732
+ /**
733
+ * Map of directive name to allowlist values. Used for CSP, Permissions-Policy, and iframe-allow on create/update. Only platform allowlisted directives/keywords are accepted (see UMS validators).
734
+ * @type {{ [key: string]: Array<string>; }}
735
+ * @memberof UpdateUIPluginRequest
736
+ */
737
+ 'permissionPolicy'?: {
738
+ [key: string]: Array<string>;
739
+ };
740
+ /**
741
+ * Map of directive name to allowlist values. Used for CSP, Permissions-Policy, and iframe-allow on create/update. Only platform allowlisted directives/keywords are accepted (see UMS validators).
742
+ * @type {{ [key: string]: Array<string>; }}
743
+ * @memberof UpdateUIPluginRequest
744
+ */
745
+ 'iframeAllow'?: {
746
+ [key: string]: Array<string>;
747
+ };
748
+ /**
749
+ * Opt-in iframe `sandbox` grants. Replaces the existing list entirely when provided; send `[]` to clear all grants. Omit to leave unchanged.
750
+ * @type {Array<string>}
751
+ * @memberof UpdateUIPluginRequest
752
+ */
753
+ 'iframeSandbox'?: Array<UpdateUIPluginRequestIframeSandboxEnum>;
754
+ /**
755
+ *
756
+ * @type {PluginInstanceState}
757
+ * @memberof UpdateUIPluginRequest
758
+ */
759
+ 'state'?: PluginInstanceState;
760
+ }
761
+ export declare const UpdateUIPluginRequestIframeSandboxEnum: {
762
+ readonly AllowTopNavigation: "allow-top-navigation";
763
+ readonly AllowPopups: "allow-popups";
764
+ readonly AllowPopupsToEscapeSandbox: "allow-popups-to-escape-sandbox";
765
+ readonly AllowDownloads: "allow-downloads";
766
+ readonly AllowModals: "allow-modals";
767
+ };
768
+ export type UpdateUIPluginRequestIframeSandboxEnum = typeof UpdateUIPluginRequestIframeSandboxEnum[keyof typeof UpdateUIPluginRequestIframeSandboxEnum];
769
+ /**
770
+ * UIPluginsApi - axios parameter creator
771
+ * @export
772
+ */
773
+ export declare const UIPluginsApiAxiosParamCreator: (configuration?: Configuration) => {
774
+ /**
775
+ * Accepts `multipart/form-data` with one or more parts named **`file`**. The bundle-relative path for each object is taken from the part\'s multipart **filename** (`originalname`). Paths are normalized (no `..`, no absolute paths) and stored under `{pluginInstanceId}/{assetBundleId}/...` in S3. Folder structure is preserved, not flattened. Requirements: - Bundle must include root `index.html` - Configurable limits on file count, per-file bytes, and total bundle bytes - Product license `idn:ui-plugins-author` required (404 if missing) - Caller tenant id is present (400 `User context is invalid` otherwise). The plugin instance must belong to that tenant (404 otherwise). Creates a new immutable bundle record; previous active bundles are tombstoned via `cleanupAfter`. Emits the `UI_PLUGIN_ASSET_BUNDLE_CREATED` audit event.
776
+ * @summary Create a plugin asset bundle
777
+ * @param {string} pluginInstanceId UUID of the plugin instance
778
+ * @param {Array<File>} file Repeatable form field. Send one part per file; use the part filename for the bundle-relative path (e.g. &#x60;assets/app.js&#x60;).
779
+ * @param {string} [xSailPointExperimental] Use this header to enable this experimental API.
780
+ * @param {*} [axiosOptions] Override http request option.
781
+ * @throws {RequiredError}
782
+ */
783
+ createUiPluginAssetBundleV1: (pluginInstanceId: string, file: Array<File>, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig) => Promise<RequestArgs>;
784
+ /**
785
+ * Registers the caller\'s identity against a local HTTPS origin `https://localhost:{port}` in the instance\'s `devOverrides` map. Used by the `sail ui-plugins link` CLI flow. Requires product license `idn:ui-plugins-author` (404 if missing). Returns 400 `User context is invalid` when the caller has no tenant id or identity id. That identity id is the key in `devOverrides`, so the caller can only set their own local-dev URL. A plugin instance in another tenant is 404. Response body contains the updated `devOverrides` map (`identityId` to `https://localhost:{port}`) and `devDocumentHeaders`, the ephemeral `Content-Security-Policy` and `Permissions-Policy` header values a local dev server can use for CSP parity with the deployed plugin.
786
+ * @summary Create a plugin dev link
787
+ * @param {string} pluginInstanceId UUID of the plugin instance
788
+ * @param {LinkUIPluginRequest} linkUIPluginRequest
789
+ * @param {string} [xSailPointExperimental] Use this header to enable this experimental API.
790
+ * @param {*} [axiosOptions] Override http request option.
791
+ * @throws {RequiredError}
792
+ */
793
+ createUiPluginLinkV1: (pluginInstanceId: string, linkUIPluginRequest: LinkUIPluginRequest, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig) => Promise<RequestArgs>;
794
+ /**
795
+ * Registers a new tenant-scoped plugin installation. Enforces: - Max **20** plugin instances per tenant - Slot registry rules (`slotId` must exist; per-slot `maxPlugins`; no duplicate slotIds) - Alias uniqueness within the tenant (normalized lowercase) - CSP / Permissions-Policy / iframe-allow / iframe-sandbox allowlists - Product license `idn:ui-plugins-author` (404 if missing) - Caller tenant id is present (400 `User context is invalid` otherwise). The instance is created in that tenant. Emits Kafka audit event `UI_PLUGIN_INSTANCE_CREATED` on success. Response body is the created plugin instance plus `devDocumentHeaders`, the ephemeral `Content-Security-Policy` and `Permissions-Policy` header values a local dev server can use for CSP parity with the deployed plugin. They are returned only on create (and link), not when reading the instance.
796
+ * @summary Create a plugin instance
797
+ * @param {CreateUIPluginRequest} createUIPluginRequest
798
+ * @param {string} [xSailPointExperimental] Use this header to enable this experimental API.
799
+ * @param {*} [axiosOptions] Override http request option.
800
+ * @throws {RequiredError}
801
+ */
802
+ createUiPluginV1: (createUIPluginRequest: CreateUIPluginRequest, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig) => Promise<RequestArgs>;
803
+ /**
804
+ * Removes only the current caller\'s `identityId` entry from `devOverrides`. Other developers\' overrides are preserved. Requires product license `idn:ui-plugins-author` (404 if missing). Returns 400 `User context is invalid` when the caller has no tenant id or identity id. A plugin instance in another tenant is 404.
805
+ * @summary Delete a plugin dev link
806
+ * @param {string} pluginInstanceId UUID of the plugin instance
807
+ * @param {string} [xSailPointExperimental] Use this header to enable this experimental API.
808
+ * @param {*} [axiosOptions] Override http request option.
809
+ * @throws {RequiredError}
810
+ */
811
+ deleteUiPluginLinkV1: (pluginInstanceId: string, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig) => Promise<RequestArgs>;
812
+ /**
813
+ * Deletes the plugin instance and associated resources (asset bundles tombstoned for deferred cleanup). Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. The instance is deleted only when it belongs to that tenant; a mismatch is 404. Emits Kafka audit event `UI_PLUGIN_INSTANCE_DELETED` on success.
814
+ * @summary Delete a plugin instance
815
+ * @param {string} pluginInstanceId UUID of the plugin instance
816
+ * @param {string} [xSailPointExperimental] Use this header to enable this experimental API.
817
+ * @param {*} [axiosOptions] Override http request option.
818
+ * @throws {RequiredError}
819
+ */
820
+ deleteUiPluginV1: (pluginInstanceId: string, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig) => Promise<RequestArgs>;
821
+ /**
822
+ * Resolves a tenant-scoped alias to its `UiPlugin`. Returns 404 if no match; 409 if the alias is ambiguous (more than one match; should not occur after uniqueness enforcement). Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. The alias is resolved only within that tenant; no match is 404.
823
+ * @summary Get plugin by alias
824
+ * @param {string} alias Alias to resolve within the caller\&#39;s tenant
825
+ * @param {string} [xSailPointExperimental] Use this header to enable this experimental API.
826
+ * @param {*} [axiosOptions] Override http request option.
827
+ * @throws {RequiredError}
828
+ */
829
+ getUiPluginByAliasV1: (alias: string, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig) => Promise<RequestArgs>;
830
+ /**
831
+ * Returns a plugin instance by ID for the caller\'s tenant. Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. The instance is loaded only when it belongs to that tenant; a mismatch is 404.
832
+ * @summary Get a plugin instance
833
+ * @param {string} pluginInstanceId UUID of the plugin instance
834
+ * @param {string} [xSailPointExperimental] Use this header to enable this experimental API.
835
+ * @param {*} [axiosOptions] Override http request option.
836
+ * @throws {RequiredError}
837
+ */
838
+ getUiPluginV1: (pluginInstanceId: string, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig) => Promise<RequestArgs>;
839
+ /**
840
+ * Returns asset bundles for the given plugin instance (newest-first). Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. Bundles are listed only when the plugin instance belongs to that tenant; a mismatch is 404.
841
+ * @summary List plugin asset bundles
842
+ * @param {string} pluginInstanceId UUID of the plugin instance
843
+ * @param {number} [limit] Max number of results to return. See [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters) for more information.
844
+ * @param {number} [offset] Offset into the full result set. Usually specified with *limit* to paginate through the results. See [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters) for more information.
845
+ * @param {boolean} [count] If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count&#x3D;true** if that value will not be used. See [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters) for more information.
846
+ * @param {string} [xSailPointExperimental] Use this header to enable this experimental API.
847
+ * @param {*} [axiosOptions] Override http request option.
848
+ * @throws {RequiredError}
849
+ */
850
+ listUiPluginAssetBundlesV1: (pluginInstanceId: string, limit?: number, offset?: number, count?: boolean, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig) => Promise<RequestArgs>;
851
+ /**
852
+ * Returns the static slot registry (extension points the platform exposes). `name` / `description` are localized via AtlasJS TranslateService. Filtering uses API Standard Collection Parameters. `state` supports `eq` with values `active`, `deprecated`, or `removed`. Example: `filters=state eq \"active\"`. Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present).
853
+ * @summary List UI plugin slots
854
+ * @param {string} [filters] Filter results using the standard syntax described in [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **state**: *eq*
855
+ * @param {boolean} [allLangs] When &#x60;true&#x60;, &#x60;name&#x60; and &#x60;description&#x60; are returned as full locale maps instead of a single translated string.
856
+ * @param {string} [xSailPointExperimental] Use this header to enable this experimental API.
857
+ * @param {*} [axiosOptions] Override http request option.
858
+ * @throws {RequiredError}
859
+ */
860
+ listUiPluginSlotsV1: (filters?: string, allLangs?: boolean, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig) => Promise<RequestArgs>;
861
+ /**
862
+ * Returns plugin instances for the caller\'s tenant with optional V3-style pagination. When `count=true`, the response includes header `x-total-count`. Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. Results include only that tenant\'s plugin instances.
863
+ * @summary List plugin instances
864
+ * @param {number} [limit] Max number of results to return. See [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters) for more information.
865
+ * @param {number} [offset] Offset into the full result set. Usually specified with *limit* to paginate through the results. See [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters) for more information.
866
+ * @param {boolean} [count] If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count&#x3D;true** if that value will not be used. See [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters) for more information.
867
+ * @param {string} [xSailPointExperimental] Use this header to enable this experimental API.
868
+ * @param {*} [axiosOptions] Override http request option.
869
+ * @throws {RequiredError}
870
+ */
871
+ listUiPluginsV1: (limit?: number, offset?: number, count?: boolean, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig) => Promise<RequestArgs>;
872
+ /**
873
+ * Checks whether the given alias is available within the caller\'s tenant. Alias is normalized (trim + lowercase) server-side. Success returns an empty body (HTTP 200). Conflict when the alias is taken. UUID-shaped aliases are rejected as invalid. Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. The alias is evaluated only within that tenant.
874
+ * @summary Test plugin alias availability
875
+ * @param {string} alias Alias to validate (3-63 chars; letters, numbers, dashes; no leading/trailing/consecutive dashes)
876
+ * @param {string} [xSailPointExperimental] Use this header to enable this experimental API.
877
+ * @param {*} [axiosOptions] Override http request option.
878
+ * @throws {RequiredError}
879
+ */
880
+ testUiPluginAliasV1: (alias: string, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig) => Promise<RequestArgs>;
881
+ /**
882
+ * Patch any subset of mutable fields. When `slots` is provided, replaces the entire slots list and re-validates registry / maxPlugins rules. When `apiScopes` is provided, replaces the entire scopes list. When `iframeSandbox` is provided, replaces the entire sandbox grant list; unlike CSP / Permissions-Policy changes, it does not rotate the active asset bundle. `state` may be set to `ENABLED` or `DISABLED` (DISABLED omits the instance from active-slots delivery). Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. The instance is updated only when it belongs to that tenant; a mismatch is 404. Emits Kafka audit event `UI_PLUGIN_INSTANCE_UPDATED` on success.
883
+ * @summary Partially update a plugin instance
884
+ * @param {string} pluginInstanceId UUID of the plugin instance
885
+ * @param {UpdateUIPluginRequest} updateUIPluginRequest
886
+ * @param {string} [xSailPointExperimental] Use this header to enable this experimental API.
887
+ * @param {*} [axiosOptions] Override http request option.
888
+ * @throws {RequiredError}
889
+ */
890
+ updateUiPluginV1: (pluginInstanceId: string, updateUIPluginRequest: UpdateUIPluginRequest, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig) => Promise<RequestArgs>;
891
+ };
892
+ /**
893
+ * UIPluginsApi - functional programming interface
894
+ * @export
895
+ */
896
+ export declare const UIPluginsApiFp: (configuration?: Configuration) => {
897
+ /**
898
+ * Accepts `multipart/form-data` with one or more parts named **`file`**. The bundle-relative path for each object is taken from the part\'s multipart **filename** (`originalname`). Paths are normalized (no `..`, no absolute paths) and stored under `{pluginInstanceId}/{assetBundleId}/...` in S3. Folder structure is preserved, not flattened. Requirements: - Bundle must include root `index.html` - Configurable limits on file count, per-file bytes, and total bundle bytes - Product license `idn:ui-plugins-author` required (404 if missing) - Caller tenant id is present (400 `User context is invalid` otherwise). The plugin instance must belong to that tenant (404 otherwise). Creates a new immutable bundle record; previous active bundles are tombstoned via `cleanupAfter`. Emits the `UI_PLUGIN_ASSET_BUNDLE_CREATED` audit event.
899
+ * @summary Create a plugin asset bundle
900
+ * @param {string} pluginInstanceId UUID of the plugin instance
901
+ * @param {Array<File>} file Repeatable form field. Send one part per file; use the part filename for the bundle-relative path (e.g. &#x60;assets/app.js&#x60;).
902
+ * @param {string} [xSailPointExperimental] Use this header to enable this experimental API.
903
+ * @param {*} [axiosOptions] Override http request option.
904
+ * @throws {RequiredError}
905
+ */
906
+ createUiPluginAssetBundleV1(pluginInstanceId: string, file: Array<File>, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<UIPluginAssetBundle>>;
907
+ /**
908
+ * Registers the caller\'s identity against a local HTTPS origin `https://localhost:{port}` in the instance\'s `devOverrides` map. Used by the `sail ui-plugins link` CLI flow. Requires product license `idn:ui-plugins-author` (404 if missing). Returns 400 `User context is invalid` when the caller has no tenant id or identity id. That identity id is the key in `devOverrides`, so the caller can only set their own local-dev URL. A plugin instance in another tenant is 404. Response body contains the updated `devOverrides` map (`identityId` to `https://localhost:{port}`) and `devDocumentHeaders`, the ephemeral `Content-Security-Policy` and `Permissions-Policy` header values a local dev server can use for CSP parity with the deployed plugin.
909
+ * @summary Create a plugin dev link
910
+ * @param {string} pluginInstanceId UUID of the plugin instance
911
+ * @param {LinkUIPluginRequest} linkUIPluginRequest
912
+ * @param {string} [xSailPointExperimental] Use this header to enable this experimental API.
913
+ * @param {*} [axiosOptions] Override http request option.
914
+ * @throws {RequiredError}
915
+ */
916
+ createUiPluginLinkV1(pluginInstanceId: string, linkUIPluginRequest: LinkUIPluginRequest, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<LinkUIPluginResponse>>;
917
+ /**
918
+ * Registers a new tenant-scoped plugin installation. Enforces: - Max **20** plugin instances per tenant - Slot registry rules (`slotId` must exist; per-slot `maxPlugins`; no duplicate slotIds) - Alias uniqueness within the tenant (normalized lowercase) - CSP / Permissions-Policy / iframe-allow / iframe-sandbox allowlists - Product license `idn:ui-plugins-author` (404 if missing) - Caller tenant id is present (400 `User context is invalid` otherwise). The instance is created in that tenant. Emits Kafka audit event `UI_PLUGIN_INSTANCE_CREATED` on success. Response body is the created plugin instance plus `devDocumentHeaders`, the ephemeral `Content-Security-Policy` and `Permissions-Policy` header values a local dev server can use for CSP parity with the deployed plugin. They are returned only on create (and link), not when reading the instance.
919
+ * @summary Create a plugin instance
920
+ * @param {CreateUIPluginRequest} createUIPluginRequest
921
+ * @param {string} [xSailPointExperimental] Use this header to enable this experimental API.
922
+ * @param {*} [axiosOptions] Override http request option.
923
+ * @throws {RequiredError}
924
+ */
925
+ createUiPluginV1(createUIPluginRequest: CreateUIPluginRequest, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<CreateUIPluginResponse>>;
926
+ /**
927
+ * Removes only the current caller\'s `identityId` entry from `devOverrides`. Other developers\' overrides are preserved. Requires product license `idn:ui-plugins-author` (404 if missing). Returns 400 `User context is invalid` when the caller has no tenant id or identity id. A plugin instance in another tenant is 404.
928
+ * @summary Delete a plugin dev link
929
+ * @param {string} pluginInstanceId UUID of the plugin instance
930
+ * @param {string} [xSailPointExperimental] Use this header to enable this experimental API.
931
+ * @param {*} [axiosOptions] Override http request option.
932
+ * @throws {RequiredError}
933
+ */
934
+ deleteUiPluginLinkV1(pluginInstanceId: string, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
935
+ /**
936
+ * Deletes the plugin instance and associated resources (asset bundles tombstoned for deferred cleanup). Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. The instance is deleted only when it belongs to that tenant; a mismatch is 404. Emits Kafka audit event `UI_PLUGIN_INSTANCE_DELETED` on success.
937
+ * @summary Delete a plugin instance
938
+ * @param {string} pluginInstanceId UUID of the plugin instance
939
+ * @param {string} [xSailPointExperimental] Use this header to enable this experimental API.
940
+ * @param {*} [axiosOptions] Override http request option.
941
+ * @throws {RequiredError}
942
+ */
943
+ deleteUiPluginV1(pluginInstanceId: string, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
944
+ /**
945
+ * Resolves a tenant-scoped alias to its `UiPlugin`. Returns 404 if no match; 409 if the alias is ambiguous (more than one match; should not occur after uniqueness enforcement). Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. The alias is resolved only within that tenant; no match is 404.
946
+ * @summary Get plugin by alias
947
+ * @param {string} alias Alias to resolve within the caller\&#39;s tenant
948
+ * @param {string} [xSailPointExperimental] Use this header to enable this experimental API.
949
+ * @param {*} [axiosOptions] Override http request option.
950
+ * @throws {RequiredError}
951
+ */
952
+ getUiPluginByAliasV1(alias: string, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<UIPlugin>>;
953
+ /**
954
+ * Returns a plugin instance by ID for the caller\'s tenant. Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. The instance is loaded only when it belongs to that tenant; a mismatch is 404.
955
+ * @summary Get a plugin instance
956
+ * @param {string} pluginInstanceId UUID of the plugin instance
957
+ * @param {string} [xSailPointExperimental] Use this header to enable this experimental API.
958
+ * @param {*} [axiosOptions] Override http request option.
959
+ * @throws {RequiredError}
960
+ */
961
+ getUiPluginV1(pluginInstanceId: string, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<UIPlugin>>;
962
+ /**
963
+ * Returns asset bundles for the given plugin instance (newest-first). Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. Bundles are listed only when the plugin instance belongs to that tenant; a mismatch is 404.
964
+ * @summary List plugin asset bundles
965
+ * @param {string} pluginInstanceId UUID of the plugin instance
966
+ * @param {number} [limit] Max number of results to return. See [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters) for more information.
967
+ * @param {number} [offset] Offset into the full result set. Usually specified with *limit* to paginate through the results. See [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters) for more information.
968
+ * @param {boolean} [count] If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count&#x3D;true** if that value will not be used. See [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters) for more information.
969
+ * @param {string} [xSailPointExperimental] Use this header to enable this experimental API.
970
+ * @param {*} [axiosOptions] Override http request option.
971
+ * @throws {RequiredError}
972
+ */
973
+ listUiPluginAssetBundlesV1(pluginInstanceId: string, limit?: number, offset?: number, count?: boolean, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Array<UIPluginAssetBundle>>>;
974
+ /**
975
+ * Returns the static slot registry (extension points the platform exposes). `name` / `description` are localized via AtlasJS TranslateService. Filtering uses API Standard Collection Parameters. `state` supports `eq` with values `active`, `deprecated`, or `removed`. Example: `filters=state eq \"active\"`. Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present).
976
+ * @summary List UI plugin slots
977
+ * @param {string} [filters] Filter results using the standard syntax described in [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **state**: *eq*
978
+ * @param {boolean} [allLangs] When &#x60;true&#x60;, &#x60;name&#x60; and &#x60;description&#x60; are returned as full locale maps instead of a single translated string.
979
+ * @param {string} [xSailPointExperimental] Use this header to enable this experimental API.
980
+ * @param {*} [axiosOptions] Override http request option.
981
+ * @throws {RequiredError}
982
+ */
983
+ listUiPluginSlotsV1(filters?: string, allLangs?: boolean, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Array<UIPluginSlot>>>;
984
+ /**
985
+ * Returns plugin instances for the caller\'s tenant with optional V3-style pagination. When `count=true`, the response includes header `x-total-count`. Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. Results include only that tenant\'s plugin instances.
986
+ * @summary List plugin instances
987
+ * @param {number} [limit] Max number of results to return. See [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters) for more information.
988
+ * @param {number} [offset] Offset into the full result set. Usually specified with *limit* to paginate through the results. See [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters) for more information.
989
+ * @param {boolean} [count] If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count&#x3D;true** if that value will not be used. See [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters) for more information.
990
+ * @param {string} [xSailPointExperimental] Use this header to enable this experimental API.
991
+ * @param {*} [axiosOptions] Override http request option.
992
+ * @throws {RequiredError}
993
+ */
994
+ listUiPluginsV1(limit?: number, offset?: number, count?: boolean, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Array<UIPlugin>>>;
995
+ /**
996
+ * Checks whether the given alias is available within the caller\'s tenant. Alias is normalized (trim + lowercase) server-side. Success returns an empty body (HTTP 200). Conflict when the alias is taken. UUID-shaped aliases are rejected as invalid. Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. The alias is evaluated only within that tenant.
997
+ * @summary Test plugin alias availability
998
+ * @param {string} alias Alias to validate (3-63 chars; letters, numbers, dashes; no leading/trailing/consecutive dashes)
999
+ * @param {string} [xSailPointExperimental] Use this header to enable this experimental API.
1000
+ * @param {*} [axiosOptions] Override http request option.
1001
+ * @throws {RequiredError}
1002
+ */
1003
+ testUiPluginAliasV1(alias: string, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
1004
+ /**
1005
+ * Patch any subset of mutable fields. When `slots` is provided, replaces the entire slots list and re-validates registry / maxPlugins rules. When `apiScopes` is provided, replaces the entire scopes list. When `iframeSandbox` is provided, replaces the entire sandbox grant list; unlike CSP / Permissions-Policy changes, it does not rotate the active asset bundle. `state` may be set to `ENABLED` or `DISABLED` (DISABLED omits the instance from active-slots delivery). Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. The instance is updated only when it belongs to that tenant; a mismatch is 404. Emits Kafka audit event `UI_PLUGIN_INSTANCE_UPDATED` on success.
1006
+ * @summary Partially update a plugin instance
1007
+ * @param {string} pluginInstanceId UUID of the plugin instance
1008
+ * @param {UpdateUIPluginRequest} updateUIPluginRequest
1009
+ * @param {string} [xSailPointExperimental] Use this header to enable this experimental API.
1010
+ * @param {*} [axiosOptions] Override http request option.
1011
+ * @throws {RequiredError}
1012
+ */
1013
+ updateUiPluginV1(pluginInstanceId: string, updateUIPluginRequest: UpdateUIPluginRequest, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<UIPlugin>>;
1014
+ };
1015
+ /**
1016
+ * UIPluginsApi - factory interface
1017
+ * @export
1018
+ */
1019
+ export declare const UIPluginsApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
1020
+ /**
1021
+ * Accepts `multipart/form-data` with one or more parts named **`file`**. The bundle-relative path for each object is taken from the part\'s multipart **filename** (`originalname`). Paths are normalized (no `..`, no absolute paths) and stored under `{pluginInstanceId}/{assetBundleId}/...` in S3. Folder structure is preserved, not flattened. Requirements: - Bundle must include root `index.html` - Configurable limits on file count, per-file bytes, and total bundle bytes - Product license `idn:ui-plugins-author` required (404 if missing) - Caller tenant id is present (400 `User context is invalid` otherwise). The plugin instance must belong to that tenant (404 otherwise). Creates a new immutable bundle record; previous active bundles are tombstoned via `cleanupAfter`. Emits the `UI_PLUGIN_ASSET_BUNDLE_CREATED` audit event.
1022
+ * @summary Create a plugin asset bundle
1023
+ * @param {UIPluginsApiCreateUiPluginAssetBundleV1Request} requestParameters Request parameters.
1024
+ * @param {*} [axiosOptions] Override http request option.
1025
+ * @throws {RequiredError}
1026
+ */
1027
+ createUiPluginAssetBundleV1(requestParameters: UIPluginsApiCreateUiPluginAssetBundleV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise<UIPluginAssetBundle>;
1028
+ /**
1029
+ * Registers the caller\'s identity against a local HTTPS origin `https://localhost:{port}` in the instance\'s `devOverrides` map. Used by the `sail ui-plugins link` CLI flow. Requires product license `idn:ui-plugins-author` (404 if missing). Returns 400 `User context is invalid` when the caller has no tenant id or identity id. That identity id is the key in `devOverrides`, so the caller can only set their own local-dev URL. A plugin instance in another tenant is 404. Response body contains the updated `devOverrides` map (`identityId` to `https://localhost:{port}`) and `devDocumentHeaders`, the ephemeral `Content-Security-Policy` and `Permissions-Policy` header values a local dev server can use for CSP parity with the deployed plugin.
1030
+ * @summary Create a plugin dev link
1031
+ * @param {UIPluginsApiCreateUiPluginLinkV1Request} requestParameters Request parameters.
1032
+ * @param {*} [axiosOptions] Override http request option.
1033
+ * @throws {RequiredError}
1034
+ */
1035
+ createUiPluginLinkV1(requestParameters: UIPluginsApiCreateUiPluginLinkV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise<LinkUIPluginResponse>;
1036
+ /**
1037
+ * Registers a new tenant-scoped plugin installation. Enforces: - Max **20** plugin instances per tenant - Slot registry rules (`slotId` must exist; per-slot `maxPlugins`; no duplicate slotIds) - Alias uniqueness within the tenant (normalized lowercase) - CSP / Permissions-Policy / iframe-allow / iframe-sandbox allowlists - Product license `idn:ui-plugins-author` (404 if missing) - Caller tenant id is present (400 `User context is invalid` otherwise). The instance is created in that tenant. Emits Kafka audit event `UI_PLUGIN_INSTANCE_CREATED` on success. Response body is the created plugin instance plus `devDocumentHeaders`, the ephemeral `Content-Security-Policy` and `Permissions-Policy` header values a local dev server can use for CSP parity with the deployed plugin. They are returned only on create (and link), not when reading the instance.
1038
+ * @summary Create a plugin instance
1039
+ * @param {UIPluginsApiCreateUiPluginV1Request} requestParameters Request parameters.
1040
+ * @param {*} [axiosOptions] Override http request option.
1041
+ * @throws {RequiredError}
1042
+ */
1043
+ createUiPluginV1(requestParameters: UIPluginsApiCreateUiPluginV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise<CreateUIPluginResponse>;
1044
+ /**
1045
+ * Removes only the current caller\'s `identityId` entry from `devOverrides`. Other developers\' overrides are preserved. Requires product license `idn:ui-plugins-author` (404 if missing). Returns 400 `User context is invalid` when the caller has no tenant id or identity id. A plugin instance in another tenant is 404.
1046
+ * @summary Delete a plugin dev link
1047
+ * @param {UIPluginsApiDeleteUiPluginLinkV1Request} requestParameters Request parameters.
1048
+ * @param {*} [axiosOptions] Override http request option.
1049
+ * @throws {RequiredError}
1050
+ */
1051
+ deleteUiPluginLinkV1(requestParameters: UIPluginsApiDeleteUiPluginLinkV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise<void>;
1052
+ /**
1053
+ * Deletes the plugin instance and associated resources (asset bundles tombstoned for deferred cleanup). Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. The instance is deleted only when it belongs to that tenant; a mismatch is 404. Emits Kafka audit event `UI_PLUGIN_INSTANCE_DELETED` on success.
1054
+ * @summary Delete a plugin instance
1055
+ * @param {UIPluginsApiDeleteUiPluginV1Request} requestParameters Request parameters.
1056
+ * @param {*} [axiosOptions] Override http request option.
1057
+ * @throws {RequiredError}
1058
+ */
1059
+ deleteUiPluginV1(requestParameters: UIPluginsApiDeleteUiPluginV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise<void>;
1060
+ /**
1061
+ * Resolves a tenant-scoped alias to its `UiPlugin`. Returns 404 if no match; 409 if the alias is ambiguous (more than one match; should not occur after uniqueness enforcement). Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. The alias is resolved only within that tenant; no match is 404.
1062
+ * @summary Get plugin by alias
1063
+ * @param {UIPluginsApiGetUiPluginByAliasV1Request} requestParameters Request parameters.
1064
+ * @param {*} [axiosOptions] Override http request option.
1065
+ * @throws {RequiredError}
1066
+ */
1067
+ getUiPluginByAliasV1(requestParameters: UIPluginsApiGetUiPluginByAliasV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise<UIPlugin>;
1068
+ /**
1069
+ * Returns a plugin instance by ID for the caller\'s tenant. Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. The instance is loaded only when it belongs to that tenant; a mismatch is 404.
1070
+ * @summary Get a plugin instance
1071
+ * @param {UIPluginsApiGetUiPluginV1Request} requestParameters Request parameters.
1072
+ * @param {*} [axiosOptions] Override http request option.
1073
+ * @throws {RequiredError}
1074
+ */
1075
+ getUiPluginV1(requestParameters: UIPluginsApiGetUiPluginV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise<UIPlugin>;
1076
+ /**
1077
+ * Returns asset bundles for the given plugin instance (newest-first). Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. Bundles are listed only when the plugin instance belongs to that tenant; a mismatch is 404.
1078
+ * @summary List plugin asset bundles
1079
+ * @param {UIPluginsApiListUiPluginAssetBundlesV1Request} requestParameters Request parameters.
1080
+ * @param {*} [axiosOptions] Override http request option.
1081
+ * @throws {RequiredError}
1082
+ */
1083
+ listUiPluginAssetBundlesV1(requestParameters: UIPluginsApiListUiPluginAssetBundlesV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise<Array<UIPluginAssetBundle>>;
1084
+ /**
1085
+ * Returns the static slot registry (extension points the platform exposes). `name` / `description` are localized via AtlasJS TranslateService. Filtering uses API Standard Collection Parameters. `state` supports `eq` with values `active`, `deprecated`, or `removed`. Example: `filters=state eq \"active\"`. Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present).
1086
+ * @summary List UI plugin slots
1087
+ * @param {UIPluginsApiListUiPluginSlotsV1Request} requestParameters Request parameters.
1088
+ * @param {*} [axiosOptions] Override http request option.
1089
+ * @throws {RequiredError}
1090
+ */
1091
+ listUiPluginSlotsV1(requestParameters?: UIPluginsApiListUiPluginSlotsV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise<Array<UIPluginSlot>>;
1092
+ /**
1093
+ * Returns plugin instances for the caller\'s tenant with optional V3-style pagination. When `count=true`, the response includes header `x-total-count`. Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. Results include only that tenant\'s plugin instances.
1094
+ * @summary List plugin instances
1095
+ * @param {UIPluginsApiListUiPluginsV1Request} requestParameters Request parameters.
1096
+ * @param {*} [axiosOptions] Override http request option.
1097
+ * @throws {RequiredError}
1098
+ */
1099
+ listUiPluginsV1(requestParameters?: UIPluginsApiListUiPluginsV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise<Array<UIPlugin>>;
1100
+ /**
1101
+ * Checks whether the given alias is available within the caller\'s tenant. Alias is normalized (trim + lowercase) server-side. Success returns an empty body (HTTP 200). Conflict when the alias is taken. UUID-shaped aliases are rejected as invalid. Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. The alias is evaluated only within that tenant.
1102
+ * @summary Test plugin alias availability
1103
+ * @param {UIPluginsApiTestUiPluginAliasV1Request} requestParameters Request parameters.
1104
+ * @param {*} [axiosOptions] Override http request option.
1105
+ * @throws {RequiredError}
1106
+ */
1107
+ testUiPluginAliasV1(requestParameters: UIPluginsApiTestUiPluginAliasV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise<void>;
1108
+ /**
1109
+ * Patch any subset of mutable fields. When `slots` is provided, replaces the entire slots list and re-validates registry / maxPlugins rules. When `apiScopes` is provided, replaces the entire scopes list. When `iframeSandbox` is provided, replaces the entire sandbox grant list; unlike CSP / Permissions-Policy changes, it does not rotate the active asset bundle. `state` may be set to `ENABLED` or `DISABLED` (DISABLED omits the instance from active-slots delivery). Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. The instance is updated only when it belongs to that tenant; a mismatch is 404. Emits Kafka audit event `UI_PLUGIN_INSTANCE_UPDATED` on success.
1110
+ * @summary Partially update a plugin instance
1111
+ * @param {UIPluginsApiUpdateUiPluginV1Request} requestParameters Request parameters.
1112
+ * @param {*} [axiosOptions] Override http request option.
1113
+ * @throws {RequiredError}
1114
+ */
1115
+ updateUiPluginV1(requestParameters: UIPluginsApiUpdateUiPluginV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise<UIPlugin>;
1116
+ };
1117
+ /**
1118
+ * Request parameters for createUiPluginAssetBundleV1 operation in UIPluginsApi.
1119
+ * @export
1120
+ * @interface UIPluginsApiCreateUiPluginAssetBundleV1Request
1121
+ */
1122
+ export interface UIPluginsApiCreateUiPluginAssetBundleV1Request {
1123
+ /**
1124
+ * UUID of the plugin instance
1125
+ * @type {string}
1126
+ * @memberof UIPluginsApiCreateUiPluginAssetBundleV1
1127
+ */
1128
+ readonly pluginInstanceId: string;
1129
+ /**
1130
+ * Repeatable form field. Send one part per file; use the part filename for the bundle-relative path (e.g. &#x60;assets/app.js&#x60;).
1131
+ * @type {Array<File>}
1132
+ * @memberof UIPluginsApiCreateUiPluginAssetBundleV1
1133
+ */
1134
+ readonly file: Array<File>;
1135
+ /**
1136
+ * Use this header to enable this experimental API.
1137
+ * @type {string}
1138
+ * @memberof UIPluginsApiCreateUiPluginAssetBundleV1
1139
+ */
1140
+ readonly xSailPointExperimental?: string;
1141
+ }
1142
+ /**
1143
+ * Request parameters for createUiPluginLinkV1 operation in UIPluginsApi.
1144
+ * @export
1145
+ * @interface UIPluginsApiCreateUiPluginLinkV1Request
1146
+ */
1147
+ export interface UIPluginsApiCreateUiPluginLinkV1Request {
1148
+ /**
1149
+ * UUID of the plugin instance
1150
+ * @type {string}
1151
+ * @memberof UIPluginsApiCreateUiPluginLinkV1
1152
+ */
1153
+ readonly pluginInstanceId: string;
1154
+ /**
1155
+ *
1156
+ * @type {LinkUIPluginRequest}
1157
+ * @memberof UIPluginsApiCreateUiPluginLinkV1
1158
+ */
1159
+ readonly linkUIPluginRequest: LinkUIPluginRequest;
1160
+ /**
1161
+ * Use this header to enable this experimental API.
1162
+ * @type {string}
1163
+ * @memberof UIPluginsApiCreateUiPluginLinkV1
1164
+ */
1165
+ readonly xSailPointExperimental?: string;
1166
+ }
1167
+ /**
1168
+ * Request parameters for createUiPluginV1 operation in UIPluginsApi.
1169
+ * @export
1170
+ * @interface UIPluginsApiCreateUiPluginV1Request
1171
+ */
1172
+ export interface UIPluginsApiCreateUiPluginV1Request {
1173
+ /**
1174
+ *
1175
+ * @type {CreateUIPluginRequest}
1176
+ * @memberof UIPluginsApiCreateUiPluginV1
1177
+ */
1178
+ readonly createUIPluginRequest: CreateUIPluginRequest;
1179
+ /**
1180
+ * Use this header to enable this experimental API.
1181
+ * @type {string}
1182
+ * @memberof UIPluginsApiCreateUiPluginV1
1183
+ */
1184
+ readonly xSailPointExperimental?: string;
1185
+ }
1186
+ /**
1187
+ * Request parameters for deleteUiPluginLinkV1 operation in UIPluginsApi.
1188
+ * @export
1189
+ * @interface UIPluginsApiDeleteUiPluginLinkV1Request
1190
+ */
1191
+ export interface UIPluginsApiDeleteUiPluginLinkV1Request {
1192
+ /**
1193
+ * UUID of the plugin instance
1194
+ * @type {string}
1195
+ * @memberof UIPluginsApiDeleteUiPluginLinkV1
1196
+ */
1197
+ readonly pluginInstanceId: string;
1198
+ /**
1199
+ * Use this header to enable this experimental API.
1200
+ * @type {string}
1201
+ * @memberof UIPluginsApiDeleteUiPluginLinkV1
1202
+ */
1203
+ readonly xSailPointExperimental?: string;
1204
+ }
1205
+ /**
1206
+ * Request parameters for deleteUiPluginV1 operation in UIPluginsApi.
1207
+ * @export
1208
+ * @interface UIPluginsApiDeleteUiPluginV1Request
1209
+ */
1210
+ export interface UIPluginsApiDeleteUiPluginV1Request {
1211
+ /**
1212
+ * UUID of the plugin instance
1213
+ * @type {string}
1214
+ * @memberof UIPluginsApiDeleteUiPluginV1
1215
+ */
1216
+ readonly pluginInstanceId: string;
1217
+ /**
1218
+ * Use this header to enable this experimental API.
1219
+ * @type {string}
1220
+ * @memberof UIPluginsApiDeleteUiPluginV1
1221
+ */
1222
+ readonly xSailPointExperimental?: string;
1223
+ }
1224
+ /**
1225
+ * Request parameters for getUiPluginByAliasV1 operation in UIPluginsApi.
1226
+ * @export
1227
+ * @interface UIPluginsApiGetUiPluginByAliasV1Request
1228
+ */
1229
+ export interface UIPluginsApiGetUiPluginByAliasV1Request {
1230
+ /**
1231
+ * Alias to resolve within the caller\&#39;s tenant
1232
+ * @type {string}
1233
+ * @memberof UIPluginsApiGetUiPluginByAliasV1
1234
+ */
1235
+ readonly alias: string;
1236
+ /**
1237
+ * Use this header to enable this experimental API.
1238
+ * @type {string}
1239
+ * @memberof UIPluginsApiGetUiPluginByAliasV1
1240
+ */
1241
+ readonly xSailPointExperimental?: string;
1242
+ }
1243
+ /**
1244
+ * Request parameters for getUiPluginV1 operation in UIPluginsApi.
1245
+ * @export
1246
+ * @interface UIPluginsApiGetUiPluginV1Request
1247
+ */
1248
+ export interface UIPluginsApiGetUiPluginV1Request {
1249
+ /**
1250
+ * UUID of the plugin instance
1251
+ * @type {string}
1252
+ * @memberof UIPluginsApiGetUiPluginV1
1253
+ */
1254
+ readonly pluginInstanceId: string;
1255
+ /**
1256
+ * Use this header to enable this experimental API.
1257
+ * @type {string}
1258
+ * @memberof UIPluginsApiGetUiPluginV1
1259
+ */
1260
+ readonly xSailPointExperimental?: string;
1261
+ }
1262
+ /**
1263
+ * Request parameters for listUiPluginAssetBundlesV1 operation in UIPluginsApi.
1264
+ * @export
1265
+ * @interface UIPluginsApiListUiPluginAssetBundlesV1Request
1266
+ */
1267
+ export interface UIPluginsApiListUiPluginAssetBundlesV1Request {
1268
+ /**
1269
+ * UUID of the plugin instance
1270
+ * @type {string}
1271
+ * @memberof UIPluginsApiListUiPluginAssetBundlesV1
1272
+ */
1273
+ readonly pluginInstanceId: string;
1274
+ /**
1275
+ * Max number of results to return. See [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters) for more information.
1276
+ * @type {number}
1277
+ * @memberof UIPluginsApiListUiPluginAssetBundlesV1
1278
+ */
1279
+ readonly limit?: number;
1280
+ /**
1281
+ * Offset into the full result set. Usually specified with *limit* to paginate through the results. See [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters) for more information.
1282
+ * @type {number}
1283
+ * @memberof UIPluginsApiListUiPluginAssetBundlesV1
1284
+ */
1285
+ readonly offset?: number;
1286
+ /**
1287
+ * If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count&#x3D;true** if that value will not be used. See [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters) for more information.
1288
+ * @type {boolean}
1289
+ * @memberof UIPluginsApiListUiPluginAssetBundlesV1
1290
+ */
1291
+ readonly count?: boolean;
1292
+ /**
1293
+ * Use this header to enable this experimental API.
1294
+ * @type {string}
1295
+ * @memberof UIPluginsApiListUiPluginAssetBundlesV1
1296
+ */
1297
+ readonly xSailPointExperimental?: string;
1298
+ }
1299
+ /**
1300
+ * Request parameters for listUiPluginSlotsV1 operation in UIPluginsApi.
1301
+ * @export
1302
+ * @interface UIPluginsApiListUiPluginSlotsV1Request
1303
+ */
1304
+ export interface UIPluginsApiListUiPluginSlotsV1Request {
1305
+ /**
1306
+ * Filter results using the standard syntax described in [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **state**: *eq*
1307
+ * @type {string}
1308
+ * @memberof UIPluginsApiListUiPluginSlotsV1
1309
+ */
1310
+ readonly filters?: string;
1311
+ /**
1312
+ * When &#x60;true&#x60;, &#x60;name&#x60; and &#x60;description&#x60; are returned as full locale maps instead of a single translated string.
1313
+ * @type {boolean}
1314
+ * @memberof UIPluginsApiListUiPluginSlotsV1
1315
+ */
1316
+ readonly allLangs?: boolean;
1317
+ /**
1318
+ * Use this header to enable this experimental API.
1319
+ * @type {string}
1320
+ * @memberof UIPluginsApiListUiPluginSlotsV1
1321
+ */
1322
+ readonly xSailPointExperimental?: string;
1323
+ }
1324
+ /**
1325
+ * Request parameters for listUiPluginsV1 operation in UIPluginsApi.
1326
+ * @export
1327
+ * @interface UIPluginsApiListUiPluginsV1Request
1328
+ */
1329
+ export interface UIPluginsApiListUiPluginsV1Request {
1330
+ /**
1331
+ * Max number of results to return. See [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters) for more information.
1332
+ * @type {number}
1333
+ * @memberof UIPluginsApiListUiPluginsV1
1334
+ */
1335
+ readonly limit?: number;
1336
+ /**
1337
+ * Offset into the full result set. Usually specified with *limit* to paginate through the results. See [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters) for more information.
1338
+ * @type {number}
1339
+ * @memberof UIPluginsApiListUiPluginsV1
1340
+ */
1341
+ readonly offset?: number;
1342
+ /**
1343
+ * If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count&#x3D;true** if that value will not be used. See [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters) for more information.
1344
+ * @type {boolean}
1345
+ * @memberof UIPluginsApiListUiPluginsV1
1346
+ */
1347
+ readonly count?: boolean;
1348
+ /**
1349
+ * Use this header to enable this experimental API.
1350
+ * @type {string}
1351
+ * @memberof UIPluginsApiListUiPluginsV1
1352
+ */
1353
+ readonly xSailPointExperimental?: string;
1354
+ }
1355
+ /**
1356
+ * Request parameters for testUiPluginAliasV1 operation in UIPluginsApi.
1357
+ * @export
1358
+ * @interface UIPluginsApiTestUiPluginAliasV1Request
1359
+ */
1360
+ export interface UIPluginsApiTestUiPluginAliasV1Request {
1361
+ /**
1362
+ * Alias to validate (3-63 chars; letters, numbers, dashes; no leading/trailing/consecutive dashes)
1363
+ * @type {string}
1364
+ * @memberof UIPluginsApiTestUiPluginAliasV1
1365
+ */
1366
+ readonly alias: string;
1367
+ /**
1368
+ * Use this header to enable this experimental API.
1369
+ * @type {string}
1370
+ * @memberof UIPluginsApiTestUiPluginAliasV1
1371
+ */
1372
+ readonly xSailPointExperimental?: string;
1373
+ }
1374
+ /**
1375
+ * Request parameters for updateUiPluginV1 operation in UIPluginsApi.
1376
+ * @export
1377
+ * @interface UIPluginsApiUpdateUiPluginV1Request
1378
+ */
1379
+ export interface UIPluginsApiUpdateUiPluginV1Request {
1380
+ /**
1381
+ * UUID of the plugin instance
1382
+ * @type {string}
1383
+ * @memberof UIPluginsApiUpdateUiPluginV1
1384
+ */
1385
+ readonly pluginInstanceId: string;
1386
+ /**
1387
+ *
1388
+ * @type {UpdateUIPluginRequest}
1389
+ * @memberof UIPluginsApiUpdateUiPluginV1
1390
+ */
1391
+ readonly updateUIPluginRequest: UpdateUIPluginRequest;
1392
+ /**
1393
+ * Use this header to enable this experimental API.
1394
+ * @type {string}
1395
+ * @memberof UIPluginsApiUpdateUiPluginV1
1396
+ */
1397
+ readonly xSailPointExperimental?: string;
1398
+ }
1399
+ /**
1400
+ * UIPluginsApi - object-oriented interface
1401
+ * @export
1402
+ * @class UIPluginsApi
1403
+ * @extends {BaseAPI}
1404
+ */
1405
+ export declare class UIPluginsApi extends BaseAPI {
1406
+ /**
1407
+ * Accepts `multipart/form-data` with one or more parts named **`file`**. The bundle-relative path for each object is taken from the part\'s multipart **filename** (`originalname`). Paths are normalized (no `..`, no absolute paths) and stored under `{pluginInstanceId}/{assetBundleId}/...` in S3. Folder structure is preserved, not flattened. Requirements: - Bundle must include root `index.html` - Configurable limits on file count, per-file bytes, and total bundle bytes - Product license `idn:ui-plugins-author` required (404 if missing) - Caller tenant id is present (400 `User context is invalid` otherwise). The plugin instance must belong to that tenant (404 otherwise). Creates a new immutable bundle record; previous active bundles are tombstoned via `cleanupAfter`. Emits the `UI_PLUGIN_ASSET_BUNDLE_CREATED` audit event.
1408
+ * @summary Create a plugin asset bundle
1409
+ * @param {UIPluginsApiCreateUiPluginAssetBundleV1Request} requestParameters Request parameters.
1410
+ * @param {*} [axiosOptions] Override http request option.
1411
+ * @throws {RequiredError}
1412
+ * @memberof UIPluginsApi
1413
+ */
1414
+ createUiPluginAssetBundleV1(requestParameters: UIPluginsApiCreateUiPluginAssetBundleV1Request, axiosOptions?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<UIPluginAssetBundle, any>>;
1415
+ /**
1416
+ * Registers the caller\'s identity against a local HTTPS origin `https://localhost:{port}` in the instance\'s `devOverrides` map. Used by the `sail ui-plugins link` CLI flow. Requires product license `idn:ui-plugins-author` (404 if missing). Returns 400 `User context is invalid` when the caller has no tenant id or identity id. That identity id is the key in `devOverrides`, so the caller can only set their own local-dev URL. A plugin instance in another tenant is 404. Response body contains the updated `devOverrides` map (`identityId` to `https://localhost:{port}`) and `devDocumentHeaders`, the ephemeral `Content-Security-Policy` and `Permissions-Policy` header values a local dev server can use for CSP parity with the deployed plugin.
1417
+ * @summary Create a plugin dev link
1418
+ * @param {UIPluginsApiCreateUiPluginLinkV1Request} requestParameters Request parameters.
1419
+ * @param {*} [axiosOptions] Override http request option.
1420
+ * @throws {RequiredError}
1421
+ * @memberof UIPluginsApi
1422
+ */
1423
+ createUiPluginLinkV1(requestParameters: UIPluginsApiCreateUiPluginLinkV1Request, axiosOptions?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<LinkUIPluginResponse, any>>;
1424
+ /**
1425
+ * Registers a new tenant-scoped plugin installation. Enforces: - Max **20** plugin instances per tenant - Slot registry rules (`slotId` must exist; per-slot `maxPlugins`; no duplicate slotIds) - Alias uniqueness within the tenant (normalized lowercase) - CSP / Permissions-Policy / iframe-allow / iframe-sandbox allowlists - Product license `idn:ui-plugins-author` (404 if missing) - Caller tenant id is present (400 `User context is invalid` otherwise). The instance is created in that tenant. Emits Kafka audit event `UI_PLUGIN_INSTANCE_CREATED` on success. Response body is the created plugin instance plus `devDocumentHeaders`, the ephemeral `Content-Security-Policy` and `Permissions-Policy` header values a local dev server can use for CSP parity with the deployed plugin. They are returned only on create (and link), not when reading the instance.
1426
+ * @summary Create a plugin instance
1427
+ * @param {UIPluginsApiCreateUiPluginV1Request} requestParameters Request parameters.
1428
+ * @param {*} [axiosOptions] Override http request option.
1429
+ * @throws {RequiredError}
1430
+ * @memberof UIPluginsApi
1431
+ */
1432
+ createUiPluginV1(requestParameters: UIPluginsApiCreateUiPluginV1Request, axiosOptions?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<CreateUIPluginResponse, any>>;
1433
+ /**
1434
+ * Removes only the current caller\'s `identityId` entry from `devOverrides`. Other developers\' overrides are preserved. Requires product license `idn:ui-plugins-author` (404 if missing). Returns 400 `User context is invalid` when the caller has no tenant id or identity id. A plugin instance in another tenant is 404.
1435
+ * @summary Delete a plugin dev link
1436
+ * @param {UIPluginsApiDeleteUiPluginLinkV1Request} requestParameters Request parameters.
1437
+ * @param {*} [axiosOptions] Override http request option.
1438
+ * @throws {RequiredError}
1439
+ * @memberof UIPluginsApi
1440
+ */
1441
+ deleteUiPluginLinkV1(requestParameters: UIPluginsApiDeleteUiPluginLinkV1Request, axiosOptions?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
1442
+ /**
1443
+ * Deletes the plugin instance and associated resources (asset bundles tombstoned for deferred cleanup). Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. The instance is deleted only when it belongs to that tenant; a mismatch is 404. Emits Kafka audit event `UI_PLUGIN_INSTANCE_DELETED` on success.
1444
+ * @summary Delete a plugin instance
1445
+ * @param {UIPluginsApiDeleteUiPluginV1Request} requestParameters Request parameters.
1446
+ * @param {*} [axiosOptions] Override http request option.
1447
+ * @throws {RequiredError}
1448
+ * @memberof UIPluginsApi
1449
+ */
1450
+ deleteUiPluginV1(requestParameters: UIPluginsApiDeleteUiPluginV1Request, axiosOptions?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
1451
+ /**
1452
+ * Resolves a tenant-scoped alias to its `UiPlugin`. Returns 404 if no match; 409 if the alias is ambiguous (more than one match; should not occur after uniqueness enforcement). Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. The alias is resolved only within that tenant; no match is 404.
1453
+ * @summary Get plugin by alias
1454
+ * @param {UIPluginsApiGetUiPluginByAliasV1Request} requestParameters Request parameters.
1455
+ * @param {*} [axiosOptions] Override http request option.
1456
+ * @throws {RequiredError}
1457
+ * @memberof UIPluginsApi
1458
+ */
1459
+ getUiPluginByAliasV1(requestParameters: UIPluginsApiGetUiPluginByAliasV1Request, axiosOptions?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<UIPlugin, any>>;
1460
+ /**
1461
+ * Returns a plugin instance by ID for the caller\'s tenant. Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. The instance is loaded only when it belongs to that tenant; a mismatch is 404.
1462
+ * @summary Get a plugin instance
1463
+ * @param {UIPluginsApiGetUiPluginV1Request} requestParameters Request parameters.
1464
+ * @param {*} [axiosOptions] Override http request option.
1465
+ * @throws {RequiredError}
1466
+ * @memberof UIPluginsApi
1467
+ */
1468
+ getUiPluginV1(requestParameters: UIPluginsApiGetUiPluginV1Request, axiosOptions?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<UIPlugin, any>>;
1469
+ /**
1470
+ * Returns asset bundles for the given plugin instance (newest-first). Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. Bundles are listed only when the plugin instance belongs to that tenant; a mismatch is 404.
1471
+ * @summary List plugin asset bundles
1472
+ * @param {UIPluginsApiListUiPluginAssetBundlesV1Request} requestParameters Request parameters.
1473
+ * @param {*} [axiosOptions] Override http request option.
1474
+ * @throws {RequiredError}
1475
+ * @memberof UIPluginsApi
1476
+ */
1477
+ listUiPluginAssetBundlesV1(requestParameters: UIPluginsApiListUiPluginAssetBundlesV1Request, axiosOptions?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<UIPluginAssetBundle[], any>>;
1478
+ /**
1479
+ * Returns the static slot registry (extension points the platform exposes). `name` / `description` are localized via AtlasJS TranslateService. Filtering uses API Standard Collection Parameters. `state` supports `eq` with values `active`, `deprecated`, or `removed`. Example: `filters=state eq \"active\"`. Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present).
1480
+ * @summary List UI plugin slots
1481
+ * @param {UIPluginsApiListUiPluginSlotsV1Request} requestParameters Request parameters.
1482
+ * @param {*} [axiosOptions] Override http request option.
1483
+ * @throws {RequiredError}
1484
+ * @memberof UIPluginsApi
1485
+ */
1486
+ listUiPluginSlotsV1(requestParameters?: UIPluginsApiListUiPluginSlotsV1Request, axiosOptions?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<UIPluginSlot[], any>>;
1487
+ /**
1488
+ * Returns plugin instances for the caller\'s tenant with optional V3-style pagination. When `count=true`, the response includes header `x-total-count`. Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. Results include only that tenant\'s plugin instances.
1489
+ * @summary List plugin instances
1490
+ * @param {UIPluginsApiListUiPluginsV1Request} requestParameters Request parameters.
1491
+ * @param {*} [axiosOptions] Override http request option.
1492
+ * @throws {RequiredError}
1493
+ * @memberof UIPluginsApi
1494
+ */
1495
+ listUiPluginsV1(requestParameters?: UIPluginsApiListUiPluginsV1Request, axiosOptions?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<UIPlugin[], any>>;
1496
+ /**
1497
+ * Checks whether the given alias is available within the caller\'s tenant. Alias is normalized (trim + lowercase) server-side. Success returns an empty body (HTTP 200). Conflict when the alias is taken. UUID-shaped aliases are rejected as invalid. Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. The alias is evaluated only within that tenant.
1498
+ * @summary Test plugin alias availability
1499
+ * @param {UIPluginsApiTestUiPluginAliasV1Request} requestParameters Request parameters.
1500
+ * @param {*} [axiosOptions] Override http request option.
1501
+ * @throws {RequiredError}
1502
+ * @memberof UIPluginsApi
1503
+ */
1504
+ testUiPluginAliasV1(requestParameters: UIPluginsApiTestUiPluginAliasV1Request, axiosOptions?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
1505
+ /**
1506
+ * Patch any subset of mutable fields. When `slots` is provided, replaces the entire slots list and re-validates registry / maxPlugins rules. When `apiScopes` is provided, replaces the entire scopes list. When `iframeSandbox` is provided, replaces the entire sandbox grant list; unlike CSP / Permissions-Policy changes, it does not rotate the active asset bundle. `state` may be set to `ENABLED` or `DISABLED` (DISABLED omits the instance from active-slots delivery). Requires product license `idn:ui-plugins` or `idn:ui-plugins-author` (404 if neither is present). Returns 400 `User context is invalid` when the caller has no tenant id. The instance is updated only when it belongs to that tenant; a mismatch is 404. Emits Kafka audit event `UI_PLUGIN_INSTANCE_UPDATED` on success.
1507
+ * @summary Partially update a plugin instance
1508
+ * @param {UIPluginsApiUpdateUiPluginV1Request} requestParameters Request parameters.
1509
+ * @param {*} [axiosOptions] Override http request option.
1510
+ * @throws {RequiredError}
1511
+ * @memberof UIPluginsApi
1512
+ */
1513
+ updateUiPluginV1(requestParameters: UIPluginsApiUpdateUiPluginV1Request, axiosOptions?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<UIPlugin, any>>;
1514
+ }