@rockcarver/frodo-lib 4.10.0 → 4.11.0-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 (427) hide show
  1. package/dist/index.js +2 -2
  2. package/dist/index.mjs +2 -2
  3. package/package.json +6 -3
  4. package/types/api/AgentApi.d.ts +128 -0
  5. package/types/api/AgentApi.d.ts.map +1 -0
  6. package/types/api/AmConfigApi.d.ts +87 -0
  7. package/types/api/AmConfigApi.d.ts.map +1 -0
  8. package/types/api/ApiTypes.d.ts +59 -0
  9. package/types/api/ApiTypes.d.ts.map +1 -0
  10. package/types/api/AuthenticateApi.d.ts +38 -0
  11. package/types/api/AuthenticateApi.d.ts.map +1 -0
  12. package/types/api/AuthenticationSettingsApi.d.ts +31 -0
  13. package/types/api/AuthenticationSettingsApi.d.ts.map +1 -0
  14. package/types/api/BaseApi.d.ts +190 -0
  15. package/types/api/BaseApi.d.ts.map +1 -0
  16. package/types/api/CirclesOfTrustApi.d.ts +52 -0
  17. package/types/api/CirclesOfTrustApi.d.ts.map +1 -0
  18. package/types/api/IdmConfigApi.d.ts +69 -0
  19. package/types/api/IdmConfigApi.d.ts.map +1 -0
  20. package/types/api/IdmScriptApi.d.ts +17 -0
  21. package/types/api/IdmScriptApi.d.ts.map +1 -0
  22. package/types/api/IdmSystemApi.d.ts +111 -0
  23. package/types/api/IdmSystemApi.d.ts.map +1 -0
  24. package/types/api/InternalObjectApi.d.ts +103 -0
  25. package/types/api/InternalObjectApi.d.ts.map +1 -0
  26. package/types/api/ManagedObjectApi.d.ts +252 -0
  27. package/types/api/ManagedObjectApi.d.ts.map +1 -0
  28. package/types/api/ManagedSystemObjectApi.d.ts +150 -0
  29. package/types/api/ManagedSystemObjectApi.d.ts.map +1 -0
  30. package/types/api/NodeApi.d.ts +243 -0
  31. package/types/api/NodeApi.d.ts.map +1 -0
  32. package/types/api/OAuth2ClientApi.d.ts +78 -0
  33. package/types/api/OAuth2ClientApi.d.ts.map +1 -0
  34. package/types/api/OAuth2OIDCApi.d.ts +121 -0
  35. package/types/api/OAuth2OIDCApi.d.ts.map +1 -0
  36. package/types/api/OAuth2ProviderApi.d.ts +176 -0
  37. package/types/api/OAuth2ProviderApi.d.ts.map +1 -0
  38. package/types/api/OAuth2TrustedJwtIssuerApi.d.ts +54 -0
  39. package/types/api/OAuth2TrustedJwtIssuerApi.d.ts.map +1 -0
  40. package/types/api/PoliciesApi.d.ts +60 -0
  41. package/types/api/PoliciesApi.d.ts.map +1 -0
  42. package/types/api/PolicySetApi.d.ts +52 -0
  43. package/types/api/PolicySetApi.d.ts.map +1 -0
  44. package/types/api/RawConfigApi.d.ts +75 -0
  45. package/types/api/RawConfigApi.d.ts.map +1 -0
  46. package/types/api/RealmApi.d.ts +54 -0
  47. package/types/api/RealmApi.d.ts.map +1 -0
  48. package/types/api/ReconApi.d.ts +171 -0
  49. package/types/api/ReconApi.d.ts.map +1 -0
  50. package/types/api/ResourceTypesApi.d.ts +63 -0
  51. package/types/api/ResourceTypesApi.d.ts.map +1 -0
  52. package/types/api/Saml2Api.d.ts +112 -0
  53. package/types/api/Saml2Api.d.ts.map +1 -0
  54. package/types/api/ScriptApi.d.ts +94 -0
  55. package/types/api/ScriptApi.d.ts.map +1 -0
  56. package/types/api/ScriptTypeApi.d.ts +103 -0
  57. package/types/api/ScriptTypeApi.d.ts.map +1 -0
  58. package/types/api/SecretStoreApi.d.ts +185 -0
  59. package/types/api/SecretStoreApi.d.ts.map +1 -0
  60. package/types/api/ServerInfoApi.d.ts +26 -0
  61. package/types/api/ServerInfoApi.d.ts.map +1 -0
  62. package/types/api/ServiceApi.d.ts +102 -0
  63. package/types/api/ServiceApi.d.ts.map +1 -0
  64. package/types/api/SessionApi.d.ts +23 -0
  65. package/types/api/SessionApi.d.ts.map +1 -0
  66. package/types/api/SocialIdentityProvidersApi.d.ts +89 -0
  67. package/types/api/SocialIdentityProvidersApi.d.ts.map +1 -0
  68. package/types/api/TreeApi.d.ts +62 -0
  69. package/types/api/TreeApi.d.ts.map +1 -0
  70. package/types/api/UserApi.d.ts +159 -0
  71. package/types/api/UserApi.d.ts.map +1 -0
  72. package/types/api/classic/ServerApi.d.ts +78 -0
  73. package/types/api/classic/ServerApi.d.ts.map +1 -0
  74. package/types/api/classic/SiteApi.d.ts +39 -0
  75. package/types/api/classic/SiteApi.d.ts.map +1 -0
  76. package/types/api/cloud/AdminFederationProvidersApi.d.ts +71 -0
  77. package/types/api/cloud/AdminFederationProvidersApi.d.ts.map +1 -0
  78. package/types/api/cloud/EnvAIAgentApi.d.ts +9 -0
  79. package/types/api/cloud/EnvAIAgentApi.d.ts.map +1 -0
  80. package/types/api/cloud/EnvCSRsApi.d.ts +165 -0
  81. package/types/api/cloud/EnvCSRsApi.d.ts.map +1 -0
  82. package/types/api/cloud/EnvCertificatesApi.d.ts +74 -0
  83. package/types/api/cloud/EnvCertificatesApi.d.ts.map +1 -0
  84. package/types/api/cloud/EnvContentSecurityPolicyApi.d.ts +87 -0
  85. package/types/api/cloud/EnvContentSecurityPolicyApi.d.ts.map +1 -0
  86. package/types/api/cloud/EnvCookieDomainsApi.d.ts +26 -0
  87. package/types/api/cloud/EnvCookieDomainsApi.d.ts.map +1 -0
  88. package/types/api/cloud/EnvCustomDomainsApi.d.ts +37 -0
  89. package/types/api/cloud/EnvCustomDomainsApi.d.ts.map +1 -0
  90. package/types/api/cloud/EnvDirectConfigurationSessionApi.d.ts +43 -0
  91. package/types/api/cloud/EnvDirectConfigurationSessionApi.d.ts.map +1 -0
  92. package/types/api/cloud/EnvFederationEnforcementApi.d.ts +26 -0
  93. package/types/api/cloud/EnvFederationEnforcementApi.d.ts.map +1 -0
  94. package/types/api/cloud/EnvInfoApi.d.ts +22 -0
  95. package/types/api/cloud/EnvInfoApi.d.ts.map +1 -0
  96. package/types/api/cloud/EnvPromotionApi.d.ts +218 -0
  97. package/types/api/cloud/EnvPromotionApi.d.ts.map +1 -0
  98. package/types/api/cloud/EnvReleaseApi.d.ts +16 -0
  99. package/types/api/cloud/EnvReleaseApi.d.ts.map +1 -0
  100. package/types/api/cloud/EnvSSOCookieConfigApi.d.ts +35 -0
  101. package/types/api/cloud/EnvSSOCookieConfigApi.d.ts.map +1 -0
  102. package/types/api/cloud/EnvServiceAccountScopesApi.d.ts +17 -0
  103. package/types/api/cloud/EnvServiceAccountScopesApi.d.ts.map +1 -0
  104. package/types/api/cloud/EsvCountApi.d.ts +13 -0
  105. package/types/api/cloud/EsvCountApi.d.ts.map +1 -0
  106. package/types/api/cloud/FeatureApi.d.ts +16 -0
  107. package/types/api/cloud/FeatureApi.d.ts.map +1 -0
  108. package/types/api/cloud/IdmFeatureApi.d.ts +65 -0
  109. package/types/api/cloud/IdmFeatureApi.d.ts.map +1 -0
  110. package/types/api/cloud/LogApi.d.ts +108 -0
  111. package/types/api/cloud/LogApi.d.ts.map +1 -0
  112. package/types/api/cloud/SecretsApi.d.ts +163 -0
  113. package/types/api/cloud/SecretsApi.d.ts.map +1 -0
  114. package/types/api/cloud/StartupApi.d.ts +20 -0
  115. package/types/api/cloud/StartupApi.d.ts.map +1 -0
  116. package/types/api/cloud/TelemetryApi.d.ts +60 -0
  117. package/types/api/cloud/TelemetryApi.d.ts.map +1 -0
  118. package/types/api/cloud/VariablesApi.d.ts +86 -0
  119. package/types/api/cloud/VariablesApi.d.ts.map +1 -0
  120. package/types/api/cloud/WSFedApi.d.ts +495 -0
  121. package/types/api/cloud/WSFedApi.d.ts.map +1 -0
  122. package/types/api/cloud/iga/IgaCertificationTemplateApi.d.ts +227 -0
  123. package/types/api/cloud/iga/IgaCertificationTemplateApi.d.ts.map +1 -0
  124. package/types/api/cloud/iga/IgaEventApi.d.ts +111 -0
  125. package/types/api/cloud/iga/IgaEventApi.d.ts.map +1 -0
  126. package/types/api/cloud/iga/IgaGlossaryApi.d.ts +103 -0
  127. package/types/api/cloud/iga/IgaGlossaryApi.d.ts.map +1 -0
  128. package/types/api/cloud/iga/IgaRequestFormApi.d.ts +184 -0
  129. package/types/api/cloud/iga/IgaRequestFormApi.d.ts.map +1 -0
  130. package/types/api/cloud/iga/IgaRequestTypeApi.d.ts +124 -0
  131. package/types/api/cloud/iga/IgaRequestTypeApi.d.ts.map +1 -0
  132. package/types/api/cloud/iga/IgaWorkflowApi.d.ts +208 -0
  133. package/types/api/cloud/iga/IgaWorkflowApi.d.ts.map +1 -0
  134. package/types/ext/axios-curlirize/curlirize.d.ts +14 -0
  135. package/types/ext/axios-curlirize/curlirize.d.ts.map +1 -0
  136. package/types/ext/axios-curlirize/lib/CurlHelper.d.ts +12 -0
  137. package/types/ext/axios-curlirize/lib/CurlHelper.d.ts.map +1 -0
  138. package/types/index.d.ts +11 -0
  139. package/types/index.d.ts.map +1 -0
  140. package/types/lib/FrodoLib.d.ts +407 -0
  141. package/types/lib/FrodoLib.d.ts.map +1 -0
  142. package/types/lib/Help.d.ts +18 -0
  143. package/types/lib/Help.d.ts.map +1 -0
  144. package/types/mcp/CapabilityMetadata.d.ts +48 -0
  145. package/types/mcp/CapabilityMetadata.d.ts.map +1 -0
  146. package/types/mcp/CapabilityPolicy.d.ts +22 -0
  147. package/types/mcp/CapabilityPolicy.d.ts.map +1 -0
  148. package/types/mcp/CapabilityRegistry.d.ts +62 -0
  149. package/types/mcp/CapabilityRegistry.d.ts.map +1 -0
  150. package/types/mcp/CapabilityRouting.d.ts +9 -0
  151. package/types/mcp/CapabilityRouting.d.ts.map +1 -0
  152. package/types/mcp/CapabilityTypes.d.ts +371 -0
  153. package/types/mcp/CapabilityTypes.d.ts.map +1 -0
  154. package/types/mcp/DiscoveryHydration.d.ts +21 -0
  155. package/types/mcp/DiscoveryHydration.d.ts.map +1 -0
  156. package/types/mcp/DocsContext.d.ts +123 -0
  157. package/types/mcp/DocsContext.d.ts.map +1 -0
  158. package/types/mcp/McpService.d.ts +94 -0
  159. package/types/mcp/McpService.d.ts.map +1 -0
  160. package/types/mcp/ProfileRegistry.d.ts +63 -0
  161. package/types/mcp/ProfileRegistry.d.ts.map +1 -0
  162. package/types/mcp/SemanticIdentifiers.d.ts +17 -0
  163. package/types/mcp/SemanticIdentifiers.d.ts.map +1 -0
  164. package/types/mcp/SemanticObjectFamilies.d.ts +24 -0
  165. package/types/mcp/SemanticObjectFamilies.d.ts.map +1 -0
  166. package/types/mcp/ToolManifest.d.ts +231 -0
  167. package/types/mcp/ToolManifest.d.ts.map +1 -0
  168. package/types/mcp/ToolRuntime.d.ts +477 -0
  169. package/types/mcp/ToolRuntime.d.ts.map +1 -0
  170. package/types/mcp/index.d.ts +20 -0
  171. package/types/mcp/index.d.ts.map +1 -0
  172. package/types/ops/AdminOps.d.ts +85 -0
  173. package/types/ops/AdminOps.d.ts.map +1 -0
  174. package/types/ops/AgentOps.d.ts +938 -0
  175. package/types/ops/AgentOps.d.ts.map +1 -0
  176. package/types/ops/AmConfigOps.d.ts +96 -0
  177. package/types/ops/AmConfigOps.d.ts.map +1 -0
  178. package/types/ops/ApiFactoryOps.d.ts +77 -0
  179. package/types/ops/ApiFactoryOps.d.ts.map +1 -0
  180. package/types/ops/ApplicationOps.d.ts +334 -0
  181. package/types/ops/ApplicationOps.d.ts.map +1 -0
  182. package/types/ops/AuthenticateOps.d.ts +196 -0
  183. package/types/ops/AuthenticateOps.d.ts.map +1 -0
  184. package/types/ops/AuthenticationSettingsOps.d.ts +78 -0
  185. package/types/ops/AuthenticationSettingsOps.d.ts.map +1 -0
  186. package/types/ops/BrowserAuthenticateOps.d.ts +188 -0
  187. package/types/ops/BrowserAuthenticateOps.d.ts.map +1 -0
  188. package/types/ops/CallbackOps.d.ts +27 -0
  189. package/types/ops/CallbackOps.d.ts.map +1 -0
  190. package/types/ops/CallerTrustTierOps.d.ts +103 -0
  191. package/types/ops/CallerTrustTierOps.d.ts.map +1 -0
  192. package/types/ops/CirclesOfTrustOps.d.ts +203 -0
  193. package/types/ops/CirclesOfTrustOps.d.ts.map +1 -0
  194. package/types/ops/ConfigOps.d.ts +214 -0
  195. package/types/ops/ConfigOps.d.ts.map +1 -0
  196. package/types/ops/ConnectionProfileOps.d.ts +346 -0
  197. package/types/ops/ConnectionProfileOps.d.ts.map +1 -0
  198. package/types/ops/ConnectorOps.d.ts +269 -0
  199. package/types/ops/ConnectorOps.d.ts.map +1 -0
  200. package/types/ops/EmailTemplateOps.d.ts +160 -0
  201. package/types/ops/EmailTemplateOps.d.ts.map +1 -0
  202. package/types/ops/FrodoError.d.ts +40 -0
  203. package/types/ops/FrodoError.d.ts.map +1 -0
  204. package/types/ops/IdmConfigOps.d.ts +286 -0
  205. package/types/ops/IdmConfigOps.d.ts.map +1 -0
  206. package/types/ops/IdmCryptoOps.d.ts +68 -0
  207. package/types/ops/IdmCryptoOps.d.ts.map +1 -0
  208. package/types/ops/IdmScriptOps.d.ts +29 -0
  209. package/types/ops/IdmScriptOps.d.ts.map +1 -0
  210. package/types/ops/IdmSystemOps.d.ts +198 -0
  211. package/types/ops/IdmSystemOps.d.ts.map +1 -0
  212. package/types/ops/IdpOps.d.ts +234 -0
  213. package/types/ops/IdpOps.d.ts.map +1 -0
  214. package/types/ops/InfoOps.d.ts +28 -0
  215. package/types/ops/InfoOps.d.ts.map +1 -0
  216. package/types/ops/InternalRoleOps.d.ts +232 -0
  217. package/types/ops/InternalRoleOps.d.ts.map +1 -0
  218. package/types/ops/JoseOps.d.ts +87 -0
  219. package/types/ops/JoseOps.d.ts.map +1 -0
  220. package/types/ops/JourneyOps.d.ts +573 -0
  221. package/types/ops/JourneyOps.d.ts.map +1 -0
  222. package/types/ops/ManagedObjectOps.d.ts +393 -0
  223. package/types/ops/ManagedObjectOps.d.ts.map +1 -0
  224. package/types/ops/ManagedObjectSchemaOps.d.ts +757 -0
  225. package/types/ops/ManagedObjectSchemaOps.d.ts.map +1 -0
  226. package/types/ops/ManagedSystemObjectOps.d.ts +270 -0
  227. package/types/ops/ManagedSystemObjectOps.d.ts.map +1 -0
  228. package/types/ops/ManagedSystemObjectSchemaOps.d.ts +42 -0
  229. package/types/ops/ManagedSystemObjectSchemaOps.d.ts.map +1 -0
  230. package/types/ops/MappingOps.d.ts +332 -0
  231. package/types/ops/MappingOps.d.ts.map +1 -0
  232. package/types/ops/NodeOps.d.ts +627 -0
  233. package/types/ops/NodeOps.d.ts.map +1 -0
  234. package/types/ops/OAuth2ClientOps.d.ts +235 -0
  235. package/types/ops/OAuth2ClientOps.d.ts.map +1 -0
  236. package/types/ops/OAuth2OidcOps.d.ts +64 -0
  237. package/types/ops/OAuth2OidcOps.d.ts.map +1 -0
  238. package/types/ops/OAuth2ProviderOps.d.ts +57 -0
  239. package/types/ops/OAuth2ProviderOps.d.ts.map +1 -0
  240. package/types/ops/OAuth2TrustedJwtIssuerOps.d.ts +223 -0
  241. package/types/ops/OAuth2TrustedJwtIssuerOps.d.ts.map +1 -0
  242. package/types/ops/OpsTypes.d.ts +12 -0
  243. package/types/ops/OpsTypes.d.ts.map +1 -0
  244. package/types/ops/OrganizationOps.d.ts +34 -0
  245. package/types/ops/OrganizationOps.d.ts.map +1 -0
  246. package/types/ops/PolicyOps.d.ts +294 -0
  247. package/types/ops/PolicyOps.d.ts.map +1 -0
  248. package/types/ops/PolicySetOps.d.ts +195 -0
  249. package/types/ops/PolicySetOps.d.ts.map +1 -0
  250. package/types/ops/PrivilegeEscalationOps.d.ts +51 -0
  251. package/types/ops/PrivilegeEscalationOps.d.ts.map +1 -0
  252. package/types/ops/RawConfigOps.d.ts +67 -0
  253. package/types/ops/RawConfigOps.d.ts.map +1 -0
  254. package/types/ops/RealmOps.d.ts +196 -0
  255. package/types/ops/RealmOps.d.ts.map +1 -0
  256. package/types/ops/ReconOps.d.ts +57 -0
  257. package/types/ops/ReconOps.d.ts.map +1 -0
  258. package/types/ops/RequiredScopesOps.d.ts +69 -0
  259. package/types/ops/RequiredScopesOps.d.ts.map +1 -0
  260. package/types/ops/ResourceTypeOps.d.ts +219 -0
  261. package/types/ops/ResourceTypeOps.d.ts.map +1 -0
  262. package/types/ops/Saml2Ops.d.ts +261 -0
  263. package/types/ops/Saml2Ops.d.ts.map +1 -0
  264. package/types/ops/ScriptOps.d.ts +426 -0
  265. package/types/ops/ScriptOps.d.ts.map +1 -0
  266. package/types/ops/ScriptTypeOps.d.ts +124 -0
  267. package/types/ops/ScriptTypeOps.d.ts.map +1 -0
  268. package/types/ops/SecretStoreOps.d.ts +357 -0
  269. package/types/ops/SecretStoreOps.d.ts.map +1 -0
  270. package/types/ops/ServiceOps.d.ts +194 -0
  271. package/types/ops/ServiceOps.d.ts.map +1 -0
  272. package/types/ops/SessionOps.d.ts +22 -0
  273. package/types/ops/SessionOps.d.ts.map +1 -0
  274. package/types/ops/ThemeOps.d.ts +245 -0
  275. package/types/ops/ThemeOps.d.ts.map +1 -0
  276. package/types/ops/TokenCacheOps.d.ts +243 -0
  277. package/types/ops/TokenCacheOps.d.ts.map +1 -0
  278. package/types/ops/UserOps.d.ts +199 -0
  279. package/types/ops/UserOps.d.ts.map +1 -0
  280. package/types/ops/VersionUtils.d.ts +29 -0
  281. package/types/ops/VersionUtils.d.ts.map +1 -0
  282. package/types/ops/classic/ServerOps.d.ts +195 -0
  283. package/types/ops/classic/ServerOps.d.ts.map +1 -0
  284. package/types/ops/classic/SiteOps.d.ts +117 -0
  285. package/types/ops/classic/SiteOps.d.ts.map +1 -0
  286. package/types/ops/cloud/AdminFederationOps.d.ts +165 -0
  287. package/types/ops/cloud/AdminFederationOps.d.ts.map +1 -0
  288. package/types/ops/cloud/EnvAIAgentOps.d.ts +18 -0
  289. package/types/ops/cloud/EnvAIAgentOps.d.ts.map +1 -0
  290. package/types/ops/cloud/EnvCSRsOps.d.ts +86 -0
  291. package/types/ops/cloud/EnvCSRsOps.d.ts.map +1 -0
  292. package/types/ops/cloud/EnvCertificatesOps.d.ts +140 -0
  293. package/types/ops/cloud/EnvCertificatesOps.d.ts.map +1 -0
  294. package/types/ops/cloud/EnvContentSecurityPolicyOps.d.ts +101 -0
  295. package/types/ops/cloud/EnvContentSecurityPolicyOps.d.ts.map +1 -0
  296. package/types/ops/cloud/EnvCookieDomainsOps.d.ts +36 -0
  297. package/types/ops/cloud/EnvCookieDomainsOps.d.ts.map +1 -0
  298. package/types/ops/cloud/EnvCustomDomainsOps.d.ts +53 -0
  299. package/types/ops/cloud/EnvCustomDomainsOps.d.ts.map +1 -0
  300. package/types/ops/cloud/EnvDirectConfigurationSessionOps.d.ts +55 -0
  301. package/types/ops/cloud/EnvDirectConfigurationSessionOps.d.ts.map +1 -0
  302. package/types/ops/cloud/EnvFederationEnforcementOps.d.ts +58 -0
  303. package/types/ops/cloud/EnvFederationEnforcementOps.d.ts.map +1 -0
  304. package/types/ops/cloud/EnvPromotionOps.d.ts +175 -0
  305. package/types/ops/cloud/EnvPromotionOps.d.ts.map +1 -0
  306. package/types/ops/cloud/EnvReleaseOps.d.ts +19 -0
  307. package/types/ops/cloud/EnvReleaseOps.d.ts.map +1 -0
  308. package/types/ops/cloud/EnvSSOCookieConfigOps.d.ts +50 -0
  309. package/types/ops/cloud/EnvSSOCookieConfigOps.d.ts.map +1 -0
  310. package/types/ops/cloud/EnvServiceAccountScopesOps.d.ts +21 -0
  311. package/types/ops/cloud/EnvServiceAccountScopesOps.d.ts.map +1 -0
  312. package/types/ops/cloud/EsvCountOps.d.ts +15 -0
  313. package/types/ops/cloud/EsvCountOps.d.ts.map +1 -0
  314. package/types/ops/cloud/FeatureOps.d.ts +34 -0
  315. package/types/ops/cloud/FeatureOps.d.ts.map +1 -0
  316. package/types/ops/cloud/IdmFeatureOps.d.ts +78 -0
  317. package/types/ops/cloud/IdmFeatureOps.d.ts.map +1 -0
  318. package/types/ops/cloud/LogOps.d.ts +271 -0
  319. package/types/ops/cloud/LogOps.d.ts.map +1 -0
  320. package/types/ops/cloud/SecretsOps.d.ts +306 -0
  321. package/types/ops/cloud/SecretsOps.d.ts.map +1 -0
  322. package/types/ops/cloud/ServiceAccountOps.d.ts +86 -0
  323. package/types/ops/cloud/ServiceAccountOps.d.ts.map +1 -0
  324. package/types/ops/cloud/StartupOps.d.ts +62 -0
  325. package/types/ops/cloud/StartupOps.d.ts.map +1 -0
  326. package/types/ops/cloud/TelemetryOps.d.ts +109 -0
  327. package/types/ops/cloud/TelemetryOps.d.ts.map +1 -0
  328. package/types/ops/cloud/VariablesOps.d.ts +224 -0
  329. package/types/ops/cloud/VariablesOps.d.ts.map +1 -0
  330. package/types/ops/cloud/WSFedOps.d.ts +412 -0
  331. package/types/ops/cloud/WSFedOps.d.ts.map +1 -0
  332. package/types/ops/cloud/iga/IgaCertificationTemplateOps.d.ts +261 -0
  333. package/types/ops/cloud/iga/IgaCertificationTemplateOps.d.ts.map +1 -0
  334. package/types/ops/cloud/iga/IgaEventOps.d.ts +242 -0
  335. package/types/ops/cloud/iga/IgaEventOps.d.ts.map +1 -0
  336. package/types/ops/cloud/iga/IgaGlossaryOps.d.ts +241 -0
  337. package/types/ops/cloud/iga/IgaGlossaryOps.d.ts.map +1 -0
  338. package/types/ops/cloud/iga/IgaRequestFormOps.d.ts +259 -0
  339. package/types/ops/cloud/iga/IgaRequestFormOps.d.ts.map +1 -0
  340. package/types/ops/cloud/iga/IgaRequestTypeOps.d.ts +240 -0
  341. package/types/ops/cloud/iga/IgaRequestTypeOps.d.ts.map +1 -0
  342. package/types/ops/cloud/iga/IgaWorkflowOps.d.ts +334 -0
  343. package/types/ops/cloud/iga/IgaWorkflowOps.d.ts.map +1 -0
  344. package/types/ops/internal/RelationshipHelpers.d.ts +111 -0
  345. package/types/ops/internal/RelationshipHelpers.d.ts.map +1 -0
  346. package/types/shared/Constants.d.ts +100 -0
  347. package/types/shared/Constants.d.ts.map +1 -0
  348. package/types/shared/OperationType.d.ts +14 -0
  349. package/types/shared/OperationType.d.ts.map +1 -0
  350. package/types/shared/State.d.ts +355 -0
  351. package/types/shared/State.d.ts.map +1 -0
  352. package/types/shared/Version.d.ts +16 -0
  353. package/types/shared/Version.d.ts.map +1 -0
  354. package/types/test/mocks/ForgeRockApiMockEngine.d.ts +38 -0
  355. package/types/test/mocks/ForgeRockApiMockEngine.d.ts.map +1 -0
  356. package/types/test/setup/EmailTemplateSetup.d.ts +8 -0
  357. package/types/test/setup/EmailTemplateSetup.d.ts.map +1 -0
  358. package/types/test/setup/IgaCertificationTemplateSetup.d.ts +12 -0
  359. package/types/test/setup/IgaCertificationTemplateSetup.d.ts.map +1 -0
  360. package/types/test/setup/IgaEventSetup.d.ts +22 -0
  361. package/types/test/setup/IgaEventSetup.d.ts.map +1 -0
  362. package/types/test/setup/IgaGlossarySetup.d.ts +11 -0
  363. package/types/test/setup/IgaGlossarySetup.d.ts.map +1 -0
  364. package/types/test/setup/IgaRequestFormSetup.d.ts +42 -0
  365. package/types/test/setup/IgaRequestFormSetup.d.ts.map +1 -0
  366. package/types/test/setup/IgaRequestTypeSetup.d.ts +10 -0
  367. package/types/test/setup/IgaRequestTypeSetup.d.ts.map +1 -0
  368. package/types/test/setup/IgaWorkflowSetup.d.ts +32 -0
  369. package/types/test/setup/IgaWorkflowSetup.d.ts.map +1 -0
  370. package/types/test/setup/JourneySetup.d.ts +18 -0
  371. package/types/test/setup/JourneySetup.d.ts.map +1 -0
  372. package/types/test/setup/NodeSetup.d.ts +14 -0
  373. package/types/test/setup/NodeSetup.d.ts.map +1 -0
  374. package/types/test/setup/RawConfigSetup.d.ts +2 -0
  375. package/types/test/setup/RawConfigSetup.d.ts.map +1 -0
  376. package/types/test/setup/SecretSetup.d.ts +69 -0
  377. package/types/test/setup/SecretSetup.d.ts.map +1 -0
  378. package/types/test/setup/StartupSetup.d.ts +2 -0
  379. package/types/test/setup/StartupSetup.d.ts.map +1 -0
  380. package/types/test/setup/TelemetrySetup.d.ts +8 -0
  381. package/types/test/setup/TelemetrySetup.d.ts.map +1 -0
  382. package/types/test/setup/VariablesSetup.d.ts +27 -0
  383. package/types/test/setup/VariablesSetup.d.ts.map +1 -0
  384. package/types/test/utils/TestUtils.d.ts +15 -0
  385. package/types/test/utils/TestUtils.d.ts.map +1 -0
  386. package/types/utils/AsyncUtils.d.ts +14 -0
  387. package/types/utils/AsyncUtils.d.ts.map +1 -0
  388. package/types/utils/AutoSetupPolly.d.ts +25 -0
  389. package/types/utils/AutoSetupPolly.d.ts.map +1 -0
  390. package/types/utils/Base64Utils.d.ts +41 -0
  391. package/types/utils/Base64Utils.d.ts.map +1 -0
  392. package/types/utils/ColorTheme.d.ts +40 -0
  393. package/types/utils/ColorTheme.d.ts.map +1 -0
  394. package/types/utils/Console.d.ts +110 -0
  395. package/types/utils/Console.d.ts.map +1 -0
  396. package/types/utils/CryptoUtils.d.ts +35 -0
  397. package/types/utils/CryptoUtils.d.ts.map +1 -0
  398. package/types/utils/DataProtection.d.ts +24 -0
  399. package/types/utils/DataProtection.d.ts.map +1 -0
  400. package/types/utils/ExportImportUtils.d.ts +415 -0
  401. package/types/utils/ExportImportUtils.d.ts.map +1 -0
  402. package/types/utils/ForgeRockUtils.d.ts +122 -0
  403. package/types/utils/ForgeRockUtils.d.ts.map +1 -0
  404. package/types/utils/FrodoNodeHttpAdapter.d.ts +5 -0
  405. package/types/utils/FrodoNodeHttpAdapter.d.ts.map +1 -0
  406. package/types/utils/FrodoUtils.d.ts +15 -0
  407. package/types/utils/FrodoUtils.d.ts.map +1 -0
  408. package/types/utils/HelpUtils.d.ts +19 -0
  409. package/types/utils/HelpUtils.d.ts.map +1 -0
  410. package/types/utils/JsonUtils.d.ts +105 -0
  411. package/types/utils/JsonUtils.d.ts.map +1 -0
  412. package/types/utils/JwtUtils.d.ts +19 -0
  413. package/types/utils/JwtUtils.d.ts.map +1 -0
  414. package/types/utils/PkceUtils.d.ts +17 -0
  415. package/types/utils/PkceUtils.d.ts.map +1 -0
  416. package/types/utils/PollyUtils.d.ts +65 -0
  417. package/types/utils/PollyUtils.d.ts.map +1 -0
  418. package/types/utils/ScriptValidationUtils.d.ts +38 -0
  419. package/types/utils/ScriptValidationUtils.d.ts.map +1 -0
  420. package/types/utils/SemverUtils.d.ts +61 -0
  421. package/types/utils/SemverUtils.d.ts.map +1 -0
  422. package/types/utils/SetupPollyForFrodoLib.d.ts +7 -0
  423. package/types/utils/SetupPollyForFrodoLib.d.ts.map +1 -0
  424. package/types/utils/TerminalBackgroundDetection.d.ts +48 -0
  425. package/types/utils/TerminalBackgroundDetection.d.ts.map +1 -0
  426. package/types/utils/TerminalContrast.d.ts +44 -0
  427. package/types/utils/TerminalContrast.d.ts.map +1 -0
