alepha 0.13.0 → 0.13.2

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 (461) hide show
  1. package/README.md +1 -1
  2. package/dist/api-files/index.d.ts +28 -91
  3. package/dist/api-files/index.js +10 -755
  4. package/dist/api-files/index.js.map +1 -1
  5. package/dist/api-jobs/index.d.ts +67 -67
  6. package/dist/api-jobs/index.js +13 -13
  7. package/dist/api-jobs/index.js.map +1 -1
  8. package/dist/api-notifications/index.d.ts +129 -146
  9. package/dist/api-notifications/index.js +17 -39
  10. package/dist/api-notifications/index.js.map +1 -1
  11. package/dist/api-parameters/index.d.ts +21 -22
  12. package/dist/api-parameters/index.js +22 -22
  13. package/dist/api-parameters/index.js.map +1 -1
  14. package/dist/api-users/index.d.ts +224 -2001
  15. package/dist/api-users/index.js +914 -4787
  16. package/dist/api-users/index.js.map +1 -1
  17. package/dist/api-verifications/index.d.ts +96 -96
  18. package/dist/batch/index.d.ts +13 -13
  19. package/dist/batch/index.js +8 -8
  20. package/dist/batch/index.js.map +1 -1
  21. package/dist/bucket/index.d.ts +14 -14
  22. package/dist/bucket/index.js +12 -12
  23. package/dist/bucket/index.js.map +1 -1
  24. package/dist/cache/index.d.ts +11 -11
  25. package/dist/cache/index.js +9 -9
  26. package/dist/cache/index.js.map +1 -1
  27. package/dist/cli/{dist-Sz2EXvQX.cjs → dist-Dl9Vl7Ur.js} +17 -13
  28. package/dist/cli/{dist-BBPjuQ56.js.map → dist-Dl9Vl7Ur.js.map} +1 -1
  29. package/dist/cli/index.d.ts +31 -37
  30. package/dist/cli/index.js +152 -83
  31. package/dist/cli/index.js.map +1 -1
  32. package/dist/command/index.d.ts +19 -19
  33. package/dist/command/index.js +25 -25
  34. package/dist/command/index.js.map +1 -1
  35. package/dist/core/index.browser.js +218 -218
  36. package/dist/core/index.browser.js.map +1 -1
  37. package/dist/core/index.d.ts +232 -232
  38. package/dist/core/index.js +218 -218
  39. package/dist/core/index.js.map +1 -1
  40. package/dist/core/{index.cjs → index.native.js} +304 -455
  41. package/dist/core/index.native.js.map +1 -0
  42. package/dist/datetime/index.d.ts +9 -9
  43. package/dist/datetime/index.js +7 -7
  44. package/dist/datetime/index.js.map +1 -1
  45. package/dist/email/index.d.ts +16 -16
  46. package/dist/email/index.js +80 -82
  47. package/dist/email/index.js.map +1 -1
  48. package/dist/file/index.js +1 -1
  49. package/dist/file/index.js.map +1 -1
  50. package/dist/lock/index.d.ts +9 -9
  51. package/dist/lock/index.js +8 -8
  52. package/dist/lock/index.js.map +1 -1
  53. package/dist/lock-redis/index.js +3 -66
  54. package/dist/lock-redis/index.js.map +1 -1
  55. package/dist/logger/index.d.ts +5 -5
  56. package/dist/logger/index.js +8 -8
  57. package/dist/logger/index.js.map +1 -1
  58. package/dist/orm/index.browser.js +114 -114
  59. package/dist/orm/index.browser.js.map +1 -1
  60. package/dist/orm/index.d.ts +219 -219
  61. package/dist/orm/index.js +46 -46
  62. package/dist/orm/index.js.map +1 -1
  63. package/dist/queue/index.d.ts +25 -25
  64. package/dist/queue/index.js +20 -20
  65. package/dist/queue/index.js.map +1 -1
  66. package/dist/queue-redis/index.d.ts +2 -2
  67. package/dist/redis/index.d.ts +10 -10
  68. package/dist/retry/index.d.ts +20 -20
  69. package/dist/retry/index.js +9 -9
  70. package/dist/retry/index.js.map +1 -1
  71. package/dist/scheduler/index.d.ts +12 -12
  72. package/dist/scheduler/index.js +9 -9
  73. package/dist/scheduler/index.js.map +1 -1
  74. package/dist/security/index.d.ts +53 -53
  75. package/dist/security/index.js +32 -32
  76. package/dist/security/index.js.map +1 -1
  77. package/dist/server/index.browser.js +1 -1
  78. package/dist/server/index.browser.js.map +1 -1
  79. package/dist/server/index.d.ts +101 -101
  80. package/dist/server/index.js +17 -17
  81. package/dist/server/index.js.map +1 -1
  82. package/dist/server-auth/index.browser.js +4 -982
  83. package/dist/server-auth/index.browser.js.map +1 -1
  84. package/dist/server-auth/index.d.ts +204 -785
  85. package/dist/server-auth/index.js +47 -1239
  86. package/dist/server-auth/index.js.map +1 -1
  87. package/dist/server-cache/index.d.ts +10 -10
  88. package/dist/server-cache/index.js +2 -2
  89. package/dist/server-cache/index.js.map +1 -1
  90. package/dist/server-compress/index.d.ts +4 -4
  91. package/dist/server-compress/index.js +1 -1
  92. package/dist/server-compress/index.js.map +1 -1
  93. package/dist/server-cookies/index.browser.js +8 -8
  94. package/dist/server-cookies/index.browser.js.map +1 -1
  95. package/dist/server-cookies/index.d.ts +17 -17
  96. package/dist/server-cookies/index.js +10 -10
  97. package/dist/server-cookies/index.js.map +1 -1
  98. package/dist/server-cors/index.d.ts +17 -17
  99. package/dist/server-cors/index.js +9 -9
  100. package/dist/server-cors/index.js.map +1 -1
  101. package/dist/server-health/index.d.ts +2 -2
  102. package/dist/server-helmet/index.d.ts +1 -1
  103. package/dist/server-links/index.browser.js +12 -12
  104. package/dist/server-links/index.browser.js.map +1 -1
  105. package/dist/server-links/index.d.ts +59 -251
  106. package/dist/server-links/index.js +23 -502
  107. package/dist/server-links/index.js.map +1 -1
  108. package/dist/server-metrics/index.d.ts +4 -4
  109. package/dist/server-metrics/index.js +170 -174
  110. package/dist/server-metrics/index.js.map +1 -1
  111. package/dist/server-multipart/index.d.ts +2 -2
  112. package/dist/server-proxy/index.d.ts +12 -12
  113. package/dist/server-proxy/index.js +10 -10
  114. package/dist/server-proxy/index.js.map +1 -1
  115. package/dist/server-rate-limit/index.d.ts +22 -22
  116. package/dist/server-rate-limit/index.js +12 -12
  117. package/dist/server-rate-limit/index.js.map +1 -1
  118. package/dist/server-security/index.d.ts +24 -24
  119. package/dist/server-security/index.js +15 -15
  120. package/dist/server-security/index.js.map +1 -1
  121. package/dist/server-static/index.d.ts +14 -14
  122. package/dist/server-static/index.js +8 -8
  123. package/dist/server-static/index.js.map +1 -1
  124. package/dist/server-swagger/index.d.ts +25 -184
  125. package/dist/server-swagger/index.js +21 -724
  126. package/dist/server-swagger/index.js.map +1 -1
  127. package/dist/sms/index.d.ts +14 -14
  128. package/dist/sms/index.js +9 -9
  129. package/dist/sms/index.js.map +1 -1
  130. package/dist/thread/index.d.ts +11 -11
  131. package/dist/thread/index.js +17 -17
  132. package/dist/thread/index.js.map +1 -1
  133. package/dist/topic/index.d.ts +26 -26
  134. package/dist/topic/index.js +16 -16
  135. package/dist/topic/index.js.map +1 -1
  136. package/dist/topic-redis/index.d.ts +1 -1
  137. package/dist/vite/index.d.ts +3 -3
  138. package/dist/vite/index.js +12 -13
  139. package/dist/vite/index.js.map +1 -1
  140. package/dist/websocket/index.browser.js +11 -11
  141. package/dist/websocket/index.browser.js.map +1 -1
  142. package/dist/websocket/index.d.ts +51 -51
  143. package/dist/websocket/index.js +13 -13
  144. package/dist/websocket/index.js.map +1 -1
  145. package/package.json +62 -52
  146. package/src/api-files/services/FileService.ts +5 -7
  147. package/src/api-jobs/index.ts +1 -1
  148. package/src/api-jobs/{descriptors → primitives}/$job.ts +8 -8
  149. package/src/api-jobs/providers/JobProvider.ts +9 -9
  150. package/src/api-jobs/services/JobService.ts +5 -5
  151. package/src/api-notifications/index.ts +5 -15
  152. package/src/api-notifications/{descriptors → primitives}/$notification.ts +10 -10
  153. package/src/api-notifications/services/NotificationSenderService.ts +3 -3
  154. package/src/api-parameters/index.ts +1 -1
  155. package/src/api-parameters/{descriptors → primitives}/$config.ts +7 -12
  156. package/src/api-users/index.ts +1 -1
  157. package/src/api-users/{descriptors → primitives}/$userRealm.ts +8 -8
  158. package/src/api-users/providers/UserRealmProvider.ts +1 -1
  159. package/src/batch/index.ts +3 -3
  160. package/src/batch/{descriptors → primitives}/$batch.ts +13 -16
  161. package/src/bucket/index.ts +8 -8
  162. package/src/bucket/{descriptors → primitives}/$bucket.ts +8 -8
  163. package/src/bucket/providers/LocalFileStorageProvider.ts +3 -3
  164. package/src/cache/index.ts +4 -4
  165. package/src/cache/{descriptors → primitives}/$cache.ts +15 -15
  166. package/src/cli/apps/AlephaPackageBuilderCli.ts +30 -3
  167. package/src/cli/assets/appRouterTs.ts +9 -0
  168. package/src/cli/assets/indexHtml.ts +2 -1
  169. package/src/cli/assets/mainBrowserTs.ts +10 -0
  170. package/src/cli/commands/CoreCommands.ts +6 -5
  171. package/src/cli/commands/DrizzleCommands.ts +69 -61
  172. package/src/cli/commands/VerifyCommands.ts +2 -2
  173. package/src/cli/commands/ViteCommands.ts +6 -1
  174. package/src/cli/services/ProjectUtils.ts +78 -41
  175. package/src/command/index.ts +5 -5
  176. package/src/command/{descriptors → primitives}/$command.ts +9 -12
  177. package/src/command/providers/CliProvider.ts +10 -10
  178. package/src/core/Alepha.ts +30 -33
  179. package/src/core/constants/KIND.ts +1 -1
  180. package/src/core/constants/OPTIONS.ts +1 -1
  181. package/src/core/helpers/{descriptor.ts → primitive.ts} +18 -18
  182. package/src/core/helpers/ref.ts +1 -1
  183. package/src/core/index.shared.ts +8 -8
  184. package/src/core/{descriptors → primitives}/$context.ts +5 -5
  185. package/src/core/{descriptors → primitives}/$hook.ts +4 -4
  186. package/src/core/{descriptors → primitives}/$inject.ts +2 -2
  187. package/src/core/{descriptors → primitives}/$module.ts +9 -9
  188. package/src/core/{descriptors → primitives}/$use.ts +2 -2
  189. package/src/core/providers/CodecManager.ts +1 -1
  190. package/src/core/providers/JsonSchemaCodec.ts +1 -1
  191. package/src/core/providers/StateManager.ts +2 -2
  192. package/src/datetime/index.ts +3 -3
  193. package/src/datetime/{descriptors → primitives}/$interval.ts +6 -6
  194. package/src/email/index.ts +4 -4
  195. package/src/email/{descriptors → primitives}/$email.ts +8 -8
  196. package/src/file/index.ts +1 -1
  197. package/src/lock/index.ts +3 -3
  198. package/src/lock/{descriptors → primitives}/$lock.ts +10 -10
  199. package/src/logger/index.ts +8 -8
  200. package/src/logger/{descriptors → primitives}/$logger.ts +2 -2
  201. package/src/logger/services/Logger.ts +1 -1
  202. package/src/orm/constants/PG_SYMBOLS.ts +2 -2
  203. package/src/orm/index.browser.ts +2 -2
  204. package/src/orm/index.ts +8 -8
  205. package/src/orm/{descriptors → primitives}/$entity.ts +11 -11
  206. package/src/orm/{descriptors → primitives}/$repository.ts +2 -2
  207. package/src/orm/{descriptors → primitives}/$sequence.ts +8 -8
  208. package/src/orm/{descriptors → primitives}/$transaction.ts +4 -4
  209. package/src/orm/providers/DrizzleKitProvider.ts +1 -1
  210. package/src/orm/providers/PostgresTypeProvider.ts +3 -3
  211. package/src/orm/providers/RepositoryProvider.ts +4 -4
  212. package/src/orm/providers/drivers/DatabaseProvider.ts +7 -7
  213. package/src/orm/services/ModelBuilder.ts +9 -9
  214. package/src/orm/services/PgRelationManager.ts +2 -2
  215. package/src/orm/services/PostgresModelBuilder.ts +5 -5
  216. package/src/orm/services/Repository.ts +7 -7
  217. package/src/orm/services/SqliteModelBuilder.ts +5 -5
  218. package/src/queue/index.ts +7 -7
  219. package/src/queue/{descriptors → primitives}/$consumer.ts +15 -15
  220. package/src/queue/{descriptors → primitives}/$queue.ts +12 -12
  221. package/src/queue/providers/WorkerProvider.ts +7 -7
  222. package/src/retry/index.ts +3 -3
  223. package/src/retry/{descriptors → primitives}/$retry.ts +19 -17
  224. package/src/scheduler/index.ts +3 -3
  225. package/src/scheduler/{descriptors → primitives}/$scheduler.ts +9 -9
  226. package/src/scheduler/providers/CronProvider.ts +1 -1
  227. package/src/security/index.ts +9 -9
  228. package/src/security/{descriptors → primitives}/$permission.ts +7 -7
  229. package/src/security/{descriptors → primitives}/$realm.ts +6 -12
  230. package/src/security/{descriptors → primitives}/$role.ts +12 -12
  231. package/src/security/{descriptors → primitives}/$serviceAccount.ts +8 -8
  232. package/src/server/index.browser.ts +1 -1
  233. package/src/server/index.ts +14 -14
  234. package/src/server/{descriptors → primitives}/$action.ts +13 -13
  235. package/src/server/{descriptors → primitives}/$route.ts +9 -9
  236. package/src/server/providers/NodeHttpServerProvider.ts +2 -2
  237. package/src/server/services/HttpClient.ts +1 -1
  238. package/src/server-auth/index.browser.ts +1 -1
  239. package/src/server-auth/index.ts +6 -6
  240. package/src/server-auth/{descriptors → primitives}/$auth.ts +10 -10
  241. package/src/server-auth/{descriptors → primitives}/$authCredentials.ts +4 -4
  242. package/src/server-auth/{descriptors → primitives}/$authGithub.ts +4 -4
  243. package/src/server-auth/{descriptors → primitives}/$authGoogle.ts +4 -4
  244. package/src/server-auth/providers/ServerAuthProvider.ts +4 -4
  245. package/src/server-cache/providers/ServerCacheProvider.ts +7 -7
  246. package/src/server-compress/providers/ServerCompressProvider.ts +3 -3
  247. package/src/server-cookies/index.browser.ts +2 -2
  248. package/src/server-cookies/index.ts +5 -5
  249. package/src/server-cookies/{descriptors → primitives}/$cookie.browser.ts +12 -12
  250. package/src/server-cookies/{descriptors → primitives}/$cookie.ts +13 -13
  251. package/src/server-cookies/providers/ServerCookiesProvider.ts +4 -4
  252. package/src/server-cookies/services/CookieParser.ts +1 -1
  253. package/src/server-cors/index.ts +3 -3
  254. package/src/server-cors/{descriptors → primitives}/$cors.ts +11 -13
  255. package/src/server-cors/providers/ServerCorsProvider.ts +5 -5
  256. package/src/server-links/index.browser.ts +5 -5
  257. package/src/server-links/index.ts +9 -9
  258. package/src/server-links/{descriptors → primitives}/$remote.ts +11 -11
  259. package/src/server-links/providers/LinkProvider.ts +7 -7
  260. package/src/server-links/providers/{RemoteDescriptorProvider.ts → RemotePrimitiveProvider.ts} +6 -6
  261. package/src/server-links/providers/ServerLinksProvider.ts +3 -3
  262. package/src/server-proxy/index.ts +3 -3
  263. package/src/server-proxy/{descriptors → primitives}/$proxy.ts +8 -8
  264. package/src/server-proxy/providers/ServerProxyProvider.ts +4 -4
  265. package/src/server-rate-limit/index.ts +6 -6
  266. package/src/server-rate-limit/{descriptors → primitives}/$rateLimit.ts +13 -13
  267. package/src/server-rate-limit/providers/ServerRateLimitProvider.ts +5 -5
  268. package/src/server-security/index.ts +3 -3
  269. package/src/server-security/{descriptors → primitives}/$basicAuth.ts +13 -13
  270. package/src/server-security/providers/ServerBasicAuthProvider.ts +5 -5
  271. package/src/server-security/providers/ServerSecurityProvider.ts +4 -4
  272. package/src/server-static/index.ts +3 -3
  273. package/src/server-static/{descriptors → primitives}/$serve.ts +8 -10
  274. package/src/server-static/providers/ServerStaticProvider.ts +6 -6
  275. package/src/server-swagger/index.ts +5 -5
  276. package/src/server-swagger/{descriptors → primitives}/$swagger.ts +9 -9
  277. package/src/server-swagger/providers/ServerSwaggerProvider.ts +11 -10
  278. package/src/sms/index.ts +4 -4
  279. package/src/sms/{descriptors → primitives}/$sms.ts +8 -8
  280. package/src/thread/index.ts +3 -3
  281. package/src/thread/{descriptors → primitives}/$thread.ts +13 -13
  282. package/src/thread/providers/ThreadProvider.ts +7 -9
  283. package/src/topic/index.ts +5 -5
  284. package/src/topic/{descriptors → primitives}/$subscriber.ts +14 -14
  285. package/src/topic/{descriptors → primitives}/$topic.ts +10 -10
  286. package/src/topic/providers/TopicProvider.ts +4 -4
  287. package/src/vite/helpers/boot.ts +3 -3
  288. package/src/vite/tasks/copyAssets.ts +1 -1
  289. package/src/vite/tasks/generateSitemap.ts +3 -3
  290. package/src/vite/tasks/prerenderPages.ts +2 -2
  291. package/src/vite/tasks/runAlepha.ts +2 -2
  292. package/src/websocket/index.browser.ts +3 -3
  293. package/src/websocket/index.shared.ts +2 -2
  294. package/src/websocket/index.ts +4 -4
  295. package/src/websocket/interfaces/WebSocketInterfaces.ts +3 -3
  296. package/src/websocket/{descriptors → primitives}/$channel.ts +10 -10
  297. package/src/websocket/{descriptors → primitives}/$websocket.ts +8 -8
  298. package/src/websocket/providers/NodeWebSocketServerProvider.ts +7 -7
  299. package/src/websocket/providers/WebSocketServerProvider.ts +3 -3
  300. package/src/websocket/services/WebSocketClient.ts +5 -5
  301. package/dist/api-files/index.cjs +0 -1293
  302. package/dist/api-files/index.cjs.map +0 -1
  303. package/dist/api-files/index.d.cts +0 -829
  304. package/dist/api-jobs/index.cjs +0 -274
  305. package/dist/api-jobs/index.cjs.map +0 -1
  306. package/dist/api-jobs/index.d.cts +0 -654
  307. package/dist/api-notifications/index.cjs +0 -380
  308. package/dist/api-notifications/index.cjs.map +0 -1
  309. package/dist/api-notifications/index.d.cts +0 -289
  310. package/dist/api-parameters/index.cjs +0 -66
  311. package/dist/api-parameters/index.cjs.map +0 -1
  312. package/dist/api-parameters/index.d.cts +0 -84
  313. package/dist/api-users/index.cjs +0 -6009
  314. package/dist/api-users/index.cjs.map +0 -1
  315. package/dist/api-users/index.d.cts +0 -4740
  316. package/dist/api-verifications/index.cjs +0 -407
  317. package/dist/api-verifications/index.cjs.map +0 -1
  318. package/dist/api-verifications/index.d.cts +0 -207
  319. package/dist/batch/index.cjs +0 -408
  320. package/dist/batch/index.cjs.map +0 -1
  321. package/dist/batch/index.d.cts +0 -330
  322. package/dist/bin/index.cjs +0 -17
  323. package/dist/bin/index.cjs.map +0 -1
  324. package/dist/bin/index.d.cts +0 -1
  325. package/dist/bucket/index.cjs +0 -303
  326. package/dist/bucket/index.cjs.map +0 -1
  327. package/dist/bucket/index.d.cts +0 -355
  328. package/dist/cache/index.cjs +0 -241
  329. package/dist/cache/index.cjs.map +0 -1
  330. package/dist/cache/index.d.cts +0 -202
  331. package/dist/cache-redis/index.cjs +0 -84
  332. package/dist/cache-redis/index.cjs.map +0 -1
  333. package/dist/cache-redis/index.d.cts +0 -40
  334. package/dist/cli/chunk-DSlc6foC.cjs +0 -43
  335. package/dist/cli/dist-BBPjuQ56.js +0 -2778
  336. package/dist/cli/dist-Sz2EXvQX.cjs.map +0 -1
  337. package/dist/cli/index.cjs +0 -1241
  338. package/dist/cli/index.cjs.map +0 -1
  339. package/dist/cli/index.d.cts +0 -422
  340. package/dist/command/index.cjs +0 -693
  341. package/dist/command/index.cjs.map +0 -1
  342. package/dist/command/index.d.cts +0 -340
  343. package/dist/core/index.cjs.map +0 -1
  344. package/dist/core/index.d.cts +0 -1927
  345. package/dist/datetime/index.cjs +0 -318
  346. package/dist/datetime/index.cjs.map +0 -1
  347. package/dist/datetime/index.d.cts +0 -145
  348. package/dist/email/index.cjs +0 -10874
  349. package/dist/email/index.cjs.map +0 -1
  350. package/dist/email/index.d.cts +0 -186
  351. package/dist/fake/index.cjs +0 -34641
  352. package/dist/fake/index.cjs.map +0 -1
  353. package/dist/fake/index.d.cts +0 -74
  354. package/dist/file/index.cjs +0 -1212
  355. package/dist/file/index.cjs.map +0 -1
  356. package/dist/file/index.d.cts +0 -698
  357. package/dist/lock/index.cjs +0 -226
  358. package/dist/lock/index.cjs.map +0 -1
  359. package/dist/lock/index.d.cts +0 -361
  360. package/dist/lock-redis/index.cjs +0 -113
  361. package/dist/lock-redis/index.cjs.map +0 -1
  362. package/dist/lock-redis/index.d.cts +0 -24
  363. package/dist/logger/index.cjs +0 -521
  364. package/dist/logger/index.cjs.map +0 -1
  365. package/dist/logger/index.d.cts +0 -281
  366. package/dist/orm/index.cjs +0 -2986
  367. package/dist/orm/index.cjs.map +0 -1
  368. package/dist/orm/index.d.cts +0 -2213
  369. package/dist/queue/index.cjs +0 -1044
  370. package/dist/queue/index.cjs.map +0 -1
  371. package/dist/queue/index.d.cts +0 -1265
  372. package/dist/queue-redis/index.cjs +0 -873
  373. package/dist/queue-redis/index.cjs.map +0 -1
  374. package/dist/queue-redis/index.d.cts +0 -82
  375. package/dist/redis/index.cjs +0 -153
  376. package/dist/redis/index.cjs.map +0 -1
  377. package/dist/redis/index.d.cts +0 -82
  378. package/dist/retry/index.cjs +0 -146
  379. package/dist/retry/index.cjs.map +0 -1
  380. package/dist/retry/index.d.cts +0 -172
  381. package/dist/router/index.cjs +0 -111
  382. package/dist/router/index.cjs.map +0 -1
  383. package/dist/router/index.d.cts +0 -46
  384. package/dist/scheduler/index.cjs +0 -576
  385. package/dist/scheduler/index.cjs.map +0 -1
  386. package/dist/scheduler/index.d.cts +0 -145
  387. package/dist/security/index.cjs +0 -2402
  388. package/dist/security/index.cjs.map +0 -1
  389. package/dist/security/index.d.cts +0 -598
  390. package/dist/server/index.cjs +0 -1680
  391. package/dist/server/index.cjs.map +0 -1
  392. package/dist/server/index.d.cts +0 -810
  393. package/dist/server-auth/index.cjs +0 -3146
  394. package/dist/server-auth/index.cjs.map +0 -1
  395. package/dist/server-auth/index.d.cts +0 -1164
  396. package/dist/server-cache/index.cjs +0 -252
  397. package/dist/server-cache/index.cjs.map +0 -1
  398. package/dist/server-cache/index.d.cts +0 -164
  399. package/dist/server-compress/index.cjs +0 -141
  400. package/dist/server-compress/index.cjs.map +0 -1
  401. package/dist/server-compress/index.d.cts +0 -38
  402. package/dist/server-cookies/index.cjs +0 -234
  403. package/dist/server-cookies/index.cjs.map +0 -1
  404. package/dist/server-cookies/index.d.cts +0 -144
  405. package/dist/server-cors/index.cjs +0 -201
  406. package/dist/server-cors/index.cjs.map +0 -1
  407. package/dist/server-cors/index.d.cts +0 -140
  408. package/dist/server-health/index.cjs +0 -62
  409. package/dist/server-health/index.cjs.map +0 -1
  410. package/dist/server-health/index.d.cts +0 -58
  411. package/dist/server-helmet/index.cjs +0 -131
  412. package/dist/server-helmet/index.cjs.map +0 -1
  413. package/dist/server-helmet/index.d.cts +0 -97
  414. package/dist/server-links/index.cjs +0 -992
  415. package/dist/server-links/index.cjs.map +0 -1
  416. package/dist/server-links/index.d.cts +0 -513
  417. package/dist/server-metrics/index.cjs +0 -4535
  418. package/dist/server-metrics/index.cjs.map +0 -1
  419. package/dist/server-metrics/index.d.cts +0 -35
  420. package/dist/server-multipart/index.cjs +0 -237
  421. package/dist/server-multipart/index.cjs.map +0 -1
  422. package/dist/server-multipart/index.d.cts +0 -50
  423. package/dist/server-proxy/index.cjs +0 -186
  424. package/dist/server-proxy/index.cjs.map +0 -1
  425. package/dist/server-proxy/index.d.cts +0 -234
  426. package/dist/server-rate-limit/index.cjs +0 -241
  427. package/dist/server-rate-limit/index.cjs.map +0 -1
  428. package/dist/server-rate-limit/index.d.cts +0 -183
  429. package/dist/server-security/index.cjs +0 -316
  430. package/dist/server-security/index.cjs.map +0 -1
  431. package/dist/server-security/index.d.cts +0 -173
  432. package/dist/server-static/index.cjs +0 -170
  433. package/dist/server-static/index.cjs.map +0 -1
  434. package/dist/server-static/index.d.cts +0 -121
  435. package/dist/server-swagger/index.cjs +0 -1021
  436. package/dist/server-swagger/index.cjs.map +0 -1
  437. package/dist/server-swagger/index.d.cts +0 -382
  438. package/dist/sms/index.cjs +0 -221
  439. package/dist/sms/index.cjs.map +0 -1
  440. package/dist/sms/index.d.cts +0 -130
  441. package/dist/thread/index.cjs +0 -350
  442. package/dist/thread/index.cjs.map +0 -1
  443. package/dist/thread/index.d.cts +0 -260
  444. package/dist/topic/index.cjs +0 -282
  445. package/dist/topic/index.cjs.map +0 -1
  446. package/dist/topic/index.d.cts +0 -523
  447. package/dist/topic-redis/index.cjs +0 -71
  448. package/dist/topic-redis/index.cjs.map +0 -1
  449. package/dist/topic-redis/index.d.cts +0 -42
  450. package/dist/vite/index.cjs +0 -1077
  451. package/dist/vite/index.cjs.map +0 -1
  452. package/dist/vite/index.d.cts +0 -542
  453. package/dist/websocket/index.cjs +0 -1117
  454. package/dist/websocket/index.cjs.map +0 -1
  455. package/dist/websocket/index.d.cts +0 -861
  456. package/src/api-notifications/providers/MemorySmsProvider.ts +0 -20
  457. package/src/api-notifications/providers/SmsProvider.ts +0 -8
  458. /package/src/core/{descriptors → primitives}/$atom.ts +0 -0
  459. /package/src/core/{descriptors → primitives}/$env.ts +0 -0
  460. /package/src/server-auth/{descriptors → primitives}/$authApple.ts +0 -0
  461. /package/src/server-links/{descriptors → primitives}/$client.ts +0 -0
