@breadstone/archipel-mcp 0.0.14 → 0.0.16

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 (652) hide show
  1. package/data/guides/ai-text-generation.md +385 -0
  2. package/data/guides/analytics-and-error-tracking.md +189 -0
  3. package/data/guides/authentication-and-authorization.md +657 -0
  4. package/data/guides/blob-storage.md +268 -0
  5. package/data/guides/caching.md +255 -0
  6. package/data/guides/configuration.md +242 -0
  7. package/data/guides/cryptography-and-otp.md +240 -0
  8. package/data/guides/database-setup.md +546 -0
  9. package/data/guides/document-generation.md +174 -0
  10. package/data/guides/email-delivery.md +233 -0
  11. package/data/guides/esigning-integration.md +247 -0
  12. package/data/guides/getting-started.md +354 -0
  13. package/data/guides/implementing-ports.md +317 -0
  14. package/data/guides/index.md +63 -0
  15. package/data/guides/mcp-server.md +222 -0
  16. package/data/guides/openapi-and-feature-discovery.md +266 -0
  17. package/data/guides/payments-and-feature-gating.md +260 -0
  18. package/data/guides/resource-management.md +352 -0
  19. package/data/guides/telemetry-and-observability.md +190 -0
  20. package/data/guides/testing.md +319 -0
  21. package/data/guides/tsdoc-guidelines.md +45 -0
  22. package/data/packages/index.md +8 -0
  23. package/data/packages/platform-analytics/api/Class.AnalyticsClientPort.md +141 -0
  24. package/data/packages/platform-analytics/api/Class.AnalyticsModule.md +47 -0
  25. package/data/packages/platform-analytics/api/Class.AppInsightsAnalyticsClient.md +169 -0
  26. package/data/packages/platform-analytics/api/Class.DatadogAnalyticsClient.md +169 -0
  27. package/data/packages/platform-analytics/api/Class.NoopAnalyticsClient.md +161 -0
  28. package/data/packages/platform-analytics/api/Class.SentryAnalyticsClient.md +169 -0
  29. package/data/packages/platform-analytics/api/Interface.IAnalyticsBreadcrumb.md +58 -0
  30. package/data/packages/platform-analytics/api/Interface.IAnalyticsModuleOptions.md +47 -0
  31. package/data/packages/platform-analytics/api/Interface.IAnalyticsUser.md +58 -0
  32. package/data/packages/platform-analytics/api/TypeAlias.AnalyticsLevel.md +14 -0
  33. package/data/packages/platform-analytics/api/Variable.APPINSIGHTS_CONFIG_ENTRIES.md +14 -0
  34. package/data/packages/platform-analytics/api/Variable.APPLICATIONINSIGHTS_CONNECTION_STRING.md +14 -0
  35. package/data/packages/platform-analytics/api/Variable.DATADOG_CONFIG_ENTRIES.md +14 -0
  36. package/data/packages/platform-analytics/api/Variable.DD_ENV.md +14 -0
  37. package/data/packages/platform-analytics/api/Variable.DD_SERVICE.md +14 -0
  38. package/data/packages/platform-analytics/api/Variable.SENTRY_CONFIG_ENTRIES.md +14 -0
  39. package/data/packages/platform-analytics/api/Variable.SENTRY_DSN.md +14 -0
  40. package/data/packages/platform-analytics/api/Variable.SENTRY_ENVIRONMENT.md +14 -0
  41. package/data/packages/platform-analytics/api/index.md +44 -0
  42. package/data/packages/platform-analytics/index.md +170 -0
  43. package/data/packages/platform-authentication/api/Class.AnonymousAuthGuard.md +40 -0
  44. package/data/packages/platform-authentication/api/Class.AppleConnector.md +86 -0
  45. package/data/packages/platform-authentication/api/Class.AuthModule.md +76 -0
  46. package/data/packages/platform-authentication/api/Class.AuthSubjectPort.md +95 -0
  47. package/data/packages/platform-authentication/api/Class.AuthTokenService.md +59 -0
  48. package/data/packages/platform-authentication/api/Class.ChallengeService.md +135 -0
  49. package/data/packages/platform-authentication/api/Class.ChallengeStorePort.md +95 -0
  50. package/data/packages/platform-authentication/api/Class.GithubAuthGuard.md +40 -0
  51. package/data/packages/platform-authentication/api/Class.GithubConnector.md +78 -0
  52. package/data/packages/platform-authentication/api/Class.GoogleConnector.md +84 -0
  53. package/data/packages/platform-authentication/api/Class.JwtAuthGuard.md +40 -0
  54. package/data/packages/platform-authentication/api/Class.JwtPayloadBase.md +136 -0
  55. package/data/packages/platform-authentication/api/Class.LastActiveMiddleware.md +71 -0
  56. package/data/packages/platform-authentication/api/Class.LocalAuthGuard.md +40 -0
  57. package/data/packages/platform-authentication/api/Class.MfaService.md +252 -0
  58. package/data/packages/platform-authentication/api/Class.MfaSubjectPort.md +70 -0
  59. package/data/packages/platform-authentication/api/Class.MicrosoftConnector.md +84 -0
  60. package/data/packages/platform-authentication/api/Class.RolesGuard.md +60 -0
  61. package/data/packages/platform-authentication/api/Class.SessionMappingProfile.md +60 -0
  62. package/data/packages/platform-authentication/api/Class.SessionPersistencePort.md +165 -0
  63. package/data/packages/platform-authentication/api/Class.SessionResponse.md +152 -0
  64. package/data/packages/platform-authentication/api/Class.SessionService.md +162 -0
  65. package/data/packages/platform-authentication/api/Class.SocialAuthGuard.md +61 -0
  66. package/data/packages/platform-authentication/api/Class.SocialAuthPort.md +48 -0
  67. package/data/packages/platform-authentication/api/Class.TokenEnricherPort.md +47 -0
  68. package/data/packages/platform-authentication/api/Class.TotpMfaChannel.md +144 -0
  69. package/data/packages/platform-authentication/api/Class.VerificationService.md +154 -0
  70. package/data/packages/platform-authentication/api/Class.VerificationSubjectPort.md +116 -0
  71. package/data/packages/platform-authentication/api/Function.Token.md +18 -0
  72. package/data/packages/platform-authentication/api/Function.UseRoles.md +24 -0
  73. package/data/packages/platform-authentication/api/Function.socialAuthGuardFactory.md +22 -0
  74. package/data/packages/platform-authentication/api/Interface.IAuthModuleOptions.md +157 -0
  75. package/data/packages/platform-authentication/api/Interface.IAuthSubject.md +107 -0
  76. package/data/packages/platform-authentication/api/Interface.IMfaChallengePayload.md +82 -0
  77. package/data/packages/platform-authentication/api/Interface.IMfaChallengeState.md +118 -0
  78. package/data/packages/platform-authentication/api/Interface.IMfaConfirmation.md +22 -0
  79. package/data/packages/platform-authentication/api/Interface.IMfaSetup.md +58 -0
  80. package/data/packages/platform-authentication/api/Interface.IMfaSubject.md +131 -0
  81. package/data/packages/platform-authentication/api/Interface.IMfaSubjectUpdate.md +91 -0
  82. package/data/packages/platform-authentication/api/Interface.ISessionRecord.md +160 -0
  83. package/data/packages/platform-authentication/api/Interface.ISignInResult.md +82 -0
  84. package/data/packages/platform-authentication/api/Interface.ISocialProfile.md +58 -0
  85. package/data/packages/platform-authentication/api/Interface.IStoreSessionArgs.md +70 -0
  86. package/data/packages/platform-authentication/api/Interface.IVerifiableSubject.md +71 -0
  87. package/data/packages/platform-authentication/api/Variable.APPLE_AUTH_CONFIG_ENTRIES.md +14 -0
  88. package/data/packages/platform-authentication/api/Variable.AUTH_APPLE_CALLBACK_URL.md +14 -0
  89. package/data/packages/platform-authentication/api/Variable.AUTH_APPLE_CLIENT_ID.md +14 -0
  90. package/data/packages/platform-authentication/api/Variable.AUTH_APPLE_KEY_ID.md +14 -0
  91. package/data/packages/platform-authentication/api/Variable.AUTH_APPLE_PRIVATE_KEY.md +14 -0
  92. package/data/packages/platform-authentication/api/Variable.AUTH_APPLE_SCOPE.md +14 -0
  93. package/data/packages/platform-authentication/api/Variable.AUTH_APPLE_STATE.md +16 -0
  94. package/data/packages/platform-authentication/api/Variable.AUTH_APPLE_TEAM_ID.md +14 -0
  95. package/data/packages/platform-authentication/api/Variable.AUTH_GITHUB_CALLBACK_URL.md +14 -0
  96. package/data/packages/platform-authentication/api/Variable.AUTH_GITHUB_CLIENT_ID.md +14 -0
  97. package/data/packages/platform-authentication/api/Variable.AUTH_GITHUB_CLIENT_SECRET.md +14 -0
  98. package/data/packages/platform-authentication/api/Variable.AUTH_GITHUB_SCOPE.md +14 -0
  99. package/data/packages/platform-authentication/api/Variable.AUTH_GITHUB_STATE.md +16 -0
  100. package/data/packages/platform-authentication/api/Variable.AUTH_GOOGLE_CALLBACK_URL.md +14 -0
  101. package/data/packages/platform-authentication/api/Variable.AUTH_GOOGLE_CLIENT_ID.md +14 -0
  102. package/data/packages/platform-authentication/api/Variable.AUTH_GOOGLE_CLIENT_SECRET.md +14 -0
  103. package/data/packages/platform-authentication/api/Variable.AUTH_GOOGLE_SCOPE.md +14 -0
  104. package/data/packages/platform-authentication/api/Variable.AUTH_GOOGLE_STATE.md +16 -0
  105. package/data/packages/platform-authentication/api/Variable.AUTH_JWT_EXPIRES_IN.md +14 -0
  106. package/data/packages/platform-authentication/api/Variable.AUTH_JWT_SECRET.md +14 -0
  107. package/data/packages/platform-authentication/api/Variable.AUTH_MFA_CHALLENGE_EXPIRES_IN.md +14 -0
  108. package/data/packages/platform-authentication/api/Variable.AUTH_MFA_EMAIL_CODE_TTL.md +14 -0
  109. package/data/packages/platform-authentication/api/Variable.AUTH_MFA_EMAIL_MIN_RESEND.md +14 -0
  110. package/data/packages/platform-authentication/api/Variable.AUTH_MFA_ENCRYPTION_KEY.md +14 -0
  111. package/data/packages/platform-authentication/api/Variable.AUTH_MFA_ISSUER.md +14 -0
  112. package/data/packages/platform-authentication/api/Variable.AUTH_MFA_MAX_ATTEMPTS.md +14 -0
  113. package/data/packages/platform-authentication/api/Variable.AUTH_MFA_PUSH_CODE_TTL.md +14 -0
  114. package/data/packages/platform-authentication/api/Variable.AUTH_MFA_PUSH_MIN_RESEND.md +14 -0
  115. package/data/packages/platform-authentication/api/Variable.AUTH_MFA_SMS_CODE_TTL.md +14 -0
  116. package/data/packages/platform-authentication/api/Variable.AUTH_MFA_SMS_MIN_RESEND.md +14 -0
  117. package/data/packages/platform-authentication/api/Variable.AUTH_MICROSOFT_CALLBACK_URL.md +14 -0
  118. package/data/packages/platform-authentication/api/Variable.AUTH_MICROSOFT_CLIENT_ID.md +14 -0
  119. package/data/packages/platform-authentication/api/Variable.AUTH_MICROSOFT_CLIENT_SECRET.md +14 -0
  120. package/data/packages/platform-authentication/api/Variable.AUTH_MICROSOFT_SCOPE.md +14 -0
  121. package/data/packages/platform-authentication/api/Variable.AUTH_MICROSOFT_STATE.md +16 -0
  122. package/data/packages/platform-authentication/api/Variable.AUTH_MICROSOFT_TENANT.md +14 -0
  123. package/data/packages/platform-authentication/api/Variable.AUTH_VERIFY_JWT_EXPIRES_IN.md +14 -0
  124. package/data/packages/platform-authentication/api/Variable.GITHUB_AUTH_CONFIG_ENTRIES.md +14 -0
  125. package/data/packages/platform-authentication/api/Variable.GOOGLE_AUTH_CONFIG_ENTRIES.md +14 -0
  126. package/data/packages/platform-authentication/api/Variable.MICROSOFT_AUTH_CONFIG_ENTRIES.md +14 -0
  127. package/data/packages/platform-authentication/api/Variable.PLATFORM_AUTHENTICATION_CONFIG_ENTRIES.md +14 -0
  128. package/data/packages/platform-authentication/api/Variable.ROLES_KEY.md +14 -0
  129. package/data/packages/platform-authentication/api/Variable.SEED_ANONYMOUS_USERNAME.md +14 -0
  130. package/data/packages/platform-authentication/api/Variable.SESSION_LIST_MAPPING_KEY.md +14 -0
  131. package/data/packages/platform-authentication/api/Variable.SESSION_MAPPING_KEY.md +14 -0
  132. package/data/packages/platform-authentication/api/Variable.TOTP_MFA_PROVIDERS.md +29 -0
  133. package/data/packages/platform-authentication/api/Variable.User.md +24 -0
  134. package/data/packages/platform-authentication/api/index.md +117 -0
  135. package/data/packages/platform-authentication/index.md +691 -0
  136. package/data/packages/platform-blob-storage/api/Class.AwsS3BlobProvider.md +196 -0
  137. package/data/packages/platform-blob-storage/api/Class.AzureBlobProvider.md +196 -0
  138. package/data/packages/platform-blob-storage/api/Class.BlobHealthIndicator.md +79 -0
  139. package/data/packages/platform-blob-storage/api/Class.BlobModule.md +49 -0
  140. package/data/packages/platform-blob-storage/api/Class.BlobObjectPersistencePort.md +75 -0
  141. package/data/packages/platform-blob-storage/api/Class.BlobService.md +248 -0
  142. package/data/packages/platform-blob-storage/api/Class.BlobVariantPersistencePort.md +51 -0
  143. package/data/packages/platform-blob-storage/api/Class.VercelBlobProvider.md +197 -0
  144. package/data/packages/platform-blob-storage/api/Interface.IAwsS3BlobProviderRegistration.md +28 -0
  145. package/data/packages/platform-blob-storage/api/Interface.IAwsS3ProviderOptions.md +68 -0
  146. package/data/packages/platform-blob-storage/api/Interface.IAzureBlobProviderOptions.md +48 -0
  147. package/data/packages/platform-blob-storage/api/Interface.IAzureBlobProviderRegistration.md +28 -0
  148. package/data/packages/platform-blob-storage/api/Interface.IBlobDeleteRequest.md +38 -0
  149. package/data/packages/platform-blob-storage/api/Interface.IBlobDownloadRequest.md +48 -0
  150. package/data/packages/platform-blob-storage/api/Interface.IBlobDownloadResult.md +64 -0
  151. package/data/packages/platform-blob-storage/api/Interface.IBlobModuleOptions.md +48 -0
  152. package/data/packages/platform-blob-storage/api/Interface.IBlobObjectMetadata.md +138 -0
  153. package/data/packages/platform-blob-storage/api/Interface.IBlobProvider.md +114 -0
  154. package/data/packages/platform-blob-storage/api/Interface.IBlobSignedUrlRequest.md +48 -0
  155. package/data/packages/platform-blob-storage/api/Interface.IBlobUploadRequest.md +98 -0
  156. package/data/packages/platform-blob-storage/api/Interface.IBlobUploadResult.md +28 -0
  157. package/data/packages/platform-blob-storage/api/Interface.ICustomBlobProviderRegistration.md +28 -0
  158. package/data/packages/platform-blob-storage/api/Interface.IVercelBlobProviderOptions.md +80 -0
  159. package/data/packages/platform-blob-storage/api/Interface.IVercelBlobProviderRegistration.md +28 -0
  160. package/data/packages/platform-blob-storage/api/TypeAlias.BlobDownloadResponseType.md +12 -0
  161. package/data/packages/platform-blob-storage/api/TypeAlias.BlobUploadBody.md +12 -0
  162. package/data/packages/platform-blob-storage/api/TypeAlias.IBlobProviderRegistration.md +16 -0
  163. package/data/packages/platform-blob-storage/api/Variable.AWS_S3_PROVIDER_OPTIONS.md +12 -0
  164. package/data/packages/platform-blob-storage/api/Variable.AZURE_BLOB_PROVIDER_OPTIONS.md +12 -0
  165. package/data/packages/platform-blob-storage/api/Variable.BLOB_PROVIDER.md +12 -0
  166. package/data/packages/platform-blob-storage/api/Variable.BlobDownloadResponseTypes.md +26 -0
  167. package/data/packages/platform-blob-storage/api/Variable.BlobProviderKinds.md +26 -0
  168. package/data/packages/platform-blob-storage/api/Variable.VERCEL_BLOB_PROVIDER_OPTIONS.md +12 -0
  169. package/data/packages/platform-blob-storage/api/index.md +59 -0
  170. package/data/packages/platform-blob-storage/index.md +353 -0
  171. package/data/packages/platform-caching/api/Class.MemoryLayeredCache.md +258 -0
  172. package/data/packages/platform-caching/api/Class.NoopCacheMetricsRecorder.md +157 -0
  173. package/data/packages/platform-caching/api/Class.RedisLayeredCache.md +295 -0
  174. package/data/packages/platform-caching/api/Interface.ICacheMetricsRecorder.md +121 -0
  175. package/data/packages/platform-caching/api/Interface.ICacheStats.md +70 -0
  176. package/data/packages/platform-caching/api/Interface.ILayeredCache.md +198 -0
  177. package/data/packages/platform-caching/api/Interface.ILayeredCacheOptions.md +75 -0
  178. package/data/packages/platform-caching/api/Interface.IRedisLayeredCacheOptions.md +121 -0
  179. package/data/packages/platform-caching/api/index.md +24 -0
  180. package/data/packages/platform-caching/index.md +116 -0
  181. package/data/packages/platform-configuration/api/Class.ConfigKeyNotFoundError.md +89 -0
  182. package/data/packages/platform-configuration/api/Class.ConfigModule.md +74 -0
  183. package/data/packages/platform-configuration/api/Class.ConfigRegistry.md +115 -0
  184. package/data/packages/platform-configuration/api/Class.ConfigService.md +137 -0
  185. package/data/packages/platform-configuration/api/Class.ConfigStrategyBase.md +125 -0
  186. package/data/packages/platform-configuration/api/Class.EnvironmentConfigStrategy.md +141 -0
  187. package/data/packages/platform-configuration/api/Class.FileConfigStrategy.md +147 -0
  188. package/data/packages/platform-configuration/api/Function.createConfigKey.md +58 -0
  189. package/data/packages/platform-configuration/api/Interface.IConfigKey.md +63 -0
  190. package/data/packages/platform-configuration/api/Interface.IConfigModuleOptions.md +40 -0
  191. package/data/packages/platform-configuration/api/Interface.IConfigRegistryEntry.md +79 -0
  192. package/data/packages/platform-configuration/api/index.md +32 -0
  193. package/data/packages/platform-configuration/index.md +224 -0
  194. package/data/packages/platform-core/api/Class.AppHealthIndicator.md +50 -0
  195. package/data/packages/platform-core/api/Class.BlobResourceStrategy.md +195 -0
  196. package/data/packages/platform-core/api/Class.BooleanUtils.md +82 -0
  197. package/data/packages/platform-core/api/Class.CUIDGenerator.md +120 -0
  198. package/data/packages/platform-core/api/Class.CasingInterceptor.md +93 -0
  199. package/data/packages/platform-core/api/Class.CatchUtils.md +93 -0
  200. package/data/packages/platform-core/api/Class.ContentTemplateEngine.md +63 -0
  201. package/data/packages/platform-core/api/Class.DateTimeUtils.md +101 -0
  202. package/data/packages/platform-core/api/Class.DeviceParserService.md +52 -0
  203. package/data/packages/platform-core/api/Class.EmbeddedResourceStrategy.md +215 -0
  204. package/data/packages/platform-core/api/Class.ErrorTemplateService.md +109 -0
  205. package/data/packages/platform-core/api/Class.EventHub.md +163 -0
  206. package/data/packages/platform-core/api/Class.EventModule.md +22 -0
  207. package/data/packages/platform-core/api/Class.FileResourceStrategy.md +192 -0
  208. package/data/packages/platform-core/api/Class.GUIDGenerator.md +85 -0
  209. package/data/packages/platform-core/api/Class.GlobalExceptionFilter.md +66 -0
  210. package/data/packages/platform-core/api/Class.HealthModule.md +42 -0
  211. package/data/packages/platform-core/api/Class.HealthOrchestrator.md +64 -0
  212. package/data/packages/platform-core/api/Class.HostModule.md +31 -0
  213. package/data/packages/platform-core/api/Class.HostService.md +149 -0
  214. package/data/packages/platform-core/api/Class.HttpLoggerMiddleware.md +59 -0
  215. package/data/packages/platform-core/api/Class.IdGeneratorBase.md +87 -0
  216. package/data/packages/platform-core/api/Class.IdentifierModule.md +40 -0
  217. package/data/packages/platform-core/api/Class.LimitRequestSizeMiddleware.md +59 -0
  218. package/data/packages/platform-core/api/Class.LocalizedTextRequest.md +42 -0
  219. package/data/packages/platform-core/api/Class.LocalizedTextResponse.md +42 -0
  220. package/data/packages/platform-core/api/Class.MappingBuilder.md +110 -0
  221. package/data/packages/platform-core/api/Class.MappingModule.md +46 -0
  222. package/data/packages/platform-core/api/Class.MappingNotRegisteredError.md +56 -0
  223. package/data/packages/platform-core/api/Class.MappingProfileBase.md +52 -0
  224. package/data/packages/platform-core/api/Class.MappingService.md +284 -0
  225. package/data/packages/platform-core/api/Class.NormalizedUtils.md +148 -0
  226. package/data/packages/platform-core/api/Class.PageableRequest.md +42 -0
  227. package/data/packages/platform-core/api/Class.PageableResponse.md +62 -0
  228. package/data/packages/platform-core/api/Class.ProblemDetailException.md +61 -0
  229. package/data/packages/platform-core/api/Class.ProblemDetailExceptionFilter.md +94 -0
  230. package/data/packages/platform-core/api/Class.QuantityResponse.md +42 -0
  231. package/data/packages/platform-core/api/Class.ResourceManager.md +565 -0
  232. package/data/packages/platform-core/api/Class.ResourceModule.md +46 -0
  233. package/data/packages/platform-core/api/Class.ResponseReturn.md +502 -0
  234. package/data/packages/platform-core/api/Class.SseHub.md +183 -0
  235. package/data/packages/platform-core/api/Class.SseModule.md +42 -0
  236. package/data/packages/platform-core/api/Class.TimeStampResponse.md +42 -0
  237. package/data/packages/platform-core/api/Class.TypeMappingNotRegisteredError.md +57 -0
  238. package/data/packages/platform-core/api/Class.UUIDGenerator.md +85 -0
  239. package/data/packages/platform-core/api/Class.UserAvatarGeneratorService.md +52 -0
  240. package/data/packages/platform-core/api/Class.UserNameGeneratorService.md +64 -0
  241. package/data/packages/platform-core/api/Function.Public.md +18 -0
  242. package/data/packages/platform-core/api/Function.createEventKey.md +33 -0
  243. package/data/packages/platform-core/api/Function.createMappingKey.md +39 -0
  244. package/data/packages/platform-core/api/Function.env.md +28 -0
  245. package/data/packages/platform-core/api/Function.getMimeTypeByFileNameOrExtension.md +26 -0
  246. package/data/packages/platform-core/api/ISseEventData.Function.isActionId.md +27 -0
  247. package/data/packages/platform-core/api/Interface.IBlobResourceStrategyConfig.md +28 -0
  248. package/data/packages/platform-core/api/Interface.IBlobServiceAdapter.md +40 -0
  249. package/data/packages/platform-core/api/Interface.IDeviceInfo.md +80 -0
  250. package/data/packages/platform-core/api/Interface.IErrorPageParams.md +153 -0
  251. package/data/packages/platform-core/api/Interface.IEventKey.md +57 -0
  252. package/data/packages/platform-core/api/Interface.IEventMap.md +16 -0
  253. package/data/packages/platform-core/api/Interface.IFileResourceStrategyConfig.md +72 -0
  254. package/data/packages/platform-core/api/Interface.IHealthCheckResult.md +46 -0
  255. package/data/packages/platform-core/api/Interface.IHealthIndicator.md +41 -0
  256. package/data/packages/platform-core/api/Interface.IHostContentParams.md +232 -0
  257. package/data/packages/platform-core/api/Interface.IIdGenerator.md +57 -0
  258. package/data/packages/platform-core/api/Interface.IMappingBuilder.md +76 -0
  259. package/data/packages/platform-core/api/Interface.IMappingKey.md +58 -0
  260. package/data/packages/platform-core/api/Interface.IMappingProfile.md +32 -0
  261. package/data/packages/platform-core/api/Interface.IResourceManagerConfig.md +89 -0
  262. package/data/packages/platform-core/api/Interface.IResourceMetadata.md +94 -0
  263. package/data/packages/platform-core/api/Interface.IResourceResult.md +34 -0
  264. package/data/packages/platform-core/api/Interface.IResourceStrategy.md +134 -0
  265. package/data/packages/platform-core/api/Interface.ISseEventData.md +36 -0
  266. package/data/packages/platform-core/api/Interface.ISseHub.md +91 -0
  267. package/data/packages/platform-core/api/Namespace.ISseEventData.md +14 -0
  268. package/data/packages/platform-core/api/TypeAlias.CamelCase.md +18 -0
  269. package/data/packages/platform-core/api/TypeAlias.ProblemDetail.md +28 -0
  270. package/data/packages/platform-core/api/TypeAlias.ProblemDetailTypeUrlResolver.md +25 -0
  271. package/data/packages/platform-core/api/TypeAlias.SetOptional.md +21 -0
  272. package/data/packages/platform-core/api/TypeAlias.StringValue.md +15 -0
  273. package/data/packages/platform-core/api/Variable.APP_NAME.md +14 -0
  274. package/data/packages/platform-core/api/Variable.APP_PORT.md +14 -0
  275. package/data/packages/platform-core/api/Variable.APP_URL.md +14 -0
  276. package/data/packages/platform-core/api/Variable.APP_VERSION.md +14 -0
  277. package/data/packages/platform-core/api/Variable.GIT_COMMIT.md +14 -0
  278. package/data/packages/platform-core/api/Variable.HEALTH_INDICATORS_TOKEN.md +14 -0
  279. package/data/packages/platform-core/api/Variable.ID_GENERATOR_TOKEN.md +14 -0
  280. package/data/packages/platform-core/api/Variable.IS_PUBLIC_KEY.md +12 -0
  281. package/data/packages/platform-core/api/Variable.IpAddress.md +31 -0
  282. package/data/packages/platform-core/api/Variable.Lang.md +29 -0
  283. package/data/packages/platform-core/api/Variable.NODE_ENV.md +14 -0
  284. package/data/packages/platform-core/api/Variable.PLATFORM_CORE_CONFIG_ENTRIES.md +14 -0
  285. package/data/packages/platform-core/api/Variable.UserAgent.md +24 -0
  286. package/data/packages/platform-core/api/index.md +127 -0
  287. package/data/packages/platform-core/index.md +487 -0
  288. package/data/packages/platform-cryptography/api/Class.BcryptService.md +95 -0
  289. package/data/packages/platform-cryptography/api/Class.CryptoService.md +51 -0
  290. package/data/packages/platform-cryptography/api/Class.CryptographyError.md +56 -0
  291. package/data/packages/platform-cryptography/api/Class.InvalidOtpError.md +52 -0
  292. package/data/packages/platform-cryptography/api/Class.OtpService.md +155 -0
  293. package/data/packages/platform-cryptography/api/Class.WeakPasswordError.md +52 -0
  294. package/data/packages/platform-cryptography/api/Interface.IBcryptOptions.md +45 -0
  295. package/data/packages/platform-cryptography/api/Interface.IOtpOptions.md +31 -0
  296. package/data/packages/platform-cryptography/api/Interface.IOtpService.md +113 -0
  297. package/data/packages/platform-cryptography/api/Interface.IOtpUriOptions.md +46 -0
  298. package/data/packages/platform-cryptography/api/Variable.BCRYPT_OPTIONS.md +14 -0
  299. package/data/packages/platform-cryptography/api/Variable.MAX_BCRYPT_PASSWORD_BYTES.md +14 -0
  300. package/data/packages/platform-cryptography/api/Variable.MIN_BCRYPT_ROUNDS.md +14 -0
  301. package/data/packages/platform-cryptography/api/Variable.OTP_OPTIONS.md +14 -0
  302. package/data/packages/platform-cryptography/api/Variable.OTP_SERVICE_TOKEN.md +14 -0
  303. package/data/packages/platform-cryptography/api/Variable.TOTP_EPOCH_TOLERANCE.md +23 -0
  304. package/data/packages/platform-cryptography/api/index.md +37 -0
  305. package/data/packages/platform-cryptography/index.md +132 -0
  306. package/data/packages/platform-database/api/Class.DatabaseHealthIndicator.md +75 -0
  307. package/data/packages/platform-database/api/Class.DatabaseModule.md +68 -0
  308. package/data/packages/platform-database/api/Class.DatabaseService.md +143 -0
  309. package/data/packages/platform-database/api/Class.PrismaService.md +98 -0
  310. package/data/packages/platform-database/api/Class.RepositoryBase.md +590 -0
  311. package/data/packages/platform-database/api/Class.RepositoryExceptionFilter.md +55 -0
  312. package/data/packages/platform-database/api/Function.cursorPaginator.md +26 -0
  313. package/data/packages/platform-database/api/Function.pageable.md +35 -0
  314. package/data/packages/platform-database/api/Function.paginator.md +22 -0
  315. package/data/packages/platform-database/api/Function.query.md +34 -0
  316. package/data/packages/platform-database/api/Function.skip.md +33 -0
  317. package/data/packages/platform-database/api/Function.transactionalQuery.md +31 -0
  318. package/data/packages/platform-database/api/Interface.ICursorPaginateOptions.md +40 -0
  319. package/data/packages/platform-database/api/Interface.ICursorPaginatedResult.md +65 -0
  320. package/data/packages/platform-database/api/Interface.IDatabaseModuleConfig.md +35 -0
  321. package/data/packages/platform-database/api/Interface.IPaginateOptions.md +28 -0
  322. package/data/packages/platform-database/api/Interface.IPaginatedResult.md +77 -0
  323. package/data/packages/platform-database/api/Interface.IPrismaServiceOptions.md +23 -0
  324. package/data/packages/platform-database/api/Interface.IRepositoryQuery.md +51 -0
  325. package/data/packages/platform-database/api/Interface.ITransactionalRepositoryQuery.md +50 -0
  326. package/data/packages/platform-database/api/TypeAlias.CursorPaginateFunction.md +33 -0
  327. package/data/packages/platform-database/api/TypeAlias.DelegateArgs.md +18 -0
  328. package/data/packages/platform-database/api/TypeAlias.DelegateReturnTypes.md +18 -0
  329. package/data/packages/platform-database/api/TypeAlias.PaginateFunction.md +31 -0
  330. package/data/packages/platform-database/api/TypeAlias.QueryResultType.md +27 -0
  331. package/data/packages/platform-database/api/TypeAlias.TransactionalQueryResultType.md +26 -0
  332. package/data/packages/platform-database/api/Variable.DATABASE_MODULE_CONFIG.md +14 -0
  333. package/data/packages/platform-database/api/Variable.DB_AUTO_CONNECTION.md +14 -0
  334. package/data/packages/platform-database/api/Variable.PLATFORM_DATABASE_CONFIG_ENTRIES.md +14 -0
  335. package/data/packages/platform-database/api/index.md +60 -0
  336. package/data/packages/platform-database/index.md +323 -0
  337. package/data/packages/platform-documents/api/Class.BaseDocumentRenderer.md +277 -0
  338. package/data/packages/platform-documents/api/Class.DocumentEngine.md +80 -0
  339. package/data/packages/platform-documents/api/Class.DocumentModule.md +47 -0
  340. package/data/packages/platform-documents/api/Class.SharpImageProcessor.md +131 -0
  341. package/data/packages/platform-documents/api/Interface.IDocumentModuleOptions.md +94 -0
  342. package/data/packages/platform-documents/api/Interface.IDocumentPlaceholderDetail.md +70 -0
  343. package/data/packages/platform-documents/api/Interface.IDocumentProbeReport.md +118 -0
  344. package/data/packages/platform-documents/api/Interface.IDocumentRenderer.md +47 -0
  345. package/data/packages/platform-documents/api/Interface.IImagePayload.md +58 -0
  346. package/data/packages/platform-documents/api/Interface.IImageProcessor.md +95 -0
  347. package/data/packages/platform-documents/api/Interface.IRenderOptions.md +64 -0
  348. package/data/packages/platform-documents/api/Interface.IRenderResult.md +58 -0
  349. package/data/packages/platform-documents/api/TypeAlias.DocumentFormat.md +14 -0
  350. package/data/packages/platform-documents/api/TypeAlias.EngineType.md +14 -0
  351. package/data/packages/platform-documents/api/TypeAlias.ImageMimeType.md +14 -0
  352. package/data/packages/platform-documents/api/TypeAlias.TemplateFormat.md +14 -0
  353. package/data/packages/platform-documents/api/TypeAlias.TemplateType.md +14 -0
  354. package/data/packages/platform-documents/api/Variable.DOCUMENT_MODULE_OPTIONS.md +14 -0
  355. package/data/packages/platform-documents/api/Variable.DOCUMENT_PARSER_TOKEN.md +14 -0
  356. package/data/packages/platform-documents/api/Variable.DOCUMENT_RENDERER_TOKEN.md +14 -0
  357. package/data/packages/platform-documents/api/Variable.IMAGE_PROCESSOR_TOKEN.md +14 -0
  358. package/data/packages/platform-documents/api/index.md +47 -0
  359. package/data/packages/platform-documents/index.md +219 -0
  360. package/data/packages/platform-esigning/api/Class.EsigningClientPort.md +188 -0
  361. package/data/packages/platform-esigning/api/Class.EsigningError.md +65 -0
  362. package/data/packages/platform-esigning/api/Class.EsigningModule.md +48 -0
  363. package/data/packages/platform-esigning/api/Class.EsigningPersistencePort.md +90 -0
  364. package/data/packages/platform-esigning/api/Class.EsigningService.md +202 -0
  365. package/data/packages/platform-esigning/api/Class.InternalEsigningProvider.md +253 -0
  366. package/data/packages/platform-esigning/api/Class.SigningProviderError.md +101 -0
  367. package/data/packages/platform-esigning/api/Class.SigningRequestNotFoundError.md +78 -0
  368. package/data/packages/platform-esigning/api/Class.WebhookVerificationError.md +60 -0
  369. package/data/packages/platform-esigning/api/Interface.ICreateSigningRequest.md +94 -0
  370. package/data/packages/platform-esigning/api/Interface.ICreateSigningRequestDocument.md +58 -0
  371. package/data/packages/platform-esigning/api/Interface.ICreateSigningRequestSigner.md +58 -0
  372. package/data/packages/platform-esigning/api/Interface.ICreateSigningSessionRequest.md +46 -0
  373. package/data/packages/platform-esigning/api/Interface.IEsigningModuleOptions.md +60 -0
  374. package/data/packages/platform-esigning/api/Interface.IEsigningWebhookEvent.md +82 -0
  375. package/data/packages/platform-esigning/api/Interface.ISignedDocument.md +82 -0
  376. package/data/packages/platform-esigning/api/Interface.ISigner.md +82 -0
  377. package/data/packages/platform-esigning/api/Interface.ISigningDocument.md +82 -0
  378. package/data/packages/platform-esigning/api/Interface.ISigningField.md +142 -0
  379. package/data/packages/platform-esigning/api/Interface.ISigningRequest.md +142 -0
  380. package/data/packages/platform-esigning/api/Interface.ISigningSession.md +70 -0
  381. package/data/packages/platform-esigning/api/TypeAlias.SignerRole.md +14 -0
  382. package/data/packages/platform-esigning/api/TypeAlias.SignerStatus.md +14 -0
  383. package/data/packages/platform-esigning/api/TypeAlias.SigningFieldType.md +14 -0
  384. package/data/packages/platform-esigning/api/TypeAlias.SigningRequestStatus.md +14 -0
  385. package/data/packages/platform-esigning/api/TypeAlias.WebhookEventType.md +14 -0
  386. package/data/packages/platform-esigning/api/Variable.ADOBE_SIGN_BASE_URL.md +14 -0
  387. package/data/packages/platform-esigning/api/Variable.ADOBE_SIGN_CLIENT_SECRET.md +14 -0
  388. package/data/packages/platform-esigning/api/Variable.ADOBE_SIGN_CONFIG_ENTRIES.md +14 -0
  389. package/data/packages/platform-esigning/api/Variable.ADOBE_SIGN_INTEGRATION_KEY.md +14 -0
  390. package/data/packages/platform-esigning/api/Variable.ADOBE_SIGN_WEBHOOK_CLIENT_ID.md +14 -0
  391. package/data/packages/platform-esigning/api/Variable.DOCUSIGN_ACCOUNT_ID.md +14 -0
  392. package/data/packages/platform-esigning/api/Variable.DOCUSIGN_BASE_URL.md +14 -0
  393. package/data/packages/platform-esigning/api/Variable.DOCUSIGN_CONFIG_ENTRIES.md +14 -0
  394. package/data/packages/platform-esigning/api/Variable.DOCUSIGN_INTEGRATION_KEY.md +14 -0
  395. package/data/packages/platform-esigning/api/Variable.DOCUSIGN_SECRET_KEY.md +14 -0
  396. package/data/packages/platform-esigning/api/Variable.DOCUSIGN_WEBHOOK_HMAC_KEY.md +14 -0
  397. package/data/packages/platform-esigning/api/Variable.DROPBOX_SIGN_API_KEY.md +14 -0
  398. package/data/packages/platform-esigning/api/Variable.DROPBOX_SIGN_CLIENT_ID.md +14 -0
  399. package/data/packages/platform-esigning/api/Variable.DROPBOX_SIGN_CONFIG_ENTRIES.md +14 -0
  400. package/data/packages/platform-esigning/api/Variable.DROPBOX_SIGN_WEBHOOK_SECRET.md +14 -0
  401. package/data/packages/platform-esigning/api/Variable.ESIGNING_API_BASE_URL.md +14 -0
  402. package/data/packages/platform-esigning/api/Variable.ESIGNING_API_KEY.md +14 -0
  403. package/data/packages/platform-esigning/api/Variable.ESIGNING_PROVIDER.md +12 -0
  404. package/data/packages/platform-esigning/api/Variable.ESIGNING_PROVIDER_OPTIONS.md +12 -0
  405. package/data/packages/platform-esigning/api/Variable.ESIGNING_WEBHOOK_SECRET.md +14 -0
  406. package/data/packages/platform-esigning/api/Variable.PLATFORM_ESIGNING_CONFIG_ENTRIES.md +14 -0
  407. package/data/packages/platform-esigning/api/Variable.SIGNNOW_API_KEY.md +14 -0
  408. package/data/packages/platform-esigning/api/Variable.SIGNNOW_BASE_URL.md +14 -0
  409. package/data/packages/platform-esigning/api/Variable.SIGNNOW_CLIENT_ID.md +14 -0
  410. package/data/packages/platform-esigning/api/Variable.SIGNNOW_CLIENT_SECRET.md +14 -0
  411. package/data/packages/platform-esigning/api/Variable.SIGNNOW_CONFIG_ENTRIES.md +14 -0
  412. package/data/packages/platform-esigning/api/Variable.SIGNNOW_WEBHOOK_SECRET.md +14 -0
  413. package/data/packages/platform-esigning/api/Variable.SignerRoles.md +30 -0
  414. package/data/packages/platform-esigning/api/Variable.SignerStatuses.md +32 -0
  415. package/data/packages/platform-esigning/api/Variable.SigningFieldTypes.md +38 -0
  416. package/data/packages/platform-esigning/api/Variable.SigningRequestStatuses.md +36 -0
  417. package/data/packages/platform-esigning/api/Variable.WebhookEventTypes.md +38 -0
  418. package/data/packages/platform-esigning/api/index.md +84 -0
  419. package/data/packages/platform-esigning/index.md +701 -0
  420. package/data/packages/platform-intelligence/api/Class.IntelligenceCapabilityRegistrarBase.md +94 -0
  421. package/data/packages/platform-intelligence/api/Class.IntelligenceCapabilityRegistry.md +106 -0
  422. package/data/packages/platform-intelligence/api/Class.IntelligenceModule.md +22 -0
  423. package/data/packages/platform-intelligence/api/Class.IntelligenceProviderError.md +79 -0
  424. package/data/packages/platform-intelligence/api/Class.IntelligenceTextGenerator.md +81 -0
  425. package/data/packages/platform-intelligence/api/Function.createProviderOptions.md +26 -0
  426. package/data/packages/platform-intelligence/api/Function.loadAnthropicLanguageModel.md +26 -0
  427. package/data/packages/platform-intelligence/api/Function.loadGoogleLanguageModel.md +26 -0
  428. package/data/packages/platform-intelligence/api/Function.loadGrokLanguageModel.md +26 -0
  429. package/data/packages/platform-intelligence/api/Function.loadOpenAILanguageModel.md +26 -0
  430. package/data/packages/platform-intelligence/api/Function.loadProviderFactory.md +31 -0
  431. package/data/packages/platform-intelligence/api/Interface.IIntelligenceArtifact.md +34 -0
  432. package/data/packages/platform-intelligence/api/Interface.IIntelligenceCapability.md +71 -0
  433. package/data/packages/platform-intelligence/api/Interface.IIntelligenceCapabilityMetadata.md +70 -0
  434. package/data/packages/platform-intelligence/api/Interface.IIntelligenceCapabilityPayload.md +46 -0
  435. package/data/packages/platform-intelligence/api/Interface.IIntelligenceCapabilityRegistry.md +78 -0
  436. package/data/packages/platform-intelligence/api/Interface.IIntelligenceCapabilityResult.md +46 -0
  437. package/data/packages/platform-intelligence/api/Interface.IIntelligenceCompletionUsage.md +46 -0
  438. package/data/packages/platform-intelligence/api/Interface.IIntelligenceContext.md +72 -0
  439. package/data/packages/platform-intelligence/api/Interface.IIntelligenceContextBuilder.md +35 -0
  440. package/data/packages/platform-intelligence/api/Interface.IIntelligenceConversationMessageSnapshot.md +70 -0
  441. package/data/packages/platform-intelligence/api/Interface.IIntelligenceConversationSnapshot.md +58 -0
  442. package/data/packages/platform-intelligence/api/Interface.IIntelligenceFollowUpQuestion.md +46 -0
  443. package/data/packages/platform-intelligence/api/Interface.IIntelligenceIntent.md +46 -0
  444. package/data/packages/platform-intelligence/api/Interface.IIntelligenceIntentEntity.md +34 -0
  445. package/data/packages/platform-intelligence/api/Interface.IIntelligenceMessageModel.md +70 -0
  446. package/data/packages/platform-intelligence/api/Interface.IIntelligenceMessagePayload.md +34 -0
  447. package/data/packages/platform-intelligence/api/Interface.IIntelligencePrompt.md +34 -0
  448. package/data/packages/platform-intelligence/api/Interface.IIntelligencePromptMessage.md +34 -0
  449. package/data/packages/platform-intelligence/api/Interface.IIntelligenceProviderConfiguration.md +94 -0
  450. package/data/packages/platform-intelligence/api/Interface.IIntelligenceResponseMessage.md +34 -0
  451. package/data/packages/platform-intelligence/api/Interface.IIntelligenceTextCompletion.md +60 -0
  452. package/data/packages/platform-intelligence/api/Interface.IIntelligenceTextGenerationOptions.md +59 -0
  453. package/data/packages/platform-intelligence/api/Interface.IIntelligenceTextGenerator.md +53 -0
  454. package/data/packages/platform-intelligence/api/TypeAlias.IntelligenceConversationMessageRole.md +14 -0
  455. package/data/packages/platform-intelligence/api/TypeAlias.IntelligenceLanguageModelLoader.md +24 -0
  456. package/data/packages/platform-intelligence/api/TypeAlias.IntelligenceProviderName.md +14 -0
  457. package/data/packages/platform-intelligence/api/Variable.ANTHROPIC_API_KEY.md +14 -0
  458. package/data/packages/platform-intelligence/api/Variable.ANTHROPIC_BASE_URL.md +14 -0
  459. package/data/packages/platform-intelligence/api/Variable.GEMINI_API_KEY.md +14 -0
  460. package/data/packages/platform-intelligence/api/Variable.GOOGLE_API_KEY.md +14 -0
  461. package/data/packages/platform-intelligence/api/Variable.GOOGLE_BASE_URL.md +14 -0
  462. package/data/packages/platform-intelligence/api/Variable.GROK_API_KEY.md +14 -0
  463. package/data/packages/platform-intelligence/api/Variable.GROK_BASE_URL.md +14 -0
  464. package/data/packages/platform-intelligence/api/Variable.INTELLIGENCE_API_KEY.md +14 -0
  465. package/data/packages/platform-intelligence/api/Variable.INTELLIGENCE_BASE_URL.md +14 -0
  466. package/data/packages/platform-intelligence/api/Variable.INTELLIGENCE_MAX_OUTPUT_TOKENS.md +14 -0
  467. package/data/packages/platform-intelligence/api/Variable.INTELLIGENCE_MODEL.md +14 -0
  468. package/data/packages/platform-intelligence/api/Variable.INTELLIGENCE_PROVIDER.md +14 -0
  469. package/data/packages/platform-intelligence/api/Variable.INTELLIGENCE_TEMPERATURE.md +14 -0
  470. package/data/packages/platform-intelligence/api/Variable.INTELLIGENCE_TOP_P.md +14 -0
  471. package/data/packages/platform-intelligence/api/Variable.IntelligenceConversationMessageRoles.md +26 -0
  472. package/data/packages/platform-intelligence/api/Variable.IntelligenceProviderNames.md +28 -0
  473. package/data/packages/platform-intelligence/api/Variable.OPENAI_API_KEY.md +14 -0
  474. package/data/packages/platform-intelligence/api/Variable.OPENAI_BASE_URL.md +14 -0
  475. package/data/packages/platform-intelligence/api/Variable.PLATFORM_INTELLIGENCE_CONFIG_ENTRIES.md +14 -0
  476. package/data/packages/platform-intelligence/api/Variable.XAI_API_KEY.md +14 -0
  477. package/data/packages/platform-intelligence/api/Variable.XAI_BASE_URL.md +14 -0
  478. package/data/packages/platform-intelligence/api/index.md +89 -0
  479. package/data/packages/platform-intelligence/index.md +155 -0
  480. package/data/packages/platform-logging/api/Class.LoggerModule.md +22 -0
  481. package/data/packages/platform-logging/api/Variable.APP_LOG_LEVEL.md +14 -0
  482. package/data/packages/platform-logging/api/Variable.PLATFORM_LOGGING_CONFIG_ENTRIES.md +14 -0
  483. package/data/packages/platform-logging/api/index.md +19 -0
  484. package/data/packages/platform-logging/index.md +92 -0
  485. package/data/packages/platform-mailing/api/Class.BlobTemplateFetchStrategy.md +60 -0
  486. package/data/packages/platform-mailing/api/Class.DeliveryStrategyBase.md +68 -0
  487. package/data/packages/platform-mailing/api/Class.FileTemplateFetchStrategy.md +58 -0
  488. package/data/packages/platform-mailing/api/Class.LogDeliveryStrategy.md +71 -0
  489. package/data/packages/platform-mailing/api/Class.MailHealthIndicator.md +78 -0
  490. package/data/packages/platform-mailing/api/Class.MailModule.md +22 -0
  491. package/data/packages/platform-mailing/api/Class.MailService.md +98 -0
  492. package/data/packages/platform-mailing/api/Class.MailTemplateEngine.md +93 -0
  493. package/data/packages/platform-mailing/api/Class.MailVerificationService.md +92 -0
  494. package/data/packages/platform-mailing/api/Class.MailgunDeliveryStrategy.md +77 -0
  495. package/data/packages/platform-mailing/api/Class.PostmarkDeliveryStrategy.md +77 -0
  496. package/data/packages/platform-mailing/api/Class.ResendDeliveryStrategy.md +77 -0
  497. package/data/packages/platform-mailing/api/Class.SendGridDeliveryStrategy.md +77 -0
  498. package/data/packages/platform-mailing/api/Class.SmtpDeliveryStrategy.md +77 -0
  499. package/data/packages/platform-mailing/api/Class.TemplateFetchStrategyBase.md +53 -0
  500. package/data/packages/platform-mailing/api/Interface.IMailAttachment.md +46 -0
  501. package/data/packages/platform-mailing/api/Interface.IMailEvents.md +66 -0
  502. package/data/packages/platform-mailing/api/Interface.IMailTemplateVariants.md +30 -0
  503. package/data/packages/platform-mailing/api/TypeAlias.MailTemplateFormat.md +14 -0
  504. package/data/packages/platform-mailing/api/Variable.ALLOWED_ATTACHMENT_MIME_TYPES.md +14 -0
  505. package/data/packages/platform-mailing/api/Variable.MAILGUN_API_KEY.md +14 -0
  506. package/data/packages/platform-mailing/api/Variable.MAILGUN_CONFIG_ENTRIES.md +14 -0
  507. package/data/packages/platform-mailing/api/Variable.MAILGUN_DOMAIN.md +14 -0
  508. package/data/packages/platform-mailing/api/Variable.MAIL_DELIVERY_STRATEGY.md +14 -0
  509. package/data/packages/platform-mailing/api/Variable.MAIL_DELIVERY_STRATEGY_TOKEN.md +12 -0
  510. package/data/packages/platform-mailing/api/Variable.MAIL_HOST.md +14 -0
  511. package/data/packages/platform-mailing/api/Variable.MAIL_MAILGUN_API_KEY.md +14 -0
  512. package/data/packages/platform-mailing/api/Variable.MAIL_MAILGUN_DOMAIN.md +14 -0
  513. package/data/packages/platform-mailing/api/Variable.MAIL_PORT.md +14 -0
  514. package/data/packages/platform-mailing/api/Variable.MAIL_POSTMARK_API_KEY.md +14 -0
  515. package/data/packages/platform-mailing/api/Variable.MAIL_RESEND_API_KEY.md +14 -0
  516. package/data/packages/platform-mailing/api/Variable.MAIL_SENDER_EMAIL.md +14 -0
  517. package/data/packages/platform-mailing/api/Variable.MAIL_SENDGRID_API_KEY.md +14 -0
  518. package/data/packages/platform-mailing/api/Variable.MAIL_SMTP_HOST.md +14 -0
  519. package/data/packages/platform-mailing/api/Variable.MAIL_SMTP_PASSWORD.md +14 -0
  520. package/data/packages/platform-mailing/api/Variable.MAIL_SMTP_PORT.md +14 -0
  521. package/data/packages/platform-mailing/api/Variable.MAIL_SMTP_SECURE.md +14 -0
  522. package/data/packages/platform-mailing/api/Variable.MAIL_SMTP_USER.md +14 -0
  523. package/data/packages/platform-mailing/api/Variable.MAIL_TEMPLATE_ENGINE_FORMAT.md +14 -0
  524. package/data/packages/platform-mailing/api/Variable.MAIL_TEMPLATE_FETCH_STRATEGY_TOKEN.md +16 -0
  525. package/data/packages/platform-mailing/api/Variable.MAIL_TEMPLATE_STRATEGY.md +14 -0
  526. package/data/packages/platform-mailing/api/Variable.MAIL_USER.md +14 -0
  527. package/data/packages/platform-mailing/api/Variable.MAX_ATTACHMENT_SIZE_BYTES.md +14 -0
  528. package/data/packages/platform-mailing/api/Variable.PLATFORM_MAILING_CONFIG_ENTRIES.md +14 -0
  529. package/data/packages/platform-mailing/api/Variable.POSTMARK_API_KEY.md +14 -0
  530. package/data/packages/platform-mailing/api/Variable.POSTMARK_CONFIG_ENTRIES.md +14 -0
  531. package/data/packages/platform-mailing/api/Variable.RESEND_API_KEY.md +14 -0
  532. package/data/packages/platform-mailing/api/Variable.RESEND_CONFIG_ENTRIES.md +14 -0
  533. package/data/packages/platform-mailing/api/Variable.SENDGRID_API_KEY.md +14 -0
  534. package/data/packages/platform-mailing/api/Variable.SENDGRID_CONFIG_ENTRIES.md +14 -0
  535. package/data/packages/platform-mailing/api/Variable.SEND_MAIL_EVENT_KEY.md +14 -0
  536. package/data/packages/platform-mailing/api/index.md +77 -0
  537. package/data/packages/platform-mailing/index.md +383 -0
  538. package/data/packages/platform-mcp/api/Class.McpDiscoveryService.md +64 -0
  539. package/data/packages/platform-mcp/api/Class.McpModule.md +82 -0
  540. package/data/packages/platform-mcp/api/Class.McpRegistryService.md +146 -0
  541. package/data/packages/platform-mcp/api/Class.McpServerService.md +196 -0
  542. package/data/packages/platform-mcp/api/Function.McpPrompt.md +28 -0
  543. package/data/packages/platform-mcp/api/Function.McpResource.md +28 -0
  544. package/data/packages/platform-mcp/api/Function.McpTool.md +28 -0
  545. package/data/packages/platform-mcp/api/Interface.IMcpHandlerMetadata.md +46 -0
  546. package/data/packages/platform-mcp/api/Interface.IMcpModuleAsyncOptions.md +75 -0
  547. package/data/packages/platform-mcp/api/Interface.IMcpModuleOptions.md +125 -0
  548. package/data/packages/platform-mcp/api/Interface.IMcpModuleOptionsFactory.md +27 -0
  549. package/data/packages/platform-mcp/api/Interface.IMcpPromptMetadata.md +58 -0
  550. package/data/packages/platform-mcp/api/Interface.IMcpResourceMetadata.md +72 -0
  551. package/data/packages/platform-mcp/api/Interface.IMcpToolMetadata.md +94 -0
  552. package/data/packages/platform-mcp/api/Interface.IRegisteredPrompt.md +40 -0
  553. package/data/packages/platform-mcp/api/Interface.IRegisteredResource.md +40 -0
  554. package/data/packages/platform-mcp/api/Interface.IRegisteredTool.md +40 -0
  555. package/data/packages/platform-mcp/api/Interface.ISseTransportOptions.md +22 -0
  556. package/data/packages/platform-mcp/api/Interface.IStreamableHttpTransportOptions.md +38 -0
  557. package/data/packages/platform-mcp/api/Variable.MCP_MODULE_OPTIONS.md +14 -0
  558. package/data/packages/platform-mcp/api/index.md +46 -0
  559. package/data/packages/platform-mcp/index.md +299 -0
  560. package/data/packages/platform-openapi/api/Class.SwaggerFeatureDiscovery.md +70 -0
  561. package/data/packages/platform-openapi/api/Class.SwaggerFeatureRegistry.md +83 -0
  562. package/data/packages/platform-openapi/api/Class.SwaggerMultiDocumentService.md +77 -0
  563. package/data/packages/platform-openapi/api/Class.SwaggerTheme.md +46 -0
  564. package/data/packages/platform-openapi/api/Function.Api.md +35 -0
  565. package/data/packages/platform-openapi/api/Function.SwaggerFeature.md +42 -0
  566. package/data/packages/platform-openapi/api/Function.getRegisteredSwaggerFeatures.md +18 -0
  567. package/data/packages/platform-openapi/api/Function.getSwaggerFeatureMetadata.md +27 -0
  568. package/data/packages/platform-openapi/api/Interface.IFeatureSwaggerConfig.md +68 -0
  569. package/data/packages/platform-openapi/api/Interface.ISwaggerFeatureMetadata.md +68 -0
  570. package/data/packages/platform-openapi/api/Variable.APP_VERSION.md +14 -0
  571. package/data/packages/platform-openapi/api/Variable.PLATFORM_OPENAPI_CONFIG_ENTRIES.md +14 -0
  572. package/data/packages/platform-openapi/api/Variable.SWAGGER_CONTACT_EMAIL.md +14 -0
  573. package/data/packages/platform-openapi/api/Variable.SWAGGER_CONTACT_NAME.md +14 -0
  574. package/data/packages/platform-openapi/api/Variable.SWAGGER_CONTACT_URL.md +14 -0
  575. package/data/packages/platform-openapi/api/Variable.SWAGGER_FEATURE_METADATA_KEY.md +12 -0
  576. package/data/packages/platform-openapi/api/index.md +42 -0
  577. package/data/packages/platform-openapi/index.md +170 -0
  578. package/data/packages/platform-payments/api/Class.FeatureAccessPort.md +74 -0
  579. package/data/packages/platform-payments/api/Class.FeatureGuard.md +68 -0
  580. package/data/packages/platform-payments/api/Class.FeatureUsageInterceptor.md +69 -0
  581. package/data/packages/platform-payments/api/Class.LemonSqueezyClient.md +163 -0
  582. package/data/packages/platform-payments/api/Class.MollieClient.md +166 -0
  583. package/data/packages/platform-payments/api/Class.PaddleClient.md +163 -0
  584. package/data/packages/platform-payments/api/Class.PaymentClientPort.md +142 -0
  585. package/data/packages/platform-payments/api/Class.PaymentModule.md +48 -0
  586. package/data/packages/platform-payments/api/Class.StripeClient.md +163 -0
  587. package/data/packages/platform-payments/api/Function.RequiresFeature.md +25 -0
  588. package/data/packages/platform-payments/api/Interface.IFeatureAccessResult.md +70 -0
  589. package/data/packages/platform-payments/api/Interface.INormalizedCheckoutSession.md +70 -0
  590. package/data/packages/platform-payments/api/Interface.INormalizedPrice.md +80 -0
  591. package/data/packages/platform-payments/api/Interface.INormalizedSubscription.md +100 -0
  592. package/data/packages/platform-payments/api/Interface.INormalizedWebhookEvent.md +84 -0
  593. package/data/packages/platform-payments/api/Interface.IPaymentModuleOptions.md +60 -0
  594. package/data/packages/platform-payments/api/TypeAlias.SubscriptionStatus.md +22 -0
  595. package/data/packages/platform-payments/api/Variable.FEATURE_KEY_METADATA.md +12 -0
  596. package/data/packages/platform-payments/api/Variable.LEMONSQUEEZY_API_KEY.md +14 -0
  597. package/data/packages/platform-payments/api/Variable.LEMONSQUEEZY_CONFIG_ENTRIES.md +14 -0
  598. package/data/packages/platform-payments/api/Variable.LEMONSQUEEZY_STORE_ID.md +14 -0
  599. package/data/packages/platform-payments/api/Variable.LEMONSQUEEZY_WEBHOOK_SECRET.md +14 -0
  600. package/data/packages/platform-payments/api/Variable.MOLLIE_API_KEY.md +14 -0
  601. package/data/packages/platform-payments/api/Variable.MOLLIE_CONFIG_ENTRIES.md +14 -0
  602. package/data/packages/platform-payments/api/Variable.MOLLIE_WEBHOOK_SECRET.md +14 -0
  603. package/data/packages/platform-payments/api/Variable.PADDLE_API_KEY.md +14 -0
  604. package/data/packages/platform-payments/api/Variable.PADDLE_CONFIG_ENTRIES.md +14 -0
  605. package/data/packages/platform-payments/api/Variable.PADDLE_ENVIRONMENT.md +14 -0
  606. package/data/packages/platform-payments/api/Variable.PADDLE_WEBHOOK_SECRET.md +14 -0
  607. package/data/packages/platform-payments/api/Variable.STRIPE_API_KEY.md +14 -0
  608. package/data/packages/platform-payments/api/Variable.STRIPE_CONFIG_ENTRIES.md +14 -0
  609. package/data/packages/platform-payments/api/Variable.STRIPE_WEBHOOK_SECRET.md +14 -0
  610. package/data/packages/platform-payments/api/index.md +63 -0
  611. package/data/packages/platform-payments/index.md +534 -0
  612. package/data/packages/platform-reporting/api/Class.ReportingContributorRegistry.md +56 -0
  613. package/data/packages/platform-reporting/api/Class.ReportingDatasetNotFoundError.md +40 -0
  614. package/data/packages/platform-reporting/api/Class.ReportingExecutionError.md +67 -0
  615. package/data/packages/platform-reporting/api/Class.ReportingFacade.md +84 -0
  616. package/data/packages/platform-reporting/api/Class.ReportingModule.md +22 -0
  617. package/data/packages/platform-reporting/api/Class.ReportingQueryValidationError.md +51 -0
  618. package/data/packages/platform-reporting/api/Interface.IReportingContributor.md +61 -0
  619. package/data/packages/platform-reporting/api/Interface.IReportingDataset.md +82 -0
  620. package/data/packages/platform-reporting/api/Interface.IReportingDatasetField.md +70 -0
  621. package/data/packages/platform-reporting/api/Interface.IReportingQuery.md +60 -0
  622. package/data/packages/platform-reporting/api/Interface.IReportingQueryFilter.md +40 -0
  623. package/data/packages/platform-reporting/api/Interface.IReportingQueryResult.md +60 -0
  624. package/data/packages/platform-reporting/api/Interface.IReportingQuerySort.md +30 -0
  625. package/data/packages/platform-reporting/api/TypeAlias.ReportingFieldType.md +12 -0
  626. package/data/packages/platform-reporting/api/TypeAlias.ReportingFilterOperator.md +12 -0
  627. package/data/packages/platform-reporting/api/TypeAlias.ReportingQueryResultRow.md +14 -0
  628. package/data/packages/platform-reporting/api/Variable.ReportingFieldTypes.md +30 -0
  629. package/data/packages/platform-reporting/api/Variable.ReportingFilterOperators.md +28 -0
  630. package/data/packages/platform-reporting/api/index.md +44 -0
  631. package/data/packages/platform-reporting/index.md +229 -0
  632. package/data/packages/platform-telemetry/api/Class.MetricsService.md +40 -0
  633. package/data/packages/platform-telemetry/api/Class.NoopTelemetryFacade.md +113 -0
  634. package/data/packages/platform-telemetry/api/Class.OtelSdkHolder.md +73 -0
  635. package/data/packages/platform-telemetry/api/Class.TelemetryCacheMetricsRecorder.md +175 -0
  636. package/data/packages/platform-telemetry/api/Class.TelemetryFacade.md +135 -0
  637. package/data/packages/platform-telemetry/api/Class.TelemetryLoggerService.md +226 -0
  638. package/data/packages/platform-telemetry/api/Class.TelemetryModule.md +40 -0
  639. package/data/packages/platform-telemetry/api/Class.TelemetryRuleEngine.md +49 -0
  640. package/data/packages/platform-telemetry/api/Function.validateTelemetryOptions.md +24 -0
  641. package/data/packages/platform-telemetry/api/Interface.IMetricInstruments.md +38 -0
  642. package/data/packages/platform-telemetry/api/Interface.ITelemetryFacade.md +85 -0
  643. package/data/packages/platform-telemetry/api/Interface.ITelemetryMetricsOptions.md +38 -0
  644. package/data/packages/platform-telemetry/api/Interface.ITelemetryOptions.md +136 -0
  645. package/data/packages/platform-telemetry/api/Interface.ITelemetryTracesOptions.md +38 -0
  646. package/data/packages/platform-telemetry/api/Variable.TELEMETRY_ENABLED.md +12 -0
  647. package/data/packages/platform-telemetry/api/Variable.TELEMETRY_FACADE.md +12 -0
  648. package/data/packages/platform-telemetry/api/Variable.TELEMETRY_OPTIONS.md +12 -0
  649. package/data/packages/platform-telemetry/api/Variable.defaultTelemetryOptions.md +12 -0
  650. package/data/packages/platform-telemetry/api/index.md +44 -0
  651. package/data/packages/platform-telemetry/index.md +234 -0
  652. package/package.json +1 -1