@@ -0,0 +1,371 @@
1
+ /**
2
+ * Defines the canonical type contracts used by the MCP capability layer.
3
+ *
4
+ * @remarks
5
+ * This module is intentionally declarative. It provides the shared vocabulary for
6
+ * capability discovery, policy filtering, and runtime registration so each layer
7
+ * can evolve independently without breaking shape compatibility.
8
+ */
9
+ import { OperationType } from '../shared/OperationType';
10
+ /**
11
+ * Normalized operation kinds inferred from Frodo methods or explicitly supplied by
12
+ * metadata in future registry manifests.
13
+ *
14
+ * @remarks
15
+ * A type alias of the core library's deployment-agnostic `OperationType`
16
+ * (`shared/OperationType.ts`), not an independent definition — the MCP
17
+ * capability layer may depend on core library vocabulary, but core library
18
+ * code must never depend on `mcp/`, so the canonical union lives there.
19
+ */
20
+ export type McpCapabilityOperationType = OperationType;
21
+ /**
22
+ * Risk classification used by policy presets and launch-time exposure controls.
23
+ */
24
+ export type McpCapabilityRiskClass = 'low' | 'medium' | 'high' | 'critical';
25
+ /**
26
+ * High-level classification of whether a capability maps to the generic MCP tool
27
+ * surface or must be exposed as a domain-specific operation.
28
+ */
29
+ export type McpCapabilityKind = 'generic' | 'special';
30
+ /**
31
+ * Caller-privilege tier a capability is safe to expose to.
32
+ *
33
+ * @remarks
34
+ * Deliberately not named "audience" — that term already has a specific,
35
+ * unrelated meaning in OAuth2/OIDC (a token's `aud` claim, matched against a
36
+ * resource server's own identifier). This is Frodo's own concept: today's
37
+ * `admin-account` and `service-account` auth modes are already full-trust
38
+ * identities, so `'full-trust'` is the universal default every capability
39
+ * gets unless explicitly narrowed. `'delegated'` marks a capability safe for
40
+ * a non-admin caller resolved via a real interactive (browser) login — see
41
+ * `ops/CallerTrustTierOps.ts`'s `determineCallerTrustTier()`. `'both'`
42
+ * covers capabilities safe for either.
43
+ */
44
+ export type McpCapabilityTrustTier = 'full-trust' | 'delegated' | 'both';
45
+ /**
46
+ * Deployment families that can be used to constrain capability exposure.
47
+ */
48
+ export type McpDeploymentType = 'cloud' | 'classic' | 'forgeops' | 'any';
49
+ /**
50
+ * MCP tool behavior hints that clients and models may use during tool selection.
51
+ */
52
+ export type McpToolAnnotations = {
53
+ readOnlyHint: boolean;
54
+ destructiveHint: boolean;
55
+ idempotentHint: boolean;
56
+ openWorldHint: boolean;
57
+ };
58
+ /**
59
+ * Argument-shape contract surfaced to MCP callers for a capability.
60
+ */
61
+ export type McpCapabilityArgumentMode = 'none' | 'positional' | 'named' | 'mixed';
62
+ /**
63
+ * Lightweight JSON-schema-style contract for a structured MCP parameter value.
64
+ *
65
+ * @remarks
66
+ * This intentionally supports only the subset needed for agent guidance and
67
+ * runtime validation.
68
+ */
69
+ export type McpCapabilityParameterSchema = {
70
+ type?: 'string' | 'number' | 'integer' | 'boolean' | 'object' | 'array';
71
+ description?: string;
72
+ enum?: unknown[];
73
+ properties?: Record<string, McpCapabilityParameterSchema>;
74
+ required?: string[];
75
+ additionalProperties?: boolean;
76
+ items?: McpCapabilityParameterSchema;
77
+ };
78
+ /**
79
+ * Parameter definition for a capability exposed through discovery metadata.
80
+ */
81
+ export type McpCapabilityParameter = {
82
+ name: string;
83
+ type: string;
84
+ required?: boolean;
85
+ position?: number;
86
+ description?: string;
87
+ /** Optional MCP-side default applied when the caller omits this parameter. */
88
+ defaultValue?: unknown;
89
+ /** Optional schema contract for structured or enum-like parameter values. */
90
+ schema?: McpCapabilityParameterSchema;
91
+ /** Optional example values surfaced in discovery and validation errors. */
92
+ examples?: unknown[];
93
+ };
94
+ /**
95
+ * Per-parameter annotation overlay applied on top of an auto-derived
96
+ * parameter (see {@link OperationCapabilityMeta.parameterOverrides}).
97
+ *
98
+ * @remarks
99
+ * Deliberately excludes `name` and `position`: which parameters exist, in
100
+ * which order, always comes from the auto-derived signature (Help.ts,
101
+ * falling back to name-based inference) so it can't silently drift from the
102
+ * real bound method. `type` and `required` may be set here too, but only
103
+ * for refinements the type system can't express on its own (e.g. narrowing
104
+ * a `number` to a JSON-Schema `integer`, or documenting an MCP-dispatch-
105
+ * layer default that makes an otherwise-required parameter effectively
106
+ * optional at the call site) — not as a general-purpose escape hatch.
107
+ */
108
+ export type McpCapabilityParameterOverlay = Partial<Pick<McpCapabilityParameter, 'type' | 'required' | 'description' | 'defaultValue' | 'schema' | 'examples'>>;
109
+ /**
110
+ * Optional selector that disambiguates multiple capabilities sharing the same
111
+ * generic `(operationType, domain, objectType)` tuple.
112
+ */
113
+ export type McpCapabilityScope = 'single' | 'bulk';
114
+ /**
115
+ * Canonical capability descriptor produced by inventory/registry builders.
116
+ */
117
+ export type McpCapabilityDescriptor = {
118
+ id: string;
119
+ toolName: string;
120
+ methodName: string;
121
+ modulePath: string[];
122
+ domain: string;
123
+ objectType: string;
124
+ operationType: McpCapabilityOperationType;
125
+ /** Optional MCP-facing argument contract for this capability. */
126
+ argumentMode?: McpCapabilityArgumentMode;
127
+ /** Optional ordered/named parameter metadata for this capability. */
128
+ parameters?: McpCapabilityParameter[];
129
+ /** Optional selector value used to disambiguate generic capabilities. */
130
+ scope?: McpCapabilityScope;
131
+ /** Whether the generic tool supports realm override for this capability. */
132
+ supportsRealm?: boolean;
133
+ /** Whether the generic tool supports paging hints for this capability. */
134
+ supportsPaging?: boolean;
135
+ /** Whether the generic tool supports includeTotal for this capability. */
136
+ supportsIncludeTotal?: boolean;
137
+ kind: McpCapabilityKind;
138
+ riskClass: McpCapabilityRiskClass;
139
+ mutating: boolean;
140
+ destructive: boolean;
141
+ /**
142
+ * Whether this capability has no platform-native undo once it completes.
143
+ * Set from {@link OperationCapabilityMeta.irreversible} when declared;
144
+ * absent otherwise (not inferred, unlike {@link destructive}/{@link riskClass} —
145
+ * there's no reliable naming-convention signal for irreversibility).
146
+ */
147
+ irreversible?: boolean;
148
+ /** Deployment families where this capability is functional. Defaults to `['any']`. */
149
+ deploymentTypes: McpDeploymentType[];
150
+ /**
151
+ * Deployment families where this capability is the preferred/optimal choice.
152
+ * Set from {@link OperationCapabilityMeta.preferredDeploymentTypes} when available;
153
+ * absent when no explicit preference has been declared.
154
+ */
155
+ preferredDeploymentTypes?: McpDeploymentType[];
156
+ /**
157
+ * Identity surface this capability operates on.
158
+ * Set from {@link OperationCapabilityMeta.identitySurface} when available.
159
+ */
160
+ identitySurface?: McpIdentitySurface;
161
+ /**
162
+ * Glob-style object type patterns this capability applies to.
163
+ * Set from {@link OperationCapabilityMeta.objectTypePatterns} when available.
164
+ */
165
+ objectTypePatterns?: string[];
166
+ /** Optional human-readable note surfaced in discovery and validation output. */
167
+ notes?: string;
168
+ /** Curated natural-language phrases used to retrieve this capability. */
169
+ semanticAliases?: string[];
170
+ /**
171
+ * A credential beyond the standard AM/IDM bearer token this capability
172
+ * requires. When set, the runtime verifies it's present on the dispatching
173
+ * Frodo instance's state before invoking the descriptor, and fails fast with
174
+ * an actionable error instead of letting the underlying API call 401.
175
+ * Set from {@link OperationCapabilityMeta.requiredCredential} when available.
176
+ */
177
+ requiredCredential?: McpRequiredCredential;
178
+ requiredScopes: string[];
179
+ /**
180
+ * Caller-privilege tier this capability is safe to expose to. Defaults to
181
+ * `'full-trust'` (see {@link McpCapabilityTrustTier}) — a conservative
182
+ * allow-list posture where every capability requires the maintainer to
183
+ * deliberately opt in a narrower tier, mirroring how {@link deploymentTypes}
184
+ * always resolves to at least `['any']` rather than being left unset.
185
+ * Set from {@link OperationCapabilityMeta.trustTier} when declared.
186
+ */
187
+ trustTier: McpCapabilityTrustTier;
188
+ annotations: McpToolAnnotations;
189
+ };
190
+ /**
191
+ * Controls for capability inventory generation.
192
+ */
193
+ export type McpCapabilityInventoryOptions = {
194
+ includeTopLevelDomains?: string[];
195
+ excludeTopLevelDomains?: string[];
196
+ includeUtils?: boolean;
197
+ };
198
+ /**
199
+ * Policy model used to include or exclude capabilities before registration.
200
+ */
201
+ export type McpCapabilityPolicy = {
202
+ name: string;
203
+ allowOperationTypes?: McpCapabilityOperationType[];
204
+ denyOperationTypes?: McpCapabilityOperationType[];
205
+ allowRiskClasses?: McpCapabilityRiskClass[];
206
+ denyRiskClasses?: McpCapabilityRiskClass[];
207
+ /** Statically pre-filters capabilities by {@link McpCapabilityTrustTier} at manifest-build time — see `ToolRuntime.ts`'s `assertTrustTierAllowed` for the complementary per-request dynamic check. */
208
+ allowTrustTiers?: McpCapabilityTrustTier[];
209
+ denyTrustTiers?: McpCapabilityTrustTier[];
210
+ allowDomains?: string[];
211
+ denyDomains?: string[];
212
+ /** Optional allow-list of capability module/id path prefixes. */
213
+ allowCapabilityPathPrefixes?: string[];
214
+ /** Optional deny-list of capability module/id path prefixes. */
215
+ denyCapabilityPathPrefixes?: string[];
216
+ includeSpecial?: boolean;
217
+ };
218
+ /**
219
+ * Built-in policy preset names recognized by the baseline MCP capability layer.
220
+ */
221
+ export type McpCapabilityPolicyPresetName = 'read-only' | 'agentic' | 'standard' | 'admin';
222
+ /**
223
+ * Identifies the identity data surface a capability operates on.
224
+ *
225
+ * @remarks
226
+ * - `managed` — IDM managed objects accessed via `openidm/managed/` (cloud + forgeops only)
227
+ * - `am-user` — AM realm users accessed via the AM REST API (classic only)
228
+ * - `connector-system` — Objects in an ICF connector system via `openidm/system/` (cloud + forgeops only)
229
+ * - `unknown` — Surface not classified
230
+ */
231
+ export type McpIdentitySurface = 'managed' | 'am-user' | 'connector-system' | 'unknown';
232
+ /**
233
+ * Identifies a credential a capability needs beyond the standard AM/IDM bearer
234
+ * token, which the MCP runtime should verify is present before dispatching.
235
+ *
236
+ * @remarks
237
+ * - `logApi` — a Log API key/secret (`state.getLogApiKey()`/`getLogApiSecret()`),
238
+ * used by the Identity Cloud debug/audit log endpoints, which authenticate
239
+ * with `X-API-Key`/`X-API-Secret` rather than the AM session bearer token.
240
+ */
241
+ export type McpRequiredCredential = 'logApi';
242
+ /**
243
+ * Explicit capability metadata entry stored in the static {@link CAPABILITY_META} map.
244
+ *
245
+ * @remarks
246
+ * Entries in the static map are keyed by a capability ID (exact dot-path match, e.g.
247
+ * `"idm.managed.countManagedObjects"`) or by a module prefix (e.g. `"idm.managed"`) that
248
+ * covers all capabilities whose IDs start with that prefix. Exact matches take priority
249
+ * over prefix matches. All fields are optional — only overrides need to be specified; the
250
+ * registry falls back to inferred defaults for absent fields.
251
+ */
252
+ export type OperationCapabilityMeta = {
253
+ /**
254
+ * Explicit complete list of deployment types where this capability is functional.
255
+ * When set, overrides the default `['any']` inferred by the registry.
256
+ */
257
+ deploymentTypes?: McpDeploymentType[];
258
+ /**
259
+ * Subset of `deploymentTypes` indicating the deployment(s) where this capability
260
+ * is the optimal/recommended choice for the given object surface. Used by
261
+ * `frodo_discover` to produce routing hints for agents.
262
+ */
263
+ preferredDeploymentTypes?: McpDeploymentType[];
264
+ /**
265
+ * The identity data surface this capability operates on.
266
+ * Enables discovery tools to recommend the right domain for a given object type.
267
+ */
268
+ identitySurface?: McpIdentitySurface;
269
+ /**
270
+ * A credential beyond the standard AM/IDM bearer token this capability
271
+ * requires. See {@link McpRequiredCredential}.
272
+ */
273
+ requiredCredential?: McpRequiredCredential;
274
+ /**
275
+ * Glob-style object type patterns this capability applies to.
276
+ * Used by discovery to map object names (e.g. `alpha_user`) to the preferred domain.
277
+ * Examples: `['*_user', '*_organization', '*_application']`
278
+ */
279
+ objectTypePatterns?: string[];
280
+ /** Optional human-readable note surfaced in discovery tool output. */
281
+ notes?: string;
282
+ /** Curated natural-language phrases used for capability retrieval. */
283
+ semanticAliases?: string[];
284
+ /** Explicit MCP-facing argument mode override for the capability. */
285
+ argumentMode?: McpCapabilityArgumentMode;
286
+ /**
287
+ * Per-parameter annotation overlay, keyed by the parameter's auto-derived
288
+ * name (from Help.ts, falling back to name-based inference). Only fields
289
+ * present in {@link McpCapabilityParameterOverlay} may be set — the
290
+ * auto-derived parameter list (which parameters exist, their order) is
291
+ * always the baseline, so an entry here can annotate a real parameter but
292
+ * can never fabricate one, silently reorder one, or hide a signature
293
+ * change. Use {@link excludeParameters} to hide a parameter entirely.
294
+ */
295
+ parameterOverrides?: Record<string, McpCapabilityParameterOverlay>;
296
+ /**
297
+ * Names of auto-derived parameters to exclude from this capability's
298
+ * advertised parameter contract — e.g. a trailing `resultCallback` (a JS
299
+ * function reference an MCP JSON payload can never carry).
300
+ */
301
+ excludeParameters?: string[];
302
+ /** Optional selector value used to distinguish single vs bulk semantics, etc. */
303
+ scope?: McpCapabilityScope;
304
+ /** Whether the capability supports MCP realm override controls. */
305
+ supportsRealm?: boolean;
306
+ /** Whether the capability supports MCP paging controls. */
307
+ supportsPaging?: boolean;
308
+ /** Whether the capability supports MCP includeTotal hints. */
309
+ supportsIncludeTotal?: boolean;
310
+ /**
311
+ * Explicit operation-type override for capabilities whose method name doesn't
312
+ * follow the CRUD naming convention `inferOperationType` relies on (e.g. `fetch`,
313
+ * `tail`). When set, this wins over naming-convention inference and also drives
314
+ * the derived `kind` (`'special'` iff `operationType === 'special'`).
315
+ */
316
+ operationType?: McpCapabilityOperationType;
317
+ /**
318
+ * Explicit object-type override for capabilities whose method name doesn't carry
319
+ * an inferable object-type suffix (e.g. `fetch` → `LogEvent`). When set, this wins
320
+ * over naming-convention inference.
321
+ */
322
+ objectType?: string;
323
+ /**
324
+ * Explicit mutating override. Naming-convention inference only recognizes
325
+ * `create`/`update`/`delete`/`import` as mutating, so any capability that writes
326
+ * state under a different verb (including one classified `operationType: 'special'`)
327
+ * needs this set explicitly rather than relying on the permissive `false` default.
328
+ */
329
+ mutating?: boolean;
330
+ /**
331
+ * Explicit destructive-hint override, analogous to {@link mutating}.
332
+ */
333
+ destructive?: boolean;
334
+ /**
335
+ * Marks a capability as having no platform-native undo once it completes —
336
+ * distinct from {@link riskClass}, which describes blast radius. An
337
+ * operation can be `riskClass: 'critical'` without being irreversible (a
338
+ * schema-property delete can be restored from a prior export) or
339
+ * irreversible without being otherwise unusual (an IDM feature install is
340
+ * a single, deliberate, low-frequency action, not "high blast radius" in
341
+ * the everyday sense, but Ping's own docs state that uninstalling
342
+ * requires contacting support and rolling back the tenant). Pure
343
+ * discoverability metadata — surfaced on the descriptor for callers and
344
+ * policy designers to see (like {@link destructive}), not itself wired
345
+ * into policy-tier filtering, since capabilities marked irreversible so
346
+ * far are already `riskClass: 'critical'` and therefore already excluded
347
+ * from every non-admin preset by the existing risk-class filter.
348
+ */
349
+ irreversible?: boolean;
350
+ /**
351
+ * Explicit risk-class override. Naming-convention inference only escalates risk
352
+ * for `delete`/`import`/`export`/`create`/`update` and secret-ish keyword matches,
353
+ * so non-CRUD capabilities that warrant elevated caution need this set explicitly.
354
+ */
355
+ riskClass?: McpCapabilityRiskClass;
356
+ /**
357
+ * Explicit caller-privilege-tier override. See {@link McpCapabilityTrustTier}.
358
+ * The registry defaults every capability to `'full-trust'` when absent —
359
+ * this is the enforceable replacement for an "Admin-only" free-text note
360
+ * in {@link notes} (keep the prose too; it explains *why*, this field says
361
+ * *what's enforced*).
362
+ */
363
+ trustTier?: McpCapabilityTrustTier;
364
+ /**
365
+ * When `true`, this capability is dropped from the inventory entirely instead of
366
+ * becoming a descriptor. Intended for methods that make no tenant/API call (pure
367
+ * local helpers) and therefore aren't remote operations at all.
368
+ */
369
+ excluded?: boolean;
370
+ };
371
+ //# sourceMappingURL=CapabilityTypes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CapabilityTypes.d.ts","sourceRoot":"","sources":["../../src/mcp/CapabilityTypes.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import { Frodo } from '../lib/FrodoLib';
2
+ import { McpCatalogHydrationStatus, McpDiscoveryContext, McpDiscoveryTarget } from './ToolManifest';
3
+ export type McpDiscoveryHydrationCatalog = 'managed-object-types' | 'config-entity-ids';
4
+ export type McpDiscoveryHydrationEvent = {
5
+ catalog: McpDiscoveryHydrationCatalog;
6
+ status: McpCatalogHydrationStatus;
7
+ count: number;
8
+ error?: unknown;
9
+ };
10
+ export type McpDiscoveryHydrationOptions = {
11
+ frodoInstance?: Frodo;
12
+ timeoutMs?: number;
13
+ activeTarget?: McpDiscoveryTarget;
14
+ onEvent?: (event: McpDiscoveryHydrationEvent) => void;
15
+ };
16
+ /**
17
+ * Hydrates tenant catalogs used by MCP discovery and semantic skill matching.
18
+ * Catalog failures are isolated so service construction can continue.
19
+ */
20
+ export declare function hydrateMcpDiscoveryContext(options?: McpDiscoveryHydrationOptions): Promise<McpDiscoveryContext>;
21
+ //# sourceMappingURL=DiscoveryHydration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DiscoveryHydration.d.ts","sourceRoot":"","sources":["../../src/mcp/DiscoveryHydration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAS,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,gBAAgB,CAAC;AAIxB,MAAM,MAAM,4BAA4B,GACtC,sBAAsB,GAAG,mBAAmB,CAAC;AAE/C,MAAM,MAAM,0BAA0B,GAAG;IACvC,OAAO,EAAE,4BAA4B,CAAC;IACtC,MAAM,EAAE,yBAAyB,CAAC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,aAAa,CAAC,EAAE,KAAK,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,0BAA0B,KAAK,IAAI,CAAC;CACvD,CAAC;AAOF;;;GAGG;AACH,wBAAsB,0BAA0B,CAC9C,OAAO,GAAE,4BAAiC,GACzC,OAAO,CAAC,mBAAmB,CAAC,CAoD9B"}
@@ -0,0 +1,123 @@
1
+ /**
2
+ * Resolves which Ping documentation docset (and version, where applicable) an
3
+ * MCP session's active deployment should be pointed at.
4
+ *
5
+ * @remarks
6
+ * Ping publishes every docs page as a Markdown alternate (swap `.html` for
7
+ * `.md`, or send `Accept: text/markdown`) and a per-product discovery index at
8
+ * `docs.pingidentity.com/{product}/llms.txt` — a flat title-to-URL list an
9
+ * agent can match a question against directly. That fetch-and-match mechanism
10
+ * is generic and needs no logic of its own; what does need logic is picking
11
+ * the right `{product}` and, for versioned products, the right version —
12
+ * getting either wrong doesn't fail loudly, it silently serves plausible but
13
+ * wrong documentation:
14
+ *
15
+ * - Advanced Identity Cloud (`cloud`) is continuously deployed and reports
16
+ * internal component versions (e.g. an AM version) that run ahead of any
17
+ * public release. Treating that as a docs version would produce a 404 at
18
+ * best. The correct behavior is to ignore it entirely and always resolve to
19
+ * the unversioned `pingoneaic` docset.
20
+ * - Self-managed AM (`classic`) is genuinely versioned, but
21
+ * `docs.pingidentity.com/pingam/llms.txt` is itself unversioned — it only
22
+ * ever indexes whichever version is currently latest on the docs site, not
23
+ * necessarily the one this deployment runs. Verified live: older
24
+ * version-pinned page trees stay reachable at their own path even once
25
+ * superseded (e.g. `.../pingam/7.5/...` resolves cleanly with `8.1`
26
+ * current), so the fix is to rewrite the version segment in a matched page
27
+ * URL to the deployment's actual version rather than trust whatever the
28
+ * index links to.
29
+ * - ForgeOps (`forgeops`) runs AM and IDM as separately versioned components,
30
+ * each with its own docset (`pingam`, `pingidm`), so a single docs target
31
+ * can't be resolved without knowing which component a given question is
32
+ * about. Rather than guess, `resolveDocsContext` returns both components'
33
+ * docs targets plus `domainRouting` — a lookup from frodo's own top-level
34
+ * capability domain (the `frodo.<domain>...` namespace a skill's `domain`
35
+ * field already reports, e.g. `'realm'`, `'idm'`, `'authn'`) to which
36
+ * component owns it, built from the actual API generator (`generateAmApi`
37
+ * vs `generateIdmApi`) each domain's operations call under the hood.
38
+ */
39
+ import { McpDeploymentType } from './CapabilityTypes';
40
+ /** Docs product slugs this resolver knows about. */
41
+ export type McpDocsProduct = 'pingoneaic' | 'pingam' | 'pingidm';
42
+ /**
43
+ * A resolved docs target: which product, whether it's versioned, and (for
44
+ * versioned products) which version — plus the discovery index URL and
45
+ * guidance on how to use it correctly.
46
+ */
47
+ export type McpDocsContext = {
48
+ product: McpDocsProduct;
49
+ versioned: boolean;
50
+ /** Present only when `versioned` is true and a version could be determined. */
51
+ version?: string;
52
+ /** Always the unversioned per-product discovery index — never version-scoped. */
53
+ llmsTxtUrl: string;
54
+ /** Usage guidance specific to this product/version combination. */
55
+ notes: string;
56
+ };
57
+ /** Returned when a docs target cannot be resolved. */
58
+ export type McpDocsContextUnresolved = {
59
+ product: null;
60
+ unresolved: true;
61
+ reason: string;
62
+ };
63
+ /**
64
+ * Which product's docs own a given top-level frodo capability domain (the
65
+ * `frodo.<domain>...` namespace, e.g. `'realm'`, `'idm'`, `'authn'`):
66
+ *
67
+ * - `'am'` / `'idm'`: operations under this domain call that component's API
68
+ * exclusively (verified against the actual `generateAmApi`/`generateIdmApi`
69
+ * call sites, not inferred from the domain's name — several domain names
70
+ * are misleading, e.g. `user` is AM's identity-store users REST resource,
71
+ * not IDM managed users, which live under `idm.managed` instead).
72
+ * - `'both'`: the domain spans both components (e.g. whole-tenant config
73
+ * export/import), so a single product can't be chosen for it.
74
+ * - `'cloud-only'`: an Advanced Identity Cloud SaaS feature with no ForgeOps
75
+ * equivalent at all (ESVs, IGA, promotion, service accounts, ...).
76
+ * - `'n/a'`: an internal/client-side helper with no corresponding product
77
+ * documentation (HTTP client factory, local utility functions, connection
78
+ * profile and token cache management).
79
+ */
80
+ export type McpDocsDomainProduct = 'am' | 'idm' | 'both' | 'cloud-only' | 'n/a';
81
+ /**
82
+ * Verified domain → product mapping for every top-level frodo capability
83
+ * domain, derived from which API generator (`generateAmApi`/
84
+ * `generateAmAuthApi`/`generateOauth2Api` vs `generateIdmApi`) that domain's
85
+ * operations call. Domains not listed here default to `'both'` in
86
+ * {@link classifyDomainProduct} — an unclassified domain should prompt
87
+ * checking both docsets rather than silently guessing one.
88
+ */
89
+ export declare const FORGEOPS_DOMAIN_PRODUCT_MAP: Record<string, McpDocsDomainProduct>;
90
+ /**
91
+ * Classifies a top-level frodo capability domain by which product's docs own
92
+ * it. Falls back to `'both'` for anything not in
93
+ * {@link FORGEOPS_DOMAIN_PRODUCT_MAP} — an unrecognized domain should never
94
+ * be silently routed to one product's docs.
95
+ */
96
+ export declare function classifyDomainProduct(domain: string): McpDocsDomainProduct;
97
+ /** A resolved forgeops docs target: independently versioned AM and IDM docsets, plus domain routing. */
98
+ export type McpDocsContextForgeops = {
99
+ deploymentType: 'forgeops';
100
+ am: McpDocsContext | McpDocsContextUnresolved;
101
+ idm: McpDocsContext | McpDocsContextUnresolved;
102
+ domainRouting: Record<string, McpDocsDomainProduct>;
103
+ notes: string;
104
+ };
105
+ /** @see extractDocsMajorMinor */
106
+ export declare function parseAmDocsVersion(rawAmVersion: string | undefined): string | undefined;
107
+ /** @see extractDocsMajorMinor */
108
+ export declare function parseIdmDocsVersion(rawIdmVersion: string | undefined): string | undefined;
109
+ /**
110
+ * Resolves the docs target for a deployment, given its type and (for
111
+ * self-managed AM/IDM) its raw version string(s).
112
+ *
113
+ * @param deploymentType Active deployment type, or `undefined` if unknown.
114
+ * @param rawAmVersion Raw value from `state.getAmVersion()`, consulted for
115
+ * `classic` and `forgeops` deployments.
116
+ * @param rawIdmVersion Raw value from `state.getIdmVersion()`, consulted only
117
+ * for `forgeops` deployments (classic has no IDM component; cloud ignores
118
+ * component versions by design).
119
+ * @returns A resolved docs context, or an explicit unresolved result — never
120
+ * a guess.
121
+ */
122
+ export declare function resolveDocsContext(deploymentType: McpDeploymentType | undefined, rawAmVersion?: string, rawIdmVersion?: string): McpDocsContext | McpDocsContextUnresolved | McpDocsContextForgeops;
123
+ //# sourceMappingURL=DocsContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DocsContext.d.ts","sourceRoot":"","sources":["../../src/mcp/DocsContext.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD,oDAAoD;AACpD,MAAM,MAAM,cAAc,GAAG,YAAY,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEjE;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,cAAc,CAAC;IACxB,SAAS,EAAE,OAAO,CAAC;IACnB,+EAA+E;IAC/E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iFAAiF;IACjF,UAAU,EAAE,MAAM,CAAC;IACnB,mEAAmE;IACnE,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,sDAAsD;AACtD,MAAM,MAAM,wBAAwB,GAAG;IACrC,OAAO,EAAE,IAAI,CAAC;IACd,UAAU,EAAE,IAAI,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,oBAAoB,GAAG,IAAI,GAAG,KAAK,GAAG,MAAM,GAAG,YAAY,GAAG,KAAK,CAAC;AAEhF;;;;;;;GAOG;AACH,eAAO,MAAM,2BAA2B,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAgC1E,CAAC;AAEJ;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,oBAAoB,CAE1E;AAED,wGAAwG;AACxG,MAAM,MAAM,sBAAsB,GAAG;IACnC,cAAc,EAAE,UAAU,CAAC;IAC3B,EAAE,EAAE,cAAc,GAAG,wBAAwB,CAAC;IAC9C,GAAG,EAAE,cAAc,GAAG,wBAAwB,CAAC;IAC/C,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;IACpD,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AA6BF,iCAAiC;AACjC,wBAAgB,kBAAkB,CAChC,YAAY,EAAE,MAAM,GAAG,SAAS,GAC/B,MAAM,GAAG,SAAS,CAEpB;AAED,iCAAiC;AACjC,wBAAgB,mBAAmB,CACjC,aAAa,EAAE,MAAM,GAAG,SAAS,GAChC,MAAM,GAAG,SAAS,CAEpB;AA2CD;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAChC,cAAc,EAAE,iBAAiB,GAAG,SAAS,EAC7C,YAAY,CAAC,EAAE,MAAM,EACrB,aAAa,CAAC,EAAE,MAAM,GACrB,cAAc,GAAG,wBAAwB,GAAG,sBAAsB,CAyCpE"}
@@ -0,0 +1,94 @@
1
+ /**
2
+ * Composes MCP capability inventory, policy filtering, manifest generation, and
3
+ * runtime execution into one launch-ready service object.
4
+ *
5
+ * @remarks
6
+ * This module is intentionally transport-agnostic. It prepares all data and
7
+ * execution hooks required by both stdio and HTTP MCP transports, while leaving
8
+ * actual transport wiring to higher layers.
9
+ */
10
+ import { Frodo } from '../lib/FrodoLib';
11
+ import { McpCapabilityDescriptor, McpCapabilityInventoryOptions, McpCapabilityPolicy, McpCapabilityPolicyPresetName } from './CapabilityTypes';
12
+ import { McpProfileName } from './ProfileRegistry';
13
+ import { McpDiscoveryContext, McpToolManifest } from './ToolManifest';
14
+ import { McpToolExecutionRequest, McpToolExecutionResult, McpToolRuntime, McpToolRuntimeOptions } from './ToolRuntime';
15
+ /**
16
+ * Lightweight tool metadata surface suitable for MCP tool registration calls.
17
+ */
18
+ export type McpServiceToolDefinition = {
19
+ /** Stable tool name exposed to MCP clients. */
20
+ name: string;
21
+ /** Human-readable tool description. */
22
+ description: string;
23
+ /** Optional MCP annotation hints for tool selection behavior. */
24
+ annotations?: {
25
+ readOnlyHint?: boolean;
26
+ destructiveHint?: boolean;
27
+ idempotentHint?: boolean;
28
+ openWorldHint?: boolean;
29
+ };
30
+ };
31
+ /**
32
+ * Options for constructing an MCP service instance.
33
+ */
34
+ export type McpServiceOptions = {
35
+ /**
36
+ * Frodo instance to inspect and use as runtime factory root.
37
+ * Defaults to the library singleton.
38
+ */
39
+ frodoInstance?: Frodo;
40
+ /** Optional profile name to constrain the active capability universe. */
41
+ profileName?: McpProfileName;
42
+ /** Optional inventory-scoping controls (domains, utils visibility). */
43
+ inventoryOptions?: McpCapabilityInventoryOptions;
44
+ /** Built-in policy preset to start from. Defaults to `standard`. */
45
+ policyPreset?: McpCapabilityPolicyPresetName;
46
+ /** Optional override fields merged on top of the selected preset. */
47
+ policyOverride?: Partial<McpCapabilityPolicy>;
48
+ /** Optional runtime customization hooks. */
49
+ runtimeOptions?: Omit<McpToolRuntimeOptions, 'frodoRoot' | 'managedObjectTypes' | 'managedObjectHydrationStatus' | 'configEntityIds' | 'configEntityHydrationStatus'>;
50
+ /** Service-local tenant metadata used only for discovery and search. */
51
+ discoveryContext?: McpDiscoveryContext;
52
+ };
53
+ /**
54
+ * Fully composed MCP service object.
55
+ */
56
+ export type McpService = {
57
+ /** Effective capability policy after preset + overrides are merged. */
58
+ policy: McpCapabilityPolicy;
59
+ /** Policy-filtered capabilities backing the current service. */
60
+ capabilities: McpCapabilityDescriptor[];
61
+ /** Reduced manifest consumed by transport registration code. */
62
+ manifest: McpToolManifest;
63
+ /** Runtime executor for tool calls. */
64
+ runtime: McpToolRuntime;
65
+ /**
66
+ * Returns tool definition metadata for transport registration.
67
+ *
68
+ * @returns Flattened canonical tool list plus discovery tool.
69
+ */
70
+ listTools(): McpServiceToolDefinition[];
71
+ /**
72
+ * Executes one tool request.
73
+ *
74
+ * @param request Tool execution request envelope.
75
+ * @returns Tool execution result envelope.
76
+ */
77
+ executeTool(request: McpToolExecutionRequest): Promise<McpToolExecutionResult>;
78
+ };
79
+ /**
80
+ * Merges a built-in policy preset with caller-provided overrides.
81
+ *
82
+ * @param presetName Built-in preset key.
83
+ * @param override Optional override object.
84
+ * @returns Effective policy object.
85
+ */
86
+ export declare function composeCapabilityPolicy(presetName: McpCapabilityPolicyPresetName, override?: Partial<McpCapabilityPolicy>): McpCapabilityPolicy;
87
+ /**
88
+ * Builds an MCP service from Frodo capabilities and policy configuration.
89
+ *
90
+ * @param options Service construction options.
91
+ * @returns Composed service object with manifest and runtime hooks.
92
+ */
93
+ export declare function createMcpService(options?: McpServiceOptions): McpService;
94
+ //# sourceMappingURL=McpService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"McpService.d.ts","sourceRoot":"","sources":["../../src/mcp/McpService.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,KAAK,EAAS,MAAM,iBAAiB,CAAC;AAG/C,OAAO,EACL,uBAAuB,EACvB,6BAA6B,EAC7B,mBAAmB,EACnB,6BAA6B,EAC9B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,cAAc,EAA8B,MAAM,mBAAmB,CAAC;AAC/E,OAAO,EAEL,mBAAmB,EACnB,eAAe,EAChB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAEL,uBAAuB,EACvB,sBAAsB,EACtB,cAAc,EACd,qBAAqB,EACtB,MAAM,eAAe,CAAC;AAEvB;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG;IACrC,+CAA+C;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,WAAW,CAAC,EAAE;QACZ,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;QACzB,aAAa,CAAC,EAAE,OAAO,CAAC;KACzB,CAAC;CACH,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;;OAGG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC;IACtB,yEAAyE;IACzE,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,uEAAuE;IACvE,gBAAgB,CAAC,EAAE,6BAA6B,CAAC;IACjD,oEAAoE;IACpE,YAAY,CAAC,EAAE,6BAA6B,CAAC;IAC7C,qEAAqE;IACrE,cAAc,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC9C,4CAA4C;IAC5C,cAAc,CAAC,EAAE,IAAI,CACnB,qBAAqB,EACnB,WAAW,GACX,oBAAoB,GACpB,8BAA8B,GAC9B,iBAAiB,GACjB,6BAA6B,CAChC,CAAC;IACF,wEAAwE;IACxE,gBAAgB,CAAC,EAAE,mBAAmB,CAAC;CACxC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,uEAAuE;IACvE,MAAM,EAAE,mBAAmB,CAAC;IAC5B,gEAAgE;IAChE,YAAY,EAAE,uBAAuB,EAAE,CAAC;IACxC,gEAAgE;IAChE,QAAQ,EAAE,eAAe,CAAC;IAC1B,uCAAuC;IACvC,OAAO,EAAE,cAAc,CAAC;IACxB;;;;OAIG;IACH,SAAS,IAAI,wBAAwB,EAAE,CAAC;IACxC;;;;;OAKG;IACH,WAAW,CACT,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,sBAAsB,CAAC,CAAC;CACpC,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,6BAA6B,EACzC,QAAQ,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,GACtC,mBAAmB,CAOrB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,iBAAsB,GAAG,UAAU,CA4E5E"}