@objectstack/spec 0.3.2 → 0.4.1

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 (523) hide show
  1. package/README.md +32 -10
  2. package/dist/ai/agent.zod.d.ts +12 -12
  3. package/dist/ai/conversation.zod.d.ts +54 -54
  4. package/dist/ai/cost.zod.d.ts +135 -135
  5. package/dist/ai/index.d.ts +1 -1
  6. package/dist/ai/index.d.ts.map +1 -1
  7. package/dist/ai/index.js +1 -1
  8. package/dist/ai/model-registry.zod.d.ts +91 -91
  9. package/dist/ai/nlq.zod.d.ts +72 -72
  10. package/dist/ai/{workflow-automation.zod.d.ts → orchestration.zod.d.ts} +51 -50
  11. package/dist/ai/orchestration.zod.d.ts.map +1 -0
  12. package/dist/ai/{workflow-automation.zod.js → orchestration.zod.js} +26 -25
  13. package/dist/ai/predictive.zod.d.ts +27 -27
  14. package/dist/ai/rag-pipeline.zod.d.ts +102 -102
  15. package/dist/api/contract.zod.d.ts +213 -197
  16. package/dist/api/contract.zod.d.ts.map +1 -1
  17. package/dist/{system → api}/discovery.zod.d.ts +26 -26
  18. package/dist/api/discovery.zod.d.ts.map +1 -0
  19. package/dist/{system → api}/discovery.zod.js +9 -9
  20. package/dist/{system/api.zod.d.ts → api/endpoint.zod.d.ts} +53 -57
  21. package/dist/api/endpoint.zod.d.ts.map +1 -0
  22. package/dist/{system/api.zod.js → api/endpoint.zod.js} +3 -6
  23. package/dist/api/index.d.ts +6 -0
  24. package/dist/api/index.d.ts.map +1 -1
  25. package/dist/api/index.js +6 -0
  26. package/dist/api/odata.zod.d.ts +482 -0
  27. package/dist/api/odata.zod.d.ts.map +1 -0
  28. package/dist/api/odata.zod.js +401 -0
  29. package/dist/{system → api}/realtime.zod.d.ts +4 -4
  30. package/dist/api/realtime.zod.d.ts.map +1 -0
  31. package/dist/api/router.zod.d.ts +182 -0
  32. package/dist/api/router.zod.d.ts.map +1 -0
  33. package/dist/api/router.zod.js +103 -0
  34. package/dist/{system/auth.zod.d.ts → auth/config.zod.d.ts} +199 -199
  35. package/dist/auth/config.zod.d.ts.map +1 -0
  36. package/dist/{system → auth}/identity.zod.d.ts +8 -8
  37. package/dist/auth/identity.zod.d.ts.map +1 -0
  38. package/dist/auth/index.d.ts +8 -0
  39. package/dist/auth/index.d.ts.map +1 -0
  40. package/dist/auth/index.js +23 -0
  41. package/dist/{system → auth}/organization.zod.d.ts +7 -7
  42. package/dist/auth/organization.zod.d.ts.map +1 -0
  43. package/dist/{system → auth}/policy.zod.d.ts +3 -3
  44. package/dist/auth/policy.zod.d.ts.map +1 -0
  45. package/dist/{system/auth-protocol.d.ts → auth/protocol.d.ts} +1 -1
  46. package/dist/auth/protocol.d.ts.map +1 -0
  47. package/dist/{system → auth}/role.zod.d.ts +14 -0
  48. package/dist/auth/role.zod.d.ts.map +1 -0
  49. package/dist/{system → auth}/role.zod.js +16 -1
  50. package/dist/auth/scim.zod.d.ts +2732 -0
  51. package/dist/auth/scim.zod.d.ts.map +1 -0
  52. package/dist/auth/scim.zod.js +811 -0
  53. package/dist/automation/approval.zod.d.ts +643 -0
  54. package/dist/automation/approval.zod.d.ts.map +1 -0
  55. package/dist/automation/approval.zod.js +84 -0
  56. package/dist/automation/connector.zod.d.ts +1284 -0
  57. package/dist/automation/connector.zod.d.ts.map +1 -0
  58. package/dist/automation/connector.zod.js +500 -0
  59. package/dist/automation/etl.zod.d.ts +623 -0
  60. package/dist/automation/etl.zod.d.ts.map +1 -0
  61. package/dist/automation/etl.zod.js +359 -0
  62. package/dist/{data → automation}/flow.zod.d.ts +40 -22
  63. package/dist/automation/flow.zod.d.ts.map +1 -0
  64. package/dist/{data → automation}/flow.zod.js +6 -1
  65. package/dist/automation/index.d.ts +8 -0
  66. package/dist/automation/index.d.ts.map +1 -0
  67. package/dist/automation/index.js +23 -0
  68. package/dist/automation/sync.zod.d.ts +854 -0
  69. package/dist/automation/sync.zod.d.ts.map +1 -0
  70. package/dist/automation/sync.zod.js +444 -0
  71. package/dist/{system → automation}/webhook.zod.d.ts +26 -3
  72. package/dist/automation/webhook.zod.d.ts.map +1 -0
  73. package/dist/{system → automation}/webhook.zod.js +27 -3
  74. package/dist/automation/workflow.zod.d.ts +2059 -0
  75. package/dist/automation/workflow.zod.d.ts.map +1 -0
  76. package/dist/{data → automation}/workflow.zod.js +40 -2
  77. package/dist/data/dataset.zod.d.ts +2 -2
  78. package/dist/data/field.zod.d.ts +779 -219
  79. package/dist/data/field.zod.d.ts.map +1 -1
  80. package/dist/data/field.zod.js +128 -16
  81. package/dist/data/filter.zod.d.ts +167 -30
  82. package/dist/data/filter.zod.d.ts.map +1 -1
  83. package/dist/data/filter.zod.js +25 -13
  84. package/dist/data/hook.zod.d.ts +191 -0
  85. package/dist/data/hook.zod.d.ts.map +1 -0
  86. package/dist/data/hook.zod.js +144 -0
  87. package/dist/data/index.d.ts +4 -17
  88. package/dist/data/index.d.ts.map +1 -1
  89. package/dist/data/index.js +4 -17
  90. package/dist/data/mapping.zod.d.ts +117 -93
  91. package/dist/data/mapping.zod.d.ts.map +1 -1
  92. package/dist/data/mapping.zod.js +16 -3
  93. package/dist/data/object.zod.d.ts +485 -131
  94. package/dist/data/object.zod.d.ts.map +1 -1
  95. package/dist/data/object.zod.js +87 -42
  96. package/dist/data/query.zod.d.ts +98 -169
  97. package/dist/data/query.zod.d.ts.map +1 -1
  98. package/dist/data/query.zod.js +42 -130
  99. package/dist/data/validation.zod.d.ts +166 -26
  100. package/dist/data/validation.zod.d.ts.map +1 -1
  101. package/dist/data/validation.zod.js +38 -16
  102. package/dist/hub/composer.zod.d.ts +871 -0
  103. package/dist/hub/composer.zod.d.ts.map +1 -0
  104. package/dist/hub/composer.zod.js +111 -0
  105. package/dist/hub/index.d.ts +6 -0
  106. package/dist/hub/index.d.ts.map +1 -0
  107. package/dist/hub/index.js +22 -0
  108. package/dist/{system → hub}/license.zod.d.ts +13 -9
  109. package/dist/hub/license.zod.d.ts.map +1 -0
  110. package/dist/{system → hub}/license.zod.js +5 -3
  111. package/dist/hub/marketplace.zod.d.ts +191 -0
  112. package/dist/hub/marketplace.zod.d.ts.map +1 -0
  113. package/dist/hub/marketplace.zod.js +85 -0
  114. package/dist/hub/space.zod.d.ts +383 -0
  115. package/dist/hub/space.zod.d.ts.map +1 -0
  116. package/dist/hub/space.zod.js +103 -0
  117. package/dist/{system → hub}/tenant.zod.d.ts +73 -47
  118. package/dist/hub/tenant.zod.d.ts.map +1 -0
  119. package/dist/{system → hub}/tenant.zod.js +36 -10
  120. package/dist/index.d.ts +11 -4
  121. package/dist/index.d.ts.map +1 -1
  122. package/dist/index.js +15 -5
  123. package/dist/permission/index.d.ts +14 -0
  124. package/dist/permission/index.d.ts.map +1 -0
  125. package/dist/permission/index.js +29 -0
  126. package/dist/{data → permission}/permission.zod.d.ts +48 -3
  127. package/dist/permission/permission.zod.d.ts.map +1 -0
  128. package/dist/{data → permission}/permission.zod.js +26 -2
  129. package/dist/permission/rls.zod.d.ts +605 -0
  130. package/dist/permission/rls.zod.d.ts.map +1 -0
  131. package/dist/permission/rls.zod.js +615 -0
  132. package/dist/permission/sharing.zod.d.ts +146 -0
  133. package/dist/permission/sharing.zod.d.ts.map +1 -0
  134. package/dist/permission/sharing.zod.js +88 -0
  135. package/dist/{system → permission}/territory.zod.d.ts +13 -0
  136. package/dist/permission/territory.zod.d.ts.map +1 -0
  137. package/dist/{system → permission}/territory.zod.js +15 -1
  138. package/dist/shared/identifiers.zod.d.ts +87 -0
  139. package/dist/shared/identifiers.zod.d.ts.map +1 -0
  140. package/dist/shared/identifiers.zod.js +101 -0
  141. package/dist/shared/index.d.ts +6 -0
  142. package/dist/shared/index.d.ts.map +1 -0
  143. package/dist/shared/index.js +21 -0
  144. package/dist/stack.zod.d.ts +19869 -0
  145. package/dist/stack.zod.d.ts.map +1 -0
  146. package/dist/stack.zod.js +248 -0
  147. package/dist/system/audit.zod.d.ts +58 -58
  148. package/dist/system/context.zod.d.ts +56 -0
  149. package/dist/system/context.zod.d.ts.map +1 -0
  150. package/dist/system/context.zod.js +43 -0
  151. package/dist/system/datasource.zod.d.ts +40 -6
  152. package/dist/system/datasource.zod.d.ts.map +1 -1
  153. package/dist/system/datasource.zod.js +17 -13
  154. package/dist/system/driver/mongo.zod.d.ts +107 -0
  155. package/dist/system/driver/mongo.zod.d.ts.map +1 -0
  156. package/dist/system/driver/mongo.zod.js +80 -0
  157. package/dist/system/driver/postgres.zod.d.ts +134 -0
  158. package/dist/system/driver/postgres.zod.d.ts.map +1 -0
  159. package/dist/system/driver/postgres.zod.js +88 -0
  160. package/dist/system/driver.zod.d.ts +2249 -488
  161. package/dist/system/driver.zod.d.ts.map +1 -1
  162. package/dist/system/driver.zod.js +99 -0
  163. package/dist/system/events.zod.d.ts +8 -5
  164. package/dist/system/events.zod.d.ts.map +1 -1
  165. package/dist/system/events.zod.js +5 -1
  166. package/dist/system/feature.zod.d.ts +131 -0
  167. package/dist/system/feature.zod.d.ts.map +1 -0
  168. package/dist/system/feature.zod.js +45 -0
  169. package/dist/system/index.d.ts +11 -20
  170. package/dist/system/index.d.ts.map +1 -1
  171. package/dist/system/index.js +15 -20
  172. package/dist/system/job.zod.d.ts +5 -5
  173. package/dist/system/logger.zod.d.ts +111 -0
  174. package/dist/system/logger.zod.d.ts.map +1 -0
  175. package/dist/system/logger.zod.js +75 -0
  176. package/dist/system/manifest.zod.d.ts +136 -18
  177. package/dist/system/manifest.zod.d.ts.map +1 -1
  178. package/dist/system/manifest.zod.js +28 -0
  179. package/dist/system/plugin.zod.d.ts +598 -318
  180. package/dist/system/plugin.zod.d.ts.map +1 -1
  181. package/dist/system/plugin.zod.js +13 -0
  182. package/dist/system/scoped-storage.zod.d.ts +81 -0
  183. package/dist/system/scoped-storage.zod.d.ts.map +1 -0
  184. package/dist/system/scoped-storage.zod.js +66 -0
  185. package/dist/ui/action.zod.d.ts +42 -17
  186. package/dist/ui/action.zod.d.ts.map +1 -1
  187. package/dist/ui/action.zod.js +30 -1
  188. package/dist/ui/app.zod.d.ts +26 -11
  189. package/dist/ui/app.zod.d.ts.map +1 -1
  190. package/dist/ui/app.zod.js +32 -4
  191. package/dist/ui/block.zod.d.ts +265 -0
  192. package/dist/ui/block.zod.d.ts.map +1 -0
  193. package/dist/ui/block.zod.js +90 -0
  194. package/dist/ui/component.zod.d.ts +265 -0
  195. package/dist/ui/component.zod.d.ts.map +1 -0
  196. package/dist/ui/component.zod.js +90 -0
  197. package/dist/ui/dashboard.zod.d.ts +15 -15
  198. package/dist/ui/dashboard.zod.d.ts.map +1 -1
  199. package/dist/ui/dashboard.zod.js +18 -8
  200. package/dist/ui/index.d.ts +1 -0
  201. package/dist/ui/index.d.ts.map +1 -1
  202. package/dist/ui/index.js +1 -0
  203. package/dist/ui/page.zod.d.ts +23 -5
  204. package/dist/ui/page.zod.d.ts.map +1 -1
  205. package/dist/ui/page.zod.js +37 -4
  206. package/dist/ui/report.zod.d.ts +12 -12
  207. package/dist/ui/theme.zod.d.ts +42 -42
  208. package/dist/ui/view.zod.d.ts +302 -290
  209. package/dist/ui/view.zod.d.ts.map +1 -1
  210. package/dist/ui/view.zod.js +32 -3
  211. package/dist/ui/widget.zod.d.ts +730 -29
  212. package/dist/ui/widget.zod.d.ts.map +1 -1
  213. package/dist/ui/widget.zod.js +294 -1
  214. package/json-schema/ai/{AIWorkflowAutomation.json → AIOrchestration.json} +5 -5
  215. package/json-schema/ai/{AIWorkflowExecutionResult.json → AIOrchestrationExecutionResult.json} +2 -2
  216. package/json-schema/ai/{AIWorkflowTrigger.json → AIOrchestrationTrigger.json} +2 -2
  217. package/json-schema/ai/{BatchAIWorkflowExecution.json → BatchAIOrchestrationExecution.json} +3 -3
  218. package/json-schema/{system → api}/ApiEndpoint.json +3 -1
  219. package/json-schema/{system → api}/ApiRoutes.json +7 -7
  220. package/json-schema/{system → api}/Discovery.json +7 -7
  221. package/json-schema/api/ExportRequest.json +402 -438
  222. package/json-schema/{system → api}/HttpMethod.json +3 -1
  223. package/json-schema/api/ODataError.json +65 -0
  224. package/json-schema/api/ODataFilterFunction.json +39 -0
  225. package/json-schema/api/ODataFilterOperator.json +24 -0
  226. package/json-schema/api/ODataMetadata.json +115 -0
  227. package/json-schema/api/ODataQuery.json +89 -0
  228. package/json-schema/api/ODataResponse.json +37 -0
  229. package/json-schema/api/RouteCategory.json +17 -0
  230. package/json-schema/api/RouteDefinition.json +77 -0
  231. package/json-schema/api/RouterConfig.json +117 -0
  232. package/json-schema/{system → auth}/Role.json +3 -2
  233. package/json-schema/auth/SCIMAddress.json +50 -0
  234. package/json-schema/auth/SCIMEmail.json +38 -0
  235. package/json-schema/auth/SCIMEnterpriseUser.json +55 -0
  236. package/json-schema/auth/SCIMError.json +52 -0
  237. package/json-schema/auth/SCIMGroup.json +102 -0
  238. package/json-schema/auth/SCIMGroupReference.json +36 -0
  239. package/json-schema/auth/SCIMListResponse.json +606 -0
  240. package/json-schema/auth/SCIMMemberReference.json +36 -0
  241. package/json-schema/auth/SCIMMeta.json +35 -0
  242. package/json-schema/auth/SCIMName.json +36 -0
  243. package/json-schema/auth/SCIMPatchOperation.json +31 -0
  244. package/json-schema/auth/SCIMPatchRequest.json +56 -0
  245. package/json-schema/auth/SCIMPhoneNumber.json +40 -0
  246. package/json-schema/auth/SCIMUser.json +462 -0
  247. package/json-schema/automation/ApprovalAction.json +35 -0
  248. package/json-schema/automation/ApprovalActionType.json +15 -0
  249. package/json-schema/automation/ApprovalProcess.json +326 -0
  250. package/json-schema/automation/ApprovalStep.json +147 -0
  251. package/json-schema/automation/ApproverType.json +16 -0
  252. package/json-schema/automation/AuthField.json +73 -0
  253. package/json-schema/automation/Authentication.json +159 -0
  254. package/json-schema/automation/AuthenticationType.json +18 -0
  255. package/json-schema/automation/ConflictResolution.json +16 -0
  256. package/json-schema/automation/Connector.json +440 -0
  257. package/json-schema/automation/ConnectorCategory.json +26 -0
  258. package/json-schema/automation/ConnectorInstance.json +69 -0
  259. package/json-schema/automation/ConnectorOperation.json +117 -0
  260. package/json-schema/automation/ConnectorTrigger.json +54 -0
  261. package/json-schema/automation/DataDestinationConfig.json +89 -0
  262. package/json-schema/automation/DataSourceConfig.json +34 -0
  263. package/json-schema/automation/DataSyncConfig.json +355 -0
  264. package/json-schema/automation/ETLDestination.json +57 -0
  265. package/json-schema/automation/ETLEndpointType.json +19 -0
  266. package/json-schema/automation/ETLPipeline.json +252 -0
  267. package/json-schema/automation/ETLPipelineRun.json +107 -0
  268. package/json-schema/automation/ETLRunStatus.json +17 -0
  269. package/json-schema/automation/ETLSource.json +60 -0
  270. package/json-schema/{data/LogicOperator.json → automation/ETLSyncMode.json} +5 -5
  271. package/json-schema/automation/ETLTransformation.json +46 -0
  272. package/json-schema/automation/ETLTransformationType.json +21 -0
  273. package/json-schema/automation/FieldMapping.json +36 -0
  274. package/json-schema/{data → automation}/Flow.json +31 -1
  275. package/json-schema/{data → automation}/FlowEdge.json +9 -0
  276. package/json-schema/automation/OAuth2Config.json +43 -0
  277. package/json-schema/automation/OperationParameter.json +59 -0
  278. package/json-schema/automation/OperationType.json +17 -0
  279. package/json-schema/automation/SyncDirection.json +14 -0
  280. package/json-schema/automation/SyncExecutionResult.json +135 -0
  281. package/json-schema/automation/SyncExecutionStatus.json +17 -0
  282. package/json-schema/{data/TriggerTiming.json → automation/SyncMode.json} +5 -4
  283. package/json-schema/{data/WorkflowRule.json → automation/TimeTrigger.json} +35 -25
  284. package/json-schema/{system → automation}/Webhook.json +3 -1
  285. package/json-schema/{system → automation}/WebhookReceiver.json +3 -1
  286. package/json-schema/automation/WorkflowRule.json +1032 -0
  287. package/json-schema/data/AggregationNode.json +23 -0
  288. package/json-schema/data/AsyncValidation.json +49 -2
  289. package/json-schema/data/ComparisonOperator.json +52 -0
  290. package/json-schema/data/ConditionalValidation.json +693 -46
  291. package/json-schema/data/CrossFieldValidation.json +33 -2
  292. package/json-schema/data/CurrencyConfig.json +35 -0
  293. package/json-schema/data/CurrencyValue.json +26 -0
  294. package/json-schema/data/CustomValidator.json +37 -10
  295. package/json-schema/data/Field.json +92 -4
  296. package/json-schema/data/FieldOperators.json +78 -0
  297. package/json-schema/data/FieldReference.json +19 -0
  298. package/json-schema/data/FieldType.json +12 -2
  299. package/json-schema/data/FormatValidation.json +33 -2
  300. package/json-schema/data/Hook.json +95 -0
  301. package/json-schema/data/HookContext.json +88 -0
  302. package/json-schema/data/HookEvent.json +29 -0
  303. package/json-schema/data/Index.json +10 -0
  304. package/json-schema/data/JSONValidation.json +85 -0
  305. package/json-schema/data/JoinNode.json +197 -213
  306. package/json-schema/data/JoinStrategy.json +15 -0
  307. package/json-schema/data/NormalizedFilter.json +234 -0
  308. package/json-schema/data/Object.json +1642 -32
  309. package/json-schema/data/ObjectCapabilities.json +30 -12
  310. package/json-schema/data/Query.json +246 -262
  311. package/json-schema/data/RangeOperator.json +26 -0
  312. package/json-schema/data/ScriptValidation.json +33 -2
  313. package/json-schema/data/SearchConfig.json +36 -0
  314. package/json-schema/data/SelectOption.json +4 -2
  315. package/json-schema/data/StateMachineValidation.json +33 -2
  316. package/json-schema/data/UniquenessValidation.json +33 -2
  317. package/json-schema/data/ValidationRule.json +693 -46
  318. package/json-schema/data/VectorConfig.json +51 -0
  319. package/json-schema/hub/BillOfMaterials.json +70 -0
  320. package/json-schema/hub/ComposerRequest.json +86 -0
  321. package/json-schema/hub/ComposerResponse.json +483 -0
  322. package/json-schema/hub/ConflictReport.json +53 -0
  323. package/json-schema/hub/DependencyRequirement.json +36 -0
  324. package/json-schema/hub/DeploymentTarget.json +38 -0
  325. package/json-schema/hub/HubSpace.json +279 -0
  326. package/json-schema/{system → hub}/License.json +11 -3
  327. package/json-schema/hub/MarketplacePlugin.json +141 -0
  328. package/json-schema/hub/PluginAuthor.json +26 -0
  329. package/json-schema/hub/PluginPricing.json +43 -0
  330. package/json-schema/hub/SpaceSubscription.json +77 -0
  331. package/json-schema/hub/SubscriptionStatus.json +16 -0
  332. package/json-schema/{system → hub}/Tenant.json +3 -5
  333. package/json-schema/permission/CriteriaSharingRule.json +82 -0
  334. package/json-schema/{data → permission}/OWDModel.json +2 -1
  335. package/json-schema/{data → permission}/ObjectPermission.json +15 -0
  336. package/json-schema/permission/OwnerSharingRule.json +102 -0
  337. package/json-schema/{data → permission}/PermissionSet.json +18 -1
  338. package/json-schema/permission/RLSConfig.json +59 -0
  339. package/json-schema/permission/RLSEvaluationResult.json +40 -0
  340. package/json-schema/{data/TriggerAction.json → permission/RLSOperation.json} +5 -3
  341. package/json-schema/permission/RLSUserContext.json +51 -0
  342. package/json-schema/permission/RowLevelSecurityPolicy.json +77 -0
  343. package/json-schema/permission/ShareRecipientType.json +16 -0
  344. package/json-schema/{data → permission}/SharingLevel.json +2 -1
  345. package/json-schema/permission/SharingRule.json +182 -0
  346. package/json-schema/{data → permission}/SharingRuleType.json +1 -3
  347. package/json-schema/{system → permission}/Territory.json +3 -1
  348. package/json-schema/shared/EventName.json +12 -0
  349. package/json-schema/shared/SnakeCaseIdentifier.json +12 -0
  350. package/json-schema/shared/SystemIdentifier.json +12 -0
  351. package/json-schema/system/Datasource.json +35 -0
  352. package/json-schema/system/DriverCapabilities.json +10 -0
  353. package/json-schema/system/DriverInterface.json +10 -0
  354. package/json-schema/system/DriverOptions.json +11 -0
  355. package/json-schema/system/Event.json +3 -2
  356. package/json-schema/system/FeatureFlag.json +87 -0
  357. package/json-schema/system/FeatureStrategy.json +16 -0
  358. package/json-schema/system/FileMetadata.json +43 -0
  359. package/json-schema/system/KernelContext.json +62 -0
  360. package/json-schema/system/LogEntry.json +63 -0
  361. package/json-schema/system/LogFormat.json +15 -0
  362. package/json-schema/system/LogLevel.json +17 -0
  363. package/json-schema/system/LoggerConfig.json +70 -0
  364. package/json-schema/system/Manifest.json +80 -0
  365. package/json-schema/system/MongoConfig.json +82 -0
  366. package/json-schema/system/PluginContext.json +8 -1
  367. package/json-schema/system/PostgresConfig.json +98 -0
  368. package/json-schema/system/RuntimeMode.json +16 -0
  369. package/json-schema/system/ScopedStorageConfig.json +54 -0
  370. package/json-schema/system/StorageAdapterType.json +17 -0
  371. package/json-schema/system/StorageScope.json +18 -0
  372. package/json-schema/ui/Action.json +25 -4
  373. package/json-schema/ui/ActionParam.json +12 -2
  374. package/json-schema/ui/App.json +18 -7
  375. package/json-schema/ui/ChartType.json +9 -1
  376. package/json-schema/ui/Dashboard.json +9 -1
  377. package/json-schema/ui/DashboardNavItem.json +3 -1
  378. package/json-schema/ui/DashboardWidget.json +9 -1
  379. package/json-schema/ui/FieldWidgetProps.json +92 -4
  380. package/json-schema/ui/FormView.json +4 -1
  381. package/json-schema/ui/GroupNavItem.json +3 -1
  382. package/json-schema/ui/ListView.json +7 -1
  383. package/json-schema/ui/NavigationItem.json +15 -5
  384. package/json-schema/ui/ObjectNavItem.json +3 -1
  385. package/json-schema/ui/Page.json +36 -4
  386. package/json-schema/ui/PageCardProps.json +32 -0
  387. package/json-schema/ui/PageComponent.json +33 -3
  388. package/json-schema/ui/PageComponentType.json +32 -0
  389. package/json-schema/ui/PageHeaderProps.json +39 -0
  390. package/json-schema/ui/PageNavItem.json +3 -1
  391. package/json-schema/ui/PageRegion.json +33 -3
  392. package/json-schema/ui/PageTabsProps.json +55 -0
  393. package/json-schema/ui/RecordDetailsProps.json +37 -0
  394. package/json-schema/ui/RecordHighlightsProps.json +24 -0
  395. package/json-schema/ui/RecordRelatedListProps.json +39 -0
  396. package/json-schema/ui/UrlNavItem.json +3 -1
  397. package/json-schema/ui/View.json +22 -4
  398. package/json-schema/ui/WidgetEvent.json +42 -0
  399. package/json-schema/ui/WidgetLifecycle.json +40 -0
  400. package/json-schema/ui/WidgetManifest.json +262 -0
  401. package/json-schema/ui/WidgetProperty.json +58 -0
  402. package/llms.txt +182 -0
  403. package/package.json +38 -16
  404. package/prompts/README.md +18 -0
  405. package/prompts/architecture.md +81 -0
  406. package/prompts/create-new-project.md +85 -0
  407. package/prompts/implement-objectai.md +39 -0
  408. package/prompts/implement-objectos.md +48 -0
  409. package/prompts/implement-objectql.md +39 -0
  410. package/prompts/implement-objectui.md +46 -0
  411. package/prompts/instructions.md +91 -0
  412. package/dist/ai/workflow-automation.zod.d.ts.map +0 -1
  413. package/dist/data/flow.zod.d.ts.map +0 -1
  414. package/dist/data/permission.zod.d.ts.map +0 -1
  415. package/dist/data/sharing.zod.d.ts +0 -63
  416. package/dist/data/sharing.zod.d.ts.map +0 -1
  417. package/dist/data/sharing.zod.js +0 -57
  418. package/dist/data/trigger.zod.d.ts +0 -354
  419. package/dist/data/trigger.zod.d.ts.map +0 -1
  420. package/dist/data/trigger.zod.js +0 -195
  421. package/dist/data/workflow.zod.d.ts +0 -986
  422. package/dist/data/workflow.zod.d.ts.map +0 -1
  423. package/dist/system/api.zod.d.ts.map +0 -1
  424. package/dist/system/auth-protocol.d.ts.map +0 -1
  425. package/dist/system/auth.zod.d.ts.map +0 -1
  426. package/dist/system/discovery.zod.d.ts.map +0 -1
  427. package/dist/system/identity.zod.d.ts.map +0 -1
  428. package/dist/system/license.zod.d.ts.map +0 -1
  429. package/dist/system/organization.zod.d.ts.map +0 -1
  430. package/dist/system/policy.zod.d.ts.map +0 -1
  431. package/dist/system/realtime.zod.d.ts.map +0 -1
  432. package/dist/system/role.zod.d.ts.map +0 -1
  433. package/dist/system/tenant.zod.d.ts.map +0 -1
  434. package/dist/system/territory.zod.d.ts.map +0 -1
  435. package/dist/system/webhook.zod.d.ts.map +0 -1
  436. package/json-schema/README.md +0 -127
  437. package/json-schema/data/FieldMapping.json +0 -83
  438. package/json-schema/data/FilterNode.json +0 -52
  439. package/json-schema/data/FilterOperator.json +0 -26
  440. package/json-schema/data/Mapping.json +0 -598
  441. package/json-schema/data/SharingRule.json +0 -58
  442. package/json-schema/data/TransformType.json +0 -18
  443. package/json-schema/data/Trigger.json +0 -73
  444. package/json-schema/data/TriggerContext.json +0 -61
  445. /package/dist/{system → api}/realtime.zod.js +0 -0
  446. /package/dist/{system/auth.zod.js → auth/config.zod.js} +0 -0
  447. /package/dist/{system → auth}/identity.zod.js +0 -0
  448. /package/dist/{system → auth}/organization.zod.js +0 -0
  449. /package/dist/{system → auth}/policy.zod.js +0 -0
  450. /package/dist/{system/auth-protocol.js → auth/protocol.js} +0 -0
  451. /package/json-schema/{system → api}/ApiCapabilities.json +0 -0
  452. /package/json-schema/{system → api}/ApiMapping.json +0 -0
  453. /package/json-schema/{system → api}/Presence.json +0 -0
  454. /package/json-schema/{system → api}/PresenceStatus.json +0 -0
  455. /package/json-schema/{system → api}/RateLimit.json +0 -0
  456. /package/json-schema/{system → api}/RealtimeAction.json +0 -0
  457. /package/json-schema/{system → api}/RealtimeEvent.json +0 -0
  458. /package/json-schema/{system → api}/RealtimeEventType.json +0 -0
  459. /package/json-schema/{system → api}/Subscription.json +0 -0
  460. /package/json-schema/{system → api}/SubscriptionEvent.json +0 -0
  461. /package/json-schema/{system → api}/TransportProtocol.json +0 -0
  462. /package/json-schema/{system → auth}/Account.json +0 -0
  463. /package/json-schema/{system → auth}/AccountLinkingConfig.json +0 -0
  464. /package/json-schema/{system → auth}/AuditPolicy.json +0 -0
  465. /package/json-schema/{system → auth}/AuthConfig.json +0 -0
  466. /package/json-schema/{system → auth}/AuthPluginConfig.json +0 -0
  467. /package/json-schema/{system → auth}/AuthStrategy.json +0 -0
  468. /package/json-schema/{system → auth}/CSRFConfig.json +0 -0
  469. /package/json-schema/{system → auth}/DatabaseAdapter.json +0 -0
  470. /package/json-schema/{system → auth}/DatabaseMapping.json +0 -0
  471. /package/json-schema/{system → auth}/EmailPasswordConfig.json +0 -0
  472. /package/json-schema/{system → auth}/EnterpriseAuthConfig.json +0 -0
  473. /package/json-schema/{system → auth}/Invitation.json +0 -0
  474. /package/json-schema/{system → auth}/InvitationStatus.json +0 -0
  475. /package/json-schema/{system → auth}/LDAPConfig.json +0 -0
  476. /package/json-schema/{system → auth}/MagicLinkConfig.json +0 -0
  477. /package/json-schema/{system → auth}/Member.json +0 -0
  478. /package/json-schema/{system → auth}/NetworkPolicy.json +0 -0
  479. /package/json-schema/{system → auth}/OAuthProvider.json +0 -0
  480. /package/json-schema/{system → auth}/OIDCConfig.json +0 -0
  481. /package/json-schema/{system → auth}/Organization.json +0 -0
  482. /package/json-schema/{system → auth}/PasskeyConfig.json +0 -0
  483. /package/json-schema/{system → auth}/PasswordPolicy.json +0 -0
  484. /package/json-schema/{system → auth}/Policy.json +0 -0
  485. /package/json-schema/{system → auth}/RateLimitConfig.json +0 -0
  486. /package/json-schema/{system → auth}/SAMLConfig.json +0 -0
  487. /package/json-schema/{system → auth}/Session.json +0 -0
  488. /package/json-schema/{system → auth}/SessionConfig.json +0 -0
  489. /package/json-schema/{system → auth}/SessionPolicy.json +0 -0
  490. /package/json-schema/{system → auth}/StandardAuthProvider.json +0 -0
  491. /package/json-schema/{system → auth}/TwoFactorConfig.json +0 -0
  492. /package/json-schema/{system → auth}/User.json +0 -0
  493. /package/json-schema/{system → auth}/UserFieldMapping.json +0 -0
  494. /package/json-schema/{system → auth}/VerificationToken.json +0 -0
  495. /package/json-schema/{data → automation}/CustomScriptAction.json +0 -0
  496. /package/json-schema/{data → automation}/EmailAlertAction.json +0 -0
  497. /package/json-schema/{data → automation}/FieldUpdateAction.json +0 -0
  498. /package/json-schema/{data → automation}/FlowNode.json +0 -0
  499. /package/json-schema/{data → automation}/FlowNodeAction.json +0 -0
  500. /package/json-schema/{data → automation}/FlowVariable.json +0 -0
  501. /package/json-schema/{data → automation}/HttpCallAction.json +0 -0
  502. /package/json-schema/{data → automation}/PushNotificationAction.json +0 -0
  503. /package/json-schema/{data → automation}/SlackMessageAction.json +0 -0
  504. /package/json-schema/{data → automation}/SmsNotificationAction.json +0 -0
  505. /package/json-schema/{data → automation}/TaskCreationAction.json +0 -0
  506. /package/json-schema/{data → automation}/TeamsMessageAction.json +0 -0
  507. /package/json-schema/{data → automation}/WebhookTriggerAction.json +0 -0
  508. /package/json-schema/{system → automation}/WebhookTriggerType.json +0 -0
  509. /package/json-schema/{data → automation}/WorkflowAction.json +0 -0
  510. /package/json-schema/{data → automation}/WorkflowTriggerType.json +0 -0
  511. /package/json-schema/{system → hub}/DatabaseLevelIsolationStrategy.json +0 -0
  512. /package/json-schema/{system → hub}/Feature.json +0 -0
  513. /package/json-schema/{system → hub}/LevelIsolationStrategySchema.json +0 -0
  514. /package/json-schema/{system → hub}/MetricType.json +0 -0
  515. /package/json-schema/{system → hub}/Plan.json +0 -0
  516. /package/json-schema/{system → hub}/RowLevelIsolationStrategy.json +0 -0
  517. /package/json-schema/{system → hub}/TenantIsolationConfig.json +0 -0
  518. /package/json-schema/{system → hub}/TenantIsolationLevel.json +0 -0
  519. /package/json-schema/{system → hub}/TenantQuota.json +0 -0
  520. /package/json-schema/{system → hub}/TenantSecurityPolicy.json +0 -0
  521. /package/json-schema/{data → permission}/FieldPermission.json +0 -0
  522. /package/json-schema/{system → permission}/TerritoryModel.json +0 -0
  523. /package/json-schema/{system → permission}/TerritoryType.json +0 -0
