@marinoscar/platform-contract 0.1.0-next.3 → 0.1.0-next.4

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 (673) hide show
  1. package/CHANGELOG.md +173 -0
  2. package/README.md +23 -1
  3. package/dist/cjs/ai/capabilities.d.ts +85 -0
  4. package/dist/cjs/ai/capabilities.d.ts.map +1 -0
  5. package/dist/cjs/ai/capabilities.js +93 -0
  6. package/dist/cjs/ai/capabilities.js.map +1 -0
  7. package/dist/cjs/ai/constants.d.ts +239 -0
  8. package/dist/cjs/ai/constants.d.ts.map +1 -0
  9. package/dist/cjs/ai/constants.js +233 -0
  10. package/dist/cjs/ai/constants.js.map +1 -0
  11. package/dist/cjs/ai/features.d.ts +24 -0
  12. package/dist/cjs/ai/features.d.ts.map +1 -0
  13. package/dist/cjs/ai/features.js +33 -0
  14. package/dist/cjs/ai/features.js.map +1 -0
  15. package/dist/cjs/ai/index.d.ts +11 -0
  16. package/dist/cjs/ai/index.d.ts.map +1 -0
  17. package/dist/cjs/ai/index.js +81 -0
  18. package/dist/cjs/ai/index.js.map +1 -0
  19. package/dist/cjs/ai/org-keys.d.ts +50 -0
  20. package/dist/cjs/ai/org-keys.d.ts.map +1 -0
  21. package/dist/cjs/ai/org-keys.js +43 -0
  22. package/dist/cjs/ai/org-keys.js.map +1 -0
  23. package/dist/cjs/ai/schemas.d.ts +642 -0
  24. package/dist/cjs/ai/schemas.d.ts.map +1 -0
  25. package/dist/cjs/ai/schemas.js +894 -0
  26. package/dist/cjs/ai/schemas.js.map +1 -0
  27. package/dist/cjs/android-app/constants.d.ts +337 -0
  28. package/dist/cjs/android-app/constants.d.ts.map +1 -0
  29. package/dist/cjs/android-app/constants.js +312 -0
  30. package/dist/cjs/android-app/constants.js.map +1 -0
  31. package/dist/cjs/android-app/index.d.ts +5 -0
  32. package/dist/cjs/android-app/index.d.ts.map +1 -0
  33. package/dist/cjs/android-app/index.js +57 -0
  34. package/dist/cjs/android-app/index.js.map +1 -0
  35. package/dist/cjs/android-app/schemas.d.ts +358 -0
  36. package/dist/cjs/android-app/schemas.d.ts.map +1 -0
  37. package/dist/cjs/android-app/schemas.js +310 -0
  38. package/dist/cjs/android-app/schemas.js.map +1 -0
  39. package/dist/cjs/credentials/constants.d.ts +35 -0
  40. package/dist/cjs/credentials/constants.d.ts.map +1 -0
  41. package/dist/cjs/credentials/constants.js +39 -0
  42. package/dist/cjs/credentials/constants.js.map +1 -0
  43. package/dist/cjs/credentials/index.d.ts +5 -0
  44. package/dist/cjs/credentials/index.d.ts.map +1 -0
  45. package/dist/cjs/credentials/index.js +17 -0
  46. package/dist/cjs/credentials/index.js.map +1 -0
  47. package/dist/cjs/credentials/schemas.d.ts +64 -0
  48. package/dist/cjs/credentials/schemas.d.ts.map +1 -0
  49. package/dist/cjs/credentials/schemas.js +82 -0
  50. package/dist/cjs/credentials/schemas.js.map +1 -0
  51. package/dist/cjs/db-backup/config.d.ts +76 -0
  52. package/dist/cjs/db-backup/config.d.ts.map +1 -0
  53. package/dist/cjs/db-backup/config.js +115 -0
  54. package/dist/cjs/db-backup/config.js.map +1 -0
  55. package/dist/cjs/db-backup/constants.d.ts +314 -0
  56. package/dist/cjs/db-backup/constants.d.ts.map +1 -0
  57. package/dist/cjs/db-backup/constants.js +243 -0
  58. package/dist/cjs/db-backup/constants.js.map +1 -0
  59. package/dist/cjs/db-backup/index.d.ts +19 -0
  60. package/dist/cjs/db-backup/index.d.ts.map +1 -0
  61. package/dist/cjs/db-backup/index.js +81 -0
  62. package/dist/cjs/db-backup/index.js.map +1 -0
  63. package/dist/cjs/db-backup/node-credential.d.ts +37 -0
  64. package/dist/cjs/db-backup/node-credential.d.ts.map +1 -0
  65. package/dist/cjs/db-backup/node-credential.js +107 -0
  66. package/dist/cjs/db-backup/node-credential.js.map +1 -0
  67. package/dist/cjs/db-backup/node-result.d.ts +34 -0
  68. package/dist/cjs/db-backup/node-result.d.ts.map +1 -0
  69. package/dist/cjs/db-backup/node-result.js +168 -0
  70. package/dist/cjs/db-backup/node-result.js.map +1 -0
  71. package/dist/cjs/db-backup/restore.d.ts +405 -0
  72. package/dist/cjs/db-backup/restore.d.ts.map +1 -0
  73. package/dist/cjs/db-backup/restore.js +497 -0
  74. package/dist/cjs/db-backup/restore.js.map +1 -0
  75. package/dist/cjs/db-backup/run-actions.d.ts +49 -0
  76. package/dist/cjs/db-backup/run-actions.d.ts.map +1 -0
  77. package/dist/cjs/db-backup/run-actions.js +121 -0
  78. package/dist/cjs/db-backup/run-actions.js.map +1 -0
  79. package/dist/cjs/db-backup/runs-list-query.d.ts +20 -0
  80. package/dist/cjs/db-backup/runs-list-query.d.ts.map +1 -0
  81. package/dist/cjs/db-backup/runs-list-query.js +53 -0
  82. package/dist/cjs/db-backup/runs-list-query.js.map +1 -0
  83. package/dist/cjs/db-backup/runs.d.ts +46 -0
  84. package/dist/cjs/db-backup/runs.d.ts.map +1 -0
  85. package/dist/cjs/db-backup/runs.js +232 -0
  86. package/dist/cjs/db-backup/runs.js.map +1 -0
  87. package/dist/cjs/db-backup/schemas.d.ts +9 -0
  88. package/dist/cjs/db-backup/schemas.d.ts.map +1 -0
  89. package/dist/cjs/db-backup/schemas.js +31 -0
  90. package/dist/cjs/db-backup/schemas.js.map +1 -0
  91. package/dist/cjs/db-backup/settings-schemas.d.ts +217 -0
  92. package/dist/cjs/db-backup/settings-schemas.d.ts.map +1 -0
  93. package/dist/cjs/db-backup/settings-schemas.js +319 -0
  94. package/dist/cjs/db-backup/settings-schemas.js.map +1 -0
  95. package/dist/cjs/email/constants.d.ts +82 -0
  96. package/dist/cjs/email/constants.d.ts.map +1 -0
  97. package/dist/cjs/email/constants.js +82 -0
  98. package/dist/cjs/email/constants.js.map +1 -0
  99. package/dist/cjs/email/index.d.ts +5 -0
  100. package/dist/cjs/email/index.d.ts.map +1 -0
  101. package/dist/cjs/email/index.js +30 -0
  102. package/dist/cjs/email/index.js.map +1 -0
  103. package/dist/cjs/email/schemas.d.ts +276 -0
  104. package/dist/cjs/email/schemas.d.ts.map +1 -0
  105. package/dist/cjs/email/schemas.js +280 -0
  106. package/dist/cjs/email/schemas.js.map +1 -0
  107. package/dist/cjs/exports/constants.d.ts +123 -0
  108. package/dist/cjs/exports/constants.d.ts.map +1 -0
  109. package/dist/cjs/exports/constants.js +109 -0
  110. package/dist/cjs/exports/constants.js.map +1 -0
  111. package/dist/cjs/exports/index.d.ts +5 -0
  112. package/dist/cjs/exports/index.d.ts.map +1 -0
  113. package/dist/cjs/exports/index.js +42 -0
  114. package/dist/cjs/exports/index.js.map +1 -0
  115. package/dist/cjs/exports/schemas.d.ts +386 -0
  116. package/dist/cjs/exports/schemas.d.ts.map +1 -0
  117. package/dist/cjs/exports/schemas.js +288 -0
  118. package/dist/cjs/exports/schemas.js.map +1 -0
  119. package/dist/cjs/identity/constants.d.ts +273 -0
  120. package/dist/cjs/identity/constants.d.ts.map +1 -0
  121. package/dist/cjs/identity/constants.js +248 -0
  122. package/dist/cjs/identity/constants.js.map +1 -0
  123. package/dist/cjs/identity/index.d.ts +5 -0
  124. package/dist/cjs/identity/index.d.ts.map +1 -0
  125. package/dist/cjs/identity/index.js +73 -0
  126. package/dist/cjs/identity/index.js.map +1 -0
  127. package/dist/cjs/identity/schemas.d.ts +784 -0
  128. package/dist/cjs/identity/schemas.d.ts.map +1 -0
  129. package/dist/cjs/identity/schemas.js +684 -0
  130. package/dist/cjs/identity/schemas.js.map +1 -0
  131. package/dist/cjs/jobs/constants.d.ts +135 -0
  132. package/dist/cjs/jobs/constants.d.ts.map +1 -0
  133. package/dist/cjs/jobs/constants.js +130 -0
  134. package/dist/cjs/jobs/constants.js.map +1 -0
  135. package/dist/cjs/jobs/index.d.ts +9 -0
  136. package/dist/cjs/jobs/index.d.ts.map +1 -0
  137. package/dist/cjs/jobs/index.js +59 -0
  138. package/dist/cjs/jobs/index.js.map +1 -0
  139. package/dist/cjs/jobs/retention-schemas.d.ts +252 -0
  140. package/dist/cjs/jobs/retention-schemas.d.ts.map +1 -0
  141. package/dist/cjs/jobs/retention-schemas.js +233 -0
  142. package/dist/cjs/jobs/retention-schemas.js.map +1 -0
  143. package/dist/cjs/jobs/schemas.d.ts +361 -0
  144. package/dist/cjs/jobs/schemas.d.ts.map +1 -0
  145. package/dist/cjs/jobs/schemas.js +706 -0
  146. package/dist/cjs/jobs/schemas.js.map +1 -0
  147. package/dist/cjs/jobs/settings-schemas.d.ts +84 -0
  148. package/dist/cjs/jobs/settings-schemas.d.ts.map +1 -0
  149. package/dist/cjs/jobs/settings-schemas.js +116 -0
  150. package/dist/cjs/jobs/settings-schemas.js.map +1 -0
  151. package/dist/cjs/nodes/admin-schemas.d.ts +204 -0
  152. package/dist/cjs/nodes/admin-schemas.d.ts.map +1 -0
  153. package/dist/cjs/nodes/admin-schemas.js +153 -0
  154. package/dist/cjs/nodes/admin-schemas.js.map +1 -0
  155. package/dist/cjs/nodes/constants.d.ts +86 -0
  156. package/dist/cjs/nodes/constants.d.ts.map +1 -0
  157. package/dist/cjs/nodes/constants.js +102 -0
  158. package/dist/cjs/nodes/constants.js.map +1 -0
  159. package/dist/cjs/nodes/index.d.ts +8 -0
  160. package/dist/cjs/nodes/index.d.ts.map +1 -0
  161. package/dist/cjs/nodes/index.js +50 -0
  162. package/dist/cjs/nodes/index.js.map +1 -0
  163. package/dist/cjs/nodes/schemas.d.ts +332 -0
  164. package/dist/cjs/nodes/schemas.d.ts.map +1 -0
  165. package/dist/cjs/nodes/schemas.js +937 -0
  166. package/dist/cjs/nodes/schemas.js.map +1 -0
  167. package/dist/cjs/nodes/settings-schemas.d.ts +82 -0
  168. package/dist/cjs/nodes/settings-schemas.d.ts.map +1 -0
  169. package/dist/cjs/nodes/settings-schemas.js +106 -0
  170. package/dist/cjs/nodes/settings-schemas.js.map +1 -0
  171. package/dist/cjs/notifications/constants.d.ts +197 -0
  172. package/dist/cjs/notifications/constants.d.ts.map +1 -0
  173. package/dist/cjs/notifications/constants.js +181 -0
  174. package/dist/cjs/notifications/constants.js.map +1 -0
  175. package/dist/cjs/notifications/index.d.ts +5 -0
  176. package/dist/cjs/notifications/index.d.ts.map +1 -0
  177. package/dist/cjs/notifications/index.js +86 -0
  178. package/dist/cjs/notifications/index.js.map +1 -0
  179. package/dist/cjs/notifications/schemas.d.ts +1016 -0
  180. package/dist/cjs/notifications/schemas.d.ts.map +1 -0
  181. package/dist/cjs/notifications/schemas.js +851 -0
  182. package/dist/cjs/notifications/schemas.js.map +1 -0
  183. package/dist/cjs/onboarding/constants.d.ts +138 -0
  184. package/dist/cjs/onboarding/constants.d.ts.map +1 -0
  185. package/dist/cjs/onboarding/constants.js +123 -0
  186. package/dist/cjs/onboarding/constants.js.map +1 -0
  187. package/dist/cjs/onboarding/index.d.ts +5 -0
  188. package/dist/cjs/onboarding/index.d.ts.map +1 -0
  189. package/dist/cjs/onboarding/index.js +42 -0
  190. package/dist/cjs/onboarding/index.js.map +1 -0
  191. package/dist/cjs/onboarding/schemas.d.ts +360 -0
  192. package/dist/cjs/onboarding/schemas.d.ts.map +1 -0
  193. package/dist/cjs/onboarding/schemas.js +260 -0
  194. package/dist/cjs/onboarding/schemas.js.map +1 -0
  195. package/dist/cjs/settings/constants.d.ts +206 -0
  196. package/dist/cjs/settings/constants.d.ts.map +1 -0
  197. package/dist/cjs/settings/constants.js +200 -0
  198. package/dist/cjs/settings/constants.js.map +1 -0
  199. package/dist/cjs/settings/index.d.ts +6 -0
  200. package/dist/cjs/settings/index.d.ts.map +1 -0
  201. package/dist/cjs/settings/index.js +62 -0
  202. package/dist/cjs/settings/index.js.map +1 -0
  203. package/dist/cjs/settings/schemas.d.ts +574 -0
  204. package/dist/cjs/settings/schemas.d.ts.map +1 -0
  205. package/dist/cjs/settings/schemas.js +437 -0
  206. package/dist/cjs/settings/schemas.js.map +1 -0
  207. package/dist/cjs/settings/types.d.ts +79 -0
  208. package/dist/cjs/settings/types.d.ts.map +1 -0
  209. package/dist/cjs/settings/types.js +6 -0
  210. package/dist/cjs/settings/types.js.map +1 -0
  211. package/dist/cjs/sharing/constants.d.ts +216 -0
  212. package/dist/cjs/sharing/constants.d.ts.map +1 -0
  213. package/dist/cjs/sharing/constants.js +163 -0
  214. package/dist/cjs/sharing/constants.js.map +1 -0
  215. package/dist/cjs/sharing/enum.d.ts +5 -0
  216. package/dist/cjs/sharing/enum.d.ts.map +1 -0
  217. package/dist/cjs/sharing/enum.js +9 -0
  218. package/dist/cjs/sharing/enum.js.map +1 -0
  219. package/dist/cjs/sharing/grants.d.ts +490 -0
  220. package/dist/cjs/sharing/grants.d.ts.map +1 -0
  221. package/dist/cjs/sharing/grants.js +447 -0
  222. package/dist/cjs/sharing/grants.js.map +1 -0
  223. package/dist/cjs/sharing/groups.d.ts +410 -0
  224. package/dist/cjs/sharing/groups.d.ts.map +1 -0
  225. package/dist/cjs/sharing/groups.js +375 -0
  226. package/dist/cjs/sharing/groups.js.map +1 -0
  227. package/dist/cjs/sharing/index.d.ts +5 -0
  228. package/dist/cjs/sharing/index.d.ts.map +1 -0
  229. package/dist/cjs/sharing/index.js +77 -0
  230. package/dist/cjs/sharing/index.js.map +1 -0
  231. package/dist/cjs/sharing/schemas.d.ts +3 -0
  232. package/dist/cjs/sharing/schemas.d.ts.map +1 -0
  233. package/dist/cjs/sharing/schemas.js +21 -0
  234. package/dist/cjs/sharing/schemas.js.map +1 -0
  235. package/dist/cjs/storage/constants.d.ts +111 -0
  236. package/dist/cjs/storage/constants.d.ts.map +1 -0
  237. package/dist/cjs/storage/constants.js +107 -0
  238. package/dist/cjs/storage/constants.js.map +1 -0
  239. package/dist/cjs/storage/index.d.ts +27 -0
  240. package/dist/cjs/storage/index.d.ts.map +1 -0
  241. package/dist/cjs/storage/index.js +69 -0
  242. package/dist/cjs/storage/index.js.map +1 -0
  243. package/dist/cjs/storage/objects-complete-upload.d.ts +19 -0
  244. package/dist/cjs/storage/objects-complete-upload.d.ts.map +1 -0
  245. package/dist/cjs/storage/objects-complete-upload.js +19 -0
  246. package/dist/cjs/storage/objects-complete-upload.js.map +1 -0
  247. package/dist/cjs/storage/objects-download-url.d.ts +17 -0
  248. package/dist/cjs/storage/objects-download-url.d.ts.map +1 -0
  249. package/dist/cjs/storage/objects-download-url.js +16 -0
  250. package/dist/cjs/storage/objects-download-url.js.map +1 -0
  251. package/dist/cjs/storage/objects-init-upload.d.ts +39 -0
  252. package/dist/cjs/storage/objects-init-upload.d.ts.map +1 -0
  253. package/dist/cjs/storage/objects-init-upload.js +40 -0
  254. package/dist/cjs/storage/objects-init-upload.js.map +1 -0
  255. package/dist/cjs/storage/objects-list-query.d.ts +50 -0
  256. package/dist/cjs/storage/objects-list-query.d.ts.map +1 -0
  257. package/dist/cjs/storage/objects-list-query.js +23 -0
  258. package/dist/cjs/storage/objects-list-query.js.map +1 -0
  259. package/dist/cjs/storage/objects-object-response.d.ts +49 -0
  260. package/dist/cjs/storage/objects-object-response.d.ts.map +1 -0
  261. package/dist/cjs/storage/objects-object-response.js +54 -0
  262. package/dist/cjs/storage/objects-object-response.js.map +1 -0
  263. package/dist/cjs/storage/objects-update-metadata.d.ts +16 -0
  264. package/dist/cjs/storage/objects-update-metadata.d.ts.map +1 -0
  265. package/dist/cjs/storage/objects-update-metadata.js +14 -0
  266. package/dist/cjs/storage/objects-update-metadata.js.map +1 -0
  267. package/dist/cjs/storage/schemas.d.ts +13 -0
  268. package/dist/cjs/storage/schemas.d.ts.map +1 -0
  269. package/dist/cjs/storage/schemas.js +35 -0
  270. package/dist/cjs/storage/schemas.js.map +1 -0
  271. package/dist/cjs/storage/settings-schemas.d.ts +188 -0
  272. package/dist/cjs/storage/settings-schemas.d.ts.map +1 -0
  273. package/dist/cjs/storage/settings-schemas.js +223 -0
  274. package/dist/cjs/storage/settings-schemas.js.map +1 -0
  275. package/dist/cjs/storage/storage-bucket-provision.d.ts +152 -0
  276. package/dist/cjs/storage/storage-bucket-provision.d.ts.map +1 -0
  277. package/dist/cjs/storage/storage-bucket-provision.js +216 -0
  278. package/dist/cjs/storage/storage-bucket-provision.js.map +1 -0
  279. package/dist/cjs/storage/storage-config-response.d.ts +99 -0
  280. package/dist/cjs/storage/storage-config-response.d.ts.map +1 -0
  281. package/dist/cjs/storage/storage-config-response.js +173 -0
  282. package/dist/cjs/storage/storage-config-response.js.map +1 -0
  283. package/dist/cjs/storage/storage-config-update.d.ts +46 -0
  284. package/dist/cjs/storage/storage-config-update.d.ts.map +1 -0
  285. package/dist/cjs/storage/storage-config-update.js +133 -0
  286. package/dist/cjs/storage/storage-config-update.js.map +1 -0
  287. package/dist/cjs/storage/storage-connection-test.d.ts +129 -0
  288. package/dist/cjs/storage/storage-connection-test.d.ts.map +1 -0
  289. package/dist/cjs/storage/storage-connection-test.js +244 -0
  290. package/dist/cjs/storage/storage-connection-test.js.map +1 -0
  291. package/dist/cjs/storage/storage-status.d.ts +16 -0
  292. package/dist/cjs/storage/storage-status.d.ts.map +1 -0
  293. package/dist/cjs/storage/storage-status.js +23 -0
  294. package/dist/cjs/storage/storage-status.js.map +1 -0
  295. package/dist/cjs/telemetry/config.d.ts +4 -0
  296. package/dist/cjs/telemetry/config.d.ts.map +1 -1
  297. package/dist/cjs/telemetry/config.js +16 -2
  298. package/dist/cjs/telemetry/config.js.map +1 -1
  299. package/dist/cjs/telemetry/connection.d.ts +1 -1
  300. package/dist/cjs/telemetry/constants.d.ts +378 -6
  301. package/dist/cjs/telemetry/constants.d.ts.map +1 -1
  302. package/dist/cjs/telemetry/constants.js +290 -5
  303. package/dist/cjs/telemetry/constants.js.map +1 -1
  304. package/dist/cjs/telemetry/dashboard.d.ts +188 -17
  305. package/dist/cjs/telemetry/dashboard.d.ts.map +1 -1
  306. package/dist/cjs/telemetry/dashboard.js +61 -3
  307. package/dist/cjs/telemetry/dashboard.js.map +1 -1
  308. package/dist/cjs/telemetry/index.d.ts +4 -4
  309. package/dist/cjs/telemetry/index.d.ts.map +1 -1
  310. package/dist/cjs/telemetry/index.js +35 -3
  311. package/dist/cjs/telemetry/index.js.map +1 -1
  312. package/dist/cjs/telemetry/presentation.d.ts +243 -0
  313. package/dist/cjs/telemetry/presentation.d.ts.map +1 -0
  314. package/dist/cjs/telemetry/presentation.js +300 -0
  315. package/dist/cjs/telemetry/presentation.js.map +1 -0
  316. package/dist/cjs/telemetry/query.d.ts +2 -2
  317. package/dist/cjs/telemetry/schemas.d.ts +5 -2
  318. package/dist/cjs/telemetry/schemas.d.ts.map +1 -1
  319. package/dist/cjs/telemetry/schemas.js +21 -1
  320. package/dist/cjs/telemetry/schemas.js.map +1 -1
  321. package/dist/cjs/telemetry/stack.d.ts +5 -5
  322. package/dist/cjs/telemetry/store.d.ts +111 -0
  323. package/dist/cjs/telemetry/store.d.ts.map +1 -0
  324. package/dist/cjs/telemetry/store.js +83 -0
  325. package/dist/cjs/telemetry/store.js.map +1 -0
  326. package/dist/cjs/user-data/constants.d.ts +157 -0
  327. package/dist/cjs/user-data/constants.d.ts.map +1 -0
  328. package/dist/cjs/user-data/constants.js +137 -0
  329. package/dist/cjs/user-data/constants.js.map +1 -0
  330. package/dist/cjs/user-data/index.d.ts +5 -0
  331. package/dist/cjs/user-data/index.d.ts.map +1 -0
  332. package/dist/cjs/user-data/index.js +46 -0
  333. package/dist/cjs/user-data/index.js.map +1 -0
  334. package/dist/cjs/user-data/schemas.d.ts +306 -0
  335. package/dist/cjs/user-data/schemas.d.ts.map +1 -0
  336. package/dist/cjs/user-data/schemas.js +333 -0
  337. package/dist/cjs/user-data/schemas.js.map +1 -0
  338. package/dist/esm/ai/capabilities.d.ts +85 -0
  339. package/dist/esm/ai/capabilities.d.ts.map +1 -0
  340. package/dist/esm/ai/capabilities.js +90 -0
  341. package/dist/esm/ai/capabilities.js.map +1 -0
  342. package/dist/esm/ai/constants.d.ts +239 -0
  343. package/dist/esm/ai/constants.d.ts.map +1 -0
  344. package/dist/esm/ai/constants.js +229 -0
  345. package/dist/esm/ai/constants.js.map +1 -0
  346. package/dist/esm/ai/features.d.ts +24 -0
  347. package/dist/esm/ai/features.d.ts.map +1 -0
  348. package/dist/esm/ai/features.js +30 -0
  349. package/dist/esm/ai/features.js.map +1 -0
  350. package/dist/esm/ai/index.d.ts +11 -0
  351. package/dist/esm/ai/index.d.ts.map +1 -0
  352. package/dist/esm/ai/index.js +16 -0
  353. package/dist/esm/ai/index.js.map +1 -0
  354. package/dist/esm/ai/org-keys.d.ts +50 -0
  355. package/dist/esm/ai/org-keys.d.ts.map +1 -0
  356. package/dist/esm/ai/org-keys.js +40 -0
  357. package/dist/esm/ai/org-keys.js.map +1 -0
  358. package/dist/esm/ai/schemas.d.ts +642 -0
  359. package/dist/esm/ai/schemas.d.ts.map +1 -0
  360. package/dist/esm/ai/schemas.js +889 -0
  361. package/dist/esm/ai/schemas.js.map +1 -0
  362. package/dist/esm/android-app/constants.d.ts +337 -0
  363. package/dist/esm/android-app/constants.d.ts.map +1 -0
  364. package/dist/esm/android-app/constants.js +306 -0
  365. package/dist/esm/android-app/constants.js.map +1 -0
  366. package/dist/esm/android-app/index.d.ts +5 -0
  367. package/dist/esm/android-app/index.d.ts.map +1 -0
  368. package/dist/esm/android-app/index.js +8 -0
  369. package/dist/esm/android-app/index.js.map +1 -0
  370. package/dist/esm/android-app/schemas.d.ts +358 -0
  371. package/dist/esm/android-app/schemas.d.ts.map +1 -0
  372. package/dist/esm/android-app/schemas.js +306 -0
  373. package/dist/esm/android-app/schemas.js.map +1 -0
  374. package/dist/esm/credentials/constants.d.ts +35 -0
  375. package/dist/esm/credentials/constants.d.ts.map +1 -0
  376. package/dist/esm/credentials/constants.js +36 -0
  377. package/dist/esm/credentials/constants.js.map +1 -0
  378. package/dist/esm/credentials/index.d.ts +5 -0
  379. package/dist/esm/credentials/index.d.ts.map +1 -0
  380. package/dist/esm/credentials/index.js +8 -0
  381. package/dist/esm/credentials/index.js.map +1 -0
  382. package/dist/esm/credentials/schemas.d.ts +64 -0
  383. package/dist/esm/credentials/schemas.d.ts.map +1 -0
  384. package/dist/esm/credentials/schemas.js +79 -0
  385. package/dist/esm/credentials/schemas.js.map +1 -0
  386. package/dist/esm/db-backup/config.d.ts +76 -0
  387. package/dist/esm/db-backup/config.d.ts.map +1 -0
  388. package/dist/esm/db-backup/config.js +112 -0
  389. package/dist/esm/db-backup/config.js.map +1 -0
  390. package/dist/esm/db-backup/constants.d.ts +314 -0
  391. package/dist/esm/db-backup/constants.d.ts.map +1 -0
  392. package/dist/esm/db-backup/constants.js +240 -0
  393. package/dist/esm/db-backup/constants.js.map +1 -0
  394. package/dist/esm/db-backup/index.d.ts +19 -0
  395. package/dist/esm/db-backup/index.d.ts.map +1 -0
  396. package/dist/esm/db-backup/index.js +25 -0
  397. package/dist/esm/db-backup/index.js.map +1 -0
  398. package/dist/esm/db-backup/node-credential.d.ts +37 -0
  399. package/dist/esm/db-backup/node-credential.d.ts.map +1 -0
  400. package/dist/esm/db-backup/node-credential.js +104 -0
  401. package/dist/esm/db-backup/node-credential.js.map +1 -0
  402. package/dist/esm/db-backup/node-result.d.ts +34 -0
  403. package/dist/esm/db-backup/node-result.d.ts.map +1 -0
  404. package/dist/esm/db-backup/node-result.js +165 -0
  405. package/dist/esm/db-backup/node-result.js.map +1 -0
  406. package/dist/esm/db-backup/restore.d.ts +405 -0
  407. package/dist/esm/db-backup/restore.d.ts.map +1 -0
  408. package/dist/esm/db-backup/restore.js +494 -0
  409. package/dist/esm/db-backup/restore.js.map +1 -0
  410. package/dist/esm/db-backup/run-actions.d.ts +49 -0
  411. package/dist/esm/db-backup/run-actions.d.ts.map +1 -0
  412. package/dist/esm/db-backup/run-actions.js +118 -0
  413. package/dist/esm/db-backup/run-actions.js.map +1 -0
  414. package/dist/esm/db-backup/runs-list-query.d.ts +20 -0
  415. package/dist/esm/db-backup/runs-list-query.d.ts.map +1 -0
  416. package/dist/esm/db-backup/runs-list-query.js +50 -0
  417. package/dist/esm/db-backup/runs-list-query.js.map +1 -0
  418. package/dist/esm/db-backup/runs.d.ts +46 -0
  419. package/dist/esm/db-backup/runs.d.ts.map +1 -0
  420. package/dist/esm/db-backup/runs.js +229 -0
  421. package/dist/esm/db-backup/runs.js.map +1 -0
  422. package/dist/esm/db-backup/schemas.d.ts +9 -0
  423. package/dist/esm/db-backup/schemas.d.ts.map +1 -0
  424. package/dist/esm/db-backup/schemas.js +15 -0
  425. package/dist/esm/db-backup/schemas.js.map +1 -0
  426. package/dist/esm/db-backup/settings-schemas.d.ts +217 -0
  427. package/dist/esm/db-backup/settings-schemas.d.ts.map +1 -0
  428. package/dist/esm/db-backup/settings-schemas.js +316 -0
  429. package/dist/esm/db-backup/settings-schemas.js.map +1 -0
  430. package/dist/esm/email/constants.d.ts +82 -0
  431. package/dist/esm/email/constants.d.ts.map +1 -0
  432. package/dist/esm/email/constants.js +79 -0
  433. package/dist/esm/email/constants.js.map +1 -0
  434. package/dist/esm/email/index.d.ts +5 -0
  435. package/dist/esm/email/index.d.ts.map +1 -0
  436. package/dist/esm/email/index.js +8 -0
  437. package/dist/esm/email/index.js.map +1 -0
  438. package/dist/esm/email/schemas.d.ts +276 -0
  439. package/dist/esm/email/schemas.d.ts.map +1 -0
  440. package/dist/esm/email/schemas.js +277 -0
  441. package/dist/esm/email/schemas.js.map +1 -0
  442. package/dist/esm/exports/constants.d.ts +123 -0
  443. package/dist/esm/exports/constants.d.ts.map +1 -0
  444. package/dist/esm/exports/constants.js +106 -0
  445. package/dist/esm/exports/constants.js.map +1 -0
  446. package/dist/esm/exports/index.d.ts +5 -0
  447. package/dist/esm/exports/index.d.ts.map +1 -0
  448. package/dist/esm/exports/index.js +7 -0
  449. package/dist/esm/exports/index.js.map +1 -0
  450. package/dist/esm/exports/schemas.d.ts +386 -0
  451. package/dist/esm/exports/schemas.d.ts.map +1 -0
  452. package/dist/esm/exports/schemas.js +285 -0
  453. package/dist/esm/exports/schemas.js.map +1 -0
  454. package/dist/esm/identity/constants.d.ts +273 -0
  455. package/dist/esm/identity/constants.d.ts.map +1 -0
  456. package/dist/esm/identity/constants.js +244 -0
  457. package/dist/esm/identity/constants.js.map +1 -0
  458. package/dist/esm/identity/index.d.ts +5 -0
  459. package/dist/esm/identity/index.d.ts.map +1 -0
  460. package/dist/esm/identity/index.js +10 -0
  461. package/dist/esm/identity/index.js.map +1 -0
  462. package/dist/esm/identity/schemas.d.ts +784 -0
  463. package/dist/esm/identity/schemas.d.ts.map +1 -0
  464. package/dist/esm/identity/schemas.js +681 -0
  465. package/dist/esm/identity/schemas.js.map +1 -0
  466. package/dist/esm/jobs/constants.d.ts +135 -0
  467. package/dist/esm/jobs/constants.d.ts.map +1 -0
  468. package/dist/esm/jobs/constants.js +127 -0
  469. package/dist/esm/jobs/constants.js.map +1 -0
  470. package/dist/esm/jobs/index.d.ts +9 -0
  471. package/dist/esm/jobs/index.d.ts.map +1 -0
  472. package/dist/esm/jobs/index.js +11 -0
  473. package/dist/esm/jobs/index.js.map +1 -0
  474. package/dist/esm/jobs/retention-schemas.d.ts +252 -0
  475. package/dist/esm/jobs/retention-schemas.d.ts.map +1 -0
  476. package/dist/esm/jobs/retention-schemas.js +229 -0
  477. package/dist/esm/jobs/retention-schemas.js.map +1 -0
  478. package/dist/esm/jobs/schemas.d.ts +361 -0
  479. package/dist/esm/jobs/schemas.d.ts.map +1 -0
  480. package/dist/esm/jobs/schemas.js +703 -0
  481. package/dist/esm/jobs/schemas.js.map +1 -0
  482. package/dist/esm/jobs/settings-schemas.d.ts +84 -0
  483. package/dist/esm/jobs/settings-schemas.d.ts.map +1 -0
  484. package/dist/esm/jobs/settings-schemas.js +113 -0
  485. package/dist/esm/jobs/settings-schemas.js.map +1 -0
  486. package/dist/esm/nodes/admin-schemas.d.ts +204 -0
  487. package/dist/esm/nodes/admin-schemas.d.ts.map +1 -0
  488. package/dist/esm/nodes/admin-schemas.js +150 -0
  489. package/dist/esm/nodes/admin-schemas.js.map +1 -0
  490. package/dist/esm/nodes/constants.d.ts +86 -0
  491. package/dist/esm/nodes/constants.d.ts.map +1 -0
  492. package/dist/esm/nodes/constants.js +99 -0
  493. package/dist/esm/nodes/constants.js.map +1 -0
  494. package/dist/esm/nodes/index.d.ts +8 -0
  495. package/dist/esm/nodes/index.d.ts.map +1 -0
  496. package/dist/esm/nodes/index.js +11 -0
  497. package/dist/esm/nodes/index.js.map +1 -0
  498. package/dist/esm/nodes/schemas.d.ts +332 -0
  499. package/dist/esm/nodes/schemas.d.ts.map +1 -0
  500. package/dist/esm/nodes/schemas.js +934 -0
  501. package/dist/esm/nodes/schemas.js.map +1 -0
  502. package/dist/esm/nodes/settings-schemas.d.ts +82 -0
  503. package/dist/esm/nodes/settings-schemas.d.ts.map +1 -0
  504. package/dist/esm/nodes/settings-schemas.js +103 -0
  505. package/dist/esm/nodes/settings-schemas.js.map +1 -0
  506. package/dist/esm/notifications/constants.d.ts +197 -0
  507. package/dist/esm/notifications/constants.d.ts.map +1 -0
  508. package/dist/esm/notifications/constants.js +178 -0
  509. package/dist/esm/notifications/constants.js.map +1 -0
  510. package/dist/esm/notifications/index.d.ts +5 -0
  511. package/dist/esm/notifications/index.d.ts.map +1 -0
  512. package/dist/esm/notifications/index.js +9 -0
  513. package/dist/esm/notifications/index.js.map +1 -0
  514. package/dist/esm/notifications/schemas.d.ts +1016 -0
  515. package/dist/esm/notifications/schemas.d.ts.map +1 -0
  516. package/dist/esm/notifications/schemas.js +848 -0
  517. package/dist/esm/notifications/schemas.js.map +1 -0
  518. package/dist/esm/onboarding/constants.d.ts +138 -0
  519. package/dist/esm/onboarding/constants.d.ts.map +1 -0
  520. package/dist/esm/onboarding/constants.js +120 -0
  521. package/dist/esm/onboarding/constants.js.map +1 -0
  522. package/dist/esm/onboarding/index.d.ts +5 -0
  523. package/dist/esm/onboarding/index.d.ts.map +1 -0
  524. package/dist/esm/onboarding/index.js +7 -0
  525. package/dist/esm/onboarding/index.js.map +1 -0
  526. package/dist/esm/onboarding/schemas.d.ts +360 -0
  527. package/dist/esm/onboarding/schemas.d.ts.map +1 -0
  528. package/dist/esm/onboarding/schemas.js +257 -0
  529. package/dist/esm/onboarding/schemas.js.map +1 -0
  530. package/dist/esm/settings/constants.d.ts +206 -0
  531. package/dist/esm/settings/constants.d.ts.map +1 -0
  532. package/dist/esm/settings/constants.js +197 -0
  533. package/dist/esm/settings/constants.js.map +1 -0
  534. package/dist/esm/settings/index.d.ts +6 -0
  535. package/dist/esm/settings/index.d.ts.map +1 -0
  536. package/dist/esm/settings/index.js +11 -0
  537. package/dist/esm/settings/index.js.map +1 -0
  538. package/dist/esm/settings/schemas.d.ts +574 -0
  539. package/dist/esm/settings/schemas.d.ts.map +1 -0
  540. package/dist/esm/settings/schemas.js +434 -0
  541. package/dist/esm/settings/schemas.js.map +1 -0
  542. package/dist/esm/settings/types.d.ts +79 -0
  543. package/dist/esm/settings/types.d.ts.map +1 -0
  544. package/dist/esm/settings/types.js +5 -0
  545. package/dist/esm/settings/types.js.map +1 -0
  546. package/dist/esm/sharing/constants.d.ts +216 -0
  547. package/dist/esm/sharing/constants.d.ts.map +1 -0
  548. package/dist/esm/sharing/constants.js +159 -0
  549. package/dist/esm/sharing/constants.js.map +1 -0
  550. package/dist/esm/sharing/enum.d.ts +5 -0
  551. package/dist/esm/sharing/enum.d.ts.map +1 -0
  552. package/dist/esm/sharing/enum.js +6 -0
  553. package/dist/esm/sharing/enum.js.map +1 -0
  554. package/dist/esm/sharing/grants.d.ts +490 -0
  555. package/dist/esm/sharing/grants.d.ts.map +1 -0
  556. package/dist/esm/sharing/grants.js +444 -0
  557. package/dist/esm/sharing/grants.js.map +1 -0
  558. package/dist/esm/sharing/groups.d.ts +410 -0
  559. package/dist/esm/sharing/groups.d.ts.map +1 -0
  560. package/dist/esm/sharing/groups.js +372 -0
  561. package/dist/esm/sharing/groups.js.map +1 -0
  562. package/dist/esm/sharing/index.d.ts +5 -0
  563. package/dist/esm/sharing/index.d.ts.map +1 -0
  564. package/dist/esm/sharing/index.js +11 -0
  565. package/dist/esm/sharing/index.js.map +1 -0
  566. package/dist/esm/sharing/schemas.d.ts +3 -0
  567. package/dist/esm/sharing/schemas.d.ts.map +1 -0
  568. package/dist/esm/sharing/schemas.js +5 -0
  569. package/dist/esm/sharing/schemas.js.map +1 -0
  570. package/dist/esm/storage/constants.d.ts +111 -0
  571. package/dist/esm/storage/constants.d.ts.map +1 -0
  572. package/dist/esm/storage/constants.js +104 -0
  573. package/dist/esm/storage/constants.js.map +1 -0
  574. package/dist/esm/storage/index.d.ts +27 -0
  575. package/dist/esm/storage/index.d.ts.map +1 -0
  576. package/dist/esm/storage/index.js +23 -0
  577. package/dist/esm/storage/index.js.map +1 -0
  578. package/dist/esm/storage/objects-complete-upload.d.ts +19 -0
  579. package/dist/esm/storage/objects-complete-upload.d.ts.map +1 -0
  580. package/dist/esm/storage/objects-complete-upload.js +16 -0
  581. package/dist/esm/storage/objects-complete-upload.js.map +1 -0
  582. package/dist/esm/storage/objects-download-url.d.ts +17 -0
  583. package/dist/esm/storage/objects-download-url.d.ts.map +1 -0
  584. package/dist/esm/storage/objects-download-url.js +13 -0
  585. package/dist/esm/storage/objects-download-url.js.map +1 -0
  586. package/dist/esm/storage/objects-init-upload.d.ts +39 -0
  587. package/dist/esm/storage/objects-init-upload.d.ts.map +1 -0
  588. package/dist/esm/storage/objects-init-upload.js +37 -0
  589. package/dist/esm/storage/objects-init-upload.js.map +1 -0
  590. package/dist/esm/storage/objects-list-query.d.ts +50 -0
  591. package/dist/esm/storage/objects-list-query.d.ts.map +1 -0
  592. package/dist/esm/storage/objects-list-query.js +20 -0
  593. package/dist/esm/storage/objects-list-query.js.map +1 -0
  594. package/dist/esm/storage/objects-object-response.d.ts +49 -0
  595. package/dist/esm/storage/objects-object-response.d.ts.map +1 -0
  596. package/dist/esm/storage/objects-object-response.js +51 -0
  597. package/dist/esm/storage/objects-object-response.js.map +1 -0
  598. package/dist/esm/storage/objects-update-metadata.d.ts +16 -0
  599. package/dist/esm/storage/objects-update-metadata.d.ts.map +1 -0
  600. package/dist/esm/storage/objects-update-metadata.js +11 -0
  601. package/dist/esm/storage/objects-update-metadata.js.map +1 -0
  602. package/dist/esm/storage/schemas.d.ts +13 -0
  603. package/dist/esm/storage/schemas.d.ts.map +1 -0
  604. package/dist/esm/storage/schemas.js +19 -0
  605. package/dist/esm/storage/schemas.js.map +1 -0
  606. package/dist/esm/storage/settings-schemas.d.ts +188 -0
  607. package/dist/esm/storage/settings-schemas.d.ts.map +1 -0
  608. package/dist/esm/storage/settings-schemas.js +220 -0
  609. package/dist/esm/storage/settings-schemas.js.map +1 -0
  610. package/dist/esm/storage/storage-bucket-provision.d.ts +152 -0
  611. package/dist/esm/storage/storage-bucket-provision.d.ts.map +1 -0
  612. package/dist/esm/storage/storage-bucket-provision.js +213 -0
  613. package/dist/esm/storage/storage-bucket-provision.js.map +1 -0
  614. package/dist/esm/storage/storage-config-response.d.ts +99 -0
  615. package/dist/esm/storage/storage-config-response.d.ts.map +1 -0
  616. package/dist/esm/storage/storage-config-response.js +170 -0
  617. package/dist/esm/storage/storage-config-response.js.map +1 -0
  618. package/dist/esm/storage/storage-config-update.d.ts +46 -0
  619. package/dist/esm/storage/storage-config-update.d.ts.map +1 -0
  620. package/dist/esm/storage/storage-config-update.js +130 -0
  621. package/dist/esm/storage/storage-config-update.js.map +1 -0
  622. package/dist/esm/storage/storage-connection-test.d.ts +129 -0
  623. package/dist/esm/storage/storage-connection-test.d.ts.map +1 -0
  624. package/dist/esm/storage/storage-connection-test.js +241 -0
  625. package/dist/esm/storage/storage-connection-test.js.map +1 -0
  626. package/dist/esm/storage/storage-status.d.ts +16 -0
  627. package/dist/esm/storage/storage-status.d.ts.map +1 -0
  628. package/dist/esm/storage/storage-status.js +20 -0
  629. package/dist/esm/storage/storage-status.js.map +1 -0
  630. package/dist/esm/telemetry/config.d.ts +4 -0
  631. package/dist/esm/telemetry/config.d.ts.map +1 -1
  632. package/dist/esm/telemetry/config.js +16 -2
  633. package/dist/esm/telemetry/config.js.map +1 -1
  634. package/dist/esm/telemetry/connection.d.ts +1 -1
  635. package/dist/esm/telemetry/constants.d.ts +378 -6
  636. package/dist/esm/telemetry/constants.d.ts.map +1 -1
  637. package/dist/esm/telemetry/constants.js +288 -4
  638. package/dist/esm/telemetry/constants.js.map +1 -1
  639. package/dist/esm/telemetry/dashboard.d.ts +188 -17
  640. package/dist/esm/telemetry/dashboard.d.ts.map +1 -1
  641. package/dist/esm/telemetry/dashboard.js +61 -3
  642. package/dist/esm/telemetry/dashboard.js.map +1 -1
  643. package/dist/esm/telemetry/index.d.ts +4 -4
  644. package/dist/esm/telemetry/index.d.ts.map +1 -1
  645. package/dist/esm/telemetry/index.js +2 -2
  646. package/dist/esm/telemetry/index.js.map +1 -1
  647. package/dist/esm/telemetry/presentation.d.ts +243 -0
  648. package/dist/esm/telemetry/presentation.d.ts.map +1 -0
  649. package/dist/esm/telemetry/presentation.js +297 -0
  650. package/dist/esm/telemetry/presentation.js.map +1 -0
  651. package/dist/esm/telemetry/query.d.ts +2 -2
  652. package/dist/esm/telemetry/schemas.d.ts +5 -2
  653. package/dist/esm/telemetry/schemas.d.ts.map +1 -1
  654. package/dist/esm/telemetry/schemas.js +3 -1
  655. package/dist/esm/telemetry/schemas.js.map +1 -1
  656. package/dist/esm/telemetry/stack.d.ts +5 -5
  657. package/dist/esm/telemetry/store.d.ts +111 -0
  658. package/dist/esm/telemetry/store.d.ts.map +1 -0
  659. package/dist/esm/telemetry/store.js +80 -0
  660. package/dist/esm/telemetry/store.js.map +1 -0
  661. package/dist/esm/user-data/constants.d.ts +157 -0
  662. package/dist/esm/user-data/constants.d.ts.map +1 -0
  663. package/dist/esm/user-data/constants.js +134 -0
  664. package/dist/esm/user-data/constants.js.map +1 -0
  665. package/dist/esm/user-data/index.d.ts +5 -0
  666. package/dist/esm/user-data/index.d.ts.map +1 -0
  667. package/dist/esm/user-data/index.js +7 -0
  668. package/dist/esm/user-data/index.js.map +1 -0
  669. package/dist/esm/user-data/schemas.d.ts +306 -0
  670. package/dist/esm/user-data/schemas.d.ts.map +1 -0
  671. package/dist/esm/user-data/schemas.js +330 -0
  672. package/dist/esm/user-data/schemas.js.map +1 -0
  673. package/package.json +151 -1
