@stacksjs/ts-cloud 0.7.56 → 0.7.58

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 (467) hide show
  1. package/dist/alerts/alerts.test.d.ts +1 -0
  2. package/dist/alerts/delivery.d.ts +45 -0
  3. package/dist/alerts/evaluator.d.ts +12 -0
  4. package/dist/alerts/health.d.ts +34 -0
  5. package/dist/alerts/index.d.ts +6 -0
  6. package/dist/alerts/model.d.ts +170 -0
  7. package/dist/alerts/store.d.ts +90 -0
  8. package/dist/alerts/telemetry.d.ts +3 -0
  9. package/dist/api/client.d.ts +197 -0
  10. package/dist/api/handler.d.ts +18 -0
  11. package/dist/api/handler.test.d.ts +1 -0
  12. package/dist/api/index.d.ts +6 -0
  13. package/dist/api/openapi.d.ts +2 -0
  14. package/dist/api/service.d.ts +28 -0
  15. package/dist/api/types.d.ts +119 -0
  16. package/dist/auth/encryption.d.ts +3 -0
  17. package/dist/auth/index.d.ts +8 -0
  18. package/dist/auth/mailer.d.ts +9 -0
  19. package/dist/auth/oidc.d.ts +36 -0
  20. package/dist/auth/oidc.test.d.ts +1 -0
  21. package/dist/auth/store.d.ts +121 -0
  22. package/dist/auth/store.test.d.ts +1 -0
  23. package/dist/auth/totp.d.ts +11 -0
  24. package/dist/auth/totp.test.d.ts +1 -0
  25. package/dist/auth/types.d.ts +138 -0
  26. package/dist/automation/index.d.ts +2 -0
  27. package/dist/automation/store.d.ts +46 -0
  28. package/dist/automation/store.test.d.ts +1 -0
  29. package/dist/automation/types.d.ts +66 -0
  30. package/dist/aws/acm.d.ts +0 -4
  31. package/dist/aws/application-autoscaling.d.ts +0 -5
  32. package/dist/aws/backup.d.ts +42 -0
  33. package/dist/aws/bedrock.d.ts +0 -5
  34. package/dist/aws/client.d.ts +3 -6
  35. package/dist/aws/cloudformation.d.ts +0 -4
  36. package/dist/aws/cloudfront-media.test.d.ts +1 -0
  37. package/dist/aws/cloudfront-origin.test.d.ts +1 -0
  38. package/dist/aws/cloudfront.d.ts +87 -3
  39. package/dist/aws/cloudwatch-logs.d.ts +2 -4
  40. package/dist/aws/cloudwatch.d.ts +1 -1
  41. package/dist/aws/comprehend.d.ts +0 -5
  42. package/dist/aws/connect.d.ts +0 -4
  43. package/dist/aws/cost-explorer-cache.d.ts +1 -15
  44. package/dist/aws/cost-explorer.d.ts +18 -9
  45. package/dist/aws/cost-explorer.test.d.ts +1 -0
  46. package/dist/aws/dynamodb.d.ts +0 -4
  47. package/dist/aws/ec2.d.ts +0 -4
  48. package/dist/aws/ecr.d.ts +0 -4
  49. package/dist/aws/ecs.d.ts +17 -7
  50. package/dist/aws/efs.d.ts +0 -4
  51. package/dist/aws/elasticache.d.ts +0 -4
  52. package/dist/aws/elbv2.d.ts +0 -7
  53. package/dist/aws/email.d.ts +0 -10
  54. package/dist/aws/eventbridge.d.ts +0 -4
  55. package/dist/aws/iam.d.ts +1 -5
  56. package/dist/aws/imap-server.d.ts +0 -7
  57. package/dist/aws/index.d.ts +4 -3
  58. package/dist/aws/index.js +31 -31
  59. package/dist/aws/kendra.d.ts +0 -5
  60. package/dist/aws/lambda.d.ts +3 -5
  61. package/dist/aws/opensearch.d.ts +0 -4
  62. package/dist/aws/personalize.d.ts +0 -5
  63. package/dist/aws/polly.d.ts +0 -5
  64. package/dist/aws/rds.d.ts +59 -4
  65. package/dist/aws/rekognition.d.ts +0 -5
  66. package/dist/aws/route53-domains.d.ts +0 -4
  67. package/dist/aws/route53.d.ts +0 -4
  68. package/dist/aws/s3.d.ts +10 -6
  69. package/dist/aws/scheduler.d.ts +0 -4
  70. package/dist/aws/secrets-manager.d.ts +0 -4
  71. package/dist/aws/setup-sms.d.ts +0 -14
  72. package/dist/aws/sms.d.ts +0 -10
  73. package/dist/aws/smtp-server.d.ts +0 -11
  74. package/dist/aws/sns.d.ts +0 -4
  75. package/dist/aws/sqs.d.ts +0 -4
  76. package/dist/aws/ssm.d.ts +0 -4
  77. package/dist/aws/sts.d.ts +0 -4
  78. package/dist/aws/support.d.ts +0 -4
  79. package/dist/aws/textract.d.ts +0 -5
  80. package/dist/aws/transcribe.d.ts +0 -4
  81. package/dist/aws/translate.d.ts +0 -5
  82. package/dist/aws/voice.d.ts +0 -11
  83. package/dist/aws/xray.d.ts +1 -0
  84. package/dist/backups/aws-database-source.d.ts +19 -0
  85. package/dist/backups/aws-database-source.test.d.ts +1 -0
  86. package/dist/backups/aws-infrastructure-source.d.ts +43 -0
  87. package/dist/backups/aws-infrastructure-source.test.d.ts +1 -0
  88. package/dist/backups/control-plane-source.d.ts +16 -0
  89. package/dist/backups/control-plane-source.test.d.ts +1 -0
  90. package/dist/backups/docker-volume-source.d.ts +31 -0
  91. package/dist/backups/docker-volume-source.test.d.ts +1 -0
  92. package/dist/backups/filesystem-source.d.ts +34 -0
  93. package/dist/backups/filesystem-source.test.d.ts +1 -0
  94. package/dist/backups/index.d.ts +10 -0
  95. package/dist/backups/logical-database-source.d.ts +16 -0
  96. package/dist/backups/logical-database-source.test.d.ts +1 -0
  97. package/dist/backups/model.d.ts +121 -0
  98. package/dist/backups/s3-destination.d.ts +85 -0
  99. package/dist/backups/s3-destination.test.d.ts +1 -0
  100. package/dist/backups/service.d.ts +80 -0
  101. package/dist/backups/service.test.d.ts +1 -0
  102. package/dist/backups/store.d.ts +30 -0
  103. package/dist/backups/store.test.d.ts +1 -0
  104. package/dist/bin/cli.js +3360 -1802
  105. package/dist/{chunk-tjjgajbh.js → chunk-01d86gt1.js} +301 -9
  106. package/dist/{chunk-73vcqg6z.js → chunk-0z43x8re.js} +7 -7
  107. package/dist/{chunk-tnztxpcb.js → chunk-32e7ya18.js} +61 -49
  108. package/dist/{chunk-qpj3edwz.js → chunk-4cjrg98a.js} +3 -7
  109. package/dist/{chunk-hsk6fe6x.js → chunk-50jpda9q.js} +2 -2
  110. package/dist/{chunk-93hjhs78.js → chunk-703nkybg.js} +1 -1
  111. package/dist/{chunk-d5vqwj8s.js → chunk-9m6b4m74.js} +755 -720
  112. package/dist/chunk-e05phx5f.js +10 -0
  113. package/dist/{chunk-f29w04w5.js → chunk-exbcsab2.js} +10 -4
  114. package/dist/{chunk-eq08r166.js → chunk-f55nkpvb.js} +2 -2
  115. package/dist/{chunk-3bfv1z4v.js → chunk-fv1bj3yt.js} +63 -56
  116. package/dist/chunk-fw3q88wk.js +48641 -0
  117. package/dist/{chunk-3knnr7wh.js → chunk-he9a874b.js} +170 -2
  118. package/dist/{chunk-zn0nxxa8.js → chunk-hpv68b4a.js} +1070 -1070
  119. package/dist/chunk-k114qwg9.js +12 -0
  120. package/dist/{chunk-r16e02bc.js → chunk-vdk53yyq.js} +3900 -4101
  121. package/dist/{chunk-jp2a8yad.js → chunk-vvkd46k1.js} +15 -13
  122. package/dist/{chunk-vd87cpvn.js → chunk-wj3s95p9.js} +62 -46
  123. package/dist/{chunk-mj1tmhte.js → chunk-x9s0cqfx.js} +1 -1
  124. package/dist/{chunk-3rsfns7x.js → chunk-ybcz6sxc.js} +2048 -387
  125. package/dist/{chunk-arsh1g5h.js → chunk-zqtpg06c.js} +14 -11
  126. package/dist/compose/index.d.ts +6 -0
  127. package/dist/compose/parser.d.ts +13 -0
  128. package/dist/compose/parser.test.d.ts +1 -0
  129. package/dist/compose/runtime.d.ts +10 -0
  130. package/dist/compose/service.d.ts +18 -0
  131. package/dist/compose/store.d.ts +59 -0
  132. package/dist/compose/store.test.d.ts +1 -0
  133. package/dist/compose/templates.d.ts +17 -0
  134. package/dist/compose/types.d.ts +164 -0
  135. package/dist/configuration/backends.d.ts +66 -0
  136. package/dist/configuration/backends.test.d.ts +1 -0
  137. package/dist/configuration/dotenv.d.ts +14 -0
  138. package/dist/configuration/dotenv.test.d.ts +1 -0
  139. package/dist/configuration/index.d.ts +6 -0
  140. package/dist/configuration/migrate.d.ts +10 -0
  141. package/dist/configuration/migrate.test.d.ts +1 -0
  142. package/dist/configuration/model.d.ts +50 -0
  143. package/dist/configuration/service.d.ts +144 -0
  144. package/dist/configuration/service.test.d.ts +1 -0
  145. package/dist/configuration/store.d.ts +33 -0
  146. package/dist/configuration/store.test.d.ts +1 -0
  147. package/dist/control-plane/authorization.d.ts +24 -0
  148. package/dist/control-plane/authorization.test.d.ts +1 -0
  149. package/dist/control-plane/index.d.ts +8 -0
  150. package/dist/control-plane/migrations.d.ts +7 -0
  151. package/dist/control-plane/search.d.ts +25 -0
  152. package/dist/control-plane/store.d.ts +117 -0
  153. package/dist/control-plane/store.test.d.ts +1 -0
  154. package/dist/control-plane/types.d.ts +381 -0
  155. package/dist/cost/reporting.d.ts +24 -0
  156. package/dist/cost/reporting.test.d.ts +1 -0
  157. package/dist/cost/resource-inventory.d.ts +32 -0
  158. package/dist/cost/resource-inventory.test.d.ts +1 -0
  159. package/dist/cost/resource-optimization.d.ts +59 -0
  160. package/dist/cost/resource-optimization.test.d.ts +1 -0
  161. package/dist/data-services/adapters.d.ts +39 -0
  162. package/dist/data-services/aws-transports.d.ts +29 -0
  163. package/dist/data-services/aws-transports.test.d.ts +1 -0
  164. package/dist/data-services/capabilities.d.ts +2 -0
  165. package/dist/data-services/data-services.test.d.ts +1 -0
  166. package/dist/data-services/docker-transport.d.ts +55 -0
  167. package/dist/data-services/docker-transport.test.d.ts +1 -0
  168. package/dist/data-services/index.d.ts +8 -0
  169. package/dist/data-services/model.d.ts +79 -0
  170. package/dist/data-services/secrets.d.ts +13 -0
  171. package/dist/data-services/secrets.test.d.ts +1 -0
  172. package/dist/data-services/service.d.ts +51 -0
  173. package/dist/data-services/store.d.ts +17 -0
  174. package/dist/deploy/container-image.d.ts +28 -0
  175. package/dist/deploy/container-image.test.d.ts +1 -0
  176. package/dist/deploy/dashboard-audit.test.d.ts +1 -0
  177. package/dist/deploy/dashboard-auth.d.ts +4 -23
  178. package/dist/deploy/dashboard-backups.integration.test.d.ts +1 -0
  179. package/dist/deploy/dashboard-configuration.integration.test.d.ts +1 -0
  180. package/dist/deploy/dashboard-control-plane.d.ts +37 -0
  181. package/dist/deploy/dashboard-control-plane.test.d.ts +1 -0
  182. package/dist/deploy/dashboard-data-services.integration.test.d.ts +1 -0
  183. package/dist/deploy/dashboard-environment-scope.test.d.ts +1 -0
  184. package/dist/deploy/dashboard-guard.d.ts +12 -0
  185. package/dist/deploy/dashboard-guard.test.d.ts +1 -0
  186. package/dist/deploy/dashboard-identities.d.ts +15 -0
  187. package/dist/deploy/dashboard-identities.test.d.ts +1 -0
  188. package/dist/deploy/dashboard-jobs.integration.test.d.ts +1 -0
  189. package/dist/deploy/dashboard-login-page.d.ts +5 -5
  190. package/dist/deploy/dashboard-login-page.test.d.ts +1 -0
  191. package/dist/deploy/dashboard-oidc.integration.test.d.ts +1 -0
  192. package/dist/deploy/dashboard-onboarding.integration.test.d.ts +1 -0
  193. package/dist/deploy/dashboard-policy.d.ts +4 -2
  194. package/dist/deploy/dashboard-queue-worker.integration.test.d.ts +1 -0
  195. package/dist/deploy/dashboard-release.integration.test.d.ts +1 -0
  196. package/dist/deploy/dashboard-route-manifest.d.ts +14 -0
  197. package/dist/deploy/dashboard-route-manifest.test.d.ts +1 -0
  198. package/dist/deploy/dashboard-security.integration.test.d.ts +1 -0
  199. package/dist/deploy/dashboard-session.d.ts +3 -14
  200. package/dist/deploy/dashboard-source.integration.test.d.ts +1 -0
  201. package/dist/deploy/dashboard-users.d.ts +3 -0
  202. package/dist/deploy/fullstack-container.d.ts +87 -0
  203. package/dist/deploy/fullstack-container.test.d.ts +1 -0
  204. package/dist/deploy/index.d.ts +7 -2
  205. package/dist/deploy/index.js +65 -25
  206. package/dist/deploy/local-dashboard-server.d.ts +30 -0
  207. package/dist/deploy/quick-deploy.d.ts +1 -1
  208. package/dist/deploy/serverless-operations.d.ts +1 -0
  209. package/dist/deploy/site-target.d.ts +16 -0
  210. package/dist/deploy/static-api-origin.d.ts +107 -0
  211. package/dist/deploy/static-api-origin.test.d.ts +1 -0
  212. package/dist/deploy/static-site-helper.d.ts +0 -16
  213. package/dist/deploy/telemetry-access.d.ts +5 -0
  214. package/dist/deploy/telemetry-access.test.d.ts +1 -0
  215. package/dist/deploy/telemetry-collection.d.ts +44 -0
  216. package/dist/deploy/telemetry-collection.test.d.ts +1 -0
  217. package/dist/dns/index.js +3 -3
  218. package/dist/dns/route53-adapter.d.ts +1 -1
  219. package/dist/drivers/hetzner/cloud-init.d.ts +1 -1
  220. package/dist/drivers/index.d.ts +2 -2
  221. package/dist/drivers/index.js +6 -6
  222. package/dist/drivers/shared/notifications.d.ts +1 -1
  223. package/dist/drivers/shared/rpx-gateway.d.ts +1 -0
  224. package/dist/fleet/fleet.test.d.ts +1 -0
  225. package/dist/fleet/index.d.ts +144 -0
  226. package/dist/fleet/queue.d.ts +3 -0
  227. package/dist/fleet/ssh-driver.d.ts +34 -0
  228. package/dist/index.d.ts +28 -4
  229. package/dist/index.js +1132 -424
  230. package/dist/jobs/adapters.d.ts +23 -0
  231. package/dist/jobs/index.d.ts +7 -0
  232. package/dist/jobs/jobs.test.d.ts +1 -0
  233. package/dist/jobs/model.d.ts +100 -0
  234. package/dist/jobs/provider-adapters.d.ts +49 -0
  235. package/dist/jobs/reconcile.d.ts +19 -0
  236. package/dist/jobs/schedule.d.ts +9 -0
  237. package/dist/jobs/service.d.ts +30 -0
  238. package/dist/jobs/store.d.ts +48 -0
  239. package/dist/maintenance/drivers.d.ts +117 -0
  240. package/dist/maintenance/index.d.ts +6 -0
  241. package/dist/maintenance/maintenance.test.d.ts +1 -0
  242. package/dist/maintenance/manifest.d.ts +15 -0
  243. package/dist/maintenance/queue.d.ts +9 -0
  244. package/dist/maintenance/service.d.ts +31 -0
  245. package/dist/maintenance/store.d.ts +84 -0
  246. package/dist/maintenance/types.d.ts +192 -0
  247. package/dist/media.d.ts +62 -0
  248. package/dist/media.test.d.ts +1 -0
  249. package/dist/object-storage/index.d.ts +0 -24
  250. package/dist/onboarding/archive.d.ts +12 -0
  251. package/dist/onboarding/artifact-store.d.ts +22 -0
  252. package/dist/onboarding/detection.d.ts +8 -0
  253. package/dist/onboarding/index.d.ts +9 -0
  254. package/dist/onboarding/migrations.d.ts +3 -0
  255. package/dist/onboarding/onboarding.test.d.ts +1 -0
  256. package/dist/onboarding/plan.d.ts +3 -0
  257. package/dist/onboarding/registry.d.ts +41 -0
  258. package/dist/onboarding/service.d.ts +16 -0
  259. package/dist/onboarding/store.d.ts +30 -0
  260. package/dist/onboarding/types.d.ts +204 -0
  261. package/dist/placement/builds.d.ts +20 -0
  262. package/dist/placement/drivers.d.ts +54 -0
  263. package/dist/placement/index.d.ts +6 -0
  264. package/dist/placement/placement.test.d.ts +1 -0
  265. package/dist/placement/queue.d.ts +4 -0
  266. package/dist/placement/service.d.ts +34 -0
  267. package/dist/placement/store.d.ts +49 -0
  268. package/dist/placement/types.d.ts +109 -0
  269. package/dist/preview/index.d.ts +3 -0
  270. package/dist/preview/service.d.ts +45 -0
  271. package/dist/preview/service.test.d.ts +1 -0
  272. package/dist/preview/store.d.ts +47 -0
  273. package/dist/preview/store.test.d.ts +1 -0
  274. package/dist/preview/types.d.ts +99 -0
  275. package/dist/push/apns.d.ts +0 -26
  276. package/dist/push/fcm.d.ts +0 -23
  277. package/dist/push/index.d.ts +2 -2
  278. package/dist/push/index.js +1 -1
  279. package/dist/queue/deployment-handlers.d.ts +27 -0
  280. package/dist/queue/deployment-handlers.test.d.ts +1 -0
  281. package/dist/queue/index.d.ts +4 -0
  282. package/dist/queue/queue.d.ts +57 -0
  283. package/dist/queue/queue.test.d.ts +1 -0
  284. package/dist/queue/types.d.ts +93 -0
  285. package/dist/queue/worker.d.ts +32 -0
  286. package/dist/queue/worker.test.d.ts +1 -0
  287. package/dist/regions/drivers.d.ts +139 -0
  288. package/dist/regions/index.d.ts +5 -0
  289. package/dist/regions/queue.d.ts +4 -0
  290. package/dist/regions/regions.test.d.ts +1 -0
  291. package/dist/regions/service.d.ts +23 -0
  292. package/dist/regions/store.d.ts +41 -0
  293. package/dist/regions/types.d.ts +132 -0
  294. package/dist/release/index.d.ts +6 -0
  295. package/dist/release/queue.d.ts +15 -0
  296. package/dist/release/queue.test.d.ts +1 -0
  297. package/dist/release/runtime.d.ts +35 -0
  298. package/dist/release/runtime.test.d.ts +1 -0
  299. package/dist/release/service.d.ts +28 -0
  300. package/dist/release/store.d.ts +88 -0
  301. package/dist/release/store.test.d.ts +1 -0
  302. package/dist/release/strategy.d.ts +8 -0
  303. package/dist/release/types.d.ts +103 -0
  304. package/dist/runtime/adapters/aws.d.ts +5 -0
  305. package/dist/runtime/adapters/docker.d.ts +53 -0
  306. package/dist/runtime/adapters/systemd.d.ts +26 -0
  307. package/dist/runtime/index.d.ts +9 -0
  308. package/dist/runtime/inventory.d.ts +6 -0
  309. package/dist/runtime/model.d.ts +130 -0
  310. package/dist/runtime/normalize.d.ts +5 -0
  311. package/dist/runtime/operations.d.ts +113 -0
  312. package/dist/runtime/service.d.ts +32 -0
  313. package/dist/runtime/streams.d.ts +49 -0
  314. package/dist/security/artifacts.d.ts +105 -0
  315. package/dist/security/artifacts.test.d.ts +1 -0
  316. package/dist/security/container-release.d.ts +35 -0
  317. package/dist/security/container-release.test.d.ts +1 -0
  318. package/dist/security/index.d.ts +8 -0
  319. package/dist/security/integration.d.ts +41 -0
  320. package/dist/security/integration.test.d.ts +1 -0
  321. package/dist/security/posture-store.d.ts +80 -0
  322. package/dist/security/posture-store.test.d.ts +1 -0
  323. package/dist/security/pre-deploy-scanner.d.ts +0 -4
  324. package/dist/security/scanners.d.ts +81 -0
  325. package/dist/security/scanners.test.d.ts +1 -0
  326. package/dist/security/types.d.ts +150 -0
  327. package/dist/source/git-workspace.d.ts +26 -0
  328. package/dist/source/git-workspace.test.d.ts +1 -0
  329. package/dist/source/index.d.ts +6 -0
  330. package/dist/source/providers.d.ts +199 -0
  331. package/dist/source/providers.test.d.ts +1 -0
  332. package/dist/source/service.d.ts +18 -0
  333. package/dist/source/store.d.ts +149 -0
  334. package/dist/source/store.test.d.ts +1 -0
  335. package/dist/source/types.d.ts +191 -0
  336. package/dist/source/webhooks.d.ts +33 -0
  337. package/dist/source/webhooks.test.d.ts +1 -0
  338. package/dist/ssl/acme-client.d.ts +0 -6
  339. package/dist/storage/compose.d.ts +4 -0
  340. package/dist/storage/compose.test.d.ts +1 -0
  341. package/dist/storage/drivers.d.ts +107 -0
  342. package/dist/storage/drivers.test.d.ts +1 -0
  343. package/dist/storage/index.d.ts +5 -0
  344. package/dist/storage/model.d.ts +112 -0
  345. package/dist/storage/service.d.ts +95 -0
  346. package/dist/storage/storage.test.d.ts +1 -0
  347. package/dist/storage/store.d.ts +40 -0
  348. package/dist/telemetry/correlation.test.d.ts +1 -0
  349. package/dist/telemetry/index.d.ts +4 -0
  350. package/dist/telemetry/model.d.ts +145 -0
  351. package/dist/telemetry/policy.d.ts +8 -0
  352. package/dist/telemetry/policy.test.d.ts +1 -0
  353. package/dist/telemetry/redaction.d.ts +9 -0
  354. package/dist/telemetry/store.d.ts +34 -0
  355. package/dist/telemetry/store.test.d.ts +1 -0
  356. package/dist/ui/404.html +1506 -17
  357. package/dist/ui/accept-invitation.html +1163 -0
  358. package/dist/ui/{server/backups.html → access-denied.html} +344 -55
  359. package/dist/ui/account/automation.html +1669 -0
  360. package/dist/ui/account/security.html +1646 -0
  361. package/dist/ui/applications/compose.html +1590 -0
  362. package/dist/ui/applications/new.html +1868 -0
  363. package/dist/ui/data/backups.html +1757 -0
  364. package/dist/ui/data/services.html +1723 -0
  365. package/dist/ui/data/volumes.html +1639 -0
  366. package/dist/ui/index.html +392 -29
  367. package/dist/ui/integrations.html +1865 -0
  368. package/dist/ui/operations/alerts.html +1610 -0
  369. package/dist/ui/operations/configuration.html +1746 -0
  370. package/dist/ui/operations/jobs.html +1709 -0
  371. package/dist/ui/operations/maintenance.html +1540 -0
  372. package/dist/ui/operations/observability.html +1742 -0
  373. package/dist/ui/{serverless/scheduler.html → operations/previews.html} +447 -46
  374. package/dist/ui/operations/queue.html +1615 -0
  375. package/dist/ui/{server/workers.html → operations/regions.html} +413 -49
  376. package/dist/ui/operations/releases.html +1596 -0
  377. package/dist/ui/operations/workloads.html +1775 -0
  378. package/dist/ui/security.html +1767 -0
  379. package/dist/ui/server/actions.html +446 -57
  380. package/dist/ui/server/activity.html +346 -1
  381. package/dist/ui/server/capacity.html +1542 -0
  382. package/dist/ui/server/database.html +443 -36
  383. package/dist/ui/server/deployments.html +439 -53
  384. package/dist/ui/server/diagnostics.html +346 -1
  385. package/dist/ui/server/firewall.html +476 -50
  386. package/dist/ui/server/fleet.html +1577 -0
  387. package/dist/ui/server/logs.html +389 -25
  388. package/dist/ui/server/metrics.html +346 -1
  389. package/dist/ui/server/security.html +346 -1
  390. package/dist/ui/server/services.html +421 -46
  391. package/dist/ui/server/sites.html +476 -95
  392. package/dist/ui/server/ssh-keys.html +476 -46
  393. package/dist/ui/server/team.html +700 -77
  394. package/dist/ui/server/terminal.html +444 -54
  395. package/dist/ui/serverless/alarms.html +430 -42
  396. package/dist/ui/serverless/assets.html +421 -46
  397. package/dist/ui/serverless/cost.html +346 -1
  398. package/dist/ui/serverless/data.html +422 -47
  399. package/dist/ui/serverless/deployments.html +421 -46
  400. package/dist/ui/serverless/firewall.html +346 -1
  401. package/dist/ui/serverless/functions.html +423 -48
  402. package/dist/ui/serverless/logs.html +389 -25
  403. package/dist/ui/serverless/metrics.html +346 -1
  404. package/dist/ui/serverless/queues.html +448 -62
  405. package/dist/ui/serverless/secrets.html +448 -42
  406. package/dist/ui/serverless/traces.html +350 -5
  407. package/dist/ui/serverless.html +434 -58
  408. package/dist/ui-src/pages/404.stx +18 -0
  409. package/dist/ui-src/pages/accept-invitation.stx +50 -0
  410. package/dist/ui-src/pages/access-denied.stx +18 -0
  411. package/dist/ui-src/pages/account/automation.stx +187 -0
  412. package/dist/ui-src/pages/account/security.stx +249 -0
  413. package/dist/ui-src/pages/applications/compose.stx +38 -0
  414. package/dist/ui-src/pages/applications/new.stx +76 -0
  415. package/dist/ui-src/pages/data/backups.stx +214 -0
  416. package/dist/ui-src/pages/data/services.stx +257 -0
  417. package/dist/ui-src/pages/data/volumes.stx +40 -0
  418. package/dist/ui-src/pages/index.stx +24 -10
  419. package/dist/ui-src/pages/integrations.stx +186 -0
  420. package/dist/ui-src/pages/operations/alerts.stx +40 -0
  421. package/dist/ui-src/pages/operations/configuration.stx +164 -0
  422. package/dist/ui-src/pages/operations/jobs.stx +238 -0
  423. package/dist/ui-src/pages/operations/maintenance.stx +15 -0
  424. package/dist/ui-src/pages/operations/observability.stx +76 -0
  425. package/dist/ui-src/pages/operations/previews.stx +62 -0
  426. package/dist/ui-src/pages/operations/queue.stx +158 -0
  427. package/dist/ui-src/pages/operations/regions.stx +12 -0
  428. package/dist/ui-src/pages/operations/releases.stx +39 -0
  429. package/dist/ui-src/pages/operations/workloads.stx +151 -0
  430. package/dist/ui-src/pages/partials/head.stx +148 -15
  431. package/dist/ui-src/pages/partials/nav.stx +491 -74
  432. package/dist/ui-src/pages/partials/op-confirm.stx +6 -6
  433. package/dist/ui-src/pages/security.stx +264 -0
  434. package/dist/ui-src/pages/server/actions.stx +17 -26
  435. package/dist/ui-src/pages/server/capacity.stx +16 -0
  436. package/dist/ui-src/pages/server/database.stx +31 -16
  437. package/dist/ui-src/pages/server/deployments.stx +28 -30
  438. package/dist/ui-src/pages/server/firewall.stx +25 -30
  439. package/dist/ui-src/pages/server/fleet.stx +10 -0
  440. package/dist/ui-src/pages/server/logs.stx +11 -9
  441. package/dist/ui-src/pages/server/metrics.stx +8 -16
  442. package/dist/ui-src/pages/server/services.stx +19 -28
  443. package/dist/ui-src/pages/server/sites.stx +75 -72
  444. package/dist/ui-src/pages/server/ssh-keys.stx +24 -30
  445. package/dist/ui-src/pages/server/team.stx +286 -149
  446. package/dist/ui-src/pages/server/terminal.stx +6 -28
  447. package/dist/ui-src/pages/serverless/alarms.stx +17 -31
  448. package/dist/ui-src/pages/serverless/assets.stx +13 -22
  449. package/dist/ui-src/pages/serverless/cost.stx +15 -3
  450. package/dist/ui-src/pages/serverless/data.stx +12 -25
  451. package/dist/ui-src/pages/serverless/deployments.stx +14 -23
  452. package/dist/ui-src/pages/serverless/firewall.stx +5 -1
  453. package/dist/ui-src/pages/serverless/functions.stx +20 -26
  454. package/dist/ui-src/pages/serverless/logs.stx +11 -10
  455. package/dist/ui-src/pages/serverless/metrics.stx +18 -17
  456. package/dist/ui-src/pages/serverless/queues.stx +34 -42
  457. package/dist/ui-src/pages/serverless/secrets.stx +31 -34
  458. package/dist/ui-src/pages/serverless/traces.stx +2 -6
  459. package/dist/ui-src/pages/serverless.stx +40 -74
  460. package/package.json +11 -11
  461. package/dist/chunk-b17vf1g1.js +0 -13787
  462. package/dist/chunk-b82pbxyp.js +0 -1572
  463. package/dist/chunk-pqfzdg68.js +0 -12
  464. package/dist/chunk-z58fqnjm.js +0 -10
  465. package/dist/ui-src/pages/server/backups.stx +0 -91
  466. package/dist/ui-src/pages/server/workers.stx +0 -99
  467. package/dist/ui-src/pages/serverless/scheduler.stx +0 -89