@@ -0,0 +1,546 @@
1
+ ---
2
+ title: Database Setup
3
+ description: Set up PostgreSQL access with Prisma, Prisma Accelerate, repositories, queries, transactions, health checks, and error handling.
4
+ order: 5
5
+ ---
6
+
7
+ # Database Setup
8
+
9
+ This guide covers everything you need to connect a NestJS application to PostgreSQL through `platform-database`: module registration, Prisma Accelerate for connection pooling, writing repositories and queries, transactions, pagination, health checks, and error handling.
10
+
11
+ If you haven't installed `platform-core` and registered `ConfigModule` yet, read the [Getting Started](/guides/getting-started) guide first.
12
+
13
+ ---
14
+
15
+ ## Overview
16
+
17
+ `platform-database` provides:
18
+
19
+ | Capability | What it does |
20
+ | ------------------------- | ---------------------------------------------------------------------------------- |
21
+ | **DatabaseModule** | Registers Prisma-backed services for DI with optional Accelerate support |
22
+ | **DatabaseService** | Extended Prisma client with transaction helpers |
23
+ | **RepositoryBase** | Abstract base class for typed repositories with built-in error handling |
24
+ | **Query pattern** | Reusable, testable query objects executed through repositories |
25
+ | **Transactional queries** | Multi-model writes wrapped in Prisma transactions |
26
+ | **Pagination** | Offset-based pagination with metadata (total, pages, next/prev) |
27
+ | **Health indicator** | Terminus-based database health check, auto-registered with the health orchestrator |
28
+ | **Exception filter** | Maps `RepositoryError` to HTTP 500 responses |
29
+
30
+ ---
31
+
32
+ ## Installation
33
+
34
+ ```bash
35
+ yarn add @breadstone/archipel-platform-database
36
+ ```
37
+
38
+ `platform-database` depends on `@prisma/client`. Make sure your project has a Prisma schema and a generated client:
39
+
40
+ ```bash
41
+ yarn add prisma @prisma/client
42
+ npx prisma init
43
+ ```
44
+
45
+ ---
46
+
47
+ ## Environment Variables
48
+
49
+ `platform-database` ships its own config keys and a ready-made entries array. Set the relevant variables in your environment:
50
+
51
+ ```env
52
+ DATABASE_URL=postgresql://user:password@localhost:5432/mydb
53
+ ```
54
+
55
+ For Prisma Accelerate (managed connection pooling), add the Accelerate URL from the Prisma Console:
56
+
57
+ ```env
58
+ DB_ACCELERATE_URL=prisma://accelerate.prisma-data.net/?api_key=your-accelerate-api-key
59
+ ```
60
+
61
+ Optional environment variables for Prisma Optimize (query analysis dashboard):
62
+
63
+ ```env
64
+ DB_OPTIMIZE=true
65
+ DB_OPTIMIZE_API_KEY=your-optimize-api-key
66
+ ```
67
+
68
+ All environment variables recognised by `platform-database`:
69
+
70
+ | Variable | Description | Required | Default |
71
+ | --------------------- | ----------------------------------------- | ------------------- | ------- |
72
+ | `DATABASE_URL` | PostgreSQL connection string | Yes | — |
73
+ | `DB_ACCELERATE_URL` | Prisma Accelerate proxy URL | No | `''` |
74
+ | `DB_AUTO_CONNECTION` | Auto-connect on module init | No | `true` |
75
+ | `DB_OPTIMIZE` | Enable Prisma Optimize query analysis | No | `true` |
76
+ | `DB_OPTIMIZE_API_KEY` | API key for the Prisma Optimize dashboard | If optimize enabled | `''` |
77
+
78
+ ### Register Config Entries
79
+
80
+ Use the exported `PLATFORM_DATABASE_CONFIG_ENTRIES` to register all database keys with the `ConfigModule` — no need to define them manually:
81
+
82
+ ```typescript
83
+ // src/app.module.ts
84
+ import { Module } from '@nestjs/common';
85
+ import { ConfigModule } from '@breadstone/archipel-platform-core';
86
+ import { DatabaseModule, PLATFORM_DATABASE_CONFIG_ENTRIES } from '@breadstone/archipel-platform-database';
87
+
88
+ @Module({
89
+ imports: [ConfigModule.register('database', PLATFORM_DATABASE_CONFIG_ENTRIES), DatabaseModule.register()],
90
+ })
91
+ export class AppModule {}
92
+ ```
93
+
94
+ The `ConfigModule` validates all required keys at startup. If `DATABASE_URL` is missing, the application fails immediately with a clear error.
95
+
96
+ ---
97
+
98
+ ## Module Registration
99
+
100
+ ### Basic Setup (No Accelerate)
101
+
102
+ For a direct PostgreSQL connection without Accelerate:
103
+
104
+ ```typescript
105
+ import { Module } from '@nestjs/common';
106
+ import { ConfigModule } from '@breadstone/archipel-platform-core';
107
+ import { DatabaseModule, PLATFORM_DATABASE_CONFIG_ENTRIES } from '@breadstone/archipel-platform-database';
108
+
109
+ @Module({
110
+ imports: [ConfigModule.register('database', PLATFORM_DATABASE_CONFIG_ENTRIES), DatabaseModule.register()],
111
+ })
112
+ export class AppModule {}
113
+ ```
114
+
115
+ ### With Prisma Accelerate
116
+
117
+ Accelerate provides connection pooling, global caching, and query optimization — especially useful in serverless or edge environments where direct database connections are expensive. You can enable it in two ways:
118
+
119
+ **Option A — Environment variable (recommended)**
120
+
121
+ Set `DB_ACCELERATE_URL` in your environment. The module reads it automatically via `ConfigService` — no code changes needed:
122
+
123
+ ```env
124
+ DB_ACCELERATE_URL=prisma://accelerate.prisma-data.net/?api_key=your-accelerate-api-key
125
+ ```
126
+
127
+ ```typescript
128
+ @Module({
129
+ imports: [ConfigModule.register('database', PLATFORM_DATABASE_CONFIG_ENTRIES), DatabaseModule.register()],
130
+ })
131
+ export class AppModule {}
132
+ ```
133
+
134
+ **Option B — Module parameter (takes priority)**
135
+
136
+ Pass `accelerateUrl` explicitly. This overrides the environment variable:
137
+
138
+ ```typescript
139
+ import { Module } from '@nestjs/common';
140
+ import { ConfigModule } from '@breadstone/archipel-platform-core';
141
+ import { DatabaseModule, PLATFORM_DATABASE_CONFIG_ENTRIES } from '@breadstone/archipel-platform-database';
142
+
143
+ @Module({
144
+ imports: [
145
+ ConfigModule.register('database', PLATFORM_DATABASE_CONFIG_ENTRIES),
146
+ DatabaseModule.register({
147
+ accelerateUrl: 'prisma://accelerate.prisma-data.net/?api_key=...',
148
+ }),
149
+ ],
150
+ })
151
+ export class AppModule {}
152
+ ```
153
+
154
+ When an Accelerate URL is present (from either source), the Prisma client connects through the Accelerate proxy instead of directly to PostgreSQL. The `DATABASE_URL` is still required — Prisma uses it for schema generation and migrations. At runtime, all queries go through the Accelerate URL.
155
+
156
+ > **Resolution order:** module parameter → `DB_ACCELERATE_URL` environment variable → no Accelerate.
157
+
158
+ ### Global Registration with `forRoot`
159
+
160
+ Use `forRoot()` to make `DatabaseService` globally available without re-importing the module in every feature module:
161
+
162
+ ```typescript
163
+ @Module({
164
+ imports: [ConfigModule.register('database', PLATFORM_DATABASE_CONFIG_ENTRIES), DatabaseModule.forRoot()],
165
+ })
166
+ export class AppModule {}
167
+ ```
168
+
169
+ With `forRoot()`, any module can inject `DatabaseService` without adding `DatabaseModule` to its own `imports`. Accelerate resolution works the same way — via environment variable or explicit `forRoot({ accelerateUrl: '...' })`.
170
+
171
+ ---
172
+
173
+ ## Defining Entities
174
+
175
+ Define entity interfaces that map to your Prisma models. Entity property names must match your Prisma schema exactly:
176
+
177
+ ```typescript
178
+ // src/users/models/entities/IUserEntity.ts
179
+ export interface IUserEntity {
180
+ readonly id: string;
181
+ readonly userName: string;
182
+ readonly email: string;
183
+ readonly createdAt: Date;
184
+ }
185
+ ```
186
+
187
+ Entities are plain interfaces — no methods, no business logic, no mapping. They are the contract between repositories and services.
188
+
189
+ ---
190
+
191
+ ## Writing Queries
192
+
193
+ Queries are plain objects created with the `query()` factory. Each query receives a Prisma delegate and returns a typed result. This keeps data access logic reusable, testable, and separate from repository class methods.
194
+
195
+ ### Single-Model Query
196
+
197
+ ```typescript
198
+ // src/users/queries/findUserByIdQuery.ts
199
+ import { query, type IRepositoryQuery } from '@breadstone/archipel-platform-database';
200
+ import { type Prisma } from '@prisma/client';
201
+ import { type IUserEntity } from '../models/entities/IUserEntity';
202
+
203
+ type UserDelegate = Prisma.UserDelegate;
204
+
205
+ export const findUserByIdQuery = (id: string): IRepositoryQuery<UserDelegate, IUserEntity | null> =>
206
+ query('findUserById', (model) =>
207
+ model.findUnique({
208
+ where: { id },
209
+ select: { id: true, userName: true, email: true, createdAt: true },
210
+ }),
211
+ );
212
+ ```
213
+
214
+ ### Transactional Query
215
+
216
+ When a write spans multiple models, use `transactionalQuery()`. It receives a Prisma `TransactionClient` instead of a single delegate:
217
+
218
+ ```typescript
219
+ // src/orders/queries/createOrderWithItemsQuery.ts
220
+ import { transactionalQuery } from '@breadstone/archipel-platform-database';
221
+
222
+ export const createOrderWithItemsQuery = (userId: string, items: Array<{ productId: string; quantity: number }>) =>
223
+ transactionalQuery('createOrderWithItems', async (tx) => {
224
+ const order = await tx.order.create({
225
+ data: { userId, status: 'pending' },
226
+ });
227
+
228
+ await tx.orderItem.createMany({
229
+ data: items.map((item) => ({
230
+ orderId: order.id,
231
+ productId: item.productId,
232
+ quantity: item.quantity,
233
+ })),
234
+ });
235
+
236
+ return order;
237
+ });
238
+ ```
239
+
240
+ ---
241
+
242
+ ## Creating Repositories
243
+
244
+ Repositories extend `RepositoryBase` and execute queries. They receive `DatabaseService` and the Prisma delegate via constructor injection.
245
+
246
+ ```typescript
247
+ // src/users/UserRepository.ts
248
+ import { Injectable } from '@nestjs/common';
249
+ import { RepositoryBase, DatabaseService } from '@breadstone/archipel-platform-database';
250
+ import { type Prisma } from '@prisma/client';
251
+ import { findUserByIdQuery } from './queries/findUserByIdQuery';
252
+ import { type IUserEntity } from './models/entities/IUserEntity';
253
+
254
+ @Injectable()
255
+ export class UserRepository extends RepositoryBase<
256
+ Prisma.UserDelegate,
257
+ Prisma.UserArgs,
258
+ Prisma.UserGetPayload<unknown>,
259
+ IUserEntity
260
+ > {
261
+ constructor(db: DatabaseService) {
262
+ super(db, db.user);
263
+ }
264
+
265
+ public async findById(id: string): Promise<IUserEntity | null> {
266
+ return this.execute(findUserByIdQuery(id));
267
+ }
268
+ }
269
+ ```
270
+
271
+ ### Executing Transactional Queries
272
+
273
+ Use `executeTransactional()` for queries that need a transaction client:
274
+
275
+ ```typescript
276
+ import { Injectable } from '@nestjs/common';
277
+ import { RepositoryBase, DatabaseService } from '@breadstone/archipel-platform-database';
278
+ import { type Prisma } from '@prisma/client';
279
+ import { createOrderWithItemsQuery } from './queries/createOrderWithItemsQuery';
280
+
281
+ @Injectable()
282
+ export class OrderRepository extends RepositoryBase<
283
+ Prisma.OrderDelegate,
284
+ Prisma.OrderArgs,
285
+ Prisma.OrderGetPayload<unknown>
286
+ > {
287
+ constructor(db: DatabaseService) {
288
+ super(db, db.order);
289
+ }
290
+
291
+ public async createWithItems(
292
+ userId: string,
293
+ items: Array<{ productId: string; quantity: number }>,
294
+ ): Promise<unknown> {
295
+ return this.executeTransactional(createOrderWithItemsQuery(userId, items));
296
+ }
297
+ }
298
+ ```
299
+
300
+ ---
301
+
302
+ ## Pagination
303
+
304
+ `platform-database` provides offset-based pagination. Pass page options to `findMany()`:
305
+
306
+ ```typescript
307
+ import { type IPaginatedResult } from '@breadstone/archipel-platform-database';
308
+
309
+ public async listUsers(page: number, perPage: number): Promise<IPaginatedResult<IUserEntity>> {
310
+ return this.findMany(
311
+ {
312
+ select: { id: true, userName: true, email: true, createdAt: true },
313
+ orderBy: { createdAt: 'desc' },
314
+ },
315
+ { page, perPage },
316
+ );
317
+ }
318
+ ```
319
+
320
+ The result contains:
321
+
322
+ ```typescript
323
+ {
324
+ data: Array<T>;
325
+ meta: {
326
+ total: number;
327
+ lastPage: number;
328
+ currentPage: number;
329
+ perPage: number;
330
+ prev: number | null;
331
+ next: number | null;
332
+ }
333
+ }
334
+ ```
335
+
336
+ ---
337
+
338
+ ## Transactions via DatabaseService
339
+
340
+ For ad-hoc transactions that don't fit the query pattern, use `DatabaseService` directly:
341
+
342
+ ### Batch Transaction
343
+
344
+ ```typescript
345
+ const [user, profile] = await this._db.transaction([
346
+ this._db.user.create({ data: { userName: 'alice', email: 'alice@example.com' } }),
347
+ this._db.profile.create({ data: { userId: 'some-id', bio: 'Hello' } }),
348
+ ]);
349
+ ```
350
+
351
+ ### Callback Transaction
352
+
353
+ ```typescript
354
+ const result = await this._db.transactionCallback(async (tx) => {
355
+ const user = await tx.user.create({ data: { userName: 'bob', email: 'bob@example.com' } });
356
+ await tx.profile.create({ data: { userId: user.id, bio: 'Hey there' } });
357
+ return user;
358
+ });
359
+ ```
360
+
361
+ ---
362
+
363
+ ## Health Checks
364
+
365
+ `DatabaseModule` automatically registers a `DatabaseHealthIndicator` with the health orchestrator from `platform-core`. Once your application exposes a `/health` endpoint, database connectivity is checked via a `SELECT 1` ping. No additional configuration is needed.
366
+
367
+ If the health check fails, the indicator reports `database: down` with the error details.
368
+
369
+ ---
370
+
371
+ ## Error Handling
372
+
373
+ ### RepositoryError
374
+
375
+ All Prisma errors caught by `RepositoryBase` are wrapped in `RepositoryError`, which includes the original Prisma error code and metadata:
376
+
377
+ ```typescript
378
+ import { RepositoryError } from '@breadstone/archipel-platform-database';
379
+
380
+ try {
381
+ await userRepository.findById('non-existent');
382
+ } catch (error) {
383
+ if (error instanceof RepositoryError) {
384
+ console.log(error.code); // 'REPOSITORY_ERROR'
385
+ console.log(error.originalCode); // e.g. 'P2025' (Prisma error code)
386
+ console.log(error.meta); // additional error metadata
387
+ }
388
+ }
389
+ ```
390
+
391
+ ### RepositoryExceptionFilter
392
+
393
+ Register the global exception filter to automatically map `RepositoryError` to HTTP 500 responses:
394
+
395
+ ```typescript
396
+ import { APP_FILTER } from '@nestjs/core';
397
+ import { RepositoryExceptionFilter } from '@breadstone/archipel-platform-database';
398
+
399
+ @Module({
400
+ providers: [
401
+ {
402
+ provide: APP_FILTER,
403
+ useClass: RepositoryExceptionFilter,
404
+ },
405
+ ],
406
+ })
407
+ export class AppModule {}
408
+ ```
409
+
410
+ The filter returns a consistent error envelope:
411
+
412
+ ```json
413
+ {
414
+ "statusCode": 500,
415
+ "timestamp": "2026-04-18T12:00:00.000Z",
416
+ "error": "Repository Error",
417
+ "path": "/api/v1/users/123"
418
+ }
419
+ ```
420
+
421
+ ---
422
+
423
+ ## Prisma Schema and Migrations
424
+
425
+ Keep your Prisma schema in your project and use migrations for all schema changes:
426
+
427
+ ```bash
428
+ # Create a new migration after changing schema.prisma
429
+ npx prisma migrate dev --name add-users-table
430
+
431
+ # Apply migrations in CI/CD
432
+ npx prisma migrate deploy
433
+
434
+ # Generate the Prisma client after schema changes
435
+ npx prisma generate
436
+ ```
437
+
438
+ > **Important:** Never edit applied migrations. If you need to fix a migration, create a new one.
439
+
440
+ When using Accelerate, migrations still run against the direct `DATABASE_URL`. Only runtime queries go through the Accelerate proxy.
441
+
442
+ ---
443
+
444
+ ## Full Example
445
+
446
+ Putting it all together — a complete feature module with database access:
447
+
448
+ ```typescript
449
+ // src/users/UserModule.ts
450
+ import { Module } from '@nestjs/common';
451
+ import { UserRepository } from './UserRepository';
452
+ import { UserService } from './UserService';
453
+ import { UserController } from './UserController';
454
+
455
+ @Module({
456
+ providers: [UserRepository, UserService],
457
+ controllers: [UserController],
458
+ exports: [UserService],
459
+ })
460
+ export class UserModule {}
461
+ ```
462
+
463
+ ```typescript
464
+ // src/users/UserService.ts
465
+ import { Injectable } from '@nestjs/common';
466
+ import { UserRepository } from './UserRepository';
467
+ import { type IUserEntity } from './models/entities/IUserEntity';
468
+
469
+ @Injectable()
470
+ export class UserService {
471
+ private readonly _userRepository: UserRepository;
472
+
473
+ constructor(userRepository: UserRepository) {
474
+ this._userRepository = userRepository;
475
+ }
476
+
477
+ public async getUserById(id: string): Promise<IUserEntity | null> {
478
+ return this._userRepository.findById(id);
479
+ }
480
+ }
481
+ ```
482
+
483
+ ```typescript
484
+ // src/users/UserController.ts
485
+ import { Controller, Get, Param, NotFoundException } from '@nestjs/common';
486
+ import { UserService } from './UserService';
487
+ import { MappingService } from '@breadstone/archipel-platform-core';
488
+ import { USER_TO_RESPONSE } from './mapping-keys';
489
+
490
+ @Controller('users')
491
+ export class UserController {
492
+ private readonly _userService: UserService;
493
+ private readonly _mappingService: MappingService;
494
+
495
+ constructor(userService: UserService, mappingService: MappingService) {
496
+ this._userService = userService;
497
+ this._mappingService = mappingService;
498
+ }
499
+
500
+ @Get(':id')
501
+ public async getUser(@Param('id') id: string): Promise<unknown> {
502
+ const user = await this._userService.getUserById(id);
503
+ if (!user) {
504
+ throw new NotFoundException(`User ${id} not found`);
505
+ }
506
+
507
+ return this._mappingService.map(USER_TO_RESPONSE, user);
508
+ }
509
+ }
510
+ ```
511
+
512
+ And the root module wiring everything together:
513
+
514
+ ```typescript
515
+ // src/app.module.ts
516
+ import { Module } from '@nestjs/common';
517
+ import { ConfigModule, MappingModule } from '@breadstone/archipel-platform-core';
518
+ import { DatabaseModule, PLATFORM_DATABASE_CONFIG_ENTRIES } from '@breadstone/archipel-platform-database';
519
+ import { UserModule } from './users/UserModule';
520
+
521
+ @Module({
522
+ imports: [
523
+ ConfigModule.register('database', PLATFORM_DATABASE_CONFIG_ENTRIES),
524
+ MappingModule,
525
+ DatabaseModule.forRoot(),
526
+ UserModule,
527
+ ],
528
+ })
529
+ export class AppModule {}
530
+ ```
531
+
532
+ ---
533
+
534
+ ## Summary
535
+
536
+ | Task | How |
537
+ | ----------------------- | ---------------------------------------------------------------------------------- |
538
+ | Register the module | `DatabaseModule.register()` or `DatabaseModule.forRoot()` with optional Accelerate |
539
+ | Define entities | Plain interfaces in `models/entities/` |
540
+ | Write queries | `query()` for single-model, `transactionalQuery()` for multi-model |
541
+ | Create repositories | Extend `RepositoryBase`, inject `DatabaseService` |
542
+ | Paginate results | Pass `{ page, perPage }` to `findMany()` |
543
+ | Run transactions | `executeTransactional()`, `db.transaction()`, or `db.transactionCallback()` |
544
+ | Monitor database health | Automatic via `DatabaseHealthIndicator` |
545
+ | Handle errors | `RepositoryExceptionFilter` for HTTP, `RepositoryError` for programmatic handling |
546
+ | Use Prisma Accelerate | Set `DB_ACCELERATE_URL` env var or pass `accelerateUrl` in module config |