@@ -0,0 +1,276 @@
1
+ import { z } from 'zod';
2
+ import type { BuiltinEmailProviderKind } from './constants.js';
3
+ /**
4
+ * The entries of the former transport enum: each built-in kind keyed by itself.
5
+ *
6
+ * @deprecated The transport is an open id now ({@link emailTransportIdSchema}).
7
+ * @stability stable
8
+ */
9
+ export type EmailProviderKindEnum = {
10
+ [K in BuiltinEmailProviderKind]: K;
11
+ };
12
+ /**
13
+ * An email transport id: any string matching {@link EMAIL_TRANSPORT_ID_PATTERN}.
14
+ * Not an enum: an app registers transports (`registerEmailTransport`), and the
15
+ * API validates the id against the registry.
16
+ *
17
+ * @extensionPoint option
18
+ * @stability experimental
19
+ */
20
+ export declare const emailTransportIdSchema: z.ZodString;
21
+ /**
22
+ * One transport's non-secret settings as stored: whatever that transport's
23
+ * `settingsSchema` declares. The contract cannot see the registry, so it
24
+ * checks the shape (a record) and the API validates each entry with the
25
+ * transport that owns it.
26
+ *
27
+ * @stability experimental
28
+ */
29
+ export declare const emailTransportSettingsSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
30
+ /**
31
+ * The `transports` record: transport id to that transport's settings.
32
+ *
33
+ * @stability experimental
34
+ */
35
+ export declare const emailTransportsSchema: z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnknown>>;
36
+ /**
37
+ * The `transports` record of a PUT: `null` removes a transport's stored
38
+ * settings (back to its defaults), an object is merged over them.
39
+ *
40
+ * @stability experimental
41
+ */
42
+ export declare const emailTransportsPatchSchema: z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
43
+ /**
44
+ * The admin-configurable half of email delivery: which transport, where it
45
+ * lives, who the mail claims to be from. Ordinary configuration, safe to
46
+ * return from an admin endpoint; stored in the `email` row of
47
+ * `system_settings`.
48
+ *
49
+ * @stability stable
50
+ */
51
+ export declare const emailSettingsSchema: z.ZodObject<{
52
+ provider: z.ZodNullable<z.ZodString>;
53
+ enabled: z.ZodBoolean;
54
+ transports: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
55
+ sesRegion: z.ZodOptional<z.ZodString>;
56
+ sesAccessKeyId: z.ZodOptional<z.ZodString>;
57
+ smtpHost: z.ZodOptional<z.ZodString>;
58
+ smtpPort: z.ZodOptional<z.ZodNumber>;
59
+ smtpUseTls: z.ZodOptional<z.ZodBoolean>;
60
+ smtpUsername: z.ZodOptional<z.ZodString>;
61
+ fromAddress: z.ZodOptional<z.ZodEmail>;
62
+ fromName: z.ZodOptional<z.ZodString>;
63
+ }, z.core.$strip>;
64
+ /**
65
+ * Validated email settings.
66
+ *
67
+ * @stability stable
68
+ */
69
+ export type EmailSettings = z.infer<typeof emailSettingsSchema>;
70
+ /**
71
+ * What a system with no email configuration reads as: no transport, switched
72
+ * off.
73
+ *
74
+ * @stability stable
75
+ */
76
+ export declare const DEFAULT_EMAIL_SETTINGS: EmailSettings;
77
+ /**
78
+ * What the admin page knows about a stored secret (the SMTP password, the SES
79
+ * secret access key) without being told the secret: whether it is set, the
80
+ * store's mask, and when and by whom it was last written.
81
+ *
82
+ * @stability stable
83
+ */
84
+ export declare const credentialStatusSchema: z.ZodObject<{
85
+ configured: z.ZodBoolean;
86
+ hint: z.ZodNullable<z.ZodString>;
87
+ updatedAt: z.ZodNullable<z.ZodISODateTime>;
88
+ updatedByUserId: z.ZodNullable<z.ZodUUID>;
89
+ }, z.core.$strip>;
90
+ /**
91
+ * The masked status of one stored secret.
92
+ *
93
+ * @stability stable
94
+ */
95
+ export type EmailCredentialStatusDto = z.infer<typeof credentialStatusSchema>;
96
+ /**
97
+ * The `GET` and `PUT /api/email-settings` response body (inside the global
98
+ * `{ data }` envelope): the settings, a descriptor per registered transport,
99
+ * the masked status of every transport secret, why
100
+ * the stored row could not be read (field paths only; the read degrades to
101
+ * the defaults instead of failing, so the page that repairs the row still
102
+ * renders), and the row's version for `If-Match`.
103
+ *
104
+ * @stability stable
105
+ */
106
+ export declare const emailSettingsResponseSchema: z.ZodObject<{
107
+ provider: z.ZodNullable<z.ZodString>;
108
+ enabled: z.ZodBoolean;
109
+ sesRegion: z.ZodOptional<z.ZodString>;
110
+ sesAccessKeyId: z.ZodOptional<z.ZodString>;
111
+ smtpHost: z.ZodOptional<z.ZodString>;
112
+ smtpPort: z.ZodOptional<z.ZodNumber>;
113
+ smtpUseTls: z.ZodOptional<z.ZodBoolean>;
114
+ smtpUsername: z.ZodOptional<z.ZodString>;
115
+ fromAddress: z.ZodOptional<z.ZodEmail>;
116
+ fromName: z.ZodOptional<z.ZodString>;
117
+ transports: z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnknown>>;
118
+ descriptors: z.ZodArray<z.ZodObject<{
119
+ kind: z.ZodString;
120
+ id: z.ZodString;
121
+ label: z.ZodString;
122
+ description: z.ZodOptional<z.ZodString>;
123
+ fields: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
124
+ kind: z.ZodLiteral<"boolean">;
125
+ name: z.ZodString;
126
+ label: z.ZodString;
127
+ help: z.ZodOptional<z.ZodString>;
128
+ }, z.core.$strip>, z.ZodObject<{
129
+ kind: z.ZodLiteral<"enum">;
130
+ options: z.ZodArray<z.ZodString>;
131
+ name: z.ZodString;
132
+ label: z.ZodString;
133
+ help: z.ZodOptional<z.ZodString>;
134
+ }, z.core.$strip>, z.ZodObject<{
135
+ kind: z.ZodLiteral<"number">;
136
+ min: z.ZodOptional<z.ZodNumber>;
137
+ max: z.ZodOptional<z.ZodNumber>;
138
+ integer: z.ZodOptional<z.ZodBoolean>;
139
+ name: z.ZodString;
140
+ label: z.ZodString;
141
+ help: z.ZodOptional<z.ZodString>;
142
+ }, z.core.$strip>, z.ZodObject<{
143
+ kind: z.ZodLiteral<"string">;
144
+ maxLength: z.ZodOptional<z.ZodNumber>;
145
+ name: z.ZodString;
146
+ label: z.ZodString;
147
+ help: z.ZodOptional<z.ZodString>;
148
+ }, z.core.$strip>, z.ZodObject<{
149
+ kind: z.ZodLiteral<"other">;
150
+ name: z.ZodString;
151
+ label: z.ZodString;
152
+ help: z.ZodOptional<z.ZodString>;
153
+ }, z.core.$strip>, z.ZodObject<{
154
+ kind: z.ZodLiteral<"secret">;
155
+ hasValue: z.ZodBoolean;
156
+ required: z.ZodBoolean;
157
+ name: z.ZodString;
158
+ label: z.ZodString;
159
+ help: z.ZodOptional<z.ZodString>;
160
+ }, z.core.$strip>], "kind">>;
161
+ }, z.core.$strip>>;
162
+ secretStatuses: z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodObject<{
163
+ configured: z.ZodBoolean;
164
+ hint: z.ZodNullable<z.ZodString>;
165
+ updatedAt: z.ZodNullable<z.ZodISODateTime>;
166
+ updatedByUserId: z.ZodNullable<z.ZodUUID>;
167
+ }, z.core.$strip>>>;
168
+ smtpPasswordStatus: z.ZodObject<{
169
+ configured: z.ZodBoolean;
170
+ hint: z.ZodNullable<z.ZodString>;
171
+ updatedAt: z.ZodNullable<z.ZodISODateTime>;
172
+ updatedByUserId: z.ZodNullable<z.ZodUUID>;
173
+ }, z.core.$strip>;
174
+ sesSecretAccessKeyStatus: z.ZodObject<{
175
+ configured: z.ZodBoolean;
176
+ hint: z.ZodNullable<z.ZodString>;
177
+ updatedAt: z.ZodNullable<z.ZodISODateTime>;
178
+ updatedByUserId: z.ZodNullable<z.ZodUUID>;
179
+ }, z.core.$strip>;
180
+ settingsError: z.ZodNullable<z.ZodString>;
181
+ version: z.ZodNumber;
182
+ updatedAt: z.ZodNullable<z.ZodISODateTime>;
183
+ updatedBy: z.ZodNullable<z.ZodObject<{
184
+ id: z.ZodUUID;
185
+ email: z.ZodEmail;
186
+ }, z.core.$strip>>;
187
+ }, z.core.$strip>;
188
+ /**
189
+ * The GET/PUT response body, as sent.
190
+ *
191
+ * @stability stable
192
+ */
193
+ export type EmailSettingsResponse = z.infer<typeof emailSettingsResponseSchema>;
194
+ /**
195
+ * The `PUT /api/email-settings` body: every settings field (blankable), the
196
+ * `transports` patch, plus the WRITE-ONLY secrets (`secrets`, and the two
197
+ * legacy aliases). A blank secret (absent, `null` or `''`)
198
+ * preserves the stored one; erasing a stored secret is not expressible here.
199
+ *
200
+ * @stability stable
201
+ */
202
+ export declare const updateEmailSettingsSchema: z.ZodObject<{
203
+ provider: z.ZodNullable<z.ZodString>;
204
+ enabled: z.ZodBoolean;
205
+ transports: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>>;
206
+ sesRegion: z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodLiteral<"">, z.ZodNull]>, z.ZodOptional<z.ZodString>]>;
207
+ sesAccessKeyId: z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodLiteral<"">, z.ZodNull]>, z.ZodOptional<z.ZodString>]>;
208
+ smtpHost: z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodLiteral<"">, z.ZodNull]>, z.ZodOptional<z.ZodString>]>;
209
+ smtpPort: z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodLiteral<"">, z.ZodNull]>, z.ZodOptional<z.ZodNumber>]>;
210
+ smtpUseTls: z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodLiteral<"">, z.ZodNull]>, z.ZodOptional<z.ZodBoolean>]>;
211
+ smtpUsername: z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodLiteral<"">, z.ZodNull]>, z.ZodOptional<z.ZodString>]>;
212
+ fromAddress: z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodLiteral<"">, z.ZodNull]>, z.ZodOptional<z.ZodEmail>]>;
213
+ fromName: z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodLiteral<"">, z.ZodNull]>, z.ZodOptional<z.ZodString>]>;
214
+ smtpPassword: z.ZodOptional<z.ZodNullable<z.ZodString>>;
215
+ sesSecretAccessKey: z.ZodOptional<z.ZodNullable<z.ZodString>>;
216
+ secrets: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodOptional<z.ZodNullable<z.ZodString>>>>>;
217
+ }, z.core.$strip>;
218
+ /**
219
+ * The parsed PUT body, secrets included.
220
+ *
221
+ * @stability stable
222
+ */
223
+ export type UpdateEmailSettingsInput = z.infer<typeof updateEmailSettingsSchema>;
224
+ /**
225
+ * The `POST /api/email-settings/test` response body. HTTP 200 even when the
226
+ * send failed: read `success`, and show `error`, the provider's own message
227
+ * (already redacted of every credential and length-capped by the API).
228
+ *
229
+ * @stability stable
230
+ */
231
+ export declare const testEmailResultSchema: z.ZodObject<{
232
+ success: z.ZodBoolean;
233
+ sentTo: z.ZodEmail;
234
+ providerKind: z.ZodNullable<z.ZodString>;
235
+ messageId: z.ZodNullable<z.ZodString>;
236
+ error: z.ZodNullable<z.ZodString>;
237
+ attemptedAt: z.ZodISODateTime;
238
+ }, z.core.$strip>;
239
+ /**
240
+ * The POST /test response body.
241
+ *
242
+ * @stability stable
243
+ */
244
+ export type TestEmailResult = z.infer<typeof testEmailResultSchema>;
245
+ /**
246
+ * The field names no email settings shape may declare (the compile-time
247
+ * proofs below check against them).
248
+ *
249
+ * @stability stable
250
+ */
251
+ export type EmailSecretFieldName = 'smtpPassword' | 'password' | 'secret' | 'apiKey' | 'accessKeyId' | 'secretAccessKey' | 'ciphertext';
252
+ /**
253
+ * `true` while {@link EmailSettings} has no secret-named field; `never` otherwise.
254
+ *
255
+ * @stability stable
256
+ */
257
+ export type EmailSettingsCarriesNoSecret = Extract<keyof EmailSettings, EmailSecretFieldName> extends never ? true : never;
258
+ /**
259
+ * The proof that {@link EmailSettings} carries no secret (fails to compile otherwise).
260
+ *
261
+ * @stability stable
262
+ */
263
+ export declare const EMAIL_SETTINGS_CARRIES_NO_SECRET: EmailSettingsCarriesNoSecret;
264
+ /**
265
+ * `true` while {@link EmailSettingsResponse} has no secret-named field; `never` otherwise.
266
+ *
267
+ * @stability stable
268
+ */
269
+ export type EmailSettingsResponseCarriesNoSecret = Extract<keyof EmailSettingsResponse, EmailSecretFieldName> extends never ? true : never;
270
+ /**
271
+ * The proof that {@link EmailSettingsResponse} carries no secret (fails to compile otherwise).
272
+ *
273
+ * @stability stable
274
+ */
275
+ export declare const EMAIL_SETTINGS_RESPONSE_CARRIES_NO_SECRET: EmailSettingsResponseCarriesNoSecret;
276
+ //# sourceMappingURL=schemas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../../src/email/schemas.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAE/D;;;;;GAKG;AACH,MAAM,MAAM,qBAAqB,GAAG;KAAG,CAAC,IAAI,wBAAwB,GAAG,CAAC;CAAE,CAAC;AAE3E;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB,aAA+C,CAAC;AAEnF;;;;;;;GAOG;AACH,eAAO,MAAM,4BAA4B,wCAAoC,CAAC;AAE9E;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,kEAAiE,CAAC;AAEpG;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,iFAA4E,CAAC;AAKpH;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;iBA6D9B,CAAC;AAEH;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,EAAE,aAGpC,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB;;;;;iBASjC,CAAC;AAEH;;;;GAIG;AACH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAE9E;;;;;;;;;GASG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAmCtC,CAAC;AAEH;;;;GAIG;AACH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAqBhF;;;;;;;GAOG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;iBAkCpC,CAAC;AAEH;;;;GAIG;AACH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAEjF;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB;;;;;;;iBAahC,CAAC;AAEH;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAYpE;;;;;GAKG;AACH,MAAM,MAAM,oBAAoB,GAC5B,cAAc,GACd,UAAU,GACV,QAAQ,GACR,QAAQ,GACR,aAAa,GACb,iBAAiB,GACjB,YAAY,CAAC;AAEjB;;;;GAIG;AACH,MAAM,MAAM,4BAA4B,GAAG,OAAO,CAAC,MAAM,aAAa,EAAE,oBAAoB,CAAC,SAAS,KAAK,GAAG,IAAI,GAAG,KAAK,CAAC;AAE3H;;;;GAIG;AACH,eAAO,MAAM,gCAAgC,EAAE,4BAAmC,CAAC;AAEnF;;;;GAIG;AACH,MAAM,MAAM,oCAAoC,GAC9C,OAAO,CAAC,MAAM,qBAAqB,EAAE,oBAAoB,CAAC,SAAS,KAAK,GAAG,IAAI,GAAG,KAAK,CAAC;AAE1F;;;;GAIG;AACH,eAAO,MAAM,yCAAyC,EAAE,oCAA2C,CAAC"}
@@ -0,0 +1,277 @@
1
+ // =============================================================================
2
+ // Email: the wire contract of `/api/email-settings` (issue #737, PP-8.4;
3
+ // shapes from #122, #124 and #585)
4
+ // =============================================================================
5
+ //
6
+ // The stored settings, the PUT body, the GET/PUT response and the test-send
7
+ // result. The API slice (`@marinoscar/platform-api/email`) wraps each with
8
+ // `createZodDto`; the web slice reads the inferred types.
9
+ //
10
+ // NO SECRET IS STORED IN THE SETTINGS. The SMTP password and the SES secret
11
+ // access key live in the encrypted credential store; the PUT body accepts
12
+ // them write-only, and the response describes them only as a masked status.
13
+ // Compile-time proofs at the bottom of this file fail the build the moment a
14
+ // secret-named field is added to the stored settings or to the response.
15
+ // =============================================================================
16
+ import { z } from 'zod';
17
+ import { pluggableDescriptorSchema } from '../settings/index.js';
18
+ import { EMAIL_TRANSPORT_ID_PATTERN } from './constants.js';
19
+ /**
20
+ * An email transport id: any string matching {@link EMAIL_TRANSPORT_ID_PATTERN}.
21
+ * Not an enum: an app registers transports (`registerEmailTransport`), and the
22
+ * API validates the id against the registry.
23
+ *
24
+ * @extensionPoint option
25
+ * @stability experimental
26
+ */
27
+ export const emailTransportIdSchema = z.string().regex(EMAIL_TRANSPORT_ID_PATTERN);
28
+ /**
29
+ * One transport's non-secret settings as stored: whatever that transport's
30
+ * `settingsSchema` declares. The contract cannot see the registry, so it
31
+ * checks the shape (a record) and the API validates each entry with the
32
+ * transport that owns it.
33
+ *
34
+ * @stability experimental
35
+ */
36
+ export const emailTransportSettingsSchema = z.record(z.string(), z.unknown());
37
+ /**
38
+ * The `transports` record: transport id to that transport's settings.
39
+ *
40
+ * @stability experimental
41
+ */
42
+ export const emailTransportsSchema = z.record(emailTransportIdSchema, emailTransportSettingsSchema);
43
+ /**
44
+ * The `transports` record of a PUT: `null` removes a transport's stored
45
+ * settings (back to its defaults), an object is merged over them.
46
+ *
47
+ * @stability experimental
48
+ */
49
+ export const emailTransportsPatchSchema = z.record(emailTransportIdSchema, emailTransportSettingsSchema.nullable());
50
+ // The transport, as the settings and the test-send result carry it.
51
+ const providerKindSchema = emailTransportIdSchema;
52
+ /**
53
+ * The admin-configurable half of email delivery: which transport, where it
54
+ * lives, who the mail claims to be from. Ordinary configuration, safe to
55
+ * return from an admin endpoint; stored in the `email` row of
56
+ * `system_settings`.
57
+ *
58
+ * @stability stable
59
+ */
60
+ export const emailSettingsSchema = z.object({
61
+ /**
62
+ * The id of the active transport: a built-in (`ses`, `smtp`) or one an app
63
+ * registered. `null` means "no transport chosen", the state of
64
+ * every fresh installation: a real, persisted state rather than an absent
65
+ * key.
66
+ */
67
+ provider: providerKindSchema.nullable(),
68
+ /** Master switch. Nothing is sent while this is false. */
69
+ enabled: z.boolean(),
70
+ /**
71
+ * Every transport's own non-secret settings, keyed by transport id
72
+ * (`transports.smtp.host`, `transports.my-relay.apiBase`), each validated by
73
+ * the transport that owns it. A row written before transports were pluggable
74
+ * has none: the API folds the flat fields below into `transports.ses` and
75
+ * `transports.smtp` when it reads such a row.
76
+ */
77
+ transports: emailTransportsSchema.optional(),
78
+ /**
79
+ * @deprecated Read view of `transports.ses.region`. SES region override. Absent means "use the deployment's SES region
80
+ * fallback" (`SES_REGION` in the reference app). A verified sending identity
81
+ * is regional, so the override is the usual case.
82
+ */
83
+ sesRegion: z.string().trim().min(1).optional(),
84
+ /**
85
+ * @deprecated Read view of `transports.ses.accessKeyId`. SES access key id. An IDENTIFIER, NOT A SECRET: it travels in clear in
86
+ * every SigV4 request. The secret access key lives in the credential store.
87
+ */
88
+ sesAccessKeyId: z.string().trim().min(1).optional(),
89
+ /** @deprecated Read view of `transports.smtp.host`. SMTP server host. */
90
+ smtpHost: z.string().trim().min(1).optional(),
91
+ /**
92
+ * @deprecated Read view of `transports.smtp.port`. SMTP port, validated here so a typo fails on the settings form rather than
93
+ * as a socket-level error.
94
+ */
95
+ smtpPort: z.number().int().min(1).max(65535).optional(),
96
+ /**
97
+ * @deprecated Read view of `transports.smtp.useTls`. Require TLS. Absent is treated as `true` by the provider: a mail
98
+ * credential must not cross the network in the clear because a checkbox was
99
+ * missing from a stored row.
100
+ */
101
+ smtpUseTls: z.boolean().optional(),
102
+ /**
103
+ * @deprecated Read view of `transports.smtp.username`. SMTP username. Absent means unauthenticated submission (an internal relay
104
+ * that authorises by source IP).
105
+ */
106
+ smtpUsername: z.string().trim().min(1).optional(),
107
+ /** Envelope and header sender, validated as an address. */
108
+ fromAddress: z.email().optional(),
109
+ /** Display name paired with `fromAddress`, e.g. `Acme <no-reply@acme.com>`. */
110
+ fromName: z.string().trim().min(1).max(100).optional(),
111
+ });
112
+ /**
113
+ * What a system with no email configuration reads as: no transport, switched
114
+ * off.
115
+ *
116
+ * @stability stable
117
+ */
118
+ export const DEFAULT_EMAIL_SETTINGS = {
119
+ provider: null,
120
+ enabled: false,
121
+ };
122
+ /**
123
+ * What the admin page knows about a stored secret (the SMTP password, the SES
124
+ * secret access key) without being told the secret: whether it is set, the
125
+ * store's mask, and when and by whom it was last written.
126
+ *
127
+ * @stability stable
128
+ */
129
+ export const credentialStatusSchema = z.object({
130
+ /** Is a secret stored at this credential's address? */
131
+ configured: z.boolean(),
132
+ /** The store's non-secret mask, e.g. `••••x9fQ`; null when nothing is stored. */
133
+ hint: z.string().nullable(),
134
+ /** When the stored secret was last written; null when nothing is stored. */
135
+ updatedAt: z.iso.datetime().nullable(),
136
+ /** Who last wrote it; null when nothing is stored, or the user was deleted. */
137
+ updatedByUserId: z.uuid().nullable(),
138
+ });
139
+ /**
140
+ * The `GET` and `PUT /api/email-settings` response body (inside the global
141
+ * `{ data }` envelope): the settings, a descriptor per registered transport,
142
+ * the masked status of every transport secret, why
143
+ * the stored row could not be read (field paths only; the read degrades to
144
+ * the defaults instead of failing, so the page that repairs the row still
145
+ * renders), and the row's version for `If-Match`.
146
+ *
147
+ * @stability stable
148
+ */
149
+ export const emailSettingsResponseSchema = emailSettingsSchema.extend({
150
+ /** Every REGISTERED transport's own settings, keyed by transport id, with its defaults filled. */
151
+ transports: emailTransportsSchema,
152
+ /**
153
+ * One descriptor per registered transport, in registration order: its id
154
+ * and label, its non-secret settings fields and one `secret` field per
155
+ * declared secret carrying only whether a value is stored (`hasValue`),
156
+ * never the value. The admin page renders any transport without
157
+ * hard-coded knowledge of it.
158
+ */
159
+ descriptors: z.array(pluggableDescriptorSchema),
160
+ /**
161
+ * The masked status of every declared secret of every registered transport:
162
+ * `{ <transportId>: { <secretName>: status } }`. Nothing here can carry a value.
163
+ */
164
+ secretStatuses: z.record(emailTransportIdSchema, z.record(z.string(), credentialStatusSchema)),
165
+ /** @deprecated `secretStatuses.smtp.password`. The SMTP password's masked status. */
166
+ smtpPasswordStatus: credentialStatusSchema,
167
+ /** @deprecated `secretStatuses.ses.secretAccessKey`. The SES secret access key's masked status. */
168
+ sesSecretAccessKeyStatus: credentialStatusSchema,
169
+ /** Why the stored configuration could not be read; null normally. Field paths only. */
170
+ settingsError: z.string().nullable(),
171
+ /** Bumped on every write; pass back as `If-Match` on PUT. `0` while nothing is stored. */
172
+ version: z.number().int(),
173
+ /** When the row last changed. */
174
+ updatedAt: z.iso.datetime().nullable(),
175
+ /** Who last changed it. */
176
+ updatedBy: z
177
+ .object({
178
+ /** The user's id. */
179
+ id: z.uuid(),
180
+ /** The user's address. */
181
+ email: z.email(),
182
+ })
183
+ .nullable(),
184
+ });
185
+ /**
186
+ * Length ceiling on a submitted secret. Not a security control: a bound on
187
+ * what a paste accident can push into an encrypted column.
188
+ */
189
+ const MAX_SECRET_LENGTH = 1024;
190
+ /**
191
+ * A settings field an admin left empty: a cleared input submits `''`, a reset
192
+ * controlled field `null`. A union rather than a `z.preprocess`, because the
193
+ * OpenAPI generator cannot represent a transform. The service converts both
194
+ * to "absent".
195
+ */
196
+ const unset = z.union([z.literal(''), z.null()]);
197
+ /** The stored rule for one field, plus the two "empty box" forms. */
198
+ function blankable(inner) {
199
+ return z.union([unset, inner]);
200
+ }
201
+ /**
202
+ * The `PUT /api/email-settings` body: every settings field (blankable), the
203
+ * `transports` patch, plus the WRITE-ONLY secrets (`secrets`, and the two
204
+ * legacy aliases). A blank secret (absent, `null` or `''`)
205
+ * preserves the stored one; erasing a stored secret is not expressible here.
206
+ *
207
+ * @stability stable
208
+ */
209
+ export const updateEmailSettingsSchema = emailSettingsSchema.extend({
210
+ /**
211
+ * Transport settings to merge, per transport id, each validated by the
212
+ * transport that owns it. `null` removes a transport's stored settings (back
213
+ * to its defaults); a setting a transport's entry omits keeps its stored
214
+ * value. `transports.<id>` wins over a legacy flat field for the same setting.
215
+ */
216
+ transports: emailTransportsPatchSchema.optional(),
217
+ /** @deprecated Alias of `transports.ses.region`; blank clears it. */
218
+ sesRegion: blankable(emailSettingsSchema.shape.sesRegion),
219
+ /** @deprecated Alias of `transports.ses.accessKeyId` (not a secret); blank clears it. */
220
+ sesAccessKeyId: blankable(emailSettingsSchema.shape.sesAccessKeyId),
221
+ /** @deprecated Alias of `transports.smtp.host`; blank clears it. */
222
+ smtpHost: blankable(emailSettingsSchema.shape.smtpHost),
223
+ /** @deprecated Alias of `transports.smtp.port`; blank clears it (587 applies). */
224
+ smtpPort: blankable(emailSettingsSchema.shape.smtpPort),
225
+ /** @deprecated Alias of `transports.smtp.useTls`; blank clears it (on applies). */
226
+ smtpUseTls: blankable(emailSettingsSchema.shape.smtpUseTls),
227
+ /** @deprecated Alias of `transports.smtp.username`; blank means unauthenticated submission. */
228
+ smtpUsername: blankable(emailSettingsSchema.shape.smtpUsername),
229
+ /** Sender address; blank clears it. */
230
+ fromAddress: blankable(emailSettingsSchema.shape.fromAddress),
231
+ /** Sender display name; blank clears it. */
232
+ fromName: blankable(emailSettingsSchema.shape.fromName),
233
+ /** The SMTP password. Write-only; blank preserves the stored one. Alias of `secrets.smtp.password`. */
234
+ smtpPassword: z.string().max(MAX_SECRET_LENGTH).nullish(),
235
+ /** The SES secret access key. Write-only; blank preserves the stored one. Alias of `secrets.ses.secretAccessKey`. */
236
+ sesSecretAccessKey: z.string().max(MAX_SECRET_LENGTH).nullish(),
237
+ /**
238
+ * WRITE-ONLY secrets of any transport: `{ <transportId>: { <secretName>: value } }`,
239
+ * the names the transport declares (`descriptors[].fields` of kind `secret`).
240
+ * A blank value keeps the stored one. Never echoed back.
241
+ */
242
+ secrets: z.record(emailTransportIdSchema, z.record(z.string(), z.string().max(4096).nullish())).optional(),
243
+ });
244
+ /**
245
+ * The `POST /api/email-settings/test` response body. HTTP 200 even when the
246
+ * send failed: read `success`, and show `error`, the provider's own message
247
+ * (already redacted of every credential and length-capped by the API).
248
+ *
249
+ * @stability stable
250
+ */
251
+ export const testEmailResultSchema = z.object({
252
+ /** Did the provider ACCEPT the message (not: was it delivered)? */
253
+ success: z.boolean(),
254
+ /** Where it went: always the caller's own address (there is no recipient parameter). */
255
+ sentTo: z.email(),
256
+ /** Which transport carried (or refused) it; null when none was configured. */
257
+ providerKind: providerKindSchema.nullable(),
258
+ /** The transport's message id, on success. */
259
+ messageId: z.string().nullable(),
260
+ /** The provider's error, verbatim after redaction; null on success. */
261
+ error: z.string().nullable(),
262
+ /** When the attempt was made (ISO 8601). */
263
+ attemptedAt: z.iso.datetime(),
264
+ });
265
+ /**
266
+ * The proof that {@link EmailSettings} carries no secret (fails to compile otherwise).
267
+ *
268
+ * @stability stable
269
+ */
270
+ export const EMAIL_SETTINGS_CARRIES_NO_SECRET = true;
271
+ /**
272
+ * The proof that {@link EmailSettingsResponse} carries no secret (fails to compile otherwise).
273
+ *
274
+ * @stability stable
275
+ */
276
+ export const EMAIL_SETTINGS_RESPONSE_CARRIES_NO_SECRET = true;
277
+ //# sourceMappingURL=schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../../src/email/schemas.ts"],"names":[],"mappings":"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"}