@@ -1,598 +0,0 @@
1
- import * as alepha28 from "alepha";
2
- import { Alepha, Descriptor, KIND, Static } from "alepha";
3
- import * as alepha_logger1 from "alepha/logger";
4
- import { CryptoKey, FlattenedJWSInput, JSONWebKeySet, JWSHeaderParameters, JWTHeaderParameters, JWTPayload, JWTVerifyResult, KeyObject } from "jose";
5
- import { JWTVerifyOptions } from "jose/jwt/verify";
6
- import { DateTimeProvider, Duration, DurationLike } from "alepha/datetime";
7
- import { UnauthorizedError } from "alepha/server";
8
-
9
- //#region src/security/schemas/userAccountInfoSchema.d.ts
10
- declare const userAccountInfoSchema: alepha28.TObject<{
11
- id: alepha28.TString;
12
- name: alepha28.TOptional<alepha28.TString>;
13
- email: alepha28.TOptional<alepha28.TString>;
14
- username: alepha28.TOptional<alepha28.TString>;
15
- picture: alepha28.TOptional<alepha28.TString>;
16
- sessionId: alepha28.TOptional<alepha28.TString>;
17
- organizations: alepha28.TOptional<alepha28.TArray<alepha28.TString>>;
18
- roles: alepha28.TOptional<alepha28.TArray<alepha28.TString>>;
19
- }>;
20
- type UserAccount = Static<typeof userAccountInfoSchema>;
21
- //#endregion
22
- //#region src/security/interfaces/UserAccountToken.d.ts
23
- /**
24
- * Add contextual metadata to a user account info.
25
- * E.g. UserAccountToken is a UserAccountInfo during a request.
26
- */
27
- interface UserAccountToken extends UserAccount {
28
- /**
29
- * Access token for the user.
30
- */
31
- token?: string;
32
- /**
33
- * Realm name of the user.
34
- */
35
- realm?: string;
36
- /**
37
- * Is user dedicated to his own resources for this scope ?
38
- * Mostly, Admin is false and Customer is true.
39
- */
40
- ownership?: string | boolean;
41
- }
42
- //#endregion
43
- //#region src/security/schemas/permissionSchema.d.ts
44
- declare const permissionSchema: alepha28.TObject<{
45
- name: alepha28.TString;
46
- group: alepha28.TOptional<alepha28.TString>;
47
- description: alepha28.TOptional<alepha28.TString>;
48
- method: alepha28.TOptional<alepha28.TString>;
49
- path: alepha28.TOptional<alepha28.TString>;
50
- }>;
51
- type Permission = Static<typeof permissionSchema>;
52
- //#endregion
53
- //#region src/security/schemas/roleSchema.d.ts
54
- declare const roleSchema: alepha28.TObject<{
55
- name: alepha28.TString;
56
- description: alepha28.TOptional<alepha28.TString>;
57
- default: alepha28.TOptional<alepha28.TBoolean>;
58
- permissions: alepha28.TArray<alepha28.TObject<{
59
- name: alepha28.TString;
60
- ownership: alepha28.TOptional<alepha28.TBoolean>;
61
- exclude: alepha28.TOptional<alepha28.TArray<alepha28.TString>>;
62
- }>>;
63
- }>;
64
- type Role = Static<typeof roleSchema>;
65
- //#endregion
66
- //#region src/security/providers/JwtProvider.d.ts
67
- /**
68
- * Provides utilities for working with JSON Web Tokens (JWT).
69
- */
70
- declare class JwtProvider {
71
- protected readonly log: alepha_logger1.Logger;
72
- protected readonly keystore: KeyLoaderHolder[];
73
- protected readonly dateTimeProvider: DateTimeProvider;
74
- protected readonly encoder: TextEncoder;
75
- /**
76
- * Adds a key loader to the embedded keystore.
77
- *
78
- * @param name
79
- * @param secretKeyOrJwks
80
- */
81
- setKeyLoader(name: string, secretKeyOrJwks: string | JSONWebKeySet): void;
82
- /**
83
- * Retrieves the payload from a JSON Web Token (JWT).
84
- *
85
- * @param token - The JWT to extract the payload from.
86
- *
87
- * @return A Promise that resolves with the payload object from the token.
88
- */
89
- parse(token: string, keyName?: string, options?: JWTVerifyOptions): Promise<JwtParseResult>;
90
- /**
91
- * Creates a JWT token with the provided payload and secret key.
92
- *
93
- * @param payload - The payload to be encoded in the token.
94
- * It should include the `realm_access` property which contains an array of roles.
95
- * @param keyName - The name of the key to use when signing the token.
96
- *
97
- * @returns The signed JWT token.
98
- */
99
- create(payload: ExtendedJWTPayload, keyName?: string, signOptions?: JwtSignOptions): Promise<string>;
100
- /**
101
- * Determines if the provided key is a secret key.
102
- *
103
- * @param key
104
- * @protected
105
- */
106
- protected isSecretKey(key: string): boolean;
107
- }
108
- type KeyLoader = (protectedHeader?: JWSHeaderParameters, token?: FlattenedJWSInput) => Promise<CryptoKey | KeyObject>;
109
- interface KeyLoaderHolder {
110
- name: string;
111
- keyLoader: KeyLoader;
112
- secretKey?: string;
113
- }
114
- interface JwtSignOptions {
115
- header?: Partial<JWTHeaderParameters>;
116
- }
117
- interface ExtendedJWTPayload extends JWTPayload {
118
- sid?: string;
119
- name?: string;
120
- roles?: string[];
121
- email?: string;
122
- organizations?: string[];
123
- realm_access?: {
124
- roles: string[];
125
- };
126
- }
127
- interface JwtParseResult {
128
- keyName: string;
129
- result: JWTVerifyResult<ExtendedJWTPayload>;
130
- }
131
- //#endregion
132
- //#region src/security/providers/SecurityProvider.d.ts
133
- declare const DEFAULT_APP_SECRET = "05759934015388327323179852515731";
134
- declare const envSchema: alepha28.TObject<{
135
- APP_SECRET: alepha28.TString;
136
- }>;
137
- declare module "alepha" {
138
- interface Env extends Partial<Static<typeof envSchema>> {}
139
- }
140
- declare class SecurityProvider {
141
- protected readonly UNKNOWN_USER_NAME = "Anonymous User";
142
- protected readonly PERMISSION_REGEXP: RegExp;
143
- protected readonly PERMISSION_REGEXP_WILDCARD: RegExp;
144
- protected readonly log: alepha_logger1.Logger;
145
- protected readonly jwt: JwtProvider;
146
- protected readonly env: {
147
- APP_SECRET: string;
148
- };
149
- protected readonly alepha: Alepha;
150
- get secretKey(): string;
151
- /**
152
- * The permissions configured for the security provider.
153
- */
154
- protected readonly permissions: Permission[];
155
- /**
156
- * The realms configured for the security provider.
157
- */
158
- protected readonly realms: Realm[];
159
- protected start: alepha28.HookDescriptor<"start">;
160
- /**
161
- * Adds a role to one or more realms.
162
- *
163
- * @param role
164
- * @param realms
165
- */
166
- createRole(role: Role, ...realms: string[]): Role;
167
- /**
168
- * Adds a permission to the security provider.
169
- *
170
- * @param raw - The permission to add.
171
- */
172
- createPermission(raw: Permission | string): Permission;
173
- createRealm(realm: Realm): void;
174
- /**
175
- * Updates the roles for a realm then synchronizes the user account provider if available.
176
- *
177
- * Only available when the app is started.
178
- *
179
- * @param realm - The realm to update the roles for.
180
- * @param roles - The roles to update.
181
- */
182
- updateRealm(realm: string, roles: Role[]): Promise<void>;
183
- /**
184
- * Creates a user account from the provided payload.
185
- *
186
- * @param payload - The payload to create the user account from.
187
- * @param [realmName] - The realm containing the roles. Default is all.
188
- *
189
- * @returns The user info created from the payload.
190
- */
191
- createUserFromPayload(payload: JWTPayload, realmName?: string): UserAccount;
192
- /**
193
- * Checks if the user has the specified permission.
194
- *
195
- * Bonus: we check also if the user has "ownership" flag.
196
- *
197
- * @param permissionLike - The permission to check for.
198
- * @param roleEntries - The roles to check for the permission.
199
- */
200
- checkPermission(permissionLike: string | Permission, ...roleEntries: string[]): SecurityCheckResult;
201
- /**
202
- * Creates a user account from the provided payload.
203
- */
204
- createUserFromToken(headerOrToken?: string, options?: {
205
- permission?: Permission | string;
206
- realm?: string;
207
- verify?: JWTVerifyOptions;
208
- }): Promise<UserAccountToken>;
209
- /**
210
- * Checks if a user has a specific role.
211
- *
212
- * @param roleName - The role to check for.
213
- * @param permission - The permission to check for.
214
- * @returns True if the user has the role, false otherwise.
215
- */
216
- can(roleName: string, permission: string | Permission): boolean;
217
- /**
218
- * Checks if a user has ownership of a specific permission.
219
- */
220
- ownership(roleName: string, permission: string | Permission): string | boolean | undefined;
221
- /**
222
- * Converts a permission object to a string.
223
- *
224
- * @param permission
225
- */
226
- permissionToString(permission: Permission | string): string;
227
- getRealms(): Realm[];
228
- /**
229
- * Retrieves the user account from the provided user ID.
230
- *
231
- * @param realm
232
- */
233
- getRoles(realm?: string): Role[];
234
- /**
235
- * Returns all permissions.
236
- *
237
- * @param user - Filter permissions by user.
238
- *
239
- * @return An array containing all permissions.
240
- */
241
- getPermissions(user?: {
242
- roles?: Array<Role | string>;
243
- realm?: string;
244
- }): Permission[];
245
- /**
246
- * Retrieves the user ID from the provided payload object.
247
- *
248
- * @param payload - The payload object from which to extract the user ID.
249
- * @return The user ID as a string.
250
- */
251
- getIdFromPayload(payload: Record<string, any>): string;
252
- getSessionIdFromPayload(payload: Record<string, any>): string | undefined;
253
- /**
254
- * Retrieves the roles from the provided payload object.
255
- * @param payload - The payload object from which to extract the roles.
256
- * @return An array of role strings.
257
- */
258
- getRolesFromPayload(payload: Record<string, any>): string[];
259
- getPictureFromPayload(payload: Record<string, any>): string | undefined;
260
- getUsernameFromPayload(payload: Record<string, any>): string | undefined;
261
- getEmailFromPayload(payload: Record<string, any>): string | undefined;
262
- /**
263
- * Returns the name from the given payload.
264
- *
265
- * @param payload - The payload object.
266
- * @returns The name extracted from the payload, or an empty string if the payload is falsy or no name is found.
267
- */
268
- getNameFromPayload(payload: Record<string, any>): string;
269
- getOrganizationsFromPayload(payload: Record<string, any>): string[] | undefined;
270
- }
271
- /**
272
- * A realm definition.
273
- */
274
- interface Realm {
275
- name: string;
276
- roles: Role[];
277
- /**
278
- * The secret key for the realm.
279
- *
280
- * Can be also a JWKS URL.
281
- */
282
- secret?: string | JSONWebKeySet | (() => string);
283
- /**
284
- * Create the user account info based on the raw JWT payload.
285
- * By default, SecurityProvider has his own implementation, but this method allow to override it.
286
- */
287
- profile?: (raw: Record<string, any>) => UserAccount;
288
- }
289
- interface SecurityCheckResult {
290
- isAuthorized: boolean;
291
- ownership: string | boolean | undefined;
292
- }
293
- //#endregion
294
- //#region src/security/descriptors/$permission.d.ts
295
- /**
296
- * Create a new permission.
297
- */
298
- declare const $permission: {
299
- (options?: PermissionDescriptorOptions): PermissionDescriptor;
300
- [KIND]: typeof PermissionDescriptor;
301
- };
302
- interface PermissionDescriptorOptions {
303
- /**
304
- * Name of the permission. Use Property name is not provided.
305
- */
306
- name?: string;
307
- /**
308
- * Group of the permission. Use Class name is not provided.
309
- */
310
- group?: string;
311
- /**
312
- * Describe the permission.
313
- */
314
- description?: string;
315
- }
316
- declare class PermissionDescriptor extends Descriptor<PermissionDescriptorOptions> {
317
- protected readonly securityProvider: SecurityProvider;
318
- get name(): string;
319
- get group(): string;
320
- toString(): string;
321
- protected onInit(): void;
322
- /**
323
- * Check if the user has the permission.
324
- */
325
- can(user: UserAccount): boolean;
326
- }
327
- //#endregion
328
- //#region src/security/descriptors/$realm.d.ts
329
- /**
330
- * Create a new realm.
331
- */
332
- declare const $realm: {
333
- (options: RealmDescriptorOptions): RealmDescriptor;
334
- [KIND]: typeof RealmDescriptor;
335
- };
336
- type RealmDescriptorOptions = {
337
- /**
338
- * Define the realm name.
339
- * If not provided, it will use the property key.
340
- */
341
- name?: string;
342
- /**
343
- * Short description about the realm.
344
- */
345
- description?: string;
346
- /**
347
- * All roles available in the realm. Role is a string (role name) or a Role object (embedded role).
348
- */
349
- roles?: Array<string | Role>;
350
- /**
351
- * Realm settings.
352
- */
353
- settings?: RealmSettings;
354
- /**
355
- * Parse the JWT payload to create a user account info.
356
- */
357
- profile?: (jwtPayload: Record<string, any>) => UserAccount;
358
- } & (RealmInternal | RealmExternal);
359
- interface RealmSettings {
360
- accessToken?: {
361
- /**
362
- * Lifetime of the access token.
363
- * @default 15 minutes
364
- */
365
- expiration?: DurationLike;
366
- };
367
- refreshToken?: {
368
- /**
369
- * Lifetime of the refresh token.
370
- * @default 30 days
371
- */
372
- expiration?: DurationLike;
373
- };
374
- onCreateSession?: (user: UserAccount, config: {
375
- expiresIn: number;
376
- }) => Promise<{
377
- refreshToken: string;
378
- sessionId?: string;
379
- }>;
380
- onRefreshSession?: (refreshToken: string) => Promise<{
381
- user: UserAccount;
382
- expiresIn: number;
383
- sessionId?: string;
384
- }>;
385
- onDeleteSession?: (refreshToken: string) => Promise<void>;
386
- }
387
- type RealmInternal = {
388
- /**
389
- * Internal secret to sign JWT tokens and verify them.
390
- */
391
- secret: string;
392
- };
393
- interface RealmExternal {
394
- /**
395
- * URL to the JWKS (JSON Web Key Set) to verify JWT tokens from external providers.
396
- */
397
- jwks: (() => string) | JSONWebKeySet;
398
- }
399
- declare class RealmDescriptor extends Descriptor<RealmDescriptorOptions> {
400
- protected readonly securityProvider: SecurityProvider;
401
- protected readonly dateTimeProvider: DateTimeProvider;
402
- protected readonly jwt: JwtProvider;
403
- protected readonly log: alepha_logger1.Logger;
404
- get name(): string;
405
- get accessTokenExpiration(): Duration;
406
- get refreshTokenExpiration(): Duration;
407
- protected onInit(): void;
408
- /**
409
- * Get all roles in the realm.
410
- */
411
- getRoles(): Role[];
412
- /**
413
- * Set all roles in the realm.
414
- */
415
- setRoles(roles: Role[]): Promise<void>;
416
- /**
417
- * Get a role by name, throws an error if not found.
418
- */
419
- getRoleByName(name: string): Role;
420
- parseToken(token: string): Promise<JWTPayload>;
421
- /**
422
- * Create a token for the subject.
423
- */
424
- createToken(user: UserAccount, refreshToken?: {
425
- sid?: string;
426
- refresh_token?: string;
427
- refresh_token_expires_in?: number;
428
- }): Promise<AccessTokenResponse>;
429
- refreshToken(refreshToken: string, accessToken?: string): Promise<{
430
- tokens: AccessTokenResponse;
431
- user: UserAccount;
432
- }>;
433
- }
434
- interface CreateTokenOptions {
435
- sub: string;
436
- roles?: string[];
437
- email?: string;
438
- }
439
- interface AccessTokenResponse {
440
- access_token: string;
441
- token_type: string;
442
- expires_in?: number;
443
- issued_at: number;
444
- refresh_token?: string;
445
- refresh_token_expires_in?: number;
446
- scope?: string;
447
- }
448
- //#endregion
449
- //#region src/security/descriptors/$role.d.ts
450
- /**
451
- * Create a new role.
452
- */
453
- declare const $role: {
454
- (options?: RoleDescriptorOptions): RoleDescriptor;
455
- [KIND]: typeof RoleDescriptor;
456
- };
457
- interface RoleDescriptorOptions {
458
- /**
459
- * Name of the role.
460
- */
461
- name?: string;
462
- /**
463
- * Describe the role.
464
- */
465
- description?: string;
466
- realm?: string | RealmDescriptor;
467
- permissions?: Array<string | {
468
- name: string;
469
- ownership?: boolean;
470
- exclude?: string[];
471
- }>;
472
- }
473
- declare class RoleDescriptor extends Descriptor<RoleDescriptorOptions> {
474
- protected readonly securityProvider: SecurityProvider;
475
- get name(): string;
476
- protected onInit(): void;
477
- /**
478
- * Get the realm of the role.
479
- */
480
- get realm(): string | RealmDescriptor | undefined;
481
- can(permission: string | PermissionDescriptor): boolean;
482
- check(permission: string | PermissionDescriptor): SecurityCheckResult;
483
- }
484
- //#endregion
485
- //#region src/security/descriptors/$serviceAccount.d.ts
486
- /**
487
- * Allow to get an access token for a service account.
488
- *
489
- * You have some options to configure the service account:
490
- * - a OAUTH2 URL using client credentials grant type
491
- * - a JWT secret shared between the services
492
- *
493
- * @example
494
- * ```ts
495
- * import { $serviceAccount } from "alepha/security";
496
- *
497
- * class MyService {
498
- * serviceAccount = $serviceAccount({
499
- * oauth2: {
500
- * url: "https://example.com/oauth2/token",
501
- * clientId: "your-client-id",
502
- * clientSecret: "your-client-secret",
503
- * }
504
- * });
505
- *
506
- * async fetchData() {
507
- * const token = await this.serviceAccount.token();
508
- * // or
509
- * const response = await this.serviceAccount.fetch("https://api.example.com/data");
510
- * }
511
- * }
512
- * ```
513
- */
514
- declare const $serviceAccount: (options: ServiceAccountDescriptorOptions) => ServiceAccountDescriptor;
515
- type ServiceAccountDescriptorOptions = {
516
- gracePeriod?: number;
517
- } & ({
518
- oauth2: Oauth2ServiceAccountDescriptorOptions;
519
- } | {
520
- realm: RealmDescriptor;
521
- user: UserAccount;
522
- });
523
- interface Oauth2ServiceAccountDescriptorOptions {
524
- /**
525
- * Get Token URL.
526
- */
527
- url: string;
528
- /**
529
- * Client ID.
530
- */
531
- clientId: string;
532
- /**
533
- * Client Secret.
534
- */
535
- clientSecret: string;
536
- }
537
- interface ServiceAccountDescriptor {
538
- token: () => Promise<string>;
539
- }
540
- interface ServiceAccountStore {
541
- response?: AccessTokenResponse;
542
- }
543
- //#endregion
544
- //#region src/security/errors/InvalidCredentialsError.d.ts
545
- /**
546
- * Error thrown when the provided credentials are invalid.
547
- *
548
- * Message can not be changed to avoid leaking information.
549
- * Cause is omitted for the same reason.
550
- */
551
- declare class InvalidCredentialsError extends UnauthorizedError {
552
- readonly name = "UnauthorizedError";
553
- constructor();
554
- }
555
- //#endregion
556
- //#region src/security/errors/InvalidPermissionError.d.ts
557
- declare class InvalidPermissionError extends Error {
558
- constructor(name: string);
559
- }
560
- //#endregion
561
- //#region src/security/errors/SecurityError.d.ts
562
- declare class SecurityError extends Error {
563
- name: string;
564
- readonly status = 403;
565
- }
566
- //#endregion
567
- //#region src/security/providers/CryptoProvider.d.ts
568
- declare class CryptoProvider {
569
- hashPassword(password: string): Promise<string>;
570
- verifyPassword(password: string, stored: string): Promise<boolean>;
571
- randomUUID(): string;
572
- }
573
- //#endregion
574
- //#region src/security/index.d.ts
575
- declare module "alepha" {
576
- interface Hooks {
577
- "security:user:created": {
578
- realm: string;
579
- user: UserAccount;
580
- };
581
- }
582
- }
583
- /**
584
- * Provides comprehensive authentication and authorization capabilities with JWT tokens, role-based access control, and user management.
585
- *
586
- * The security module enables building secure applications using descriptors like `$realm`, `$role`, and `$permission`
587
- * on class properties. It offers JWT-based authentication, fine-grained permissions, service accounts, and seamless
588
- * integration with various authentication providers and user management systems.
589
- *
590
- * @see {@link $realm}
591
- * @see {@link $role}
592
- * @see {@link $permission}
593
- * @module alepha.security
594
- */
595
- declare const AlephaSecurity: alepha28.Service<alepha28.Module>;
596
- //#endregion
597
- export { $permission, $realm, $role, $serviceAccount, AccessTokenResponse, AlephaSecurity, CreateTokenOptions, CryptoProvider, DEFAULT_APP_SECRET, ExtendedJWTPayload, InvalidCredentialsError, InvalidPermissionError, JwtParseResult, JwtProvider, JwtSignOptions, KeyLoader, KeyLoaderHolder, Oauth2ServiceAccountDescriptorOptions, Permission, PermissionDescriptor, PermissionDescriptorOptions, Realm, RealmDescriptor, RealmDescriptorOptions, RealmExternal, RealmInternal, RealmSettings, Role, RoleDescriptor, RoleDescriptorOptions, SecurityCheckResult, SecurityError, SecurityProvider, ServiceAccountDescriptor, ServiceAccountDescriptorOptions, ServiceAccountStore, UserAccount, UserAccountToken, permissionSchema, roleSchema, userAccountInfoSchema };
598
- //# sourceMappingURL=index.d.cts.map