@@ -0,0 +1,2732 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * # SCIM 2.0 Protocol Implementation
4
+ *
5
+ * System for Cross-domain Identity Management (SCIM) 2.0 specification
6
+ * implementation for ObjectStack.
7
+ *
8
+ * ## Overview
9
+ *
10
+ * SCIM 2.0 is an HTTP-based protocol for managing user and group identities
11
+ * across domains. It provides a standardized REST API for user provisioning,
12
+ * de-provisioning, and synchronization.
13
+ *
14
+ * ## Use Cases
15
+ *
16
+ * 1. **Enterprise SSO Integration**
17
+ * - Integrate with Okta, Azure AD, OneLogin
18
+ * - Automatic user provisioning from corporate directory
19
+ * - Just-in-Time (JIT) user creation on first login
20
+ *
21
+ * 2. **User Lifecycle Management**
22
+ * - Automatically create users when they join organization
23
+ * - Update user attributes when they change roles
24
+ * - Deactivate users when they leave organization
25
+ *
26
+ * 3. **Group/Department Synchronization**
27
+ * - Sync organizational structure from AD/LDAP
28
+ * - Maintain group memberships automatically
29
+ * - Map corporate roles to application permissions
30
+ *
31
+ * 4. **Compliance & Audit**
32
+ * - Maintain accurate user directory
33
+ * - Track all identity changes
34
+ * - Meet SOX/HIPAA requirements for user management
35
+ *
36
+ * ## Specification References
37
+ *
38
+ * - **RFC 7643**: SCIM Core Schema
39
+ * - **RFC 7644**: SCIM Protocol
40
+ * - **RFC 7642**: SCIM Requirements
41
+ *
42
+ * ## Industry Implementations
43
+ *
44
+ * - **Okta**: Leading SCIM provider
45
+ * - **Azure AD**: Microsoft's identity platform
46
+ * - **OneLogin**: Enterprise SSO provider
47
+ * - **Google Workspace**: Google's identity management
48
+ *
49
+ * @see https://datatracker.ietf.org/doc/html/rfc7643
50
+ * @see https://datatracker.ietf.org/doc/html/rfc7644
51
+ */
52
+ /**
53
+ * SCIM Schema URIs
54
+ * Standard schema identifiers defined in RFC 7643
55
+ */
56
+ export declare const SCIM_SCHEMAS: {
57
+ readonly USER: "urn:ietf:params:scim:schemas:core:2.0:User";
58
+ readonly GROUP: "urn:ietf:params:scim:schemas:core:2.0:Group";
59
+ readonly ENTERPRISE_USER: "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User";
60
+ readonly RESOURCE_TYPE: "urn:ietf:params:scim:schemas:core:2.0:ResourceType";
61
+ readonly SERVICE_PROVIDER_CONFIG: "urn:ietf:params:scim:schemas:core:2.0:ServiceProviderConfig";
62
+ readonly SCHEMA: "urn:ietf:params:scim:schemas:core:2.0:Schema";
63
+ readonly LIST_RESPONSE: "urn:ietf:params:scim:api:messages:2.0:ListResponse";
64
+ readonly PATCH_OP: "urn:ietf:params:scim:api:messages:2.0:PatchOp";
65
+ readonly BULK_REQUEST: "urn:ietf:params:scim:api:messages:2.0:BulkRequest";
66
+ readonly BULK_RESPONSE: "urn:ietf:params:scim:api:messages:2.0:BulkResponse";
67
+ readonly ERROR: "urn:ietf:params:scim:api:messages:2.0:Error";
68
+ };
69
+ /**
70
+ * SCIM Meta Schema
71
+ * Common metadata for all SCIM resources
72
+ */
73
+ export declare const SCIMMetaSchema: z.ZodObject<{
74
+ /**
75
+ * Resource type name
76
+ * @example "User", "Group"
77
+ */
78
+ resourceType: z.ZodOptional<z.ZodString>;
79
+ /**
80
+ * Resource creation timestamp (ISO 8601)
81
+ */
82
+ created: z.ZodOptional<z.ZodString>;
83
+ /**
84
+ * Last modification timestamp (ISO 8601)
85
+ */
86
+ lastModified: z.ZodOptional<z.ZodString>;
87
+ /**
88
+ * Resource location URI
89
+ * Absolute URL to the resource
90
+ */
91
+ location: z.ZodOptional<z.ZodString>;
92
+ /**
93
+ * Entity tag for optimistic concurrency control
94
+ * Used with If-Match header for conditional updates
95
+ */
96
+ version: z.ZodOptional<z.ZodString>;
97
+ }, "strip", z.ZodTypeAny, {
98
+ location?: string | undefined;
99
+ version?: string | undefined;
100
+ lastModified?: string | undefined;
101
+ created?: string | undefined;
102
+ resourceType?: string | undefined;
103
+ }, {
104
+ location?: string | undefined;
105
+ version?: string | undefined;
106
+ lastModified?: string | undefined;
107
+ created?: string | undefined;
108
+ resourceType?: string | undefined;
109
+ }>;
110
+ export type SCIMMeta = z.infer<typeof SCIMMetaSchema>;
111
+ /**
112
+ * SCIM Name Schema
113
+ * Structured name components
114
+ */
115
+ export declare const SCIMNameSchema: z.ZodObject<{
116
+ /**
117
+ * Full name formatted for display
118
+ * @example "Ms. Barbara Jane Jensen III"
119
+ */
120
+ formatted: z.ZodOptional<z.ZodString>;
121
+ /**
122
+ * Family name (surname)
123
+ * @example "Jensen"
124
+ */
125
+ familyName: z.ZodOptional<z.ZodString>;
126
+ /**
127
+ * Given name (first name)
128
+ * @example "Barbara"
129
+ */
130
+ givenName: z.ZodOptional<z.ZodString>;
131
+ /**
132
+ * Middle name
133
+ * @example "Jane"
134
+ */
135
+ middleName: z.ZodOptional<z.ZodString>;
136
+ /**
137
+ * Honorific prefix
138
+ * @example "Ms.", "Dr.", "Prof."
139
+ */
140
+ honorificPrefix: z.ZodOptional<z.ZodString>;
141
+ /**
142
+ * Honorific suffix
143
+ * @example "III", "Jr.", "Sr."
144
+ */
145
+ honorificSuffix: z.ZodOptional<z.ZodString>;
146
+ }, "strip", z.ZodTypeAny, {
147
+ formatted?: string | undefined;
148
+ familyName?: string | undefined;
149
+ givenName?: string | undefined;
150
+ middleName?: string | undefined;
151
+ honorificPrefix?: string | undefined;
152
+ honorificSuffix?: string | undefined;
153
+ }, {
154
+ formatted?: string | undefined;
155
+ familyName?: string | undefined;
156
+ givenName?: string | undefined;
157
+ middleName?: string | undefined;
158
+ honorificPrefix?: string | undefined;
159
+ honorificSuffix?: string | undefined;
160
+ }>;
161
+ export type SCIMName = z.infer<typeof SCIMNameSchema>;
162
+ /**
163
+ * SCIM Email Schema
164
+ * Multi-valued email address
165
+ */
166
+ export declare const SCIMEmailSchema: z.ZodObject<{
167
+ /**
168
+ * Email address value
169
+ */
170
+ value: z.ZodString;
171
+ /**
172
+ * Email type
173
+ * @example "work", "home", "other"
174
+ */
175
+ type: z.ZodOptional<z.ZodEnum<["work", "home", "other"]>>;
176
+ /**
177
+ * Display label for the email
178
+ */
179
+ display: z.ZodOptional<z.ZodString>;
180
+ /**
181
+ * Whether this is the primary email
182
+ */
183
+ primary: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
184
+ }, "strip", z.ZodTypeAny, {
185
+ value: string;
186
+ primary: boolean;
187
+ type?: "home" | "work" | "other" | undefined;
188
+ display?: string | undefined;
189
+ }, {
190
+ value: string;
191
+ type?: "home" | "work" | "other" | undefined;
192
+ display?: string | undefined;
193
+ primary?: boolean | undefined;
194
+ }>;
195
+ export type SCIMEmail = z.infer<typeof SCIMEmailSchema>;
196
+ /**
197
+ * SCIM Phone Number Schema
198
+ * Multi-valued phone number
199
+ */
200
+ export declare const SCIMPhoneNumberSchema: z.ZodObject<{
201
+ /**
202
+ * Phone number value
203
+ * Format is not enforced to support international numbers
204
+ */
205
+ value: z.ZodString;
206
+ /**
207
+ * Phone type
208
+ */
209
+ type: z.ZodOptional<z.ZodEnum<["work", "home", "mobile", "fax", "pager", "other"]>>;
210
+ /**
211
+ * Display label for the phone number
212
+ */
213
+ display: z.ZodOptional<z.ZodString>;
214
+ /**
215
+ * Whether this is the primary phone
216
+ */
217
+ primary: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
218
+ }, "strip", z.ZodTypeAny, {
219
+ value: string;
220
+ primary: boolean;
221
+ type?: "home" | "work" | "other" | "mobile" | "fax" | "pager" | undefined;
222
+ display?: string | undefined;
223
+ }, {
224
+ value: string;
225
+ type?: "home" | "work" | "other" | "mobile" | "fax" | "pager" | undefined;
226
+ display?: string | undefined;
227
+ primary?: boolean | undefined;
228
+ }>;
229
+ export type SCIMPhoneNumber = z.infer<typeof SCIMPhoneNumberSchema>;
230
+ /**
231
+ * SCIM Address Schema
232
+ * Multi-valued physical mailing address
233
+ */
234
+ export declare const SCIMAddressSchema: z.ZodObject<{
235
+ /**
236
+ * Full mailing address formatted for display
237
+ */
238
+ formatted: z.ZodOptional<z.ZodString>;
239
+ /**
240
+ * Full street address
241
+ */
242
+ streetAddress: z.ZodOptional<z.ZodString>;
243
+ /**
244
+ * City or locality
245
+ */
246
+ locality: z.ZodOptional<z.ZodString>;
247
+ /**
248
+ * State or region
249
+ */
250
+ region: z.ZodOptional<z.ZodString>;
251
+ /**
252
+ * Zip code or postal code
253
+ */
254
+ postalCode: z.ZodOptional<z.ZodString>;
255
+ /**
256
+ * Country
257
+ */
258
+ country: z.ZodOptional<z.ZodString>;
259
+ /**
260
+ * Address type
261
+ */
262
+ type: z.ZodOptional<z.ZodEnum<["work", "home", "other"]>>;
263
+ /**
264
+ * Whether this is the primary address
265
+ */
266
+ primary: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
267
+ }, "strip", z.ZodTypeAny, {
268
+ primary: boolean;
269
+ type?: "home" | "work" | "other" | undefined;
270
+ postalCode?: string | undefined;
271
+ country?: string | undefined;
272
+ formatted?: string | undefined;
273
+ region?: string | undefined;
274
+ streetAddress?: string | undefined;
275
+ locality?: string | undefined;
276
+ }, {
277
+ type?: "home" | "work" | "other" | undefined;
278
+ postalCode?: string | undefined;
279
+ country?: string | undefined;
280
+ formatted?: string | undefined;
281
+ primary?: boolean | undefined;
282
+ region?: string | undefined;
283
+ streetAddress?: string | undefined;
284
+ locality?: string | undefined;
285
+ }>;
286
+ export type SCIMAddress = z.infer<typeof SCIMAddressSchema>;
287
+ /**
288
+ * SCIM Group Reference
289
+ * Reference to a group the user belongs to
290
+ */
291
+ export declare const SCIMGroupReferenceSchema: z.ZodObject<{
292
+ /**
293
+ * Group identifier
294
+ */
295
+ value: z.ZodString;
296
+ /**
297
+ * Direct reference to the group resource
298
+ */
299
+ $ref: z.ZodOptional<z.ZodString>;
300
+ /**
301
+ * Human-readable group name
302
+ */
303
+ display: z.ZodOptional<z.ZodString>;
304
+ /**
305
+ * Type of group
306
+ */
307
+ type: z.ZodOptional<z.ZodEnum<["direct", "indirect"]>>;
308
+ }, "strip", z.ZodTypeAny, {
309
+ value: string;
310
+ type?: "indirect" | "direct" | undefined;
311
+ display?: string | undefined;
312
+ $ref?: string | undefined;
313
+ }, {
314
+ value: string;
315
+ type?: "indirect" | "direct" | undefined;
316
+ display?: string | undefined;
317
+ $ref?: string | undefined;
318
+ }>;
319
+ export type SCIMGroupReference = z.infer<typeof SCIMGroupReferenceSchema>;
320
+ /**
321
+ * SCIM Enterprise User Extension
322
+ * Enterprise-specific user attributes
323
+ */
324
+ export declare const SCIMEnterpriseUserSchema: z.ZodObject<{
325
+ /**
326
+ * Employee number
327
+ */
328
+ employeeNumber: z.ZodOptional<z.ZodString>;
329
+ /**
330
+ * Cost center
331
+ */
332
+ costCenter: z.ZodOptional<z.ZodString>;
333
+ /**
334
+ * Organization unit
335
+ */
336
+ organization: z.ZodOptional<z.ZodString>;
337
+ /**
338
+ * Division
339
+ */
340
+ division: z.ZodOptional<z.ZodString>;
341
+ /**
342
+ * Department
343
+ */
344
+ department: z.ZodOptional<z.ZodString>;
345
+ /**
346
+ * Manager reference
347
+ */
348
+ manager: z.ZodOptional<z.ZodObject<{
349
+ value: z.ZodString;
350
+ $ref: z.ZodOptional<z.ZodString>;
351
+ displayName: z.ZodOptional<z.ZodString>;
352
+ }, "strip", z.ZodTypeAny, {
353
+ value: string;
354
+ displayName?: string | undefined;
355
+ $ref?: string | undefined;
356
+ }, {
357
+ value: string;
358
+ displayName?: string | undefined;
359
+ $ref?: string | undefined;
360
+ }>>;
361
+ }, "strip", z.ZodTypeAny, {
362
+ department?: string | undefined;
363
+ organization?: string | undefined;
364
+ employeeNumber?: string | undefined;
365
+ costCenter?: string | undefined;
366
+ division?: string | undefined;
367
+ manager?: {
368
+ value: string;
369
+ displayName?: string | undefined;
370
+ $ref?: string | undefined;
371
+ } | undefined;
372
+ }, {
373
+ department?: string | undefined;
374
+ organization?: string | undefined;
375
+ employeeNumber?: string | undefined;
376
+ costCenter?: string | undefined;
377
+ division?: string | undefined;
378
+ manager?: {
379
+ value: string;
380
+ displayName?: string | undefined;
381
+ $ref?: string | undefined;
382
+ } | undefined;
383
+ }>;
384
+ export type SCIMEnterpriseUser = z.infer<typeof SCIMEnterpriseUserSchema>;
385
+ /**
386
+ * SCIM User Schema (Core)
387
+ * Complete SCIM 2.0 User resource
388
+ */
389
+ export declare const SCIMUserSchema: z.ZodEffects<z.ZodObject<{
390
+ /**
391
+ * SCIM schema URIs
392
+ * Must include at minimum the core User schema URI
393
+ */
394
+ schemas: z.ZodDefault<z.ZodEffects<z.ZodArray<z.ZodString, "many">, string[], string[]>>;
395
+ /**
396
+ * Unique identifier
397
+ */
398
+ id: z.ZodOptional<z.ZodString>;
399
+ /**
400
+ * External identifier
401
+ * Identifier from the provisioning client
402
+ */
403
+ externalId: z.ZodOptional<z.ZodString>;
404
+ /**
405
+ * Unique username
406
+ * REQUIRED for user creation
407
+ */
408
+ userName: z.ZodString;
409
+ /**
410
+ * Structured name
411
+ */
412
+ name: z.ZodOptional<z.ZodObject<{
413
+ /**
414
+ * Full name formatted for display
415
+ * @example "Ms. Barbara Jane Jensen III"
416
+ */
417
+ formatted: z.ZodOptional<z.ZodString>;
418
+ /**
419
+ * Family name (surname)
420
+ * @example "Jensen"
421
+ */
422
+ familyName: z.ZodOptional<z.ZodString>;
423
+ /**
424
+ * Given name (first name)
425
+ * @example "Barbara"
426
+ */
427
+ givenName: z.ZodOptional<z.ZodString>;
428
+ /**
429
+ * Middle name
430
+ * @example "Jane"
431
+ */
432
+ middleName: z.ZodOptional<z.ZodString>;
433
+ /**
434
+ * Honorific prefix
435
+ * @example "Ms.", "Dr.", "Prof."
436
+ */
437
+ honorificPrefix: z.ZodOptional<z.ZodString>;
438
+ /**
439
+ * Honorific suffix
440
+ * @example "III", "Jr.", "Sr."
441
+ */
442
+ honorificSuffix: z.ZodOptional<z.ZodString>;
443
+ }, "strip", z.ZodTypeAny, {
444
+ formatted?: string | undefined;
445
+ familyName?: string | undefined;
446
+ givenName?: string | undefined;
447
+ middleName?: string | undefined;
448
+ honorificPrefix?: string | undefined;
449
+ honorificSuffix?: string | undefined;
450
+ }, {
451
+ formatted?: string | undefined;
452
+ familyName?: string | undefined;
453
+ givenName?: string | undefined;
454
+ middleName?: string | undefined;
455
+ honorificPrefix?: string | undefined;
456
+ honorificSuffix?: string | undefined;
457
+ }>>;
458
+ /**
459
+ * Display name
460
+ */
461
+ displayName: z.ZodOptional<z.ZodString>;
462
+ /**
463
+ * Nickname or casual name
464
+ */
465
+ nickName: z.ZodOptional<z.ZodString>;
466
+ /**
467
+ * Profile URL
468
+ */
469
+ profileUrl: z.ZodOptional<z.ZodString>;
470
+ /**
471
+ * Job title
472
+ */
473
+ title: z.ZodOptional<z.ZodString>;
474
+ /**
475
+ * User type (employee, contractor, etc.)
476
+ */
477
+ userType: z.ZodOptional<z.ZodString>;
478
+ /**
479
+ * Preferred language (ISO 639-1)
480
+ */
481
+ preferredLanguage: z.ZodOptional<z.ZodString>;
482
+ /**
483
+ * Locale (e.g., en-US)
484
+ */
485
+ locale: z.ZodOptional<z.ZodString>;
486
+ /**
487
+ * Timezone (e.g., America/Los_Angeles)
488
+ */
489
+ timezone: z.ZodOptional<z.ZodString>;
490
+ /**
491
+ * Account active status
492
+ */
493
+ active: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
494
+ /**
495
+ * Password (write-only, never returned)
496
+ */
497
+ password: z.ZodOptional<z.ZodString>;
498
+ /**
499
+ * Email addresses (multi-valued)
500
+ */
501
+ emails: z.ZodOptional<z.ZodArray<z.ZodObject<{
502
+ /**
503
+ * Email address value
504
+ */
505
+ value: z.ZodString;
506
+ /**
507
+ * Email type
508
+ * @example "work", "home", "other"
509
+ */
510
+ type: z.ZodOptional<z.ZodEnum<["work", "home", "other"]>>;
511
+ /**
512
+ * Display label for the email
513
+ */
514
+ display: z.ZodOptional<z.ZodString>;
515
+ /**
516
+ * Whether this is the primary email
517
+ */
518
+ primary: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
519
+ }, "strip", z.ZodTypeAny, {
520
+ value: string;
521
+ primary: boolean;
522
+ type?: "home" | "work" | "other" | undefined;
523
+ display?: string | undefined;
524
+ }, {
525
+ value: string;
526
+ type?: "home" | "work" | "other" | undefined;
527
+ display?: string | undefined;
528
+ primary?: boolean | undefined;
529
+ }>, "many">>;
530
+ /**
531
+ * Phone numbers (multi-valued)
532
+ */
533
+ phoneNumbers: z.ZodOptional<z.ZodArray<z.ZodObject<{
534
+ /**
535
+ * Phone number value
536
+ * Format is not enforced to support international numbers
537
+ */
538
+ value: z.ZodString;
539
+ /**
540
+ * Phone type
541
+ */
542
+ type: z.ZodOptional<z.ZodEnum<["work", "home", "mobile", "fax", "pager", "other"]>>;
543
+ /**
544
+ * Display label for the phone number
545
+ */
546
+ display: z.ZodOptional<z.ZodString>;
547
+ /**
548
+ * Whether this is the primary phone
549
+ */
550
+ primary: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
551
+ }, "strip", z.ZodTypeAny, {
552
+ value: string;
553
+ primary: boolean;
554
+ type?: "home" | "work" | "other" | "mobile" | "fax" | "pager" | undefined;
555
+ display?: string | undefined;
556
+ }, {
557
+ value: string;
558
+ type?: "home" | "work" | "other" | "mobile" | "fax" | "pager" | undefined;
559
+ display?: string | undefined;
560
+ primary?: boolean | undefined;
561
+ }>, "many">>;
562
+ /**
563
+ * Instant messaging addresses
564
+ */
565
+ ims: z.ZodOptional<z.ZodArray<z.ZodObject<{
566
+ value: z.ZodString;
567
+ type: z.ZodOptional<z.ZodString>;
568
+ primary: z.ZodOptional<z.ZodBoolean>;
569
+ }, "strip", z.ZodTypeAny, {
570
+ value: string;
571
+ type?: string | undefined;
572
+ primary?: boolean | undefined;
573
+ }, {
574
+ value: string;
575
+ type?: string | undefined;
576
+ primary?: boolean | undefined;
577
+ }>, "many">>;
578
+ /**
579
+ * Photos (profile pictures)
580
+ */
581
+ photos: z.ZodOptional<z.ZodArray<z.ZodObject<{
582
+ value: z.ZodString;
583
+ type: z.ZodOptional<z.ZodEnum<["photo", "thumbnail"]>>;
584
+ primary: z.ZodOptional<z.ZodBoolean>;
585
+ }, "strip", z.ZodTypeAny, {
586
+ value: string;
587
+ type?: "photo" | "thumbnail" | undefined;
588
+ primary?: boolean | undefined;
589
+ }, {
590
+ value: string;
591
+ type?: "photo" | "thumbnail" | undefined;
592
+ primary?: boolean | undefined;
593
+ }>, "many">>;
594
+ /**
595
+ * Physical addresses
596
+ */
597
+ addresses: z.ZodOptional<z.ZodArray<z.ZodObject<{
598
+ /**
599
+ * Full mailing address formatted for display
600
+ */
601
+ formatted: z.ZodOptional<z.ZodString>;
602
+ /**
603
+ * Full street address
604
+ */
605
+ streetAddress: z.ZodOptional<z.ZodString>;
606
+ /**
607
+ * City or locality
608
+ */
609
+ locality: z.ZodOptional<z.ZodString>;
610
+ /**
611
+ * State or region
612
+ */
613
+ region: z.ZodOptional<z.ZodString>;
614
+ /**
615
+ * Zip code or postal code
616
+ */
617
+ postalCode: z.ZodOptional<z.ZodString>;
618
+ /**
619
+ * Country
620
+ */
621
+ country: z.ZodOptional<z.ZodString>;
622
+ /**
623
+ * Address type
624
+ */
625
+ type: z.ZodOptional<z.ZodEnum<["work", "home", "other"]>>;
626
+ /**
627
+ * Whether this is the primary address
628
+ */
629
+ primary: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
630
+ }, "strip", z.ZodTypeAny, {
631
+ primary: boolean;
632
+ type?: "home" | "work" | "other" | undefined;
633
+ postalCode?: string | undefined;
634
+ country?: string | undefined;
635
+ formatted?: string | undefined;
636
+ region?: string | undefined;
637
+ streetAddress?: string | undefined;
638
+ locality?: string | undefined;
639
+ }, {
640
+ type?: "home" | "work" | "other" | undefined;
641
+ postalCode?: string | undefined;
642
+ country?: string | undefined;
643
+ formatted?: string | undefined;
644
+ primary?: boolean | undefined;
645
+ region?: string | undefined;
646
+ streetAddress?: string | undefined;
647
+ locality?: string | undefined;
648
+ }>, "many">>;
649
+ /**
650
+ * Group memberships
651
+ */
652
+ groups: z.ZodOptional<z.ZodArray<z.ZodObject<{
653
+ /**
654
+ * Group identifier
655
+ */
656
+ value: z.ZodString;
657
+ /**
658
+ * Direct reference to the group resource
659
+ */
660
+ $ref: z.ZodOptional<z.ZodString>;
661
+ /**
662
+ * Human-readable group name
663
+ */
664
+ display: z.ZodOptional<z.ZodString>;
665
+ /**
666
+ * Type of group
667
+ */
668
+ type: z.ZodOptional<z.ZodEnum<["direct", "indirect"]>>;
669
+ }, "strip", z.ZodTypeAny, {
670
+ value: string;
671
+ type?: "indirect" | "direct" | undefined;
672
+ display?: string | undefined;
673
+ $ref?: string | undefined;
674
+ }, {
675
+ value: string;
676
+ type?: "indirect" | "direct" | undefined;
677
+ display?: string | undefined;
678
+ $ref?: string | undefined;
679
+ }>, "many">>;
680
+ /**
681
+ * User entitlements
682
+ */
683
+ entitlements: z.ZodOptional<z.ZodArray<z.ZodObject<{
684
+ value: z.ZodString;
685
+ type: z.ZodOptional<z.ZodString>;
686
+ primary: z.ZodOptional<z.ZodBoolean>;
687
+ }, "strip", z.ZodTypeAny, {
688
+ value: string;
689
+ type?: string | undefined;
690
+ primary?: boolean | undefined;
691
+ }, {
692
+ value: string;
693
+ type?: string | undefined;
694
+ primary?: boolean | undefined;
695
+ }>, "many">>;
696
+ /**
697
+ * User roles
698
+ */
699
+ roles: z.ZodOptional<z.ZodArray<z.ZodObject<{
700
+ value: z.ZodString;
701
+ type: z.ZodOptional<z.ZodString>;
702
+ primary: z.ZodOptional<z.ZodBoolean>;
703
+ }, "strip", z.ZodTypeAny, {
704
+ value: string;
705
+ type?: string | undefined;
706
+ primary?: boolean | undefined;
707
+ }, {
708
+ value: string;
709
+ type?: string | undefined;
710
+ primary?: boolean | undefined;
711
+ }>, "many">>;
712
+ /**
713
+ * X509 certificates
714
+ */
715
+ x509Certificates: z.ZodOptional<z.ZodArray<z.ZodObject<{
716
+ value: z.ZodString;
717
+ type: z.ZodOptional<z.ZodString>;
718
+ primary: z.ZodOptional<z.ZodBoolean>;
719
+ }, "strip", z.ZodTypeAny, {
720
+ value: string;
721
+ type?: string | undefined;
722
+ primary?: boolean | undefined;
723
+ }, {
724
+ value: string;
725
+ type?: string | undefined;
726
+ primary?: boolean | undefined;
727
+ }>, "many">>;
728
+ /**
729
+ * Resource metadata
730
+ */
731
+ meta: z.ZodOptional<z.ZodObject<{
732
+ /**
733
+ * Resource type name
734
+ * @example "User", "Group"
735
+ */
736
+ resourceType: z.ZodOptional<z.ZodString>;
737
+ /**
738
+ * Resource creation timestamp (ISO 8601)
739
+ */
740
+ created: z.ZodOptional<z.ZodString>;
741
+ /**
742
+ * Last modification timestamp (ISO 8601)
743
+ */
744
+ lastModified: z.ZodOptional<z.ZodString>;
745
+ /**
746
+ * Resource location URI
747
+ * Absolute URL to the resource
748
+ */
749
+ location: z.ZodOptional<z.ZodString>;
750
+ /**
751
+ * Entity tag for optimistic concurrency control
752
+ * Used with If-Match header for conditional updates
753
+ */
754
+ version: z.ZodOptional<z.ZodString>;
755
+ }, "strip", z.ZodTypeAny, {
756
+ location?: string | undefined;
757
+ version?: string | undefined;
758
+ lastModified?: string | undefined;
759
+ created?: string | undefined;
760
+ resourceType?: string | undefined;
761
+ }, {
762
+ location?: string | undefined;
763
+ version?: string | undefined;
764
+ lastModified?: string | undefined;
765
+ created?: string | undefined;
766
+ resourceType?: string | undefined;
767
+ }>>;
768
+ /**
769
+ * Enterprise user extension
770
+ * Only present when enterprise extension is used
771
+ */
772
+ "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": z.ZodOptional<z.ZodObject<{
773
+ /**
774
+ * Employee number
775
+ */
776
+ employeeNumber: z.ZodOptional<z.ZodString>;
777
+ /**
778
+ * Cost center
779
+ */
780
+ costCenter: z.ZodOptional<z.ZodString>;
781
+ /**
782
+ * Organization unit
783
+ */
784
+ organization: z.ZodOptional<z.ZodString>;
785
+ /**
786
+ * Division
787
+ */
788
+ division: z.ZodOptional<z.ZodString>;
789
+ /**
790
+ * Department
791
+ */
792
+ department: z.ZodOptional<z.ZodString>;
793
+ /**
794
+ * Manager reference
795
+ */
796
+ manager: z.ZodOptional<z.ZodObject<{
797
+ value: z.ZodString;
798
+ $ref: z.ZodOptional<z.ZodString>;
799
+ displayName: z.ZodOptional<z.ZodString>;
800
+ }, "strip", z.ZodTypeAny, {
801
+ value: string;
802
+ displayName?: string | undefined;
803
+ $ref?: string | undefined;
804
+ }, {
805
+ value: string;
806
+ displayName?: string | undefined;
807
+ $ref?: string | undefined;
808
+ }>>;
809
+ }, "strip", z.ZodTypeAny, {
810
+ department?: string | undefined;
811
+ organization?: string | undefined;
812
+ employeeNumber?: string | undefined;
813
+ costCenter?: string | undefined;
814
+ division?: string | undefined;
815
+ manager?: {
816
+ value: string;
817
+ displayName?: string | undefined;
818
+ $ref?: string | undefined;
819
+ } | undefined;
820
+ }, {
821
+ department?: string | undefined;
822
+ organization?: string | undefined;
823
+ employeeNumber?: string | undefined;
824
+ costCenter?: string | undefined;
825
+ division?: string | undefined;
826
+ manager?: {
827
+ value: string;
828
+ displayName?: string | undefined;
829
+ $ref?: string | undefined;
830
+ } | undefined;
831
+ }>>;
832
+ }, "strip", z.ZodTypeAny, {
833
+ active: boolean;
834
+ schemas: string[];
835
+ userName: string;
836
+ password?: string | undefined;
837
+ name?: {
838
+ formatted?: string | undefined;
839
+ familyName?: string | undefined;
840
+ givenName?: string | undefined;
841
+ middleName?: string | undefined;
842
+ honorificPrefix?: string | undefined;
843
+ honorificSuffix?: string | undefined;
844
+ } | undefined;
845
+ externalId?: string | undefined;
846
+ id?: string | undefined;
847
+ roles?: {
848
+ value: string;
849
+ type?: string | undefined;
850
+ primary?: boolean | undefined;
851
+ }[] | undefined;
852
+ groups?: {
853
+ value: string;
854
+ type?: "indirect" | "direct" | undefined;
855
+ display?: string | undefined;
856
+ $ref?: string | undefined;
857
+ }[] | undefined;
858
+ title?: string | undefined;
859
+ timezone?: string | undefined;
860
+ locale?: string | undefined;
861
+ displayName?: string | undefined;
862
+ "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"?: {
863
+ department?: string | undefined;
864
+ organization?: string | undefined;
865
+ employeeNumber?: string | undefined;
866
+ costCenter?: string | undefined;
867
+ division?: string | undefined;
868
+ manager?: {
869
+ value: string;
870
+ displayName?: string | undefined;
871
+ $ref?: string | undefined;
872
+ } | undefined;
873
+ } | undefined;
874
+ nickName?: string | undefined;
875
+ profileUrl?: string | undefined;
876
+ userType?: string | undefined;
877
+ preferredLanguage?: string | undefined;
878
+ emails?: {
879
+ value: string;
880
+ primary: boolean;
881
+ type?: "home" | "work" | "other" | undefined;
882
+ display?: string | undefined;
883
+ }[] | undefined;
884
+ phoneNumbers?: {
885
+ value: string;
886
+ primary: boolean;
887
+ type?: "home" | "work" | "other" | "mobile" | "fax" | "pager" | undefined;
888
+ display?: string | undefined;
889
+ }[] | undefined;
890
+ ims?: {
891
+ value: string;
892
+ type?: string | undefined;
893
+ primary?: boolean | undefined;
894
+ }[] | undefined;
895
+ photos?: {
896
+ value: string;
897
+ type?: "photo" | "thumbnail" | undefined;
898
+ primary?: boolean | undefined;
899
+ }[] | undefined;
900
+ addresses?: {
901
+ primary: boolean;
902
+ type?: "home" | "work" | "other" | undefined;
903
+ postalCode?: string | undefined;
904
+ country?: string | undefined;
905
+ formatted?: string | undefined;
906
+ region?: string | undefined;
907
+ streetAddress?: string | undefined;
908
+ locality?: string | undefined;
909
+ }[] | undefined;
910
+ entitlements?: {
911
+ value: string;
912
+ type?: string | undefined;
913
+ primary?: boolean | undefined;
914
+ }[] | undefined;
915
+ x509Certificates?: {
916
+ value: string;
917
+ type?: string | undefined;
918
+ primary?: boolean | undefined;
919
+ }[] | undefined;
920
+ meta?: {
921
+ location?: string | undefined;
922
+ version?: string | undefined;
923
+ lastModified?: string | undefined;
924
+ created?: string | undefined;
925
+ resourceType?: string | undefined;
926
+ } | undefined;
927
+ }, {
928
+ userName: string;
929
+ password?: string | undefined;
930
+ name?: {
931
+ formatted?: string | undefined;
932
+ familyName?: string | undefined;
933
+ givenName?: string | undefined;
934
+ middleName?: string | undefined;
935
+ honorificPrefix?: string | undefined;
936
+ honorificSuffix?: string | undefined;
937
+ } | undefined;
938
+ externalId?: string | undefined;
939
+ active?: boolean | undefined;
940
+ id?: string | undefined;
941
+ roles?: {
942
+ value: string;
943
+ type?: string | undefined;
944
+ primary?: boolean | undefined;
945
+ }[] | undefined;
946
+ groups?: {
947
+ value: string;
948
+ type?: "indirect" | "direct" | undefined;
949
+ display?: string | undefined;
950
+ $ref?: string | undefined;
951
+ }[] | undefined;
952
+ title?: string | undefined;
953
+ timezone?: string | undefined;
954
+ locale?: string | undefined;
955
+ displayName?: string | undefined;
956
+ "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"?: {
957
+ department?: string | undefined;
958
+ organization?: string | undefined;
959
+ employeeNumber?: string | undefined;
960
+ costCenter?: string | undefined;
961
+ division?: string | undefined;
962
+ manager?: {
963
+ value: string;
964
+ displayName?: string | undefined;
965
+ $ref?: string | undefined;
966
+ } | undefined;
967
+ } | undefined;
968
+ schemas?: string[] | undefined;
969
+ nickName?: string | undefined;
970
+ profileUrl?: string | undefined;
971
+ userType?: string | undefined;
972
+ preferredLanguage?: string | undefined;
973
+ emails?: {
974
+ value: string;
975
+ type?: "home" | "work" | "other" | undefined;
976
+ display?: string | undefined;
977
+ primary?: boolean | undefined;
978
+ }[] | undefined;
979
+ phoneNumbers?: {
980
+ value: string;
981
+ type?: "home" | "work" | "other" | "mobile" | "fax" | "pager" | undefined;
982
+ display?: string | undefined;
983
+ primary?: boolean | undefined;
984
+ }[] | undefined;
985
+ ims?: {
986
+ value: string;
987
+ type?: string | undefined;
988
+ primary?: boolean | undefined;
989
+ }[] | undefined;
990
+ photos?: {
991
+ value: string;
992
+ type?: "photo" | "thumbnail" | undefined;
993
+ primary?: boolean | undefined;
994
+ }[] | undefined;
995
+ addresses?: {
996
+ type?: "home" | "work" | "other" | undefined;
997
+ postalCode?: string | undefined;
998
+ country?: string | undefined;
999
+ formatted?: string | undefined;
1000
+ primary?: boolean | undefined;
1001
+ region?: string | undefined;
1002
+ streetAddress?: string | undefined;
1003
+ locality?: string | undefined;
1004
+ }[] | undefined;
1005
+ entitlements?: {
1006
+ value: string;
1007
+ type?: string | undefined;
1008
+ primary?: boolean | undefined;
1009
+ }[] | undefined;
1010
+ x509Certificates?: {
1011
+ value: string;
1012
+ type?: string | undefined;
1013
+ primary?: boolean | undefined;
1014
+ }[] | undefined;
1015
+ meta?: {
1016
+ location?: string | undefined;
1017
+ version?: string | undefined;
1018
+ lastModified?: string | undefined;
1019
+ created?: string | undefined;
1020
+ resourceType?: string | undefined;
1021
+ } | undefined;
1022
+ }>, {
1023
+ active: boolean;
1024
+ schemas: string[];
1025
+ userName: string;
1026
+ password?: string | undefined;
1027
+ name?: {
1028
+ formatted?: string | undefined;
1029
+ familyName?: string | undefined;
1030
+ givenName?: string | undefined;
1031
+ middleName?: string | undefined;
1032
+ honorificPrefix?: string | undefined;
1033
+ honorificSuffix?: string | undefined;
1034
+ } | undefined;
1035
+ externalId?: string | undefined;
1036
+ id?: string | undefined;
1037
+ roles?: {
1038
+ value: string;
1039
+ type?: string | undefined;
1040
+ primary?: boolean | undefined;
1041
+ }[] | undefined;
1042
+ groups?: {
1043
+ value: string;
1044
+ type?: "indirect" | "direct" | undefined;
1045
+ display?: string | undefined;
1046
+ $ref?: string | undefined;
1047
+ }[] | undefined;
1048
+ title?: string | undefined;
1049
+ timezone?: string | undefined;
1050
+ locale?: string | undefined;
1051
+ displayName?: string | undefined;
1052
+ "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"?: {
1053
+ department?: string | undefined;
1054
+ organization?: string | undefined;
1055
+ employeeNumber?: string | undefined;
1056
+ costCenter?: string | undefined;
1057
+ division?: string | undefined;
1058
+ manager?: {
1059
+ value: string;
1060
+ displayName?: string | undefined;
1061
+ $ref?: string | undefined;
1062
+ } | undefined;
1063
+ } | undefined;
1064
+ nickName?: string | undefined;
1065
+ profileUrl?: string | undefined;
1066
+ userType?: string | undefined;
1067
+ preferredLanguage?: string | undefined;
1068
+ emails?: {
1069
+ value: string;
1070
+ primary: boolean;
1071
+ type?: "home" | "work" | "other" | undefined;
1072
+ display?: string | undefined;
1073
+ }[] | undefined;
1074
+ phoneNumbers?: {
1075
+ value: string;
1076
+ primary: boolean;
1077
+ type?: "home" | "work" | "other" | "mobile" | "fax" | "pager" | undefined;
1078
+ display?: string | undefined;
1079
+ }[] | undefined;
1080
+ ims?: {
1081
+ value: string;
1082
+ type?: string | undefined;
1083
+ primary?: boolean | undefined;
1084
+ }[] | undefined;
1085
+ photos?: {
1086
+ value: string;
1087
+ type?: "photo" | "thumbnail" | undefined;
1088
+ primary?: boolean | undefined;
1089
+ }[] | undefined;
1090
+ addresses?: {
1091
+ primary: boolean;
1092
+ type?: "home" | "work" | "other" | undefined;
1093
+ postalCode?: string | undefined;
1094
+ country?: string | undefined;
1095
+ formatted?: string | undefined;
1096
+ region?: string | undefined;
1097
+ streetAddress?: string | undefined;
1098
+ locality?: string | undefined;
1099
+ }[] | undefined;
1100
+ entitlements?: {
1101
+ value: string;
1102
+ type?: string | undefined;
1103
+ primary?: boolean | undefined;
1104
+ }[] | undefined;
1105
+ x509Certificates?: {
1106
+ value: string;
1107
+ type?: string | undefined;
1108
+ primary?: boolean | undefined;
1109
+ }[] | undefined;
1110
+ meta?: {
1111
+ location?: string | undefined;
1112
+ version?: string | undefined;
1113
+ lastModified?: string | undefined;
1114
+ created?: string | undefined;
1115
+ resourceType?: string | undefined;
1116
+ } | undefined;
1117
+ }, {
1118
+ userName: string;
1119
+ password?: string | undefined;
1120
+ name?: {
1121
+ formatted?: string | undefined;
1122
+ familyName?: string | undefined;
1123
+ givenName?: string | undefined;
1124
+ middleName?: string | undefined;
1125
+ honorificPrefix?: string | undefined;
1126
+ honorificSuffix?: string | undefined;
1127
+ } | undefined;
1128
+ externalId?: string | undefined;
1129
+ active?: boolean | undefined;
1130
+ id?: string | undefined;
1131
+ roles?: {
1132
+ value: string;
1133
+ type?: string | undefined;
1134
+ primary?: boolean | undefined;
1135
+ }[] | undefined;
1136
+ groups?: {
1137
+ value: string;
1138
+ type?: "indirect" | "direct" | undefined;
1139
+ display?: string | undefined;
1140
+ $ref?: string | undefined;
1141
+ }[] | undefined;
1142
+ title?: string | undefined;
1143
+ timezone?: string | undefined;
1144
+ locale?: string | undefined;
1145
+ displayName?: string | undefined;
1146
+ "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"?: {
1147
+ department?: string | undefined;
1148
+ organization?: string | undefined;
1149
+ employeeNumber?: string | undefined;
1150
+ costCenter?: string | undefined;
1151
+ division?: string | undefined;
1152
+ manager?: {
1153
+ value: string;
1154
+ displayName?: string | undefined;
1155
+ $ref?: string | undefined;
1156
+ } | undefined;
1157
+ } | undefined;
1158
+ schemas?: string[] | undefined;
1159
+ nickName?: string | undefined;
1160
+ profileUrl?: string | undefined;
1161
+ userType?: string | undefined;
1162
+ preferredLanguage?: string | undefined;
1163
+ emails?: {
1164
+ value: string;
1165
+ type?: "home" | "work" | "other" | undefined;
1166
+ display?: string | undefined;
1167
+ primary?: boolean | undefined;
1168
+ }[] | undefined;
1169
+ phoneNumbers?: {
1170
+ value: string;
1171
+ type?: "home" | "work" | "other" | "mobile" | "fax" | "pager" | undefined;
1172
+ display?: string | undefined;
1173
+ primary?: boolean | undefined;
1174
+ }[] | undefined;
1175
+ ims?: {
1176
+ value: string;
1177
+ type?: string | undefined;
1178
+ primary?: boolean | undefined;
1179
+ }[] | undefined;
1180
+ photos?: {
1181
+ value: string;
1182
+ type?: "photo" | "thumbnail" | undefined;
1183
+ primary?: boolean | undefined;
1184
+ }[] | undefined;
1185
+ addresses?: {
1186
+ type?: "home" | "work" | "other" | undefined;
1187
+ postalCode?: string | undefined;
1188
+ country?: string | undefined;
1189
+ formatted?: string | undefined;
1190
+ primary?: boolean | undefined;
1191
+ region?: string | undefined;
1192
+ streetAddress?: string | undefined;
1193
+ locality?: string | undefined;
1194
+ }[] | undefined;
1195
+ entitlements?: {
1196
+ value: string;
1197
+ type?: string | undefined;
1198
+ primary?: boolean | undefined;
1199
+ }[] | undefined;
1200
+ x509Certificates?: {
1201
+ value: string;
1202
+ type?: string | undefined;
1203
+ primary?: boolean | undefined;
1204
+ }[] | undefined;
1205
+ meta?: {
1206
+ location?: string | undefined;
1207
+ version?: string | undefined;
1208
+ lastModified?: string | undefined;
1209
+ created?: string | undefined;
1210
+ resourceType?: string | undefined;
1211
+ } | undefined;
1212
+ }>;
1213
+ export type SCIMUser = z.infer<typeof SCIMUserSchema>;
1214
+ /**
1215
+ * SCIM Member Reference
1216
+ * Reference to a member in a group
1217
+ */
1218
+ export declare const SCIMMemberReferenceSchema: z.ZodObject<{
1219
+ /**
1220
+ * Member identifier
1221
+ */
1222
+ value: z.ZodString;
1223
+ /**
1224
+ * Direct reference to the member resource
1225
+ */
1226
+ $ref: z.ZodOptional<z.ZodString>;
1227
+ /**
1228
+ * Member type (User or Group for nested groups)
1229
+ */
1230
+ type: z.ZodOptional<z.ZodEnum<["User", "Group"]>>;
1231
+ /**
1232
+ * Human-readable member name
1233
+ */
1234
+ display: z.ZodOptional<z.ZodString>;
1235
+ }, "strip", z.ZodTypeAny, {
1236
+ value: string;
1237
+ type?: "User" | "Group" | undefined;
1238
+ display?: string | undefined;
1239
+ $ref?: string | undefined;
1240
+ }, {
1241
+ value: string;
1242
+ type?: "User" | "Group" | undefined;
1243
+ display?: string | undefined;
1244
+ $ref?: string | undefined;
1245
+ }>;
1246
+ export type SCIMMemberReference = z.infer<typeof SCIMMemberReferenceSchema>;
1247
+ /**
1248
+ * SCIM Group Schema
1249
+ * Complete SCIM 2.0 Group resource
1250
+ */
1251
+ export declare const SCIMGroupSchema: z.ZodObject<{
1252
+ /**
1253
+ * SCIM schema URIs
1254
+ * Must include at minimum the core Group schema URI
1255
+ */
1256
+ schemas: z.ZodDefault<z.ZodEffects<z.ZodArray<z.ZodString, "many">, string[], string[]>>;
1257
+ /**
1258
+ * Unique identifier
1259
+ */
1260
+ id: z.ZodOptional<z.ZodString>;
1261
+ /**
1262
+ * External identifier
1263
+ */
1264
+ externalId: z.ZodOptional<z.ZodString>;
1265
+ /**
1266
+ * Group display name
1267
+ * REQUIRED for group creation
1268
+ */
1269
+ displayName: z.ZodString;
1270
+ /**
1271
+ * Group members
1272
+ */
1273
+ members: z.ZodOptional<z.ZodArray<z.ZodObject<{
1274
+ /**
1275
+ * Member identifier
1276
+ */
1277
+ value: z.ZodString;
1278
+ /**
1279
+ * Direct reference to the member resource
1280
+ */
1281
+ $ref: z.ZodOptional<z.ZodString>;
1282
+ /**
1283
+ * Member type (User or Group for nested groups)
1284
+ */
1285
+ type: z.ZodOptional<z.ZodEnum<["User", "Group"]>>;
1286
+ /**
1287
+ * Human-readable member name
1288
+ */
1289
+ display: z.ZodOptional<z.ZodString>;
1290
+ }, "strip", z.ZodTypeAny, {
1291
+ value: string;
1292
+ type?: "User" | "Group" | undefined;
1293
+ display?: string | undefined;
1294
+ $ref?: string | undefined;
1295
+ }, {
1296
+ value: string;
1297
+ type?: "User" | "Group" | undefined;
1298
+ display?: string | undefined;
1299
+ $ref?: string | undefined;
1300
+ }>, "many">>;
1301
+ /**
1302
+ * Resource metadata
1303
+ */
1304
+ meta: z.ZodOptional<z.ZodObject<{
1305
+ /**
1306
+ * Resource type name
1307
+ * @example "User", "Group"
1308
+ */
1309
+ resourceType: z.ZodOptional<z.ZodString>;
1310
+ /**
1311
+ * Resource creation timestamp (ISO 8601)
1312
+ */
1313
+ created: z.ZodOptional<z.ZodString>;
1314
+ /**
1315
+ * Last modification timestamp (ISO 8601)
1316
+ */
1317
+ lastModified: z.ZodOptional<z.ZodString>;
1318
+ /**
1319
+ * Resource location URI
1320
+ * Absolute URL to the resource
1321
+ */
1322
+ location: z.ZodOptional<z.ZodString>;
1323
+ /**
1324
+ * Entity tag for optimistic concurrency control
1325
+ * Used with If-Match header for conditional updates
1326
+ */
1327
+ version: z.ZodOptional<z.ZodString>;
1328
+ }, "strip", z.ZodTypeAny, {
1329
+ location?: string | undefined;
1330
+ version?: string | undefined;
1331
+ lastModified?: string | undefined;
1332
+ created?: string | undefined;
1333
+ resourceType?: string | undefined;
1334
+ }, {
1335
+ location?: string | undefined;
1336
+ version?: string | undefined;
1337
+ lastModified?: string | undefined;
1338
+ created?: string | undefined;
1339
+ resourceType?: string | undefined;
1340
+ }>>;
1341
+ }, "strip", z.ZodTypeAny, {
1342
+ displayName: string;
1343
+ schemas: string[];
1344
+ externalId?: string | undefined;
1345
+ id?: string | undefined;
1346
+ meta?: {
1347
+ location?: string | undefined;
1348
+ version?: string | undefined;
1349
+ lastModified?: string | undefined;
1350
+ created?: string | undefined;
1351
+ resourceType?: string | undefined;
1352
+ } | undefined;
1353
+ members?: {
1354
+ value: string;
1355
+ type?: "User" | "Group" | undefined;
1356
+ display?: string | undefined;
1357
+ $ref?: string | undefined;
1358
+ }[] | undefined;
1359
+ }, {
1360
+ displayName: string;
1361
+ externalId?: string | undefined;
1362
+ id?: string | undefined;
1363
+ schemas?: string[] | undefined;
1364
+ meta?: {
1365
+ location?: string | undefined;
1366
+ version?: string | undefined;
1367
+ lastModified?: string | undefined;
1368
+ created?: string | undefined;
1369
+ resourceType?: string | undefined;
1370
+ } | undefined;
1371
+ members?: {
1372
+ value: string;
1373
+ type?: "User" | "Group" | undefined;
1374
+ display?: string | undefined;
1375
+ $ref?: string | undefined;
1376
+ }[] | undefined;
1377
+ }>;
1378
+ export type SCIMGroup = z.infer<typeof SCIMGroupSchema>;
1379
+ /**
1380
+ * SCIM Resource Union Type
1381
+ * Known SCIM resource types for type-safe list responses
1382
+ */
1383
+ export type SCIMResource = SCIMUser | SCIMGroup;
1384
+ /**
1385
+ * SCIM List Response
1386
+ * Paginated list of resources
1387
+ *
1388
+ * Generic type T allows for type-safe responses when the resource type is known.
1389
+ * For mixed resource types, use SCIMResource union.
1390
+ */
1391
+ export declare const SCIMListResponseSchema: z.ZodObject<{
1392
+ /**
1393
+ * SCIM schema URI
1394
+ */
1395
+ schemas: z.ZodDefault<z.ZodEffects<z.ZodArray<z.ZodString, "many">, string[], string[]>>;
1396
+ /**
1397
+ * Total number of results matching the query
1398
+ */
1399
+ totalResults: z.ZodNumber;
1400
+ /**
1401
+ * Resources returned in this response
1402
+ * Use SCIMListResponseOf<T> for type-safe responses
1403
+ */
1404
+ Resources: z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodObject<{
1405
+ /**
1406
+ * SCIM schema URIs
1407
+ * Must include at minimum the core User schema URI
1408
+ */
1409
+ schemas: z.ZodDefault<z.ZodEffects<z.ZodArray<z.ZodString, "many">, string[], string[]>>;
1410
+ /**
1411
+ * Unique identifier
1412
+ */
1413
+ id: z.ZodOptional<z.ZodString>;
1414
+ /**
1415
+ * External identifier
1416
+ * Identifier from the provisioning client
1417
+ */
1418
+ externalId: z.ZodOptional<z.ZodString>;
1419
+ /**
1420
+ * Unique username
1421
+ * REQUIRED for user creation
1422
+ */
1423
+ userName: z.ZodString;
1424
+ /**
1425
+ * Structured name
1426
+ */
1427
+ name: z.ZodOptional<z.ZodObject<{
1428
+ /**
1429
+ * Full name formatted for display
1430
+ * @example "Ms. Barbara Jane Jensen III"
1431
+ */
1432
+ formatted: z.ZodOptional<z.ZodString>;
1433
+ /**
1434
+ * Family name (surname)
1435
+ * @example "Jensen"
1436
+ */
1437
+ familyName: z.ZodOptional<z.ZodString>;
1438
+ /**
1439
+ * Given name (first name)
1440
+ * @example "Barbara"
1441
+ */
1442
+ givenName: z.ZodOptional<z.ZodString>;
1443
+ /**
1444
+ * Middle name
1445
+ * @example "Jane"
1446
+ */
1447
+ middleName: z.ZodOptional<z.ZodString>;
1448
+ /**
1449
+ * Honorific prefix
1450
+ * @example "Ms.", "Dr.", "Prof."
1451
+ */
1452
+ honorificPrefix: z.ZodOptional<z.ZodString>;
1453
+ /**
1454
+ * Honorific suffix
1455
+ * @example "III", "Jr.", "Sr."
1456
+ */
1457
+ honorificSuffix: z.ZodOptional<z.ZodString>;
1458
+ }, "strip", z.ZodTypeAny, {
1459
+ formatted?: string | undefined;
1460
+ familyName?: string | undefined;
1461
+ givenName?: string | undefined;
1462
+ middleName?: string | undefined;
1463
+ honorificPrefix?: string | undefined;
1464
+ honorificSuffix?: string | undefined;
1465
+ }, {
1466
+ formatted?: string | undefined;
1467
+ familyName?: string | undefined;
1468
+ givenName?: string | undefined;
1469
+ middleName?: string | undefined;
1470
+ honorificPrefix?: string | undefined;
1471
+ honorificSuffix?: string | undefined;
1472
+ }>>;
1473
+ /**
1474
+ * Display name
1475
+ */
1476
+ displayName: z.ZodOptional<z.ZodString>;
1477
+ /**
1478
+ * Nickname or casual name
1479
+ */
1480
+ nickName: z.ZodOptional<z.ZodString>;
1481
+ /**
1482
+ * Profile URL
1483
+ */
1484
+ profileUrl: z.ZodOptional<z.ZodString>;
1485
+ /**
1486
+ * Job title
1487
+ */
1488
+ title: z.ZodOptional<z.ZodString>;
1489
+ /**
1490
+ * User type (employee, contractor, etc.)
1491
+ */
1492
+ userType: z.ZodOptional<z.ZodString>;
1493
+ /**
1494
+ * Preferred language (ISO 639-1)
1495
+ */
1496
+ preferredLanguage: z.ZodOptional<z.ZodString>;
1497
+ /**
1498
+ * Locale (e.g., en-US)
1499
+ */
1500
+ locale: z.ZodOptional<z.ZodString>;
1501
+ /**
1502
+ * Timezone (e.g., America/Los_Angeles)
1503
+ */
1504
+ timezone: z.ZodOptional<z.ZodString>;
1505
+ /**
1506
+ * Account active status
1507
+ */
1508
+ active: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
1509
+ /**
1510
+ * Password (write-only, never returned)
1511
+ */
1512
+ password: z.ZodOptional<z.ZodString>;
1513
+ /**
1514
+ * Email addresses (multi-valued)
1515
+ */
1516
+ emails: z.ZodOptional<z.ZodArray<z.ZodObject<{
1517
+ /**
1518
+ * Email address value
1519
+ */
1520
+ value: z.ZodString;
1521
+ /**
1522
+ * Email type
1523
+ * @example "work", "home", "other"
1524
+ */
1525
+ type: z.ZodOptional<z.ZodEnum<["work", "home", "other"]>>;
1526
+ /**
1527
+ * Display label for the email
1528
+ */
1529
+ display: z.ZodOptional<z.ZodString>;
1530
+ /**
1531
+ * Whether this is the primary email
1532
+ */
1533
+ primary: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
1534
+ }, "strip", z.ZodTypeAny, {
1535
+ value: string;
1536
+ primary: boolean;
1537
+ type?: "home" | "work" | "other" | undefined;
1538
+ display?: string | undefined;
1539
+ }, {
1540
+ value: string;
1541
+ type?: "home" | "work" | "other" | undefined;
1542
+ display?: string | undefined;
1543
+ primary?: boolean | undefined;
1544
+ }>, "many">>;
1545
+ /**
1546
+ * Phone numbers (multi-valued)
1547
+ */
1548
+ phoneNumbers: z.ZodOptional<z.ZodArray<z.ZodObject<{
1549
+ /**
1550
+ * Phone number value
1551
+ * Format is not enforced to support international numbers
1552
+ */
1553
+ value: z.ZodString;
1554
+ /**
1555
+ * Phone type
1556
+ */
1557
+ type: z.ZodOptional<z.ZodEnum<["work", "home", "mobile", "fax", "pager", "other"]>>;
1558
+ /**
1559
+ * Display label for the phone number
1560
+ */
1561
+ display: z.ZodOptional<z.ZodString>;
1562
+ /**
1563
+ * Whether this is the primary phone
1564
+ */
1565
+ primary: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
1566
+ }, "strip", z.ZodTypeAny, {
1567
+ value: string;
1568
+ primary: boolean;
1569
+ type?: "home" | "work" | "other" | "mobile" | "fax" | "pager" | undefined;
1570
+ display?: string | undefined;
1571
+ }, {
1572
+ value: string;
1573
+ type?: "home" | "work" | "other" | "mobile" | "fax" | "pager" | undefined;
1574
+ display?: string | undefined;
1575
+ primary?: boolean | undefined;
1576
+ }>, "many">>;
1577
+ /**
1578
+ * Instant messaging addresses
1579
+ */
1580
+ ims: z.ZodOptional<z.ZodArray<z.ZodObject<{
1581
+ value: z.ZodString;
1582
+ type: z.ZodOptional<z.ZodString>;
1583
+ primary: z.ZodOptional<z.ZodBoolean>;
1584
+ }, "strip", z.ZodTypeAny, {
1585
+ value: string;
1586
+ type?: string | undefined;
1587
+ primary?: boolean | undefined;
1588
+ }, {
1589
+ value: string;
1590
+ type?: string | undefined;
1591
+ primary?: boolean | undefined;
1592
+ }>, "many">>;
1593
+ /**
1594
+ * Photos (profile pictures)
1595
+ */
1596
+ photos: z.ZodOptional<z.ZodArray<z.ZodObject<{
1597
+ value: z.ZodString;
1598
+ type: z.ZodOptional<z.ZodEnum<["photo", "thumbnail"]>>;
1599
+ primary: z.ZodOptional<z.ZodBoolean>;
1600
+ }, "strip", z.ZodTypeAny, {
1601
+ value: string;
1602
+ type?: "photo" | "thumbnail" | undefined;
1603
+ primary?: boolean | undefined;
1604
+ }, {
1605
+ value: string;
1606
+ type?: "photo" | "thumbnail" | undefined;
1607
+ primary?: boolean | undefined;
1608
+ }>, "many">>;
1609
+ /**
1610
+ * Physical addresses
1611
+ */
1612
+ addresses: z.ZodOptional<z.ZodArray<z.ZodObject<{
1613
+ /**
1614
+ * Full mailing address formatted for display
1615
+ */
1616
+ formatted: z.ZodOptional<z.ZodString>;
1617
+ /**
1618
+ * Full street address
1619
+ */
1620
+ streetAddress: z.ZodOptional<z.ZodString>;
1621
+ /**
1622
+ * City or locality
1623
+ */
1624
+ locality: z.ZodOptional<z.ZodString>;
1625
+ /**
1626
+ * State or region
1627
+ */
1628
+ region: z.ZodOptional<z.ZodString>;
1629
+ /**
1630
+ * Zip code or postal code
1631
+ */
1632
+ postalCode: z.ZodOptional<z.ZodString>;
1633
+ /**
1634
+ * Country
1635
+ */
1636
+ country: z.ZodOptional<z.ZodString>;
1637
+ /**
1638
+ * Address type
1639
+ */
1640
+ type: z.ZodOptional<z.ZodEnum<["work", "home", "other"]>>;
1641
+ /**
1642
+ * Whether this is the primary address
1643
+ */
1644
+ primary: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
1645
+ }, "strip", z.ZodTypeAny, {
1646
+ primary: boolean;
1647
+ type?: "home" | "work" | "other" | undefined;
1648
+ postalCode?: string | undefined;
1649
+ country?: string | undefined;
1650
+ formatted?: string | undefined;
1651
+ region?: string | undefined;
1652
+ streetAddress?: string | undefined;
1653
+ locality?: string | undefined;
1654
+ }, {
1655
+ type?: "home" | "work" | "other" | undefined;
1656
+ postalCode?: string | undefined;
1657
+ country?: string | undefined;
1658
+ formatted?: string | undefined;
1659
+ primary?: boolean | undefined;
1660
+ region?: string | undefined;
1661
+ streetAddress?: string | undefined;
1662
+ locality?: string | undefined;
1663
+ }>, "many">>;
1664
+ /**
1665
+ * Group memberships
1666
+ */
1667
+ groups: z.ZodOptional<z.ZodArray<z.ZodObject<{
1668
+ /**
1669
+ * Group identifier
1670
+ */
1671
+ value: z.ZodString;
1672
+ /**
1673
+ * Direct reference to the group resource
1674
+ */
1675
+ $ref: z.ZodOptional<z.ZodString>;
1676
+ /**
1677
+ * Human-readable group name
1678
+ */
1679
+ display: z.ZodOptional<z.ZodString>;
1680
+ /**
1681
+ * Type of group
1682
+ */
1683
+ type: z.ZodOptional<z.ZodEnum<["direct", "indirect"]>>;
1684
+ }, "strip", z.ZodTypeAny, {
1685
+ value: string;
1686
+ type?: "indirect" | "direct" | undefined;
1687
+ display?: string | undefined;
1688
+ $ref?: string | undefined;
1689
+ }, {
1690
+ value: string;
1691
+ type?: "indirect" | "direct" | undefined;
1692
+ display?: string | undefined;
1693
+ $ref?: string | undefined;
1694
+ }>, "many">>;
1695
+ /**
1696
+ * User entitlements
1697
+ */
1698
+ entitlements: z.ZodOptional<z.ZodArray<z.ZodObject<{
1699
+ value: z.ZodString;
1700
+ type: z.ZodOptional<z.ZodString>;
1701
+ primary: z.ZodOptional<z.ZodBoolean>;
1702
+ }, "strip", z.ZodTypeAny, {
1703
+ value: string;
1704
+ type?: string | undefined;
1705
+ primary?: boolean | undefined;
1706
+ }, {
1707
+ value: string;
1708
+ type?: string | undefined;
1709
+ primary?: boolean | undefined;
1710
+ }>, "many">>;
1711
+ /**
1712
+ * User roles
1713
+ */
1714
+ roles: z.ZodOptional<z.ZodArray<z.ZodObject<{
1715
+ value: z.ZodString;
1716
+ type: z.ZodOptional<z.ZodString>;
1717
+ primary: z.ZodOptional<z.ZodBoolean>;
1718
+ }, "strip", z.ZodTypeAny, {
1719
+ value: string;
1720
+ type?: string | undefined;
1721
+ primary?: boolean | undefined;
1722
+ }, {
1723
+ value: string;
1724
+ type?: string | undefined;
1725
+ primary?: boolean | undefined;
1726
+ }>, "many">>;
1727
+ /**
1728
+ * X509 certificates
1729
+ */
1730
+ x509Certificates: z.ZodOptional<z.ZodArray<z.ZodObject<{
1731
+ value: z.ZodString;
1732
+ type: z.ZodOptional<z.ZodString>;
1733
+ primary: z.ZodOptional<z.ZodBoolean>;
1734
+ }, "strip", z.ZodTypeAny, {
1735
+ value: string;
1736
+ type?: string | undefined;
1737
+ primary?: boolean | undefined;
1738
+ }, {
1739
+ value: string;
1740
+ type?: string | undefined;
1741
+ primary?: boolean | undefined;
1742
+ }>, "many">>;
1743
+ /**
1744
+ * Resource metadata
1745
+ */
1746
+ meta: z.ZodOptional<z.ZodObject<{
1747
+ /**
1748
+ * Resource type name
1749
+ * @example "User", "Group"
1750
+ */
1751
+ resourceType: z.ZodOptional<z.ZodString>;
1752
+ /**
1753
+ * Resource creation timestamp (ISO 8601)
1754
+ */
1755
+ created: z.ZodOptional<z.ZodString>;
1756
+ /**
1757
+ * Last modification timestamp (ISO 8601)
1758
+ */
1759
+ lastModified: z.ZodOptional<z.ZodString>;
1760
+ /**
1761
+ * Resource location URI
1762
+ * Absolute URL to the resource
1763
+ */
1764
+ location: z.ZodOptional<z.ZodString>;
1765
+ /**
1766
+ * Entity tag for optimistic concurrency control
1767
+ * Used with If-Match header for conditional updates
1768
+ */
1769
+ version: z.ZodOptional<z.ZodString>;
1770
+ }, "strip", z.ZodTypeAny, {
1771
+ location?: string | undefined;
1772
+ version?: string | undefined;
1773
+ lastModified?: string | undefined;
1774
+ created?: string | undefined;
1775
+ resourceType?: string | undefined;
1776
+ }, {
1777
+ location?: string | undefined;
1778
+ version?: string | undefined;
1779
+ lastModified?: string | undefined;
1780
+ created?: string | undefined;
1781
+ resourceType?: string | undefined;
1782
+ }>>;
1783
+ /**
1784
+ * Enterprise user extension
1785
+ * Only present when enterprise extension is used
1786
+ */
1787
+ "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": z.ZodOptional<z.ZodObject<{
1788
+ /**
1789
+ * Employee number
1790
+ */
1791
+ employeeNumber: z.ZodOptional<z.ZodString>;
1792
+ /**
1793
+ * Cost center
1794
+ */
1795
+ costCenter: z.ZodOptional<z.ZodString>;
1796
+ /**
1797
+ * Organization unit
1798
+ */
1799
+ organization: z.ZodOptional<z.ZodString>;
1800
+ /**
1801
+ * Division
1802
+ */
1803
+ division: z.ZodOptional<z.ZodString>;
1804
+ /**
1805
+ * Department
1806
+ */
1807
+ department: z.ZodOptional<z.ZodString>;
1808
+ /**
1809
+ * Manager reference
1810
+ */
1811
+ manager: z.ZodOptional<z.ZodObject<{
1812
+ value: z.ZodString;
1813
+ $ref: z.ZodOptional<z.ZodString>;
1814
+ displayName: z.ZodOptional<z.ZodString>;
1815
+ }, "strip", z.ZodTypeAny, {
1816
+ value: string;
1817
+ displayName?: string | undefined;
1818
+ $ref?: string | undefined;
1819
+ }, {
1820
+ value: string;
1821
+ displayName?: string | undefined;
1822
+ $ref?: string | undefined;
1823
+ }>>;
1824
+ }, "strip", z.ZodTypeAny, {
1825
+ department?: string | undefined;
1826
+ organization?: string | undefined;
1827
+ employeeNumber?: string | undefined;
1828
+ costCenter?: string | undefined;
1829
+ division?: string | undefined;
1830
+ manager?: {
1831
+ value: string;
1832
+ displayName?: string | undefined;
1833
+ $ref?: string | undefined;
1834
+ } | undefined;
1835
+ }, {
1836
+ department?: string | undefined;
1837
+ organization?: string | undefined;
1838
+ employeeNumber?: string | undefined;
1839
+ costCenter?: string | undefined;
1840
+ division?: string | undefined;
1841
+ manager?: {
1842
+ value: string;
1843
+ displayName?: string | undefined;
1844
+ $ref?: string | undefined;
1845
+ } | undefined;
1846
+ }>>;
1847
+ }, "strip", z.ZodTypeAny, {
1848
+ active: boolean;
1849
+ schemas: string[];
1850
+ userName: string;
1851
+ password?: string | undefined;
1852
+ name?: {
1853
+ formatted?: string | undefined;
1854
+ familyName?: string | undefined;
1855
+ givenName?: string | undefined;
1856
+ middleName?: string | undefined;
1857
+ honorificPrefix?: string | undefined;
1858
+ honorificSuffix?: string | undefined;
1859
+ } | undefined;
1860
+ externalId?: string | undefined;
1861
+ id?: string | undefined;
1862
+ roles?: {
1863
+ value: string;
1864
+ type?: string | undefined;
1865
+ primary?: boolean | undefined;
1866
+ }[] | undefined;
1867
+ groups?: {
1868
+ value: string;
1869
+ type?: "indirect" | "direct" | undefined;
1870
+ display?: string | undefined;
1871
+ $ref?: string | undefined;
1872
+ }[] | undefined;
1873
+ title?: string | undefined;
1874
+ timezone?: string | undefined;
1875
+ locale?: string | undefined;
1876
+ displayName?: string | undefined;
1877
+ "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"?: {
1878
+ department?: string | undefined;
1879
+ organization?: string | undefined;
1880
+ employeeNumber?: string | undefined;
1881
+ costCenter?: string | undefined;
1882
+ division?: string | undefined;
1883
+ manager?: {
1884
+ value: string;
1885
+ displayName?: string | undefined;
1886
+ $ref?: string | undefined;
1887
+ } | undefined;
1888
+ } | undefined;
1889
+ nickName?: string | undefined;
1890
+ profileUrl?: string | undefined;
1891
+ userType?: string | undefined;
1892
+ preferredLanguage?: string | undefined;
1893
+ emails?: {
1894
+ value: string;
1895
+ primary: boolean;
1896
+ type?: "home" | "work" | "other" | undefined;
1897
+ display?: string | undefined;
1898
+ }[] | undefined;
1899
+ phoneNumbers?: {
1900
+ value: string;
1901
+ primary: boolean;
1902
+ type?: "home" | "work" | "other" | "mobile" | "fax" | "pager" | undefined;
1903
+ display?: string | undefined;
1904
+ }[] | undefined;
1905
+ ims?: {
1906
+ value: string;
1907
+ type?: string | undefined;
1908
+ primary?: boolean | undefined;
1909
+ }[] | undefined;
1910
+ photos?: {
1911
+ value: string;
1912
+ type?: "photo" | "thumbnail" | undefined;
1913
+ primary?: boolean | undefined;
1914
+ }[] | undefined;
1915
+ addresses?: {
1916
+ primary: boolean;
1917
+ type?: "home" | "work" | "other" | undefined;
1918
+ postalCode?: string | undefined;
1919
+ country?: string | undefined;
1920
+ formatted?: string | undefined;
1921
+ region?: string | undefined;
1922
+ streetAddress?: string | undefined;
1923
+ locality?: string | undefined;
1924
+ }[] | undefined;
1925
+ entitlements?: {
1926
+ value: string;
1927
+ type?: string | undefined;
1928
+ primary?: boolean | undefined;
1929
+ }[] | undefined;
1930
+ x509Certificates?: {
1931
+ value: string;
1932
+ type?: string | undefined;
1933
+ primary?: boolean | undefined;
1934
+ }[] | undefined;
1935
+ meta?: {
1936
+ location?: string | undefined;
1937
+ version?: string | undefined;
1938
+ lastModified?: string | undefined;
1939
+ created?: string | undefined;
1940
+ resourceType?: string | undefined;
1941
+ } | undefined;
1942
+ }, {
1943
+ userName: string;
1944
+ password?: string | undefined;
1945
+ name?: {
1946
+ formatted?: string | undefined;
1947
+ familyName?: string | undefined;
1948
+ givenName?: string | undefined;
1949
+ middleName?: string | undefined;
1950
+ honorificPrefix?: string | undefined;
1951
+ honorificSuffix?: string | undefined;
1952
+ } | undefined;
1953
+ externalId?: string | undefined;
1954
+ active?: boolean | undefined;
1955
+ id?: string | undefined;
1956
+ roles?: {
1957
+ value: string;
1958
+ type?: string | undefined;
1959
+ primary?: boolean | undefined;
1960
+ }[] | undefined;
1961
+ groups?: {
1962
+ value: string;
1963
+ type?: "indirect" | "direct" | undefined;
1964
+ display?: string | undefined;
1965
+ $ref?: string | undefined;
1966
+ }[] | undefined;
1967
+ title?: string | undefined;
1968
+ timezone?: string | undefined;
1969
+ locale?: string | undefined;
1970
+ displayName?: string | undefined;
1971
+ "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"?: {
1972
+ department?: string | undefined;
1973
+ organization?: string | undefined;
1974
+ employeeNumber?: string | undefined;
1975
+ costCenter?: string | undefined;
1976
+ division?: string | undefined;
1977
+ manager?: {
1978
+ value: string;
1979
+ displayName?: string | undefined;
1980
+ $ref?: string | undefined;
1981
+ } | undefined;
1982
+ } | undefined;
1983
+ schemas?: string[] | undefined;
1984
+ nickName?: string | undefined;
1985
+ profileUrl?: string | undefined;
1986
+ userType?: string | undefined;
1987
+ preferredLanguage?: string | undefined;
1988
+ emails?: {
1989
+ value: string;
1990
+ type?: "home" | "work" | "other" | undefined;
1991
+ display?: string | undefined;
1992
+ primary?: boolean | undefined;
1993
+ }[] | undefined;
1994
+ phoneNumbers?: {
1995
+ value: string;
1996
+ type?: "home" | "work" | "other" | "mobile" | "fax" | "pager" | undefined;
1997
+ display?: string | undefined;
1998
+ primary?: boolean | undefined;
1999
+ }[] | undefined;
2000
+ ims?: {
2001
+ value: string;
2002
+ type?: string | undefined;
2003
+ primary?: boolean | undefined;
2004
+ }[] | undefined;
2005
+ photos?: {
2006
+ value: string;
2007
+ type?: "photo" | "thumbnail" | undefined;
2008
+ primary?: boolean | undefined;
2009
+ }[] | undefined;
2010
+ addresses?: {
2011
+ type?: "home" | "work" | "other" | undefined;
2012
+ postalCode?: string | undefined;
2013
+ country?: string | undefined;
2014
+ formatted?: string | undefined;
2015
+ primary?: boolean | undefined;
2016
+ region?: string | undefined;
2017
+ streetAddress?: string | undefined;
2018
+ locality?: string | undefined;
2019
+ }[] | undefined;
2020
+ entitlements?: {
2021
+ value: string;
2022
+ type?: string | undefined;
2023
+ primary?: boolean | undefined;
2024
+ }[] | undefined;
2025
+ x509Certificates?: {
2026
+ value: string;
2027
+ type?: string | undefined;
2028
+ primary?: boolean | undefined;
2029
+ }[] | undefined;
2030
+ meta?: {
2031
+ location?: string | undefined;
2032
+ version?: string | undefined;
2033
+ lastModified?: string | undefined;
2034
+ created?: string | undefined;
2035
+ resourceType?: string | undefined;
2036
+ } | undefined;
2037
+ }>, {
2038
+ active: boolean;
2039
+ schemas: string[];
2040
+ userName: string;
2041
+ password?: string | undefined;
2042
+ name?: {
2043
+ formatted?: string | undefined;
2044
+ familyName?: string | undefined;
2045
+ givenName?: string | undefined;
2046
+ middleName?: string | undefined;
2047
+ honorificPrefix?: string | undefined;
2048
+ honorificSuffix?: string | undefined;
2049
+ } | undefined;
2050
+ externalId?: string | undefined;
2051
+ id?: string | undefined;
2052
+ roles?: {
2053
+ value: string;
2054
+ type?: string | undefined;
2055
+ primary?: boolean | undefined;
2056
+ }[] | undefined;
2057
+ groups?: {
2058
+ value: string;
2059
+ type?: "indirect" | "direct" | undefined;
2060
+ display?: string | undefined;
2061
+ $ref?: string | undefined;
2062
+ }[] | undefined;
2063
+ title?: string | undefined;
2064
+ timezone?: string | undefined;
2065
+ locale?: string | undefined;
2066
+ displayName?: string | undefined;
2067
+ "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"?: {
2068
+ department?: string | undefined;
2069
+ organization?: string | undefined;
2070
+ employeeNumber?: string | undefined;
2071
+ costCenter?: string | undefined;
2072
+ division?: string | undefined;
2073
+ manager?: {
2074
+ value: string;
2075
+ displayName?: string | undefined;
2076
+ $ref?: string | undefined;
2077
+ } | undefined;
2078
+ } | undefined;
2079
+ nickName?: string | undefined;
2080
+ profileUrl?: string | undefined;
2081
+ userType?: string | undefined;
2082
+ preferredLanguage?: string | undefined;
2083
+ emails?: {
2084
+ value: string;
2085
+ primary: boolean;
2086
+ type?: "home" | "work" | "other" | undefined;
2087
+ display?: string | undefined;
2088
+ }[] | undefined;
2089
+ phoneNumbers?: {
2090
+ value: string;
2091
+ primary: boolean;
2092
+ type?: "home" | "work" | "other" | "mobile" | "fax" | "pager" | undefined;
2093
+ display?: string | undefined;
2094
+ }[] | undefined;
2095
+ ims?: {
2096
+ value: string;
2097
+ type?: string | undefined;
2098
+ primary?: boolean | undefined;
2099
+ }[] | undefined;
2100
+ photos?: {
2101
+ value: string;
2102
+ type?: "photo" | "thumbnail" | undefined;
2103
+ primary?: boolean | undefined;
2104
+ }[] | undefined;
2105
+ addresses?: {
2106
+ primary: boolean;
2107
+ type?: "home" | "work" | "other" | undefined;
2108
+ postalCode?: string | undefined;
2109
+ country?: string | undefined;
2110
+ formatted?: string | undefined;
2111
+ region?: string | undefined;
2112
+ streetAddress?: string | undefined;
2113
+ locality?: string | undefined;
2114
+ }[] | undefined;
2115
+ entitlements?: {
2116
+ value: string;
2117
+ type?: string | undefined;
2118
+ primary?: boolean | undefined;
2119
+ }[] | undefined;
2120
+ x509Certificates?: {
2121
+ value: string;
2122
+ type?: string | undefined;
2123
+ primary?: boolean | undefined;
2124
+ }[] | undefined;
2125
+ meta?: {
2126
+ location?: string | undefined;
2127
+ version?: string | undefined;
2128
+ lastModified?: string | undefined;
2129
+ created?: string | undefined;
2130
+ resourceType?: string | undefined;
2131
+ } | undefined;
2132
+ }, {
2133
+ userName: string;
2134
+ password?: string | undefined;
2135
+ name?: {
2136
+ formatted?: string | undefined;
2137
+ familyName?: string | undefined;
2138
+ givenName?: string | undefined;
2139
+ middleName?: string | undefined;
2140
+ honorificPrefix?: string | undefined;
2141
+ honorificSuffix?: string | undefined;
2142
+ } | undefined;
2143
+ externalId?: string | undefined;
2144
+ active?: boolean | undefined;
2145
+ id?: string | undefined;
2146
+ roles?: {
2147
+ value: string;
2148
+ type?: string | undefined;
2149
+ primary?: boolean | undefined;
2150
+ }[] | undefined;
2151
+ groups?: {
2152
+ value: string;
2153
+ type?: "indirect" | "direct" | undefined;
2154
+ display?: string | undefined;
2155
+ $ref?: string | undefined;
2156
+ }[] | undefined;
2157
+ title?: string | undefined;
2158
+ timezone?: string | undefined;
2159
+ locale?: string | undefined;
2160
+ displayName?: string | undefined;
2161
+ "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"?: {
2162
+ department?: string | undefined;
2163
+ organization?: string | undefined;
2164
+ employeeNumber?: string | undefined;
2165
+ costCenter?: string | undefined;
2166
+ division?: string | undefined;
2167
+ manager?: {
2168
+ value: string;
2169
+ displayName?: string | undefined;
2170
+ $ref?: string | undefined;
2171
+ } | undefined;
2172
+ } | undefined;
2173
+ schemas?: string[] | undefined;
2174
+ nickName?: string | undefined;
2175
+ profileUrl?: string | undefined;
2176
+ userType?: string | undefined;
2177
+ preferredLanguage?: string | undefined;
2178
+ emails?: {
2179
+ value: string;
2180
+ type?: "home" | "work" | "other" | undefined;
2181
+ display?: string | undefined;
2182
+ primary?: boolean | undefined;
2183
+ }[] | undefined;
2184
+ phoneNumbers?: {
2185
+ value: string;
2186
+ type?: "home" | "work" | "other" | "mobile" | "fax" | "pager" | undefined;
2187
+ display?: string | undefined;
2188
+ primary?: boolean | undefined;
2189
+ }[] | undefined;
2190
+ ims?: {
2191
+ value: string;
2192
+ type?: string | undefined;
2193
+ primary?: boolean | undefined;
2194
+ }[] | undefined;
2195
+ photos?: {
2196
+ value: string;
2197
+ type?: "photo" | "thumbnail" | undefined;
2198
+ primary?: boolean | undefined;
2199
+ }[] | undefined;
2200
+ addresses?: {
2201
+ type?: "home" | "work" | "other" | undefined;
2202
+ postalCode?: string | undefined;
2203
+ country?: string | undefined;
2204
+ formatted?: string | undefined;
2205
+ primary?: boolean | undefined;
2206
+ region?: string | undefined;
2207
+ streetAddress?: string | undefined;
2208
+ locality?: string | undefined;
2209
+ }[] | undefined;
2210
+ entitlements?: {
2211
+ value: string;
2212
+ type?: string | undefined;
2213
+ primary?: boolean | undefined;
2214
+ }[] | undefined;
2215
+ x509Certificates?: {
2216
+ value: string;
2217
+ type?: string | undefined;
2218
+ primary?: boolean | undefined;
2219
+ }[] | undefined;
2220
+ meta?: {
2221
+ location?: string | undefined;
2222
+ version?: string | undefined;
2223
+ lastModified?: string | undefined;
2224
+ created?: string | undefined;
2225
+ resourceType?: string | undefined;
2226
+ } | undefined;
2227
+ }>, z.ZodObject<{
2228
+ /**
2229
+ * SCIM schema URIs
2230
+ * Must include at minimum the core Group schema URI
2231
+ */
2232
+ schemas: z.ZodDefault<z.ZodEffects<z.ZodArray<z.ZodString, "many">, string[], string[]>>;
2233
+ /**
2234
+ * Unique identifier
2235
+ */
2236
+ id: z.ZodOptional<z.ZodString>;
2237
+ /**
2238
+ * External identifier
2239
+ */
2240
+ externalId: z.ZodOptional<z.ZodString>;
2241
+ /**
2242
+ * Group display name
2243
+ * REQUIRED for group creation
2244
+ */
2245
+ displayName: z.ZodString;
2246
+ /**
2247
+ * Group members
2248
+ */
2249
+ members: z.ZodOptional<z.ZodArray<z.ZodObject<{
2250
+ /**
2251
+ * Member identifier
2252
+ */
2253
+ value: z.ZodString;
2254
+ /**
2255
+ * Direct reference to the member resource
2256
+ */
2257
+ $ref: z.ZodOptional<z.ZodString>;
2258
+ /**
2259
+ * Member type (User or Group for nested groups)
2260
+ */
2261
+ type: z.ZodOptional<z.ZodEnum<["User", "Group"]>>;
2262
+ /**
2263
+ * Human-readable member name
2264
+ */
2265
+ display: z.ZodOptional<z.ZodString>;
2266
+ }, "strip", z.ZodTypeAny, {
2267
+ value: string;
2268
+ type?: "User" | "Group" | undefined;
2269
+ display?: string | undefined;
2270
+ $ref?: string | undefined;
2271
+ }, {
2272
+ value: string;
2273
+ type?: "User" | "Group" | undefined;
2274
+ display?: string | undefined;
2275
+ $ref?: string | undefined;
2276
+ }>, "many">>;
2277
+ /**
2278
+ * Resource metadata
2279
+ */
2280
+ meta: z.ZodOptional<z.ZodObject<{
2281
+ /**
2282
+ * Resource type name
2283
+ * @example "User", "Group"
2284
+ */
2285
+ resourceType: z.ZodOptional<z.ZodString>;
2286
+ /**
2287
+ * Resource creation timestamp (ISO 8601)
2288
+ */
2289
+ created: z.ZodOptional<z.ZodString>;
2290
+ /**
2291
+ * Last modification timestamp (ISO 8601)
2292
+ */
2293
+ lastModified: z.ZodOptional<z.ZodString>;
2294
+ /**
2295
+ * Resource location URI
2296
+ * Absolute URL to the resource
2297
+ */
2298
+ location: z.ZodOptional<z.ZodString>;
2299
+ /**
2300
+ * Entity tag for optimistic concurrency control
2301
+ * Used with If-Match header for conditional updates
2302
+ */
2303
+ version: z.ZodOptional<z.ZodString>;
2304
+ }, "strip", z.ZodTypeAny, {
2305
+ location?: string | undefined;
2306
+ version?: string | undefined;
2307
+ lastModified?: string | undefined;
2308
+ created?: string | undefined;
2309
+ resourceType?: string | undefined;
2310
+ }, {
2311
+ location?: string | undefined;
2312
+ version?: string | undefined;
2313
+ lastModified?: string | undefined;
2314
+ created?: string | undefined;
2315
+ resourceType?: string | undefined;
2316
+ }>>;
2317
+ }, "strip", z.ZodTypeAny, {
2318
+ displayName: string;
2319
+ schemas: string[];
2320
+ externalId?: string | undefined;
2321
+ id?: string | undefined;
2322
+ meta?: {
2323
+ location?: string | undefined;
2324
+ version?: string | undefined;
2325
+ lastModified?: string | undefined;
2326
+ created?: string | undefined;
2327
+ resourceType?: string | undefined;
2328
+ } | undefined;
2329
+ members?: {
2330
+ value: string;
2331
+ type?: "User" | "Group" | undefined;
2332
+ display?: string | undefined;
2333
+ $ref?: string | undefined;
2334
+ }[] | undefined;
2335
+ }, {
2336
+ displayName: string;
2337
+ externalId?: string | undefined;
2338
+ id?: string | undefined;
2339
+ schemas?: string[] | undefined;
2340
+ meta?: {
2341
+ location?: string | undefined;
2342
+ version?: string | undefined;
2343
+ lastModified?: string | undefined;
2344
+ created?: string | undefined;
2345
+ resourceType?: string | undefined;
2346
+ } | undefined;
2347
+ members?: {
2348
+ value: string;
2349
+ type?: "User" | "Group" | undefined;
2350
+ display?: string | undefined;
2351
+ $ref?: string | undefined;
2352
+ }[] | undefined;
2353
+ }>, z.ZodRecord<z.ZodString, z.ZodAny>]>, "many">;
2354
+ /**
2355
+ * 1-based index of the first result
2356
+ */
2357
+ startIndex: z.ZodOptional<z.ZodNumber>;
2358
+ /**
2359
+ * Number of resources per page
2360
+ */
2361
+ itemsPerPage: z.ZodOptional<z.ZodNumber>;
2362
+ }, "strip", z.ZodTypeAny, {
2363
+ schemas: string[];
2364
+ totalResults: number;
2365
+ Resources: (Record<string, any> | {
2366
+ active: boolean;
2367
+ schemas: string[];
2368
+ userName: string;
2369
+ password?: string | undefined;
2370
+ name?: {
2371
+ formatted?: string | undefined;
2372
+ familyName?: string | undefined;
2373
+ givenName?: string | undefined;
2374
+ middleName?: string | undefined;
2375
+ honorificPrefix?: string | undefined;
2376
+ honorificSuffix?: string | undefined;
2377
+ } | undefined;
2378
+ externalId?: string | undefined;
2379
+ id?: string | undefined;
2380
+ roles?: {
2381
+ value: string;
2382
+ type?: string | undefined;
2383
+ primary?: boolean | undefined;
2384
+ }[] | undefined;
2385
+ groups?: {
2386
+ value: string;
2387
+ type?: "indirect" | "direct" | undefined;
2388
+ display?: string | undefined;
2389
+ $ref?: string | undefined;
2390
+ }[] | undefined;
2391
+ title?: string | undefined;
2392
+ timezone?: string | undefined;
2393
+ locale?: string | undefined;
2394
+ displayName?: string | undefined;
2395
+ "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"?: {
2396
+ department?: string | undefined;
2397
+ organization?: string | undefined;
2398
+ employeeNumber?: string | undefined;
2399
+ costCenter?: string | undefined;
2400
+ division?: string | undefined;
2401
+ manager?: {
2402
+ value: string;
2403
+ displayName?: string | undefined;
2404
+ $ref?: string | undefined;
2405
+ } | undefined;
2406
+ } | undefined;
2407
+ nickName?: string | undefined;
2408
+ profileUrl?: string | undefined;
2409
+ userType?: string | undefined;
2410
+ preferredLanguage?: string | undefined;
2411
+ emails?: {
2412
+ value: string;
2413
+ primary: boolean;
2414
+ type?: "home" | "work" | "other" | undefined;
2415
+ display?: string | undefined;
2416
+ }[] | undefined;
2417
+ phoneNumbers?: {
2418
+ value: string;
2419
+ primary: boolean;
2420
+ type?: "home" | "work" | "other" | "mobile" | "fax" | "pager" | undefined;
2421
+ display?: string | undefined;
2422
+ }[] | undefined;
2423
+ ims?: {
2424
+ value: string;
2425
+ type?: string | undefined;
2426
+ primary?: boolean | undefined;
2427
+ }[] | undefined;
2428
+ photos?: {
2429
+ value: string;
2430
+ type?: "photo" | "thumbnail" | undefined;
2431
+ primary?: boolean | undefined;
2432
+ }[] | undefined;
2433
+ addresses?: {
2434
+ primary: boolean;
2435
+ type?: "home" | "work" | "other" | undefined;
2436
+ postalCode?: string | undefined;
2437
+ country?: string | undefined;
2438
+ formatted?: string | undefined;
2439
+ region?: string | undefined;
2440
+ streetAddress?: string | undefined;
2441
+ locality?: string | undefined;
2442
+ }[] | undefined;
2443
+ entitlements?: {
2444
+ value: string;
2445
+ type?: string | undefined;
2446
+ primary?: boolean | undefined;
2447
+ }[] | undefined;
2448
+ x509Certificates?: {
2449
+ value: string;
2450
+ type?: string | undefined;
2451
+ primary?: boolean | undefined;
2452
+ }[] | undefined;
2453
+ meta?: {
2454
+ location?: string | undefined;
2455
+ version?: string | undefined;
2456
+ lastModified?: string | undefined;
2457
+ created?: string | undefined;
2458
+ resourceType?: string | undefined;
2459
+ } | undefined;
2460
+ } | {
2461
+ displayName: string;
2462
+ schemas: string[];
2463
+ externalId?: string | undefined;
2464
+ id?: string | undefined;
2465
+ meta?: {
2466
+ location?: string | undefined;
2467
+ version?: string | undefined;
2468
+ lastModified?: string | undefined;
2469
+ created?: string | undefined;
2470
+ resourceType?: string | undefined;
2471
+ } | undefined;
2472
+ members?: {
2473
+ value: string;
2474
+ type?: "User" | "Group" | undefined;
2475
+ display?: string | undefined;
2476
+ $ref?: string | undefined;
2477
+ }[] | undefined;
2478
+ })[];
2479
+ startIndex?: number | undefined;
2480
+ itemsPerPage?: number | undefined;
2481
+ }, {
2482
+ totalResults: number;
2483
+ Resources: (Record<string, any> | {
2484
+ userName: string;
2485
+ password?: string | undefined;
2486
+ name?: {
2487
+ formatted?: string | undefined;
2488
+ familyName?: string | undefined;
2489
+ givenName?: string | undefined;
2490
+ middleName?: string | undefined;
2491
+ honorificPrefix?: string | undefined;
2492
+ honorificSuffix?: string | undefined;
2493
+ } | undefined;
2494
+ externalId?: string | undefined;
2495
+ active?: boolean | undefined;
2496
+ id?: string | undefined;
2497
+ roles?: {
2498
+ value: string;
2499
+ type?: string | undefined;
2500
+ primary?: boolean | undefined;
2501
+ }[] | undefined;
2502
+ groups?: {
2503
+ value: string;
2504
+ type?: "indirect" | "direct" | undefined;
2505
+ display?: string | undefined;
2506
+ $ref?: string | undefined;
2507
+ }[] | undefined;
2508
+ title?: string | undefined;
2509
+ timezone?: string | undefined;
2510
+ locale?: string | undefined;
2511
+ displayName?: string | undefined;
2512
+ "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"?: {
2513
+ department?: string | undefined;
2514
+ organization?: string | undefined;
2515
+ employeeNumber?: string | undefined;
2516
+ costCenter?: string | undefined;
2517
+ division?: string | undefined;
2518
+ manager?: {
2519
+ value: string;
2520
+ displayName?: string | undefined;
2521
+ $ref?: string | undefined;
2522
+ } | undefined;
2523
+ } | undefined;
2524
+ schemas?: string[] | undefined;
2525
+ nickName?: string | undefined;
2526
+ profileUrl?: string | undefined;
2527
+ userType?: string | undefined;
2528
+ preferredLanguage?: string | undefined;
2529
+ emails?: {
2530
+ value: string;
2531
+ type?: "home" | "work" | "other" | undefined;
2532
+ display?: string | undefined;
2533
+ primary?: boolean | undefined;
2534
+ }[] | undefined;
2535
+ phoneNumbers?: {
2536
+ value: string;
2537
+ type?: "home" | "work" | "other" | "mobile" | "fax" | "pager" | undefined;
2538
+ display?: string | undefined;
2539
+ primary?: boolean | undefined;
2540
+ }[] | undefined;
2541
+ ims?: {
2542
+ value: string;
2543
+ type?: string | undefined;
2544
+ primary?: boolean | undefined;
2545
+ }[] | undefined;
2546
+ photos?: {
2547
+ value: string;
2548
+ type?: "photo" | "thumbnail" | undefined;
2549
+ primary?: boolean | undefined;
2550
+ }[] | undefined;
2551
+ addresses?: {
2552
+ type?: "home" | "work" | "other" | undefined;
2553
+ postalCode?: string | undefined;
2554
+ country?: string | undefined;
2555
+ formatted?: string | undefined;
2556
+ primary?: boolean | undefined;
2557
+ region?: string | undefined;
2558
+ streetAddress?: string | undefined;
2559
+ locality?: string | undefined;
2560
+ }[] | undefined;
2561
+ entitlements?: {
2562
+ value: string;
2563
+ type?: string | undefined;
2564
+ primary?: boolean | undefined;
2565
+ }[] | undefined;
2566
+ x509Certificates?: {
2567
+ value: string;
2568
+ type?: string | undefined;
2569
+ primary?: boolean | undefined;
2570
+ }[] | undefined;
2571
+ meta?: {
2572
+ location?: string | undefined;
2573
+ version?: string | undefined;
2574
+ lastModified?: string | undefined;
2575
+ created?: string | undefined;
2576
+ resourceType?: string | undefined;
2577
+ } | undefined;
2578
+ } | {
2579
+ displayName: string;
2580
+ externalId?: string | undefined;
2581
+ id?: string | undefined;
2582
+ schemas?: string[] | undefined;
2583
+ meta?: {
2584
+ location?: string | undefined;
2585
+ version?: string | undefined;
2586
+ lastModified?: string | undefined;
2587
+ created?: string | undefined;
2588
+ resourceType?: string | undefined;
2589
+ } | undefined;
2590
+ members?: {
2591
+ value: string;
2592
+ type?: "User" | "Group" | undefined;
2593
+ display?: string | undefined;
2594
+ $ref?: string | undefined;
2595
+ }[] | undefined;
2596
+ })[];
2597
+ schemas?: string[] | undefined;
2598
+ startIndex?: number | undefined;
2599
+ itemsPerPage?: number | undefined;
2600
+ }>;
2601
+ export type SCIMListResponse = z.infer<typeof SCIMListResponseSchema>;
2602
+ /**
2603
+ * SCIM Error Response
2604
+ * Error response format
2605
+ */
2606
+ export declare const SCIMErrorSchema: z.ZodObject<{
2607
+ /**
2608
+ * SCIM schema URI
2609
+ */
2610
+ schemas: z.ZodDefault<z.ZodEffects<z.ZodArray<z.ZodString, "many">, string[], string[]>>;
2611
+ /**
2612
+ * HTTP status code
2613
+ */
2614
+ status: z.ZodNumber;
2615
+ /**
2616
+ * SCIM error type
2617
+ */
2618
+ scimType: z.ZodOptional<z.ZodEnum<["invalidFilter", "tooMany", "uniqueness", "mutability", "invalidSyntax", "invalidPath", "noTarget", "invalidValue", "invalidVers", "sensitive"]>>;
2619
+ /**
2620
+ * Human-readable error description
2621
+ */
2622
+ detail: z.ZodOptional<z.ZodString>;
2623
+ }, "strip", z.ZodTypeAny, {
2624
+ status: number;
2625
+ schemas: string[];
2626
+ scimType?: "invalidFilter" | "tooMany" | "uniqueness" | "mutability" | "invalidSyntax" | "invalidPath" | "noTarget" | "invalidValue" | "invalidVers" | "sensitive" | undefined;
2627
+ detail?: string | undefined;
2628
+ }, {
2629
+ status: number;
2630
+ schemas?: string[] | undefined;
2631
+ scimType?: "invalidFilter" | "tooMany" | "uniqueness" | "mutability" | "invalidSyntax" | "invalidPath" | "noTarget" | "invalidValue" | "invalidVers" | "sensitive" | undefined;
2632
+ detail?: string | undefined;
2633
+ }>;
2634
+ export type SCIMError = z.infer<typeof SCIMErrorSchema>;
2635
+ /**
2636
+ * SCIM Patch Operation
2637
+ * For PATCH requests
2638
+ */
2639
+ export declare const SCIMPatchOperationSchema: z.ZodObject<{
2640
+ /**
2641
+ * Operation type
2642
+ */
2643
+ op: z.ZodEnum<["add", "remove", "replace"]>;
2644
+ /**
2645
+ * Attribute path to modify
2646
+ */
2647
+ path: z.ZodOptional<z.ZodString>;
2648
+ /**
2649
+ * Value to set
2650
+ */
2651
+ value: z.ZodOptional<z.ZodAny>;
2652
+ }, "strip", z.ZodTypeAny, {
2653
+ op: "replace" | "add" | "remove";
2654
+ value?: any;
2655
+ path?: string | undefined;
2656
+ }, {
2657
+ op: "replace" | "add" | "remove";
2658
+ value?: any;
2659
+ path?: string | undefined;
2660
+ }>;
2661
+ export type SCIMPatchOperation = z.infer<typeof SCIMPatchOperationSchema>;
2662
+ /**
2663
+ * SCIM Patch Request
2664
+ */
2665
+ export declare const SCIMPatchRequestSchema: z.ZodObject<{
2666
+ /**
2667
+ * SCIM schema URI
2668
+ */
2669
+ schemas: z.ZodDefault<z.ZodEffects<z.ZodArray<z.ZodString, "many">, string[], string[]>>;
2670
+ /**
2671
+ * Array of patch operations
2672
+ */
2673
+ Operations: z.ZodArray<z.ZodObject<{
2674
+ /**
2675
+ * Operation type
2676
+ */
2677
+ op: z.ZodEnum<["add", "remove", "replace"]>;
2678
+ /**
2679
+ * Attribute path to modify
2680
+ */
2681
+ path: z.ZodOptional<z.ZodString>;
2682
+ /**
2683
+ * Value to set
2684
+ */
2685
+ value: z.ZodOptional<z.ZodAny>;
2686
+ }, "strip", z.ZodTypeAny, {
2687
+ op: "replace" | "add" | "remove";
2688
+ value?: any;
2689
+ path?: string | undefined;
2690
+ }, {
2691
+ op: "replace" | "add" | "remove";
2692
+ value?: any;
2693
+ path?: string | undefined;
2694
+ }>, "many">;
2695
+ }, "strip", z.ZodTypeAny, {
2696
+ schemas: string[];
2697
+ Operations: {
2698
+ op: "replace" | "add" | "remove";
2699
+ value?: any;
2700
+ path?: string | undefined;
2701
+ }[];
2702
+ }, {
2703
+ Operations: {
2704
+ op: "replace" | "add" | "remove";
2705
+ value?: any;
2706
+ path?: string | undefined;
2707
+ }[];
2708
+ schemas?: string[] | undefined;
2709
+ }>;
2710
+ export type SCIMPatchRequest = z.infer<typeof SCIMPatchRequestSchema>;
2711
+ /**
2712
+ * Helper factory for creating SCIM resources
2713
+ */
2714
+ export declare const SCIM: {
2715
+ /**
2716
+ * Create a basic SCIM user
2717
+ */
2718
+ readonly user: (userName: string, email: string, givenName?: string, familyName?: string) => SCIMUser;
2719
+ /**
2720
+ * Create a SCIM group
2721
+ */
2722
+ readonly group: (displayName: string, members?: SCIMMemberReference[]) => SCIMGroup;
2723
+ /**
2724
+ * Create a list response
2725
+ */
2726
+ readonly listResponse: <T>(resources: T[], totalResults?: number) => SCIMListResponse;
2727
+ /**
2728
+ * Create an error response
2729
+ */
2730
+ readonly error: (status: number, detail: string, scimType?: "invalidFilter" | "tooMany" | "uniqueness" | "mutability" | "invalidSyntax" | "invalidPath" | "noTarget" | "invalidValue" | "invalidVers" | "sensitive") => SCIMError;
2731
+ };
2732
+ //# sourceMappingURL=scim.zod.d.ts.map