@@ -0,0 +1,33 @@
1
+ import type { ControlPlaneStore, JsonValue } from '../control-plane';
2
+ import type { ConfigurationDependency, ConfigurationEntry, ConfigurationScope } from './model';
3
+ export declare class ConfigurationStore {
4
+ readonly controlPlane: ControlPlaneStore;
5
+ private readonly now;
6
+ constructor(controlPlane: ControlPlaneStore, now?: () => Date);
7
+ get(id: string): ConfigurationEntry | undefined;
8
+ find(projectId: string, scope: ConfigurationScope, key: string): ConfigurationEntry | undefined;
9
+ list(input: {
10
+ projectId: string;
11
+ scope?: ConfigurationScope;
12
+ kind?: ConfigurationEntry['kind'];
13
+ }): ConfigurationEntry[];
14
+ create(input: Omit<ConfigurationEntry, 'id' | 'version' | 'createdAt' | 'updatedAt'>): ConfigurationEntry;
15
+ update(id: string, expectedVersion: number, patch: Pick<ConfigurationEntry, 'value' | 'valueFingerprint' | 'secretRef' | 'backend' | 'backendVersion' | 'required' | 'metadata' | 'rotatedAt'>): ConfigurationEntry;
16
+ remove(id: string, expectedVersion: number): ConfigurationEntry;
17
+ setDependency(input: Omit<ConfigurationDependency, 'createdAt' | 'updatedAt'>): ConfigurationDependency;
18
+ dependencies(entryId: string): ConfigurationDependency[];
19
+ dependenciesForResource(resourceId: string): ConfigurationDependency[];
20
+ mutation(idempotencyKey: string): {
21
+ requestHash: string;
22
+ result: Record<string, JsonValue>;
23
+ } | undefined;
24
+ recordMutation(input: {
25
+ projectId: string;
26
+ idempotencyKey: string;
27
+ requestHash: string;
28
+ result: Record<string, JsonValue>;
29
+ actorId?: string;
30
+ }): void;
31
+ private validateEntry;
32
+ private validateScope;
33
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,24 @@
1
+ import type { AuthorizationCapability, AuthorizationGrant, AuthorizationScope, AuthorizationTarget, OrganizationMembership, OrganizationRoleTemplate } from './types';
2
+ export declare const AUTHORIZATION_CAPABILITIES: readonly AuthorizationCapability[];
3
+ export interface AuthorizationDecision {
4
+ allowed: boolean;
5
+ reason: 'inactive-membership' | 'scope-mismatch' | 'explicit-deny' | 'explicit-allow' | 'role-template' | 'missing-capability';
6
+ inheritedFrom?: {
7
+ kind: 'membership' | 'grant';
8
+ id: string;
9
+ scope: AuthorizationScope;
10
+ };
11
+ }
12
+ export declare function roleCapabilities(role: OrganizationRoleTemplate): ReadonlySet<AuthorizationCapability>;
13
+ export declare function scopeContains(scope: AuthorizationScope, target: AuthorizationTarget): boolean;
14
+ export declare function authorizeOrganization(input: {
15
+ membership: OrganizationMembership | undefined;
16
+ grants: readonly AuthorizationGrant[];
17
+ capability: AuthorizationCapability;
18
+ target: AuthorizationTarget;
19
+ }): AuthorizationDecision;
20
+ export declare function effectiveCapabilities(input: {
21
+ membership: OrganizationMembership | undefined;
22
+ grants: readonly AuthorizationGrant[];
23
+ target: AuthorizationTarget;
24
+ }): AuthorizationCapability[];
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,8 @@
1
+ export { CONTROL_PLANE_SCHEMA_VERSION, controlPlaneMigrations } from './migrations';
2
+ export type { ControlPlaneMigration } from './migrations';
3
+ export { CONTROL_PLANE_DATABASE_FILE, ControlPlaneStore, MAX_CONTROL_PLANE_ERROR_BYTES, MAX_CONTROL_PLANE_JSON_BYTES, sanitizeControlPlaneValue, } from './store';
4
+ export * from './types';
5
+ export { searchControlPlane } from './search';
6
+ export type { ControlPlaneSearchOptions, ControlPlaneSearchResult, ControlPlaneSearchResultType } from './search';
7
+ export { AUTHORIZATION_CAPABILITIES, authorizeOrganization, effectiveCapabilities, roleCapabilities, scopeContains, } from './authorization';
8
+ export type { AuthorizationDecision } from './authorization';
@@ -0,0 +1,7 @@
1
+ export interface ControlPlaneMigration {
2
+ version: number;
3
+ name: string;
4
+ sql: string;
5
+ }
6
+ export declare const CONTROL_PLANE_SCHEMA_VERSION: number;
7
+ export declare const controlPlaneMigrations: readonly ControlPlaneMigration[];
@@ -0,0 +1,25 @@
1
+ import type { ControlPlaneStore } from './store';
2
+ export type ControlPlaneSearchResultType = 'project' | 'environment' | 'service' | 'server' | 'database' | 'deployment' | 'operation';
3
+ export interface ControlPlaneSearchResult {
4
+ type: ControlPlaneSearchResultType;
5
+ id: string;
6
+ title: string;
7
+ subtitle: string;
8
+ href: string;
9
+ environment?: string;
10
+ status?: string;
11
+ provider?: string;
12
+ tags: Array<{
13
+ id: string;
14
+ name: string;
15
+ color: string;
16
+ }>;
17
+ score: number;
18
+ }
19
+ export interface ControlPlaneSearchOptions {
20
+ projectId: string;
21
+ query: string;
22
+ allowedResourceSlugs?: ReadonlySet<string>;
23
+ limit?: number;
24
+ }
25
+ export declare function searchControlPlane(store: ControlPlaneStore, options: ControlPlaneSearchOptions): ControlPlaneSearchResult[];
@@ -0,0 +1,117 @@
1
+ import type { AppendEventInput, AuthorizationGrant, AuthorizationScope, AuthorizationTarget, CompactResult, ControlPlaneActor, ControlPlaneEnvironment, ControlPlaneEvent, ControlPlaneHealth, ControlPlaneOperation, ControlPlaneOrganization, ControlPlaneProject, ControlPlaneResource, ControlPlaneSnapshot, ControlPlaneStoreOptions, ControlPlaneTag, CreateActorInput, CreateEnvironmentInput, CreateGrantInput, CreateInvitationInput, CreateMembershipInput, CreateOperationInput, CreateOrganizationInput, CreateProjectInput, CreateResourceInput, EventListOptions, ImportSnapshotOptions, JsonValue, NavigationPreference, OperationListOptions, OrganizationInvitation, OrganizationMembership, ReconcileResult, SavedFilter, TransitionOperationInput, UpdateProjectInput, UpdateResourceInput } from './types';
2
+ import { Database } from 'bun:sqlite';
3
+ export declare const CONTROL_PLANE_DATABASE_FILE: string;
4
+ export declare const MAX_CONTROL_PLANE_JSON_BYTES: number;
5
+ export declare const MAX_CONTROL_PLANE_ERROR_BYTES: number;
6
+ export declare function sanitizeControlPlaneValue(value: unknown, maxBytes?: number): JsonValue;
7
+ export declare class ControlPlaneStore {
8
+ readonly path: string;
9
+ readonly database: Database;
10
+ private readonly nowFn;
11
+ private readonly idFn;
12
+ constructor(options?: ControlPlaneStoreOptions);
13
+ private now;
14
+ private secureDatabaseFiles;
15
+ private migrate;
16
+ close(): void;
17
+ transaction<T>(callback: () => T): T;
18
+ createProject(input: CreateProjectInput): ControlPlaneProject;
19
+ getProject(id: string): ControlPlaneProject | undefined;
20
+ getProjectBySlug(slug: string): ControlPlaneProject | undefined;
21
+ listProjects(): ControlPlaneProject[];
22
+ updateProject(id: string, expectedVersion: number, input: UpdateProjectInput): ControlPlaneProject;
23
+ createEnvironment(input: CreateEnvironmentInput): ControlPlaneEnvironment;
24
+ listEnvironments(projectId: string): ControlPlaneEnvironment[];
25
+ getEnvironmentBySlug(projectId: string, slug: string): ControlPlaneEnvironment | undefined;
26
+ createResource(input: CreateResourceInput): ControlPlaneResource;
27
+ listResources(projectId: string, environmentId?: string): ControlPlaneResource[];
28
+ getResource(id: string): ControlPlaneResource | undefined;
29
+ updateResource(id: string, expectedVersion: number, input: UpdateResourceInput): ControlPlaneResource;
30
+ createActor(input: CreateActorInput): ControlPlaneActor;
31
+ getActorByExternalId(kind: ControlPlaneActor['kind'], externalId: string): ControlPlaneActor | undefined;
32
+ getActor(id: string): ControlPlaneActor | undefined;
33
+ createOrganization(input: CreateOrganizationInput): ControlPlaneOrganization;
34
+ getOrganization(id: string): ControlPlaneOrganization | undefined;
35
+ getOrganizationBySlug(slug: string): ControlPlaneOrganization | undefined;
36
+ listOrganizations(actorId?: string): ControlPlaneOrganization[];
37
+ private normalizeAuthorizationScope;
38
+ resolveAuthorizationTarget(organizationId: string, scope: AuthorizationScope): AuthorizationTarget | undefined;
39
+ createMembership(input: CreateMembershipInput): OrganizationMembership;
40
+ getMembership(id: string): OrganizationMembership | undefined;
41
+ getMembershipForActor(organizationId: string, actorId: string): OrganizationMembership | undefined;
42
+ listMemberships(organizationId: string, options?: {
43
+ includeRevoked?: boolean;
44
+ }): OrganizationMembership[];
45
+ updateMembership(input: {
46
+ id: string;
47
+ roleTemplate: OrganizationMembership['roleTemplate'];
48
+ scope?: AuthorizationScope;
49
+ actorId?: string;
50
+ }): OrganizationMembership;
51
+ revokeMembership(id: string, actorId?: string): OrganizationMembership;
52
+ touchMembership(id: string): OrganizationMembership;
53
+ private assertAnotherOwner;
54
+ createInvitation(input: CreateInvitationInput): {
55
+ invitation: OrganizationInvitation;
56
+ token: string;
57
+ };
58
+ getInvitation(id: string): OrganizationInvitation | undefined;
59
+ listInvitations(organizationId: string): OrganizationInvitation[];
60
+ /** Resolve a bearer invitation without exposing its stored hash. */
61
+ inspectInvitationToken(token: string): OrganizationInvitation | undefined;
62
+ acceptInvitation(token: string, actorId: string): {
63
+ invitation: OrganizationInvitation;
64
+ membership: OrganizationMembership;
65
+ };
66
+ revokeInvitation(id: string, actorId?: string): OrganizationInvitation;
67
+ reissueInvitation(id: string, actorId?: string): {
68
+ invitation: OrganizationInvitation;
69
+ token: string;
70
+ };
71
+ upsertGrant(input: CreateGrantInput): AuthorizationGrant;
72
+ getGrant(id: string): AuthorizationGrant | undefined;
73
+ listGrants(membershipId: string): AuthorizationGrant[];
74
+ removeGrant(id: string, actorId?: string): boolean;
75
+ createOperation(input: CreateOperationInput): ControlPlaneOperation;
76
+ getOperation(id: string): ControlPlaneOperation | undefined;
77
+ listOperations(options?: OperationListOptions): ControlPlaneOperation[];
78
+ claimNextOperation(workerId: string, leaseMs?: number, kinds?: readonly string[]): ControlPlaneOperation | undefined;
79
+ claimOperation(id: string, workerId: string, leaseMs?: number): ControlPlaneOperation | undefined;
80
+ transitionOperation(id: string, input: TransitionOperationInput): ControlPlaneOperation;
81
+ requestCancellation(id: string): ControlPlaneOperation;
82
+ reconcileOrphanedOperations(options?: {
83
+ policy?: 'requeue' | 'fail';
84
+ now?: Date;
85
+ }): ReconcileResult;
86
+ appendEvent(input: AppendEventInput): ControlPlaneEvent;
87
+ listEvents(options?: EventListOptions): ControlPlaneEvent[];
88
+ setSetting(key: string, value: JsonValue): void;
89
+ getSetting(key: string): JsonValue | undefined;
90
+ upsertTag(projectId: string, name: string, color?: string): ControlPlaneTag;
91
+ listTags(projectId: string): ControlPlaneTag[];
92
+ assignTag(resourceId: string, tagId: string): void;
93
+ removeTag(resourceId: string, tagId: string): void;
94
+ listResourceTags(projectId: string): Array<{
95
+ resourceId: string;
96
+ tag: ControlPlaneTag;
97
+ }>;
98
+ saveFilter(actorKey: string, name: string, routeId: string, query: Record<string, JsonValue>): SavedFilter;
99
+ listSavedFilters(actorKey: string): SavedFilter[];
100
+ deleteSavedFilter(actorKey: string, id: string): boolean;
101
+ recordNavigation(actorKey: string, entityType: string, entityId: string): NavigationPreference;
102
+ setFavorite(actorKey: string, entityType: string, entityId: string, favorite: boolean): NavigationPreference;
103
+ listNavigation(actorKey: string, options?: {
104
+ favoritesOnly?: boolean;
105
+ limit?: number;
106
+ }): NavigationPreference[];
107
+ compact(options?: {
108
+ eventRetentionDays?: number;
109
+ operationRetentionDays?: number;
110
+ vacuum?: boolean;
111
+ }): CompactResult;
112
+ createBackup(reason?: string): string;
113
+ integrityCheck(): 'ok' | 'corrupt';
114
+ health(): ControlPlaneHealth;
115
+ exportSnapshot(): ControlPlaneSnapshot;
116
+ importSnapshot(snapshot: ControlPlaneSnapshot, options?: ImportSnapshotOptions): void;
117
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,381 @@
1
+ export type ControlPlaneId = string;
2
+ export type JsonPrimitive = string | number | boolean | null;
3
+ export type JsonValue = JsonPrimitive | JsonValue[] | {
4
+ [key: string]: JsonValue;
5
+ };
6
+ export type OperationState = 'queued' | 'running' | 'succeeded' | 'failed' | 'cancelled' | 'timed_out';
7
+ export type TerminalOperationState = Extract<OperationState, 'succeeded' | 'failed' | 'cancelled' | 'timed_out'>;
8
+ export type OrganizationRoleTemplate = 'owner' | 'admin' | 'deployer' | 'operator' | 'viewer' | 'auditor';
9
+ export type AuthorizationScopeType = 'organization' | 'project' | 'environment' | 'resource';
10
+ export type AuthorizationEffect = 'allow' | 'deny';
11
+ export type AuthorizationRecordSource = 'manual' | 'legacy' | 'invitation';
12
+ export type AuthorizationCapability = 'project:read' | 'config:read' | 'config:write' | 'deployments:read' | 'deployments:create' | 'deployments:cancel' | 'deployments:rollback' | 'runtime:read' | 'runtime:restart' | 'runtime:logs' | 'runtime:terminal' | 'data:read' | 'data:write' | 'data:admin' | 'backups:read' | 'backups:create' | 'backups:restore' | 'secrets:read' | 'secrets:write' | 'fleet:read' | 'fleet:manage' | 'users:read' | 'users:manage' | 'users:transfer-ownership' | 'audit:read' | 'security:read' | 'security:manage' | 'security:waive' | 'sources:read' | 'sources:manage' | 'applications:read' | 'applications:manage' | 'automation:read' | 'automation:manage' | 'tags:manage';
13
+ export interface AuthorizationScope {
14
+ type: AuthorizationScopeType;
15
+ id?: ControlPlaneId;
16
+ }
17
+ export interface AuthorizationTarget {
18
+ organizationId: ControlPlaneId;
19
+ projectId?: ControlPlaneId;
20
+ environmentId?: ControlPlaneId;
21
+ resourceId?: ControlPlaneId;
22
+ }
23
+ export interface ControlPlaneOrganization {
24
+ id: ControlPlaneId;
25
+ slug: string;
26
+ name: string;
27
+ createdAt: string;
28
+ updatedAt: string;
29
+ }
30
+ export interface OrganizationMembership {
31
+ id: ControlPlaneId;
32
+ organizationId: ControlPlaneId;
33
+ actorId: ControlPlaneId;
34
+ roleTemplate: OrganizationRoleTemplate;
35
+ scope: AuthorizationScope;
36
+ source: AuthorizationRecordSource;
37
+ status: 'active' | 'revoked';
38
+ sessionVersion: number;
39
+ lastActiveAt?: string;
40
+ createdAt: string;
41
+ updatedAt: string;
42
+ }
43
+ export interface OrganizationInvitation {
44
+ id: ControlPlaneId;
45
+ organizationId: ControlPlaneId;
46
+ email: string;
47
+ roleTemplate: OrganizationRoleTemplate;
48
+ scope: AuthorizationScope;
49
+ invitedByActorId?: ControlPlaneId;
50
+ acceptedByActorId?: ControlPlaneId;
51
+ /** Present only in encrypted/administrator snapshots; never returned by invitation APIs. */
52
+ tokenHash?: string;
53
+ expiresAt: string;
54
+ acceptedAt?: string;
55
+ revokedAt?: string;
56
+ state: 'pending' | 'accepted' | 'expired' | 'revoked';
57
+ createdAt: string;
58
+ updatedAt: string;
59
+ }
60
+ export interface AuthorizationGrant {
61
+ id: ControlPlaneId;
62
+ organizationId: ControlPlaneId;
63
+ membershipId: ControlPlaneId;
64
+ effect: AuthorizationEffect;
65
+ capability: AuthorizationCapability;
66
+ scope: AuthorizationScope;
67
+ source: AuthorizationRecordSource;
68
+ createdAt: string;
69
+ updatedAt: string;
70
+ }
71
+ export interface ControlPlaneProject {
72
+ id: ControlPlaneId;
73
+ slug: string;
74
+ name: string;
75
+ description?: string;
76
+ organizationId?: ControlPlaneId;
77
+ desiredConfigHash?: string;
78
+ version: number;
79
+ createdAt: string;
80
+ updatedAt: string;
81
+ }
82
+ export interface ControlPlaneEnvironment {
83
+ id: ControlPlaneId;
84
+ projectId: ControlPlaneId;
85
+ slug: string;
86
+ name: string;
87
+ kind: string;
88
+ region?: string;
89
+ desiredState: JsonValue;
90
+ discoveredState: JsonValue;
91
+ version: number;
92
+ createdAt: string;
93
+ updatedAt: string;
94
+ }
95
+ export interface ControlPlaneResource {
96
+ id: ControlPlaneId;
97
+ projectId: ControlPlaneId;
98
+ environmentId?: ControlPlaneId;
99
+ kind: string;
100
+ slug: string;
101
+ name: string;
102
+ provider?: string;
103
+ providerId?: string;
104
+ desiredState: JsonValue;
105
+ discoveredState: JsonValue;
106
+ metadata: JsonValue;
107
+ version: number;
108
+ createdAt: string;
109
+ updatedAt: string;
110
+ }
111
+ export interface ControlPlaneActor {
112
+ id: ControlPlaneId;
113
+ kind: 'user' | 'service_account' | 'system';
114
+ externalId?: string;
115
+ displayName: string;
116
+ metadata: JsonValue;
117
+ disabledAt?: string;
118
+ version: number;
119
+ createdAt: string;
120
+ updatedAt: string;
121
+ }
122
+ export interface ControlPlaneOperation {
123
+ id: ControlPlaneId;
124
+ projectId?: ControlPlaneId;
125
+ environmentId?: ControlPlaneId;
126
+ resourceId?: ControlPlaneId;
127
+ actorId?: ControlPlaneId;
128
+ kind: string;
129
+ state: OperationState;
130
+ correlationId: string;
131
+ idempotencyKey?: string;
132
+ input: JsonValue;
133
+ output: JsonValue;
134
+ error?: string;
135
+ attempt: number;
136
+ priority: number;
137
+ leaseOwner?: string;
138
+ leaseExpiresAt?: string;
139
+ cancelRequestedAt?: string;
140
+ startedAt?: string;
141
+ finishedAt?: string;
142
+ version: number;
143
+ createdAt: string;
144
+ updatedAt: string;
145
+ }
146
+ export interface ControlPlaneEvent {
147
+ id: ControlPlaneId;
148
+ sequence: number;
149
+ organizationId?: ControlPlaneId;
150
+ projectId?: ControlPlaneId;
151
+ operationId?: ControlPlaneId;
152
+ resourceId?: ControlPlaneId;
153
+ actorId?: ControlPlaneId;
154
+ correlationId: string;
155
+ type: string;
156
+ level: 'debug' | 'info' | 'warning' | 'error';
157
+ payload: JsonValue;
158
+ createdAt: string;
159
+ }
160
+ export interface CreateProjectInput {
161
+ id?: ControlPlaneId;
162
+ slug: string;
163
+ name: string;
164
+ description?: string;
165
+ organizationId?: ControlPlaneId;
166
+ desiredConfigHash?: string;
167
+ }
168
+ export interface UpdateProjectInput {
169
+ name?: string;
170
+ description?: string | null;
171
+ organizationId?: ControlPlaneId | null;
172
+ desiredConfigHash?: string | null;
173
+ }
174
+ export interface CreateEnvironmentInput {
175
+ id?: ControlPlaneId;
176
+ projectId: ControlPlaneId;
177
+ slug: string;
178
+ name: string;
179
+ kind: string;
180
+ region?: string;
181
+ desiredState?: JsonValue;
182
+ discoveredState?: JsonValue;
183
+ }
184
+ export interface CreateResourceInput {
185
+ id?: ControlPlaneId;
186
+ projectId: ControlPlaneId;
187
+ environmentId?: ControlPlaneId;
188
+ kind: string;
189
+ slug: string;
190
+ name: string;
191
+ provider?: string;
192
+ providerId?: string;
193
+ desiredState?: JsonValue;
194
+ discoveredState?: JsonValue;
195
+ metadata?: JsonValue;
196
+ }
197
+ export interface UpdateResourceInput {
198
+ name?: string;
199
+ provider?: string | null;
200
+ providerId?: string | null;
201
+ desiredState?: JsonValue;
202
+ discoveredState?: JsonValue;
203
+ metadata?: JsonValue;
204
+ }
205
+ export interface CreateActorInput {
206
+ id?: ControlPlaneId;
207
+ kind: ControlPlaneActor['kind'];
208
+ externalId?: string;
209
+ displayName: string;
210
+ metadata?: JsonValue;
211
+ }
212
+ export interface CreateOperationInput {
213
+ id?: ControlPlaneId;
214
+ projectId?: ControlPlaneId;
215
+ environmentId?: ControlPlaneId;
216
+ resourceId?: ControlPlaneId;
217
+ actorId?: ControlPlaneId;
218
+ kind: string;
219
+ correlationId?: string;
220
+ idempotencyKey?: string;
221
+ input?: JsonValue;
222
+ priority?: number;
223
+ }
224
+ export interface TransitionOperationInput {
225
+ to: OperationState;
226
+ expectedVersion?: number;
227
+ output?: JsonValue;
228
+ error?: string;
229
+ leaseOwner?: string;
230
+ leaseExpiresAt?: string;
231
+ }
232
+ export interface AppendEventInput {
233
+ id?: ControlPlaneId;
234
+ organizationId?: ControlPlaneId;
235
+ projectId?: ControlPlaneId;
236
+ operationId?: ControlPlaneId;
237
+ resourceId?: ControlPlaneId;
238
+ actorId?: ControlPlaneId;
239
+ correlationId?: string;
240
+ type: string;
241
+ level?: ControlPlaneEvent['level'];
242
+ payload?: JsonValue;
243
+ }
244
+ export interface OperationListOptions {
245
+ projectId?: ControlPlaneId;
246
+ state?: OperationState;
247
+ kind?: string;
248
+ limit?: number;
249
+ before?: string;
250
+ }
251
+ export interface EventListOptions {
252
+ organizationId?: ControlPlaneId;
253
+ projectId?: ControlPlaneId;
254
+ operationId?: ControlPlaneId;
255
+ resourceId?: ControlPlaneId;
256
+ correlationId?: string;
257
+ afterSequence?: number;
258
+ limit?: number;
259
+ }
260
+ export interface ReconcileResult {
261
+ requeued: number;
262
+ failed: number;
263
+ }
264
+ export interface CompactResult {
265
+ deletedEvents: number;
266
+ deletedOperations: number;
267
+ vacuumed: boolean;
268
+ }
269
+ export interface ControlPlaneHealth {
270
+ path: string;
271
+ schemaVersion: number;
272
+ supportedSchemaVersion: number;
273
+ integrity: 'ok' | 'corrupt';
274
+ journalMode: string;
275
+ databaseBytes: number;
276
+ lastBackupAt?: string;
277
+ operations: Record<OperationState, number>;
278
+ pendingRetryableOperations: number;
279
+ }
280
+ export interface ControlPlaneSnapshot {
281
+ format: 'ts-cloud-control-plane';
282
+ schemaVersion: number;
283
+ exportedAt: string;
284
+ organizations: ControlPlaneOrganization[];
285
+ memberships: OrganizationMembership[];
286
+ invitations: OrganizationInvitation[];
287
+ grants: AuthorizationGrant[];
288
+ projects: ControlPlaneProject[];
289
+ environments: ControlPlaneEnvironment[];
290
+ resources: ControlPlaneResource[];
291
+ actors: ControlPlaneActor[];
292
+ operations: ControlPlaneOperation[];
293
+ events: ControlPlaneEvent[];
294
+ settings: Record<string, JsonValue>;
295
+ tags: ControlPlaneTag[];
296
+ resourceTags: Array<{
297
+ resourceId: ControlPlaneId;
298
+ tagId: ControlPlaneId;
299
+ createdAt: string;
300
+ }>;
301
+ savedFilters: SavedFilter[];
302
+ navigationItems: NavigationPreference[];
303
+ }
304
+ export interface CreateOrganizationInput {
305
+ id?: ControlPlaneId;
306
+ slug: string;
307
+ name: string;
308
+ }
309
+ export interface CreateMembershipInput {
310
+ id?: ControlPlaneId;
311
+ organizationId: ControlPlaneId;
312
+ actorId: ControlPlaneId;
313
+ roleTemplate: OrganizationRoleTemplate;
314
+ scope?: AuthorizationScope;
315
+ source?: AuthorizationRecordSource;
316
+ performedByActorId?: ControlPlaneId;
317
+ }
318
+ export interface CreateInvitationInput {
319
+ id?: ControlPlaneId;
320
+ organizationId: ControlPlaneId;
321
+ email: string;
322
+ roleTemplate: OrganizationRoleTemplate;
323
+ scope?: AuthorizationScope;
324
+ invitedByActorId?: ControlPlaneId;
325
+ expiresInMs?: number;
326
+ }
327
+ export interface CreateGrantInput {
328
+ id?: ControlPlaneId;
329
+ organizationId: ControlPlaneId;
330
+ membershipId: ControlPlaneId;
331
+ effect: AuthorizationEffect;
332
+ capability: AuthorizationCapability;
333
+ scope?: AuthorizationScope;
334
+ source?: AuthorizationRecordSource;
335
+ actorId?: ControlPlaneId;
336
+ }
337
+ export interface ControlPlaneTag {
338
+ id: ControlPlaneId;
339
+ projectId: ControlPlaneId;
340
+ name: string;
341
+ normalizedName: string;
342
+ color: string;
343
+ createdAt: string;
344
+ updatedAt: string;
345
+ }
346
+ export interface SavedFilter {
347
+ id: ControlPlaneId;
348
+ actorKey: string;
349
+ name: string;
350
+ routeId: string;
351
+ query: Record<string, JsonValue>;
352
+ createdAt: string;
353
+ updatedAt: string;
354
+ }
355
+ export interface NavigationPreference {
356
+ actorKey: string;
357
+ entityType: string;
358
+ entityId: string;
359
+ favorite: boolean;
360
+ lastVisitedAt: string;
361
+ visitCount: number;
362
+ }
363
+ export interface ControlPlaneStoreOptions {
364
+ cwd?: string;
365
+ path?: string;
366
+ busyTimeoutMs?: number;
367
+ now?: () => Date;
368
+ id?: () => string;
369
+ }
370
+ export interface ImportSnapshotOptions {
371
+ replace?: boolean;
372
+ }
373
+ export declare class OptimisticConcurrencyError extends Error {
374
+ constructor(entity: string, id: string, expectedVersion: number);
375
+ }
376
+ export declare class InvalidOperationTransitionError extends Error {
377
+ constructor(from: OperationState, to: OperationState);
378
+ }
379
+ export declare class UnsupportedSchemaVersionError extends Error {
380
+ constructor(actual: number, supported: number);
381
+ }
@@ -0,0 +1,24 @@
1
+ import type { DimensionCost, ServiceCost } from '../aws/cost-explorer';
2
+ export interface CostRange {
3
+ start: string;
4
+ end: string;
5
+ label: string;
6
+ }
7
+ export interface MonthToDateRange extends CostRange {
8
+ previous: CostRange;
9
+ daysElapsed: number;
10
+ daysInMonth: number;
11
+ }
12
+ export declare function monthToDateRange(now?: Date): MonthToDateRange;
13
+ export declare function rollingComparisonRange(days: number, now?: Date): {
14
+ current: CostRange;
15
+ previous: CostRange;
16
+ };
17
+ export declare function projectedMonthlyCost(total: number, daysElapsed: number, daysInMonth: number): number;
18
+ export declare function percentChange(current: number, previous: number): number | null;
19
+ export interface ComparedServiceCost extends ServiceCost {
20
+ previousAmount: number;
21
+ changePercent: number | null;
22
+ }
23
+ export declare function compareServiceCosts(current: ServiceCost[], previous: ServiceCost[]): ComparedServiceCost[];
24
+ export declare function egressUsageCosts(costs: DimensionCost[]): DimensionCost[];
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,32 @@
1
+ export interface CloudResource {
2
+ arn: string;
3
+ service: string;
4
+ type: string;
5
+ id: string;
6
+ name: string;
7
+ region?: string;
8
+ accountId?: string;
9
+ state?: string;
10
+ tags: Record<string, string>;
11
+ metadata: Record<string, string | number | boolean | undefined>;
12
+ }
13
+ export interface ResourceInventoryResult {
14
+ resources: CloudResource[];
15
+ warnings: string[];
16
+ }
17
+ export declare function parseResourceArn(arn: string, tags?: Record<string, string>): CloudResource;
18
+ export declare function mergeResources(resources: CloudResource[], filter?: string): CloudResource[];
19
+ export declare class ResourceInventoryClient {
20
+ private client;
21
+ private profile?;
22
+ private region;
23
+ constructor(profile?: string, region?: string);
24
+ private taggedResources;
25
+ private ec2Resources;
26
+ private rdsResources;
27
+ private lambdaResources;
28
+ private s3Resources;
29
+ discover(options?: {
30
+ type?: string;
31
+ }): Promise<ResourceInventoryResult>;
32
+ }
@@ -0,0 +1 @@
1
+ export {};