@sst-community/sst 4.21.1 → 5.0.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (832) hide show
  1. package/README.md +86 -52
  2. package/package.json +35 -11
  3. package/platform/js/chunks/chunk-HIZZCEDS.js +328 -0
  4. package/platform/js/chunks/chunk-HIZZCEDS.js.map +6 -0
  5. package/platform/js/chunks/chunk-KOKHGKJ2.js +639 -0
  6. package/platform/js/chunks/chunk-KOKHGKJ2.js.map +6 -0
  7. package/platform/js/chunks/chunk-MR4XM5XA.js +473 -0
  8. package/platform/js/chunks/chunk-MR4XM5XA.js.map +6 -0
  9. package/platform/js/chunks/chunk-ONNI4XNK.js +367 -0
  10. package/platform/js/chunks/chunk-ONNI4XNK.js.map +6 -0
  11. package/platform/js/chunks/chunk-VIFHC73J.js +108 -0
  12. package/platform/js/chunks/chunk-VIFHC73J.js.map +6 -0
  13. package/platform/js/chunks/chunk-WJ6BVA46.js +10 -0
  14. package/platform/js/chunks/chunk-WJ6BVA46.js.map +6 -0
  15. package/platform/js/chunks/component-32FCLIRK.js +26 -0
  16. package/platform/js/chunks/component-32FCLIRK.js.map +6 -0
  17. package/platform/js/chunks/config-CRGKEDQW.js +10 -0
  18. package/platform/js/chunks/config-CRGKEDQW.js.map +6 -0
  19. package/platform/js/chunks/link-OJ3RNGQ3.js +9 -0
  20. package/platform/js/chunks/link-OJ3RNGQ3.js.map +6 -0
  21. package/platform/js/components/aws/index.js +35399 -0
  22. package/platform/js/components/aws/index.js.map +6 -0
  23. package/platform/js/components/cloudflare/index.js +3246 -0
  24. package/platform/js/components/cloudflare/index.js.map +6 -0
  25. package/platform/js/components/core.js +114 -0
  26. package/platform/js/components/core.js.map +6 -0
  27. package/platform/js/components/vercel/index.js +120 -0
  28. package/platform/js/components/vercel/index.js.map +6 -0
  29. package/platform/js/testing/index.js +569 -0
  30. package/platform/js/testing/index.js.map +6 -0
  31. package/platform/package.json +25 -0
  32. package/platform/src/ast/add.mjs +190 -0
  33. package/platform/src/auto/run.ts +109 -0
  34. package/platform/src/components/README.md +652 -0
  35. package/platform/src/components/args.ts +133 -0
  36. package/platform/src/components/aws/alb.ts +577 -0
  37. package/platform/src/components/aws/analog.ts +462 -0
  38. package/platform/src/components/aws/apigateway-websocket-route.ts +206 -0
  39. package/platform/src/components/aws/apigateway-websocket.ts +894 -0
  40. package/platform/src/components/aws/apigatewayv1-api-key.ts +90 -0
  41. package/platform/src/components/aws/apigatewayv1-authorizer.ts +178 -0
  42. package/platform/src/components/aws/apigatewayv1-base-route.ts +78 -0
  43. package/platform/src/components/aws/apigatewayv1-integration-route.ts +92 -0
  44. package/platform/src/components/aws/apigatewayv1-lambda-route.ts +152 -0
  45. package/platform/src/components/aws/apigatewayv1-usage-plan.ts +109 -0
  46. package/platform/src/components/aws/apigatewayv1.ts +1691 -0
  47. package/platform/src/components/aws/apigatewayv2-authorizer.ts +199 -0
  48. package/platform/src/components/aws/apigatewayv2-base-route.ts +69 -0
  49. package/platform/src/components/aws/apigatewayv2-lambda-route.ts +141 -0
  50. package/platform/src/components/aws/apigatewayv2-private-route.ts +101 -0
  51. package/platform/src/components/aws/apigatewayv2-url-route.ts +90 -0
  52. package/platform/src/components/aws/apigatewayv2.ts +1439 -0
  53. package/platform/src/components/aws/app-sync-data-source.ts +264 -0
  54. package/platform/src/components/aws/app-sync-function.ts +79 -0
  55. package/platform/src/components/aws/app-sync-resolver.ts +110 -0
  56. package/platform/src/components/aws/app-sync.ts +849 -0
  57. package/platform/src/components/aws/astro.ts +580 -0
  58. package/platform/src/components/aws/aurora.ts +1356 -0
  59. package/platform/src/components/aws/auth-v1.ts +69 -0
  60. package/platform/src/components/aws/auth.ts +417 -0
  61. package/platform/src/components/aws/bucket-lambda-subscriber.ts +162 -0
  62. package/platform/src/components/aws/bucket-notification.ts +254 -0
  63. package/platform/src/components/aws/bucket-queue-subscriber.ts +122 -0
  64. package/platform/src/components/aws/bucket-topic-subscriber.ts +144 -0
  65. package/platform/src/components/aws/bucket.ts +2046 -0
  66. package/platform/src/components/aws/bus-base-subscriber.ts +52 -0
  67. package/platform/src/components/aws/bus-lambda-subscriber.ts +125 -0
  68. package/platform/src/components/aws/bus-queue-subscriber.ts +88 -0
  69. package/platform/src/components/aws/bus.ts +630 -0
  70. package/platform/src/components/aws/cdn.ts +561 -0
  71. package/platform/src/components/aws/cluster-v1.ts +932 -0
  72. package/platform/src/components/aws/cluster.ts +584 -0
  73. package/platform/src/components/aws/cognito-identity-pool.ts +433 -0
  74. package/platform/src/components/aws/cognito-identity-provider.ts +96 -0
  75. package/platform/src/components/aws/cognito-user-pool-client.ts +114 -0
  76. package/platform/src/components/aws/cognito-user-pool.ts +1089 -0
  77. package/platform/src/components/aws/cron-v2.ts +555 -0
  78. package/platform/src/components/aws/cron.ts +435 -0
  79. package/platform/src/components/aws/dns-validated-certificate.ts +108 -0
  80. package/platform/src/components/aws/dns.ts +221 -0
  81. package/platform/src/components/aws/dsql.ts +741 -0
  82. package/platform/src/components/aws/dynamo-lambda-subscriber.ts +124 -0
  83. package/platform/src/components/aws/dynamo.ts +929 -0
  84. package/platform/src/components/aws/efs.ts +410 -0
  85. package/platform/src/components/aws/email.ts +673 -0
  86. package/platform/src/components/aws/fargate.ts +1279 -0
  87. package/platform/src/components/aws/function.ts +3280 -0
  88. package/platform/src/components/aws/helpers/apigateway-account.ts +78 -0
  89. package/platform/src/components/aws/helpers/apigatewayv2-domain.ts +144 -0
  90. package/platform/src/components/aws/helpers/arn.ts +182 -0
  91. package/platform/src/components/aws/helpers/bootstrap.ts +16 -0
  92. package/platform/src/components/aws/helpers/client.ts +76 -0
  93. package/platform/src/components/aws/helpers/container-builder.ts +33 -0
  94. package/platform/src/components/aws/helpers/custom-domain.ts +128 -0
  95. package/platform/src/components/aws/helpers/event-source.ts +41 -0
  96. package/platform/src/components/aws/helpers/fargate.ts +727 -0
  97. package/platform/src/components/aws/helpers/function-builder.ts +133 -0
  98. package/platform/src/components/aws/helpers/function-code.ts +224 -0
  99. package/platform/src/components/aws/helpers/function-part.ts +212 -0
  100. package/platform/src/components/aws/helpers/function-permission.ts +29 -0
  101. package/platform/src/components/aws/helpers/load-balancer-args.ts +88 -0
  102. package/platform/src/components/aws/helpers/load-balancer.ts +17 -0
  103. package/platform/src/components/aws/helpers/provider.ts +36 -0
  104. package/platform/src/components/aws/helpers/queue-policy.ts +33 -0
  105. package/platform/src/components/aws/helpers/rds.ts +212 -0
  106. package/platform/src/components/aws/helpers/site-builder.ts +41 -0
  107. package/platform/src/components/aws/helpers/subscriber.ts +23 -0
  108. package/platform/src/components/aws/helpers/vpc.ts +27 -0
  109. package/platform/src/components/aws/https-redirect.ts +216 -0
  110. package/platform/src/components/aws/iam-edit.ts +50 -0
  111. package/platform/src/components/aws/index.ts +61 -0
  112. package/platform/src/components/aws/kinesis-stream-lambda-subscriber.ts +122 -0
  113. package/platform/src/components/aws/kinesis-stream.ts +416 -0
  114. package/platform/src/components/aws/linkable.ts +32 -0
  115. package/platform/src/components/aws/logging.ts +25 -0
  116. package/platform/src/components/aws/microvm.ts +988 -0
  117. package/platform/src/components/aws/mysql.ts +1050 -0
  118. package/platform/src/components/aws/nextjs.ts +1052 -0
  119. package/platform/src/components/aws/nuxt.ts +527 -0
  120. package/platform/src/components/aws/open-search.ts +603 -0
  121. package/platform/src/components/aws/opencontrol.ts +235 -0
  122. package/platform/src/components/aws/permission.ts +80 -0
  123. package/platform/src/components/aws/postgres-v1.ts +537 -0
  124. package/platform/src/components/aws/postgres.ts +1074 -0
  125. package/platform/src/components/aws/providers/bucket-files.ts +32 -0
  126. package/platform/src/components/aws/providers/distribution-deployment-waiter.ts +27 -0
  127. package/platform/src/components/aws/providers/distribution-invalidation.ts +24 -0
  128. package/platform/src/components/aws/providers/function-environment-update.ts +46 -0
  129. package/platform/src/components/aws/providers/hosted-zone-lookup.ts +25 -0
  130. package/platform/src/components/aws/providers/kv-keys.ts +15 -0
  131. package/platform/src/components/aws/providers/kv-routes-update.ts +24 -0
  132. package/platform/src/components/aws/providers/microvm-image-prune.ts +48 -0
  133. package/platform/src/components/aws/providers/origin-access-control.ts +21 -0
  134. package/platform/src/components/aws/providers/rds-role-lookup.ts +21 -0
  135. package/platform/src/components/aws/providers/vector-table.ts +25 -0
  136. package/platform/src/components/aws/queue-lambda-subscriber.ts +135 -0
  137. package/platform/src/components/aws/queue.ts +712 -0
  138. package/platform/src/components/aws/react.ts +510 -0
  139. package/platform/src/components/aws/realtime-lambda-subscriber.ts +129 -0
  140. package/platform/src/components/aws/realtime.ts +345 -0
  141. package/platform/src/components/aws/redis-v1.ts +595 -0
  142. package/platform/src/components/aws/redis.ts +1078 -0
  143. package/platform/src/components/aws/remix.ts +576 -0
  144. package/platform/src/components/aws/router-base-route.ts +83 -0
  145. package/platform/src/components/aws/router-bucket-route.ts +63 -0
  146. package/platform/src/components/aws/router-url-route.ts +75 -0
  147. package/platform/src/components/aws/router.ts +3294 -0
  148. package/platform/src/components/aws/service-v1.ts +876 -0
  149. package/platform/src/components/aws/service.ts +2994 -0
  150. package/platform/src/components/aws/sns-topic-lambda-subscriber.ts +127 -0
  151. package/platform/src/components/aws/sns-topic-queue-subscriber.ts +105 -0
  152. package/platform/src/components/aws/sns-topic.ts +700 -0
  153. package/platform/src/components/aws/solid-start.ts +467 -0
  154. package/platform/src/components/aws/ssr-site.ts +2204 -0
  155. package/platform/src/components/aws/static-site.ts +1389 -0
  156. package/platform/src/components/aws/step-functions/choice.ts +123 -0
  157. package/platform/src/components/aws/step-functions/fail.ts +69 -0
  158. package/platform/src/components/aws/step-functions/map.ts +264 -0
  159. package/platform/src/components/aws/step-functions/parallel.ts +170 -0
  160. package/platform/src/components/aws/step-functions/pass.ts +48 -0
  161. package/platform/src/components/aws/step-functions/state.ts +376 -0
  162. package/platform/src/components/aws/step-functions/succeed.ts +31 -0
  163. package/platform/src/components/aws/step-functions/task.ts +538 -0
  164. package/platform/src/components/aws/step-functions/wait.ts +105 -0
  165. package/platform/src/components/aws/step-functions.ts +804 -0
  166. package/platform/src/components/aws/svelte-kit.ts +563 -0
  167. package/platform/src/components/aws/takeover/alb.ts +9 -0
  168. package/platform/src/components/aws/takeover/apigatewayv2.ts +43 -0
  169. package/platform/src/components/aws/takeover/app-sync.ts +45 -0
  170. package/platform/src/components/aws/takeover/aurora.ts +19 -0
  171. package/platform/src/components/aws/takeover/bucket.ts +94 -0
  172. package/platform/src/components/aws/takeover/bus.ts +43 -0
  173. package/platform/src/components/aws/takeover/cognito-user-pool.ts +21 -0
  174. package/platform/src/components/aws/takeover/cron-v2.ts +9 -0
  175. package/platform/src/components/aws/takeover/dsql.ts +12 -0
  176. package/platform/src/components/aws/takeover/dynamo.ts +31 -0
  177. package/platform/src/components/aws/takeover/efs.ts +9 -0
  178. package/platform/src/components/aws/takeover/function.ts +21 -0
  179. package/platform/src/components/aws/takeover/helpers.ts +26 -0
  180. package/platform/src/components/aws/takeover/index.ts +27 -0
  181. package/platform/src/components/aws/takeover/mysql.ts +17 -0
  182. package/platform/src/components/aws/takeover/postgres.ts +17 -0
  183. package/platform/src/components/aws/takeover/queue.ts +21 -0
  184. package/platform/src/components/aws/takeover/redis.ts +10 -0
  185. package/platform/src/components/aws/takeover/service.ts +22 -0
  186. package/platform/src/components/aws/takeover/sns-topic.ts +27 -0
  187. package/platform/src/components/aws/takeover/task.ts +13 -0
  188. package/platform/src/components/aws/tan-stack-start.ts +479 -0
  189. package/platform/src/components/aws/task.ts +571 -0
  190. package/platform/src/components/aws/v5/alb.ts +310 -0
  191. package/platform/src/components/aws/v5/apigatewayv2.ts +845 -0
  192. package/platform/src/components/aws/v5/app-sync.ts +673 -0
  193. package/platform/src/components/aws/v5/aurora.ts +855 -0
  194. package/platform/src/components/aws/v5/bucket.ts +1001 -0
  195. package/platform/src/components/aws/v5/bus.ts +321 -0
  196. package/platform/src/components/aws/v5/cluster.ts +230 -0
  197. package/platform/src/components/aws/v5/cognito-user-pool-client.ts +100 -0
  198. package/platform/src/components/aws/v5/cognito-user-pool.ts +693 -0
  199. package/platform/src/components/aws/v5/cron-v2.ts +316 -0
  200. package/platform/src/components/aws/v5/dsql.ts +665 -0
  201. package/platform/src/components/aws/v5/dynamo.ts +477 -0
  202. package/platform/src/components/aws/v5/efs.ts +311 -0
  203. package/platform/src/components/aws/v5/function.ts +1546 -0
  204. package/platform/src/components/aws/v5/index.ts +26 -0
  205. package/platform/src/components/aws/v5/mysql.ts +604 -0
  206. package/platform/src/components/aws/v5/postgres.ts +612 -0
  207. package/platform/src/components/aws/v5/queue.ts +271 -0
  208. package/platform/src/components/aws/v5/redis.ts +550 -0
  209. package/platform/src/components/aws/v5/service.ts +2209 -0
  210. package/platform/src/components/aws/v5/sns-topic.ts +284 -0
  211. package/platform/src/components/aws/v5/task.ts +549 -0
  212. package/platform/src/components/aws/vector.ts +316 -0
  213. package/platform/src/components/aws/vpc-v1.ts +580 -0
  214. package/platform/src/components/aws/vpc.ts +1641 -0
  215. package/platform/src/components/aws/workflow.ts +421 -0
  216. package/platform/src/components/base/base-site.ts +101 -0
  217. package/platform/src/components/base/base-ssr-site.ts +120 -0
  218. package/platform/src/components/base/base-static-site.ts +314 -0
  219. package/platform/src/components/cloudflare/account-id.ts +1 -0
  220. package/platform/src/components/cloudflare/ai.ts +77 -0
  221. package/platform/src/components/cloudflare/astro.ts +355 -0
  222. package/platform/src/components/cloudflare/auth.ts +69 -0
  223. package/platform/src/components/cloudflare/binding.ts +132 -0
  224. package/platform/src/components/cloudflare/bucket.ts +142 -0
  225. package/platform/src/components/cloudflare/cron.ts +207 -0
  226. package/platform/src/components/cloudflare/d1.ts +230 -0
  227. package/platform/src/components/cloudflare/dns.ts +253 -0
  228. package/platform/src/components/cloudflare/durable-object.ts +144 -0
  229. package/platform/src/components/cloudflare/experimental/index.ts +3 -0
  230. package/platform/src/components/cloudflare/experimental/solid-start.ts +288 -0
  231. package/platform/src/components/cloudflare/experimental/static-site.ts +4 -0
  232. package/platform/src/components/cloudflare/helpers/compatibility.ts +44 -0
  233. package/platform/src/components/cloudflare/helpers/fetch.ts +81 -0
  234. package/platform/src/components/cloudflare/helpers/validation.ts +74 -0
  235. package/platform/src/components/cloudflare/helpers/worker-builder.ts +57 -0
  236. package/platform/src/components/cloudflare/helpers/wrangler.ts +222 -0
  237. package/platform/src/components/cloudflare/hyperdrive.ts +402 -0
  238. package/platform/src/components/cloudflare/index.ts +25 -0
  239. package/platform/src/components/cloudflare/kv.ts +218 -0
  240. package/platform/src/components/cloudflare/providers/dns-record.ts +43 -0
  241. package/platform/src/components/cloudflare/providers/kv-data.ts +107 -0
  242. package/platform/src/components/cloudflare/providers/worker-assets.ts +41 -0
  243. package/platform/src/components/cloudflare/providers/worker-placement.ts +93 -0
  244. package/platform/src/components/cloudflare/providers/worker-script.ts +47 -0
  245. package/platform/src/components/cloudflare/providers/worker-url.ts +109 -0
  246. package/platform/src/components/cloudflare/providers/zone-lookup.ts +85 -0
  247. package/platform/src/components/cloudflare/queue-worker-subscriber.ts +192 -0
  248. package/platform/src/components/cloudflare/queue.ts +310 -0
  249. package/platform/src/components/cloudflare/rate-limit.ts +178 -0
  250. package/platform/src/components/cloudflare/react-router.ts +322 -0
  251. package/platform/src/components/cloudflare/ssr-site.ts +293 -0
  252. package/platform/src/components/cloudflare/static-site-v2.ts +428 -0
  253. package/platform/src/components/cloudflare/static-site.ts +470 -0
  254. package/platform/src/components/cloudflare/tan-stack-start.ts +408 -0
  255. package/platform/src/components/cloudflare/worker.ts +1080 -0
  256. package/platform/src/components/cloudflare/workflow.ts +319 -0
  257. package/platform/src/components/component.ts +242 -0
  258. package/platform/src/components/core.ts +43 -0
  259. package/platform/src/components/cpu.ts +10 -0
  260. package/platform/src/components/dns.ts +82 -0
  261. package/platform/src/components/duration.ts +67 -0
  262. package/platform/src/components/error.ts +5 -0
  263. package/platform/src/components/esbuild.ts +15 -0
  264. package/platform/src/components/experimental/dev-command.ts +127 -0
  265. package/platform/src/components/experimental/index.ts +1 -0
  266. package/platform/src/components/groups.ts +9 -0
  267. package/platform/src/components/index.ts +9 -0
  268. package/platform/src/components/input.ts +2 -0
  269. package/platform/src/components/link.ts +201 -0
  270. package/platform/src/components/linkable.ts +360 -0
  271. package/platform/src/components/naming-rules.ts +299 -0
  272. package/platform/src/components/naming.ts +189 -0
  273. package/platform/src/components/parts-component.ts +662 -0
  274. package/platform/src/components/parts.ts +299 -0
  275. package/platform/src/components/path.ts +5 -0
  276. package/platform/src/components/rpc/rpc.ts +110 -0
  277. package/platform/src/components/secret.ts +159 -0
  278. package/platform/src/components/size.ts +28 -0
  279. package/platform/src/components/takeover.ts +131 -0
  280. package/platform/src/components/transform.ts +107 -0
  281. package/platform/src/components/vercel/account-id.ts +1 -0
  282. package/platform/src/components/vercel/dns.ts +171 -0
  283. package/platform/src/components/vercel/index.ts +2 -0
  284. package/platform/src/components/vercel/providers/dns-record.ts +34 -0
  285. package/platform/src/config.ts +1463 -0
  286. package/platform/src/global-aliases.d.ts +37 -0
  287. package/platform/src/global.d.ts +374 -0
  288. package/platform/src/internal.d.ts +18 -0
  289. package/platform/src/runtime/worker/unenv.d.ts +14 -0
  290. package/platform/src/runtime/worker/unenv.mjs +26 -0
  291. package/platform/src/shim/run.js +25 -0
  292. package/platform/src/testing/global.ts +83 -0
  293. package/platform/src/testing/index.ts +103 -0
  294. package/platform/src/testing/mock.ts +646 -0
  295. package/platform/src/testing/vitest.ts +36 -0
  296. package/platform/src/util/compare-semver.ts +23 -0
  297. package/platform/src/util/fs.ts +49 -0
  298. package/platform/src/util/lazy.ts +12 -0
  299. package/platform/src/util/minify.ts +10 -0
  300. package/platform/src/util/package.ts +29 -0
  301. package/platform/src/util/semaphore.ts +29 -0
  302. package/platform/src/util/warn.ts +7 -0
  303. package/platform/types/auto/run.d.ts +9 -0
  304. package/platform/types/auto/run.d.ts.map +1 -0
  305. package/platform/types/components/args.d.ts +77 -0
  306. package/platform/types/components/args.d.ts.map +1 -0
  307. package/platform/types/components/aws/alb.d.ts +283 -0
  308. package/platform/types/components/aws/alb.d.ts.map +1 -0
  309. package/platform/types/components/aws/analog.d.ts +408 -0
  310. package/platform/types/components/aws/analog.d.ts.map +1 -0
  311. package/platform/types/components/aws/apigateway-websocket-route.d.ts +74 -0
  312. package/platform/types/components/aws/apigateway-websocket-route.d.ts.map +1 -0
  313. package/platform/types/components/aws/apigateway-websocket.d.ts +560 -0
  314. package/platform/types/components/aws/apigateway-websocket.d.ts.map +1 -0
  315. package/platform/types/components/aws/apigatewayv1-api-key.d.ts +48 -0
  316. package/platform/types/components/aws/apigatewayv1-api-key.d.ts.map +1 -0
  317. package/platform/types/components/aws/apigatewayv1-authorizer.d.ts +55 -0
  318. package/platform/types/components/aws/apigatewayv1-authorizer.d.ts.map +1 -0
  319. package/platform/types/components/aws/apigatewayv1-base-route.d.ts +36 -0
  320. package/platform/types/components/aws/apigatewayv1-base-route.d.ts.map +1 -0
  321. package/platform/types/components/aws/apigatewayv1-integration-route.d.ts +39 -0
  322. package/platform/types/components/aws/apigatewayv1-integration-route.d.ts.map +1 -0
  323. package/platform/types/components/aws/apigatewayv1-lambda-route.d.ts +53 -0
  324. package/platform/types/components/aws/apigatewayv1-lambda-route.d.ts.map +1 -0
  325. package/platform/types/components/aws/apigatewayv1-usage-plan.d.ts +53 -0
  326. package/platform/types/components/aws/apigatewayv1-usage-plan.d.ts.map +1 -0
  327. package/platform/types/components/aws/apigatewayv1.d.ts +1028 -0
  328. package/platform/types/components/aws/apigatewayv1.d.ts.map +1 -0
  329. package/platform/types/components/aws/apigatewayv2-authorizer.d.ts +54 -0
  330. package/platform/types/components/aws/apigatewayv2-authorizer.d.ts.map +1 -0
  331. package/platform/types/components/aws/apigatewayv2-base-route.d.ts +28 -0
  332. package/platform/types/components/aws/apigatewayv2-base-route.d.ts.map +1 -0
  333. package/platform/types/components/aws/apigatewayv2-lambda-route.d.ts +59 -0
  334. package/platform/types/components/aws/apigatewayv2-lambda-route.d.ts.map +1 -0
  335. package/platform/types/components/aws/apigatewayv2-private-route.d.ts +54 -0
  336. package/platform/types/components/aws/apigatewayv2-private-route.d.ts.map +1 -0
  337. package/platform/types/components/aws/apigatewayv2-url-route.d.ts +44 -0
  338. package/platform/types/components/aws/apigatewayv2-url-route.d.ts.map +1 -0
  339. package/platform/types/components/aws/apigatewayv2.d.ts +955 -0
  340. package/platform/types/components/aws/apigatewayv2.d.ts.map +1 -0
  341. package/platform/types/components/aws/app-sync-data-source.d.ts +52 -0
  342. package/platform/types/components/aws/app-sync-data-source.d.ts.map +1 -0
  343. package/platform/types/components/aws/app-sync-function.d.ts +33 -0
  344. package/platform/types/components/aws/app-sync-function.d.ts.map +1 -0
  345. package/platform/types/components/aws/app-sync-resolver.d.ts +41 -0
  346. package/platform/types/components/aws/app-sync-resolver.d.ts.map +1 -0
  347. package/platform/types/components/aws/app-sync.d.ts +638 -0
  348. package/platform/types/components/aws/app-sync.d.ts.map +1 -0
  349. package/platform/types/components/aws/astro.d.ts +409 -0
  350. package/platform/types/components/aws/astro.d.ts.map +1 -0
  351. package/platform/types/components/aws/aurora.d.ts +720 -0
  352. package/platform/types/components/aws/aurora.d.ts.map +1 -0
  353. package/platform/types/components/aws/auth-v1.d.ts +26 -0
  354. package/platform/types/components/aws/auth-v1.d.ts.map +1 -0
  355. package/platform/types/components/aws/auth.d.ts +295 -0
  356. package/platform/types/components/aws/auth.d.ts.map +1 -0
  357. package/platform/types/components/aws/bucket-lambda-subscriber.d.ts +61 -0
  358. package/platform/types/components/aws/bucket-lambda-subscriber.d.ts.map +1 -0
  359. package/platform/types/components/aws/bucket-notification.d.ts +47 -0
  360. package/platform/types/components/aws/bucket-notification.d.ts.map +1 -0
  361. package/platform/types/components/aws/bucket-queue-subscriber.d.ts +55 -0
  362. package/platform/types/components/aws/bucket-queue-subscriber.d.ts.map +1 -0
  363. package/platform/types/components/aws/bucket-topic-subscriber.d.ts +55 -0
  364. package/platform/types/components/aws/bucket-topic-subscriber.d.ts.map +1 -0
  365. package/platform/types/components/aws/bucket.d.ts +1356 -0
  366. package/platform/types/components/aws/bucket.d.ts.map +1 -0
  367. package/platform/types/components/aws/bus-base-subscriber.d.ts +20 -0
  368. package/platform/types/components/aws/bus-base-subscriber.d.ts.map +1 -0
  369. package/platform/types/components/aws/bus-lambda-subscriber.d.ts +50 -0
  370. package/platform/types/components/aws/bus-lambda-subscriber.d.ts.map +1 -0
  371. package/platform/types/components/aws/bus-queue-subscriber.d.ts +44 -0
  372. package/platform/types/components/aws/bus-queue-subscriber.d.ts.map +1 -0
  373. package/platform/types/components/aws/bus.d.ts +447 -0
  374. package/platform/types/components/aws/bus.d.ts.map +1 -0
  375. package/platform/types/components/aws/cdn.d.ts +310 -0
  376. package/platform/types/components/aws/cdn.d.ts.map +1 -0
  377. package/platform/types/components/aws/cluster-v1.d.ts +885 -0
  378. package/platform/types/components/aws/cluster-v1.d.ts.map +1 -0
  379. package/platform/types/components/aws/cluster.d.ts +364 -0
  380. package/platform/types/components/aws/cluster.d.ts.map +1 -0
  381. package/platform/types/components/aws/cognito-identity-pool.d.ts +199 -0
  382. package/platform/types/components/aws/cognito-identity-pool.d.ts.map +1 -0
  383. package/platform/types/components/aws/cognito-identity-provider.d.ts +38 -0
  384. package/platform/types/components/aws/cognito-identity-provider.d.ts.map +1 -0
  385. package/platform/types/components/aws/cognito-user-pool-client.d.ts +50 -0
  386. package/platform/types/components/aws/cognito-user-pool-client.d.ts.map +1 -0
  387. package/platform/types/components/aws/cognito-user-pool.d.ts +703 -0
  388. package/platform/types/components/aws/cognito-user-pool.d.ts.map +1 -0
  389. package/platform/types/components/aws/cron-v2.d.ts +325 -0
  390. package/platform/types/components/aws/cron-v2.d.ts.map +1 -0
  391. package/platform/types/components/aws/cron.d.ts +259 -0
  392. package/platform/types/components/aws/cron.d.ts.map +1 -0
  393. package/platform/types/components/aws/dns-validated-certificate.d.ts +27 -0
  394. package/platform/types/components/aws/dns-validated-certificate.d.ts.map +1 -0
  395. package/platform/types/components/aws/dns.d.ts +94 -0
  396. package/platform/types/components/aws/dns.d.ts.map +1 -0
  397. package/platform/types/components/aws/dsql.d.ts +369 -0
  398. package/platform/types/components/aws/dsql.d.ts.map +1 -0
  399. package/platform/types/components/aws/dynamo-lambda-subscriber.d.ts +55 -0
  400. package/platform/types/components/aws/dynamo-lambda-subscriber.d.ts.map +1 -0
  401. package/platform/types/components/aws/dynamo.d.ts +628 -0
  402. package/platform/types/components/aws/dynamo.d.ts.map +1 -0
  403. package/platform/types/components/aws/efs.d.ts +217 -0
  404. package/platform/types/components/aws/efs.d.ts.map +1 -0
  405. package/platform/types/components/aws/email.d.ts +370 -0
  406. package/platform/types/components/aws/email.d.ts.map +1 -0
  407. package/platform/types/components/aws/fargate.d.ts +894 -0
  408. package/platform/types/components/aws/fargate.d.ts.map +1 -0
  409. package/platform/types/components/aws/function.d.ts +1780 -0
  410. package/platform/types/components/aws/function.d.ts.map +1 -0
  411. package/platform/types/components/aws/helpers/apigateway-account.d.ts +3 -0
  412. package/platform/types/components/aws/helpers/apigateway-account.d.ts.map +1 -0
  413. package/platform/types/components/aws/helpers/apigatewayv2-domain.d.ts +144 -0
  414. package/platform/types/components/aws/helpers/apigatewayv2-domain.d.ts.map +1 -0
  415. package/platform/types/components/aws/helpers/arn.d.ts +51 -0
  416. package/platform/types/components/aws/helpers/arn.d.ts.map +1 -0
  417. package/platform/types/components/aws/helpers/bootstrap.d.ts +13 -0
  418. package/platform/types/components/aws/helpers/bootstrap.d.ts.map +1 -0
  419. package/platform/types/components/aws/helpers/client.d.ts +7 -0
  420. package/platform/types/components/aws/helpers/client.d.ts.map +1 -0
  421. package/platform/types/components/aws/helpers/container-builder.d.ts +4 -0
  422. package/platform/types/components/aws/helpers/container-builder.d.ts.map +1 -0
  423. package/platform/types/components/aws/helpers/custom-domain.d.ts +111 -0
  424. package/platform/types/components/aws/helpers/custom-domain.d.ts.map +1 -0
  425. package/platform/types/components/aws/helpers/event-source.d.ts +26 -0
  426. package/platform/types/components/aws/helpers/event-source.d.ts.map +1 -0
  427. package/platform/types/components/aws/helpers/fargate.d.ts +225 -0
  428. package/platform/types/components/aws/helpers/fargate.d.ts.map +1 -0
  429. package/platform/types/components/aws/helpers/function-builder.d.ts +14 -0
  430. package/platform/types/components/aws/helpers/function-builder.d.ts.map +1 -0
  431. package/platform/types/components/aws/helpers/function-code.d.ts +80 -0
  432. package/platform/types/components/aws/helpers/function-code.d.ts.map +1 -0
  433. package/platform/types/components/aws/helpers/function-part.d.ts +61 -0
  434. package/platform/types/components/aws/helpers/function-part.d.ts.map +1 -0
  435. package/platform/types/components/aws/helpers/function-permission.d.ts +17 -0
  436. package/platform/types/components/aws/helpers/function-permission.d.ts.map +1 -0
  437. package/platform/types/components/aws/helpers/load-balancer-args.d.ts +40 -0
  438. package/platform/types/components/aws/helpers/load-balancer-args.d.ts.map +1 -0
  439. package/platform/types/components/aws/helpers/load-balancer.d.ts +9 -0
  440. package/platform/types/components/aws/helpers/load-balancer.d.ts.map +1 -0
  441. package/platform/types/components/aws/helpers/provider.d.ts +3 -0
  442. package/platform/types/components/aws/helpers/provider.d.ts.map +1 -0
  443. package/platform/types/components/aws/helpers/queue-policy.d.ts +11 -0
  444. package/platform/types/components/aws/helpers/queue-policy.d.ts.map +1 -0
  445. package/platform/types/components/aws/helpers/rds.d.ts +98 -0
  446. package/platform/types/components/aws/helpers/rds.d.ts.map +1 -0
  447. package/platform/types/components/aws/helpers/site-builder.d.ts +4 -0
  448. package/platform/types/components/aws/helpers/site-builder.d.ts.map +1 -0
  449. package/platform/types/components/aws/helpers/subscriber.d.ts +6 -0
  450. package/platform/types/components/aws/helpers/subscriber.d.ts.map +1 -0
  451. package/platform/types/components/aws/helpers/vpc.d.ts +14 -0
  452. package/platform/types/components/aws/helpers/vpc.d.ts.map +1 -0
  453. package/platform/types/components/aws/https-redirect.d.ts +38 -0
  454. package/platform/types/components/aws/https-redirect.d.ts.map +1 -0
  455. package/platform/types/components/aws/iam-edit.d.ts +39 -0
  456. package/platform/types/components/aws/iam-edit.d.ts.map +1 -0
  457. package/platform/types/components/aws/index.d.ts +56 -0
  458. package/platform/types/components/aws/index.d.ts.map +1 -0
  459. package/platform/types/components/aws/kinesis-stream-lambda-subscriber.d.ts +49 -0
  460. package/platform/types/components/aws/kinesis-stream-lambda-subscriber.d.ts.map +1 -0
  461. package/platform/types/components/aws/kinesis-stream.d.ts +254 -0
  462. package/platform/types/components/aws/kinesis-stream.d.ts.map +1 -0
  463. package/platform/types/components/aws/linkable.d.ts +17 -0
  464. package/platform/types/components/aws/linkable.d.ts.map +1 -0
  465. package/platform/types/components/aws/logging.d.ts +26 -0
  466. package/platform/types/components/aws/logging.d.ts.map +1 -0
  467. package/platform/types/components/aws/microvm.d.ts +439 -0
  468. package/platform/types/components/aws/microvm.d.ts.map +1 -0
  469. package/platform/types/components/aws/mysql.d.ts +528 -0
  470. package/platform/types/components/aws/mysql.d.ts.map +1 -0
  471. package/platform/types/components/aws/nextjs.d.ts +534 -0
  472. package/platform/types/components/aws/nextjs.d.ts.map +1 -0
  473. package/platform/types/components/aws/nuxt.d.ts +480 -0
  474. package/platform/types/components/aws/nuxt.d.ts.map +1 -0
  475. package/platform/types/components/aws/open-search.d.ts +306 -0
  476. package/platform/types/components/aws/open-search.d.ts.map +1 -0
  477. package/platform/types/components/aws/opencontrol.d.ts +169 -0
  478. package/platform/types/components/aws/opencontrol.d.ts.map +1 -0
  479. package/platform/types/components/aws/permission.d.ts +80 -0
  480. package/platform/types/components/aws/permission.d.ts.map +1 -0
  481. package/platform/types/components/aws/postgres-v1.d.ts +328 -0
  482. package/platform/types/components/aws/postgres-v1.d.ts.map +1 -0
  483. package/platform/types/components/aws/postgres.d.ts +529 -0
  484. package/platform/types/components/aws/postgres.d.ts.map +1 -0
  485. package/platform/types/components/aws/providers/bucket-files.d.ts +18 -0
  486. package/platform/types/components/aws/providers/bucket-files.d.ts.map +1 -0
  487. package/platform/types/components/aws/providers/distribution-deployment-waiter.d.ts +13 -0
  488. package/platform/types/components/aws/providers/distribution-deployment-waiter.d.ts.map +1 -0
  489. package/platform/types/components/aws/providers/distribution-invalidation.d.ts +11 -0
  490. package/platform/types/components/aws/providers/distribution-invalidation.d.ts.map +1 -0
  491. package/platform/types/components/aws/providers/function-environment-update.d.ts +33 -0
  492. package/platform/types/components/aws/providers/function-environment-update.d.ts.map +1 -0
  493. package/platform/types/components/aws/providers/hosted-zone-lookup.d.ts +11 -0
  494. package/platform/types/components/aws/providers/hosted-zone-lookup.d.ts.map +1 -0
  495. package/platform/types/components/aws/providers/kv-keys.d.ts +11 -0
  496. package/platform/types/components/aws/providers/kv-keys.d.ts.map +1 -0
  497. package/platform/types/components/aws/providers/kv-routes-update.d.ts +11 -0
  498. package/platform/types/components/aws/providers/kv-routes-update.d.ts.map +1 -0
  499. package/platform/types/components/aws/providers/microvm-image-prune.d.ts +35 -0
  500. package/platform/types/components/aws/providers/microvm-image-prune.d.ts.map +1 -0
  501. package/platform/types/components/aws/providers/origin-access-control.d.ts +8 -0
  502. package/platform/types/components/aws/providers/origin-access-control.d.ts.map +1 -0
  503. package/platform/types/components/aws/providers/rds-role-lookup.d.ts +8 -0
  504. package/platform/types/components/aws/providers/rds-role-lookup.d.ts.map +1 -0
  505. package/platform/types/components/aws/providers/vector-table.d.ts +12 -0
  506. package/platform/types/components/aws/providers/vector-table.d.ts.map +1 -0
  507. package/platform/types/components/aws/queue-lambda-subscriber.d.ts +53 -0
  508. package/platform/types/components/aws/queue-lambda-subscriber.d.ts.map +1 -0
  509. package/platform/types/components/aws/queue.d.ts +494 -0
  510. package/platform/types/components/aws/queue.d.ts.map +1 -0
  511. package/platform/types/components/aws/react.d.ts +407 -0
  512. package/platform/types/components/aws/react.d.ts.map +1 -0
  513. package/platform/types/components/aws/realtime-lambda-subscriber.d.ts +53 -0
  514. package/platform/types/components/aws/realtime-lambda-subscriber.d.ts.map +1 -0
  515. package/platform/types/components/aws/realtime.d.ts +237 -0
  516. package/platform/types/components/aws/realtime.d.ts.map +1 -0
  517. package/platform/types/components/aws/redis-v1.d.ts +348 -0
  518. package/platform/types/components/aws/redis-v1.d.ts.map +1 -0
  519. package/platform/types/components/aws/redis.d.ts +545 -0
  520. package/platform/types/components/aws/redis.d.ts.map +1 -0
  521. package/platform/types/components/aws/remix.d.ts +408 -0
  522. package/platform/types/components/aws/remix.d.ts.map +1 -0
  523. package/platform/types/components/aws/router-base-route.d.ts +28 -0
  524. package/platform/types/components/aws/router-base-route.d.ts.map +1 -0
  525. package/platform/types/components/aws/router-bucket-route.d.ts +29 -0
  526. package/platform/types/components/aws/router-bucket-route.d.ts.map +1 -0
  527. package/platform/types/components/aws/router-url-route.d.ts +28 -0
  528. package/platform/types/components/aws/router-url-route.d.ts.map +1 -0
  529. package/platform/types/components/aws/router.d.ts +1767 -0
  530. package/platform/types/components/aws/router.d.ts.map +1 -0
  531. package/platform/types/components/aws/service-v1.d.ts +78 -0
  532. package/platform/types/components/aws/service-v1.d.ts.map +1 -0
  533. package/platform/types/components/aws/service.d.ts +1756 -0
  534. package/platform/types/components/aws/service.d.ts.map +1 -0
  535. package/platform/types/components/aws/sns-topic-lambda-subscriber.d.ts +53 -0
  536. package/platform/types/components/aws/sns-topic-lambda-subscriber.d.ts.map +1 -0
  537. package/platform/types/components/aws/sns-topic-queue-subscriber.d.ts +55 -0
  538. package/platform/types/components/aws/sns-topic-queue-subscriber.d.ts.map +1 -0
  539. package/platform/types/components/aws/sns-topic.d.ts +394 -0
  540. package/platform/types/components/aws/sns-topic.d.ts.map +1 -0
  541. package/platform/types/components/aws/solid-start.d.ts +399 -0
  542. package/platform/types/components/aws/solid-start.d.ts.map +1 -0
  543. package/platform/types/components/aws/ssr-site.d.ts +895 -0
  544. package/platform/types/components/aws/ssr-site.d.ts.map +1 -0
  545. package/platform/types/components/aws/static-site.d.ts +744 -0
  546. package/platform/types/components/aws/static-site.d.ts.map +1 -0
  547. package/platform/types/components/aws/step-functions/choice.d.ts +73 -0
  548. package/platform/types/components/aws/step-functions/choice.d.ts.map +1 -0
  549. package/platform/types/components/aws/step-functions/fail.d.ts +63 -0
  550. package/platform/types/components/aws/step-functions/fail.d.ts.map +1 -0
  551. package/platform/types/components/aws/step-functions/map.d.ts +236 -0
  552. package/platform/types/components/aws/step-functions/map.d.ts.map +1 -0
  553. package/platform/types/components/aws/step-functions/parallel.d.ts +127 -0
  554. package/platform/types/components/aws/step-functions/parallel.d.ts.map +1 -0
  555. package/platform/types/components/aws/step-functions/pass.d.ts +39 -0
  556. package/platform/types/components/aws/step-functions/pass.d.ts.map +1 -0
  557. package/platform/types/components/aws/step-functions/state.d.ts +231 -0
  558. package/platform/types/components/aws/step-functions/state.d.ts.map +1 -0
  559. package/platform/types/components/aws/step-functions/succeed.d.ts +26 -0
  560. package/platform/types/components/aws/step-functions/succeed.d.ts.map +1 -0
  561. package/platform/types/components/aws/step-functions/task.d.ts +485 -0
  562. package/platform/types/components/aws/step-functions/task.d.ts.map +1 -0
  563. package/platform/types/components/aws/step-functions/wait.d.ts +91 -0
  564. package/platform/types/components/aws/step-functions/wait.d.ts.map +1 -0
  565. package/platform/types/components/aws/step-functions.d.ts +478 -0
  566. package/platform/types/components/aws/step-functions.d.ts.map +1 -0
  567. package/platform/types/components/aws/svelte-kit.d.ts +456 -0
  568. package/platform/types/components/aws/svelte-kit.d.ts.map +1 -0
  569. package/platform/types/components/aws/takeover/alb.d.ts +2 -0
  570. package/platform/types/components/aws/takeover/alb.d.ts.map +1 -0
  571. package/platform/types/components/aws/takeover/apigatewayv2.d.ts +2 -0
  572. package/platform/types/components/aws/takeover/apigatewayv2.d.ts.map +1 -0
  573. package/platform/types/components/aws/takeover/app-sync.d.ts +2 -0
  574. package/platform/types/components/aws/takeover/app-sync.d.ts.map +1 -0
  575. package/platform/types/components/aws/takeover/aurora.d.ts +2 -0
  576. package/platform/types/components/aws/takeover/aurora.d.ts.map +1 -0
  577. package/platform/types/components/aws/takeover/bucket.d.ts +2 -0
  578. package/platform/types/components/aws/takeover/bucket.d.ts.map +1 -0
  579. package/platform/types/components/aws/takeover/bus.d.ts +2 -0
  580. package/platform/types/components/aws/takeover/bus.d.ts.map +1 -0
  581. package/platform/types/components/aws/takeover/cognito-user-pool.d.ts +2 -0
  582. package/platform/types/components/aws/takeover/cognito-user-pool.d.ts.map +1 -0
  583. package/platform/types/components/aws/takeover/cron-v2.d.ts +2 -0
  584. package/platform/types/components/aws/takeover/cron-v2.d.ts.map +1 -0
  585. package/platform/types/components/aws/takeover/dsql.d.ts +2 -0
  586. package/platform/types/components/aws/takeover/dsql.d.ts.map +1 -0
  587. package/platform/types/components/aws/takeover/dynamo.d.ts +2 -0
  588. package/platform/types/components/aws/takeover/dynamo.d.ts.map +1 -0
  589. package/platform/types/components/aws/takeover/efs.d.ts +2 -0
  590. package/platform/types/components/aws/takeover/efs.d.ts.map +1 -0
  591. package/platform/types/components/aws/takeover/function.d.ts +2 -0
  592. package/platform/types/components/aws/takeover/function.d.ts.map +1 -0
  593. package/platform/types/components/aws/takeover/helpers.d.ts +16 -0
  594. package/platform/types/components/aws/takeover/helpers.d.ts.map +1 -0
  595. package/platform/types/components/aws/takeover/index.d.ts +28 -0
  596. package/platform/types/components/aws/takeover/index.d.ts.map +1 -0
  597. package/platform/types/components/aws/takeover/mysql.d.ts +2 -0
  598. package/platform/types/components/aws/takeover/mysql.d.ts.map +1 -0
  599. package/platform/types/components/aws/takeover/postgres.d.ts +2 -0
  600. package/platform/types/components/aws/takeover/postgres.d.ts.map +1 -0
  601. package/platform/types/components/aws/takeover/queue.d.ts +2 -0
  602. package/platform/types/components/aws/takeover/queue.d.ts.map +1 -0
  603. package/platform/types/components/aws/takeover/redis.d.ts +2 -0
  604. package/platform/types/components/aws/takeover/redis.d.ts.map +1 -0
  605. package/platform/types/components/aws/takeover/service.d.ts +2 -0
  606. package/platform/types/components/aws/takeover/service.d.ts.map +1 -0
  607. package/platform/types/components/aws/takeover/sns-topic.d.ts +2 -0
  608. package/platform/types/components/aws/takeover/sns-topic.d.ts.map +1 -0
  609. package/platform/types/components/aws/takeover/task.d.ts +2 -0
  610. package/platform/types/components/aws/takeover/task.d.ts.map +1 -0
  611. package/platform/types/components/aws/tan-stack-start.d.ts +359 -0
  612. package/platform/types/components/aws/tan-stack-start.d.ts.map +1 -0
  613. package/platform/types/components/aws/task.d.ts +342 -0
  614. package/platform/types/components/aws/task.d.ts.map +1 -0
  615. package/platform/types/components/aws/v5/alb.d.ts +177 -0
  616. package/platform/types/components/aws/v5/alb.d.ts.map +1 -0
  617. package/platform/types/components/aws/v5/apigatewayv2.d.ts +482 -0
  618. package/platform/types/components/aws/v5/apigatewayv2.d.ts.map +1 -0
  619. package/platform/types/components/aws/v5/app-sync.d.ts +424 -0
  620. package/platform/types/components/aws/v5/app-sync.d.ts.map +1 -0
  621. package/platform/types/components/aws/v5/aurora.d.ts +459 -0
  622. package/platform/types/components/aws/v5/aurora.d.ts.map +1 -0
  623. package/platform/types/components/aws/v5/bucket.d.ts +578 -0
  624. package/platform/types/components/aws/v5/bucket.d.ts.map +1 -0
  625. package/platform/types/components/aws/v5/bus.d.ts +255 -0
  626. package/platform/types/components/aws/v5/bus.d.ts.map +1 -0
  627. package/platform/types/components/aws/v5/cluster.d.ts +167 -0
  628. package/platform/types/components/aws/v5/cluster.d.ts.map +1 -0
  629. package/platform/types/components/aws/v5/cognito-user-pool-client.d.ts +69 -0
  630. package/platform/types/components/aws/v5/cognito-user-pool-client.d.ts.map +1 -0
  631. package/platform/types/components/aws/v5/cognito-user-pool.d.ts +396 -0
  632. package/platform/types/components/aws/v5/cognito-user-pool.d.ts.map +1 -0
  633. package/platform/types/components/aws/v5/cron-v2.d.ts +206 -0
  634. package/platform/types/components/aws/v5/cron-v2.d.ts.map +1 -0
  635. package/platform/types/components/aws/v5/dsql.d.ts +453 -0
  636. package/platform/types/components/aws/v5/dsql.d.ts.map +1 -0
  637. package/platform/types/components/aws/v5/dynamo.d.ts +328 -0
  638. package/platform/types/components/aws/v5/dynamo.d.ts.map +1 -0
  639. package/platform/types/components/aws/v5/efs.d.ts +178 -0
  640. package/platform/types/components/aws/v5/efs.d.ts.map +1 -0
  641. package/platform/types/components/aws/v5/function.d.ts +586 -0
  642. package/platform/types/components/aws/v5/function.d.ts.map +1 -0
  643. package/platform/types/components/aws/v5/index.d.ts +27 -0
  644. package/platform/types/components/aws/v5/index.d.ts.map +1 -0
  645. package/platform/types/components/aws/v5/mysql.d.ts +347 -0
  646. package/platform/types/components/aws/v5/mysql.d.ts.map +1 -0
  647. package/platform/types/components/aws/v5/postgres.d.ts +348 -0
  648. package/platform/types/components/aws/v5/postgres.d.ts.map +1 -0
  649. package/platform/types/components/aws/v5/queue.d.ts +190 -0
  650. package/platform/types/components/aws/v5/queue.d.ts.map +1 -0
  651. package/platform/types/components/aws/v5/redis.d.ts +214 -0
  652. package/platform/types/components/aws/v5/redis.d.ts.map +1 -0
  653. package/platform/types/components/aws/v5/service.d.ts +1347 -0
  654. package/platform/types/components/aws/v5/service.d.ts.map +1 -0
  655. package/platform/types/components/aws/v5/sns-topic.d.ts +226 -0
  656. package/platform/types/components/aws/v5/sns-topic.d.ts.map +1 -0
  657. package/platform/types/components/aws/v5/task.d.ts +346 -0
  658. package/platform/types/components/aws/v5/task.d.ts.map +1 -0
  659. package/platform/types/components/aws/vector.d.ts +163 -0
  660. package/platform/types/components/aws/vector.d.ts.map +1 -0
  661. package/platform/types/components/aws/vpc-v1.d.ts +208 -0
  662. package/platform/types/components/aws/vpc-v1.d.ts.map +1 -0
  663. package/platform/types/components/aws/vpc.d.ts +491 -0
  664. package/platform/types/components/aws/vpc.d.ts.map +1 -0
  665. package/platform/types/components/aws/workflow.d.ts +331 -0
  666. package/platform/types/components/aws/workflow.d.ts.map +1 -0
  667. package/platform/types/components/base/base-site.d.ts +53 -0
  668. package/platform/types/components/base/base-site.d.ts.map +1 -0
  669. package/platform/types/components/base/base-ssr-site.d.ts +13 -0
  670. package/platform/types/components/base/base-ssr-site.d.ts.map +1 -0
  671. package/platform/types/components/base/base-static-site.d.ts +199 -0
  672. package/platform/types/components/base/base-static-site.d.ts.map +1 -0
  673. package/platform/types/components/cloudflare/account-id.d.ts +2 -0
  674. package/platform/types/components/cloudflare/account-id.d.ts.map +1 -0
  675. package/platform/types/components/cloudflare/ai.d.ts +68 -0
  676. package/platform/types/components/cloudflare/ai.d.ts.map +1 -0
  677. package/platform/types/components/cloudflare/astro.d.ts +249 -0
  678. package/platform/types/components/cloudflare/astro.d.ts.map +1 -0
  679. package/platform/types/components/cloudflare/auth.d.ts +22 -0
  680. package/platform/types/components/cloudflare/auth.d.ts.map +1 -0
  681. package/platform/types/components/cloudflare/binding.d.ts +109 -0
  682. package/platform/types/components/cloudflare/binding.d.ts.map +1 -0
  683. package/platform/types/components/cloudflare/bucket.d.ts +98 -0
  684. package/platform/types/components/cloudflare/bucket.d.ts.map +1 -0
  685. package/platform/types/components/cloudflare/cron.d.ts +151 -0
  686. package/platform/types/components/cloudflare/cron.d.ts.map +1 -0
  687. package/platform/types/components/cloudflare/d1.d.ts +142 -0
  688. package/platform/types/components/cloudflare/d1.d.ts.map +1 -0
  689. package/platform/types/components/cloudflare/dns.d.ts +100 -0
  690. package/platform/types/components/cloudflare/dns.d.ts.map +1 -0
  691. package/platform/types/components/cloudflare/durable-object.d.ts +125 -0
  692. package/platform/types/components/cloudflare/durable-object.d.ts.map +1 -0
  693. package/platform/types/components/cloudflare/experimental/index.d.ts +4 -0
  694. package/platform/types/components/cloudflare/experimental/index.d.ts.map +1 -0
  695. package/platform/types/components/cloudflare/experimental/solid-start.d.ts +219 -0
  696. package/platform/types/components/cloudflare/experimental/solid-start.d.ts.map +1 -0
  697. package/platform/types/components/cloudflare/experimental/static-site.d.ts +3 -0
  698. package/platform/types/components/cloudflare/experimental/static-site.d.ts.map +1 -0
  699. package/platform/types/components/cloudflare/helpers/compatibility.d.ts +21 -0
  700. package/platform/types/components/cloudflare/helpers/compatibility.d.ts.map +1 -0
  701. package/platform/types/components/cloudflare/helpers/fetch.d.ts +19 -0
  702. package/platform/types/components/cloudflare/helpers/fetch.d.ts.map +1 -0
  703. package/platform/types/components/cloudflare/helpers/validation.d.ts +15 -0
  704. package/platform/types/components/cloudflare/helpers/validation.d.ts.map +1 -0
  705. package/platform/types/components/cloudflare/helpers/worker-builder.d.ts +10 -0
  706. package/platform/types/components/cloudflare/helpers/worker-builder.d.ts.map +1 -0
  707. package/platform/types/components/cloudflare/helpers/wrangler.d.ts +31 -0
  708. package/platform/types/components/cloudflare/helpers/wrangler.d.ts.map +1 -0
  709. package/platform/types/components/cloudflare/hyperdrive.d.ts +302 -0
  710. package/platform/types/components/cloudflare/hyperdrive.d.ts.map +1 -0
  711. package/platform/types/components/cloudflare/index.d.ts +25 -0
  712. package/platform/types/components/cloudflare/index.d.ts.map +1 -0
  713. package/platform/types/components/cloudflare/kv.d.ts +140 -0
  714. package/platform/types/components/cloudflare/kv.d.ts.map +1 -0
  715. package/platform/types/components/cloudflare/providers/dns-record.d.ts +21 -0
  716. package/platform/types/components/cloudflare/providers/dns-record.d.ts.map +1 -0
  717. package/platform/types/components/cloudflare/providers/kv-data.d.ts +23 -0
  718. package/platform/types/components/cloudflare/providers/kv-data.d.ts.map +1 -0
  719. package/platform/types/components/cloudflare/providers/worker-assets.d.ts +19 -0
  720. package/platform/types/components/cloudflare/providers/worker-assets.d.ts.map +1 -0
  721. package/platform/types/components/cloudflare/providers/worker-placement.d.ts +27 -0
  722. package/platform/types/components/cloudflare/providers/worker-placement.d.ts.map +1 -0
  723. package/platform/types/components/cloudflare/providers/worker-script.d.ts +23 -0
  724. package/platform/types/components/cloudflare/providers/worker-script.d.ts.map +1 -0
  725. package/platform/types/components/cloudflare/providers/worker-url.d.ts +24 -0
  726. package/platform/types/components/cloudflare/providers/worker-url.d.ts.map +1 -0
  727. package/platform/types/components/cloudflare/providers/zone-lookup.d.ts +22 -0
  728. package/platform/types/components/cloudflare/providers/zone-lookup.d.ts.map +1 -0
  729. package/platform/types/components/cloudflare/queue-worker-subscriber.d.ts +122 -0
  730. package/platform/types/components/cloudflare/queue-worker-subscriber.d.ts.map +1 -0
  731. package/platform/types/components/cloudflare/queue.d.ts +235 -0
  732. package/platform/types/components/cloudflare/queue.d.ts.map +1 -0
  733. package/platform/types/components/cloudflare/rate-limit.d.ts +117 -0
  734. package/platform/types/components/cloudflare/rate-limit.d.ts.map +1 -0
  735. package/platform/types/components/cloudflare/react-router.d.ts +262 -0
  736. package/platform/types/components/cloudflare/react-router.d.ts.map +1 -0
  737. package/platform/types/components/cloudflare/ssr-site.d.ts +60 -0
  738. package/platform/types/components/cloudflare/ssr-site.d.ts.map +1 -0
  739. package/platform/types/components/cloudflare/static-site-v2.d.ts +302 -0
  740. package/platform/types/components/cloudflare/static-site-v2.d.ts.map +1 -0
  741. package/platform/types/components/cloudflare/static-site.d.ts +270 -0
  742. package/platform/types/components/cloudflare/static-site.d.ts.map +1 -0
  743. package/platform/types/components/cloudflare/tan-stack-start.d.ts +259 -0
  744. package/platform/types/components/cloudflare/tan-stack-start.d.ts.map +1 -0
  745. package/platform/types/components/cloudflare/worker.d.ts +483 -0
  746. package/platform/types/components/cloudflare/worker.d.ts.map +1 -0
  747. package/platform/types/components/cloudflare/workflow.d.ts +248 -0
  748. package/platform/types/components/cloudflare/workflow.d.ts.map +1 -0
  749. package/platform/types/components/component.d.ts +67 -0
  750. package/platform/types/components/component.d.ts.map +1 -0
  751. package/platform/types/components/core.d.ts +16 -0
  752. package/platform/types/components/core.d.ts.map +1 -0
  753. package/platform/types/components/cpu.d.ts +3 -0
  754. package/platform/types/components/cpu.d.ts.map +1 -0
  755. package/platform/types/components/dns.d.ts +63 -0
  756. package/platform/types/components/dns.d.ts.map +1 -0
  757. package/platform/types/components/duration.d.ts +9 -0
  758. package/platform/types/components/duration.d.ts.map +1 -0
  759. package/platform/types/components/error.d.ts +4 -0
  760. package/platform/types/components/error.d.ts.map +1 -0
  761. package/platform/types/components/esbuild.d.ts +3 -0
  762. package/platform/types/components/esbuild.d.ts.map +1 -0
  763. package/platform/types/components/experimental/dev-command.d.ts +99 -0
  764. package/platform/types/components/experimental/dev-command.d.ts.map +1 -0
  765. package/platform/types/components/experimental/index.d.ts +2 -0
  766. package/platform/types/components/experimental/index.d.ts.map +1 -0
  767. package/platform/types/components/groups.d.ts +6 -0
  768. package/platform/types/components/groups.d.ts.map +1 -0
  769. package/platform/types/components/index.d.ts +5 -0
  770. package/platform/types/components/index.d.ts.map +1 -0
  771. package/platform/types/components/input.d.ts +3 -0
  772. package/platform/types/components/input.d.ts.map +1 -0
  773. package/platform/types/components/link.d.ts +41 -0
  774. package/platform/types/components/link.d.ts.map +1 -0
  775. package/platform/types/components/linkable.d.ts +301 -0
  776. package/platform/types/components/linkable.d.ts.map +1 -0
  777. package/platform/types/components/naming-rules.d.ts +32 -0
  778. package/platform/types/components/naming-rules.d.ts.map +1 -0
  779. package/platform/types/components/naming.d.ts +21 -0
  780. package/platform/types/components/naming.d.ts.map +1 -0
  781. package/platform/types/components/parts-component.d.ts +242 -0
  782. package/platform/types/components/parts-component.d.ts.map +1 -0
  783. package/platform/types/components/parts.d.ts +194 -0
  784. package/platform/types/components/parts.d.ts.map +1 -0
  785. package/platform/types/components/path.d.ts +2 -0
  786. package/platform/types/components/path.d.ts.map +1 -0
  787. package/platform/types/components/rpc/rpc.d.ts +19 -0
  788. package/platform/types/components/rpc/rpc.d.ts.map +1 -0
  789. package/platform/types/components/secret.d.ts +123 -0
  790. package/platform/types/components/secret.d.ts.map +1 -0
  791. package/platform/types/components/size.d.ts +5 -0
  792. package/platform/types/components/size.d.ts.map +1 -0
  793. package/platform/types/components/takeover.d.ts +88 -0
  794. package/platform/types/components/takeover.d.ts.map +1 -0
  795. package/platform/types/components/transform.d.ts +34 -0
  796. package/platform/types/components/transform.d.ts.map +1 -0
  797. package/platform/types/components/vercel/account-id.d.ts +2 -0
  798. package/platform/types/components/vercel/account-id.d.ts.map +1 -0
  799. package/platform/types/components/vercel/dns.d.ts +73 -0
  800. package/platform/types/components/vercel/dns.d.ts.map +1 -0
  801. package/platform/types/components/vercel/index.d.ts +3 -0
  802. package/platform/types/components/vercel/index.d.ts.map +1 -0
  803. package/platform/types/components/vercel/providers/dns-record.d.ts +15 -0
  804. package/platform/types/components/vercel/providers/dns-record.d.ts.map +1 -0
  805. package/platform/types/config.d.ts +1440 -0
  806. package/platform/types/config.d.ts.map +1 -0
  807. package/platform/types/global-aliases.d.ts +37 -0
  808. package/platform/types/global.d.ts +374 -0
  809. package/platform/types/internal.d.ts +18 -0
  810. package/platform/types/runtime/worker/unenv.d.ts +14 -0
  811. package/platform/types/testing/global.d.ts +11 -0
  812. package/platform/types/testing/global.d.ts.map +1 -0
  813. package/platform/types/testing/index.d.ts +80 -0
  814. package/platform/types/testing/index.d.ts.map +1 -0
  815. package/platform/types/testing/mock.d.ts +136 -0
  816. package/platform/types/testing/mock.d.ts.map +1 -0
  817. package/platform/types/testing/vitest.d.ts +19 -0
  818. package/platform/types/testing/vitest.d.ts.map +1 -0
  819. package/platform/types/util/compare-semver.d.ts +4 -0
  820. package/platform/types/util/compare-semver.d.ts.map +1 -0
  821. package/platform/types/util/fs.d.ts +5 -0
  822. package/platform/types/util/fs.d.ts.map +1 -0
  823. package/platform/types/util/lazy.d.ts +2 -0
  824. package/platform/types/util/lazy.d.ts.map +1 -0
  825. package/platform/types/util/minify.d.ts +2 -0
  826. package/platform/types/util/minify.d.ts.map +1 -0
  827. package/platform/types/util/package.d.ts +10 -0
  828. package/platform/types/util/package.d.ts.map +1 -0
  829. package/platform/types/util/semaphore.d.ts +9 -0
  830. package/platform/types/util/semaphore.d.ts.map +1 -0
  831. package/platform/types/util/warn.d.ts +2 -0
  832. package/platform/types/util/warn.d.ts.map +1 -0
@@ -0,0 +1,1074 @@
1
+ import {
2
+ all,
3
+ ComponentResourceOptions,
4
+ interpolate,
5
+ jsonStringify,
6
+ Output,
7
+ output,
8
+ } from "@pulumi/pulumi";
9
+ import { Component, Transform, transform } from "../component";
10
+ import { Link } from "../link";
11
+ import { Input } from "../input.js";
12
+ import { iam, rds, secretsmanager } from "@pulumi/aws";
13
+ import { RandomPassword } from "@pulumi/random";
14
+ import { Vpc } from "./vpc";
15
+ import { Vpc as VpcV1 } from "./vpc-v1";
16
+ import { VisibleError } from "../error";
17
+ import { Postgres as PostgresV1 } from "./postgres-v1";
18
+ import { SizeGbTb, toGBs } from "../size";
19
+ import { DevCommand } from "../experimental/dev-command.js";
20
+ import { RdsRoleLookup } from "./providers/rds-role-lookup";
21
+ export type { PostgresArgs as PostgresV1Args } from "./postgres-v1";
22
+
23
+ export interface PostgresArgs {
24
+ /**
25
+ * The Postgres engine version. Check out the [available versions in your region](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/PostgreSQL.Concepts.General.DBVersions.html).
26
+ *
27
+ * :::caution
28
+ * Changing the version will cause the database to restart on the next `sst deploy`,
29
+ * causing downtime. Learn more about [upgrading databases](/docs/upgrade-aws-databases/).
30
+ * :::
31
+ *
32
+ * @default `"17"`
33
+ * @example
34
+ * ```js
35
+ * {
36
+ * version: "17.1"
37
+ * }
38
+ * ```
39
+ */
40
+ version?: Input<string>;
41
+ /**
42
+ * The username of the master user.
43
+ *
44
+ * :::danger
45
+ * Changing the username will cause the database to be destroyed and recreated.
46
+ * :::
47
+ *
48
+ * @default `"postgres"`
49
+ * @example
50
+ * ```js
51
+ * {
52
+ * username: "admin"
53
+ * }
54
+ * ```
55
+ */
56
+ username?: Input<string>;
57
+ /**
58
+ * The password of the master user.
59
+ * @default A random password is generated.
60
+ * @example
61
+ * ```js
62
+ * {
63
+ * password: "Passw0rd!"
64
+ * }
65
+ * ```
66
+ *
67
+ * You can use a `Secret` to manage the password.
68
+ *
69
+ * ```js
70
+ * {
71
+ * password: new sst.Secret("MyDBPassword").value
72
+ * }
73
+ * ```
74
+ */
75
+ password?: Input<string>;
76
+ /**
77
+ * Name of a database that is automatically created.
78
+ *
79
+ * The name must begin with a letter and contain only lowercase letters, numbers, or
80
+ * underscores. By default, it takes the name of the app, and replaces the hyphens with
81
+ * underscores.
82
+ *
83
+ * :::danger
84
+ * Changing the database name will cause the database to be destroyed and recreated.
85
+ * :::
86
+ *
87
+ * @default Based on the name of the current app
88
+ * @example
89
+ * ```js
90
+ * {
91
+ * database: "acme"
92
+ * }
93
+ * ```
94
+ */
95
+ database?: Input<string>;
96
+ /**
97
+ * The type of instance to use for the database. Check out the [supported instance types](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.Types.html).
98
+ *
99
+ * :::caution
100
+ * Changing the instance type will cause the database to restart on the next `sst deploy`,
101
+ * causing downtime. Learn more about [upgrading databases](/docs/upgrade-aws-databases/).
102
+ * :::
103
+ *
104
+ * @default `"t4g.micro"`
105
+ * @example
106
+ * ```js
107
+ * {
108
+ * instance: "m7g.xlarge"
109
+ * }
110
+ * ```
111
+ */
112
+ instance?: Input<string>;
113
+ /**
114
+ * The maximum storage limit for the database.
115
+ *
116
+ * RDS will autoscale your storage to match your usage up to the given limit.
117
+ * You are not billed for the maximum storage limit, You are only billed for the storage you use.
118
+ *
119
+ * :::note
120
+ * You are only billed for the storage you use, not the maximum limit.
121
+ * :::
122
+ *
123
+ * By default, [gp3 storage volumes](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html#Concepts.Storage.GeneralSSD)
124
+ * are used without additional provisioned IOPS. This provides good baseline
125
+ * performance for most use cases.
126
+ *
127
+ * The minimum storage size is 20 GB. And the maximum storage size is 64 TB.
128
+ *
129
+ * @default `"20 GB"`
130
+ * @example
131
+ * ```js
132
+ * {
133
+ * storage: "100 GB"
134
+ * }
135
+ * ```
136
+ */
137
+ storage?: Input<SizeGbTb>;
138
+ /**
139
+ * Enable [RDS Proxy](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-proxy.html) for the database.
140
+ * @default `false`
141
+ * @example
142
+ * ```js
143
+ * {
144
+ * proxy: true
145
+ * }
146
+ * ```
147
+ */
148
+ proxy?: Input<
149
+ | boolean
150
+ | {
151
+ /**
152
+ * Additional credentials the proxy can use to connect to the database. You don't
153
+ * need to specify the master user credentials as they are always added by default.
154
+ *
155
+ * :::note
156
+ * This component will not create the Postgres users listed here. You need to
157
+ * create them manually in the database.
158
+ * :::
159
+ *
160
+ * @example
161
+ * ```js
162
+ * {
163
+ * credentials: [
164
+ * {
165
+ * username: "metabase",
166
+ * password: "Passw0rd!"
167
+ * }
168
+ * ]
169
+ * }
170
+ * ```
171
+ *
172
+ * You can use a `Secret` to manage the password.
173
+ *
174
+ * ```js
175
+ * {
176
+ * credentials: [
177
+ * {
178
+ * username: "metabase",
179
+ * password: new sst.Secret("MyDBPassword").value
180
+ * }
181
+ * ]
182
+ * }
183
+ * ```
184
+ */
185
+ credentials?: Input<
186
+ Input<{
187
+ /**
188
+ * The username of the user.
189
+ */
190
+ username: Input<string>;
191
+ /**
192
+ * The password of the user.
193
+ */
194
+ password: Input<string>;
195
+ }>[]
196
+ >;
197
+ }
198
+ >;
199
+ /**
200
+ * Enable [Multi-AZ](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.MultiAZ.html)
201
+ * deployment for the database.
202
+ *
203
+ * This creates a standby replica for the database in another availability zone (AZ). The
204
+ * standby database provides automatic failover in case the primary database fails. However,
205
+ * when the primary database is healthy, the standby database is not used for serving read
206
+ * traffic.
207
+ *
208
+ * :::caution
209
+ * Using Multi-AZ will approximately double the cost of the database since it will be
210
+ * deployed in two AZs.
211
+ * :::
212
+ *
213
+ * @default `false`
214
+ * @example
215
+ * ```js
216
+ * {
217
+ * multiAz: true
218
+ * }
219
+ * ```
220
+ */
221
+ multiAz?: Input<boolean>;
222
+ /**
223
+ * Enable [Blue/Green deployments](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/blue-green-deployments.html)
224
+ * for version, instance type, and parameter group upgrades.
225
+ * Learn more about [upgrading databases](/docs/upgrade-aws-databases/).
226
+ *
227
+ * When enabled, a staging (green) instance is created, updated,
228
+ * verified, then promoted to replace the production (blue) instance.
229
+ * This minimizes downtime during upgrades.
230
+ *
231
+ * @default `false`
232
+ * @example
233
+ * ```js
234
+ * {
235
+ * blueGreen: true
236
+ * }
237
+ * ```
238
+ */
239
+ blueGreen?: Input<boolean>;
240
+ /**
241
+ * @internal
242
+ */
243
+ replicas?: Input<number>;
244
+ /**
245
+ * The VPC subnets to use for the database.
246
+ *
247
+ * @example
248
+ * ```js
249
+ * {
250
+ * vpc: {
251
+ * subnets: ["subnet-0db7376a7ad4db5fd ", "subnet-06fc7ee8319b2c0ce"]
252
+ * }
253
+ * }
254
+ * ```
255
+ *
256
+ * Or create a `Vpc` component.
257
+ *
258
+ * ```ts title="sst.config.ts"
259
+ * const myVpc = new sst.aws.Vpc("MyVpc");
260
+ * ```
261
+ *
262
+ * And pass it in. The database will be placed in the private subnets.
263
+ *
264
+ * ```js
265
+ * {
266
+ * vpc: myVpc
267
+ * }
268
+ * ```
269
+ */
270
+ vpc:
271
+ | Vpc
272
+ | Input<{
273
+ /**
274
+ * A list of subnet IDs in the VPC.
275
+ */
276
+ subnets: Input<Input<string>[]>;
277
+ }>;
278
+ /**
279
+ * Configure how this component works in `sst dev`.
280
+ *
281
+ * By default, your Postgres database is deployed in `sst dev`. But if you want to instead
282
+ * connect to a locally running Postgres database, you can configure the `dev` prop.
283
+ *
284
+ * :::note
285
+ * This will not create an RDS database in `sst dev`.
286
+ * :::
287
+ *
288
+ * This will skip deploying an RDS database and link to the locally running Postgres database
289
+ * instead.
290
+ *
291
+ * @example
292
+ *
293
+ * Setting the `dev` prop also means that any linked resources will connect to the right
294
+ * database both in `sst dev` and `sst deploy`.
295
+ *
296
+ * ```ts
297
+ * {
298
+ * dev: {
299
+ * username: "postgres",
300
+ * password: "password",
301
+ * database: "postgres",
302
+ * host: "localhost",
303
+ * port: 5432
304
+ * }
305
+ * }
306
+ * ```
307
+ */
308
+ dev?: {
309
+ /**
310
+ * The host of the local Postgres to connect to when running in dev.
311
+ * @default `"localhost"`
312
+ */
313
+ host?: Input<string>;
314
+ /**
315
+ * The port of the local Postgres to connect to when running in dev.
316
+ * @default `5432`
317
+ */
318
+ port?: Input<number>;
319
+ /**
320
+ * The database of the local Postgres to connect to when running in dev.
321
+ * @default Inherit from the top-level [`database`](#database).
322
+ */
323
+ database?: Input<string>;
324
+ /**
325
+ * The username of the local Postgres to connect to when running in dev.
326
+ * @default Inherit from the top-level [`username`](#username).
327
+ */
328
+ username?: Input<string>;
329
+ /**
330
+ * The password of the local Postgres to connect to when running in dev.
331
+ * @default Inherit from the top-level [`password`](#password).
332
+ */
333
+ password?: Input<string>;
334
+ };
335
+ /**
336
+ * [Transform](/docs/components#transform) how this component creates its underlying
337
+ * resources.
338
+ */
339
+ transform?: {
340
+ /**
341
+ * Transform the RDS subnet group.
342
+ */
343
+ subnetGroup?: Transform<rds.SubnetGroupArgs>;
344
+ /**
345
+ * Transform the RDS parameter group.
346
+ */
347
+ parameterGroup?: Transform<rds.ParameterGroupArgs>;
348
+ /**
349
+ * Transform the database instance in the RDS Cluster.
350
+ */
351
+ instance?: Transform<rds.InstanceArgs>;
352
+ /**
353
+ * Transform the RDS Proxy.
354
+ */
355
+ proxy?: Transform<rds.ProxyArgs>;
356
+ };
357
+ }
358
+
359
+ export interface PostgresGetArgs {
360
+ /**
361
+ * The ID of the database.
362
+ */
363
+ id: Input<string>;
364
+ /**
365
+ * The ID of the proxy.
366
+ */
367
+ proxyId?: Input<string>;
368
+ }
369
+
370
+ interface PostgresRef {
371
+ ref: boolean;
372
+ id: Input<string>;
373
+ proxyId?: Input<string>;
374
+ }
375
+
376
+ /**
377
+ * The `Postgres` component lets you add a Postgres database to your app using
378
+ * [Amazon RDS Postgres](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_PostgreSQL.html).
379
+ *
380
+ * @example
381
+ *
382
+ * #### Create the database
383
+ *
384
+ * ```js title="sst.config.ts"
385
+ * const vpc = new sst.aws.Vpc("MyVpc");
386
+ * const database = new sst.aws.Postgres("MyDatabase", { vpc });
387
+ * ```
388
+ *
389
+ * #### Link to a resource
390
+ *
391
+ * You can link your database to other resources, like a function or your Next.js app.
392
+ *
393
+ * ```ts title="sst.config.ts"
394
+ * new sst.aws.Nextjs("MyWeb", {
395
+ * link: [database],
396
+ * vpc
397
+ * });
398
+ * ```
399
+ *
400
+ * Once linked, you can connect to it from your function code.
401
+ *
402
+ * ```ts title="app/page.tsx" {1,5-9}
403
+ * import { Resource } from "sst";
404
+ * import { Pool } from "pg";
405
+ *
406
+ * const client = new Pool({
407
+ * user: Resource.MyDatabase.username,
408
+ * password: Resource.MyDatabase.password,
409
+ * database: Resource.MyDatabase.database,
410
+ * host: Resource.MyDatabase.host,
411
+ * port: Resource.MyDatabase.port,
412
+ * });
413
+ * await client.connect();
414
+ * ```
415
+ *
416
+ * #### Running locally
417
+ *
418
+ * By default, your RDS Postgres database is deployed in `sst dev`. But let's say you are running
419
+ * Postgres locally.
420
+ *
421
+ * ```bash
422
+ * docker run \
423
+ * --rm \
424
+ * -p 5432:5432 \
425
+ * -v $(pwd)/.sst/storage/postgres:/var/lib/postgresql/data \
426
+ * -e POSTGRES_USER=postgres \
427
+ * -e POSTGRES_PASSWORD=password \
428
+ * -e POSTGRES_DB=local \
429
+ * postgres:18
430
+ * ```
431
+ *
432
+ * You can connect to it in `sst dev` by configuring the `dev` prop.
433
+ *
434
+ * ```ts title="sst.config.ts" {3-8}
435
+ * const postgres = new sst.aws.Postgres("MyPostgres", {
436
+ * vpc,
437
+ * dev: {
438
+ * username: "postgres",
439
+ * password: "password",
440
+ * database: "local",
441
+ * port: 5432
442
+ * }
443
+ * });
444
+ * ```
445
+ *
446
+ * This will skip deploying an RDS database and link to the locally running Postgres database
447
+ * instead. [Check out the full example](/docs/examples/#aws-postgres-local).
448
+ *
449
+ * ---
450
+ *
451
+ * ### Cost
452
+ *
453
+ * By default this component uses a _Single-AZ Deployment_, _On-Demand DB Instances_ of a
454
+ * `db.t4g.micro` at $0.016 per hour. And 20GB of _General Purpose gp3 Storage_
455
+ * at $0.115 per GB per month.
456
+ *
457
+ * That works out to $0.016 x 24 x 30 + $0.115 x 20 or **$14 per month**. Adjust this for the
458
+ * `instance` type and the `storage` you are using.
459
+ *
460
+ * The above are rough estimates for _us-east-1_, check out the
461
+ * [RDS for PostgreSQL pricing](https://aws.amazon.com/rds/postgresql/pricing/#On-Demand_DB_Instances_costs) for more details.
462
+ *
463
+ * #### RDS Proxy
464
+ *
465
+ * If you enable the `proxy`, it uses _Provisioned instances_ with 2 vCPUs at $0.015 per hour.
466
+ *
467
+ * That works out to an **additional** $0.015 x 2 x 24 x 30 or **$22 per month**.
468
+ *
469
+ * This is a rough estimate for _us-east-1_, check out the
470
+ * [RDS Proxy pricing](https://aws.amazon.com/rds/proxy/pricing/) for more details.
471
+ */
472
+ export class Postgres extends Component implements Link.Linkable {
473
+ private instance?: rds.Instance;
474
+ private _password?: Output<string>;
475
+ private proxy?: Output<rds.Proxy | undefined>;
476
+ private dev?: {
477
+ enabled: boolean;
478
+ host: Output<string>;
479
+ port: Output<number>;
480
+ username: Output<string>;
481
+ password: Output<string>;
482
+ database: Output<string>;
483
+ };
484
+ public static v1 = PostgresV1;
485
+
486
+ constructor(
487
+ name: string,
488
+ args: PostgresArgs,
489
+ opts?: ComponentResourceOptions,
490
+ ) {
491
+ super(__pulumiType, name, args, opts);
492
+ const _version = 2;
493
+ const self = this;
494
+
495
+ if (args && "ref" in args) {
496
+ const ref = reference();
497
+ this.instance = ref.instance;
498
+ this._password = ref.password;
499
+ this.proxy = output(ref.proxy);
500
+ return;
501
+ }
502
+
503
+ registerVersion();
504
+ const multiAz = output(args.multiAz).apply((v) => v ?? false);
505
+ const engineVersion = output(args.version).apply((v) => v ?? "17");
506
+ const instanceType = output(args.instance).apply((v) => v ?? "t4g.micro");
507
+ const username = output(args.username).apply((v) => v ?? "postgres");
508
+ const storage = normalizeStorage();
509
+ const blueGreen = output(args.blueGreen).apply((v) => v ?? false);
510
+ const dbName = output(args.database).apply(
511
+ (v) => v ?? $app.name.replaceAll("-", "_"),
512
+ );
513
+ const vpc = normalizeVpc();
514
+
515
+ const dev = registerDev();
516
+ if (dev?.enabled) {
517
+ this.dev = dev;
518
+ return;
519
+ }
520
+
521
+ const password = createPassword();
522
+ const secret = createSecret();
523
+ const subnetGroup = createSubnetGroup();
524
+ const parameterGroup = createParameterGroup();
525
+ const instance = createInstance();
526
+ createReplicas();
527
+ const proxy = createProxy();
528
+
529
+ this.instance = instance;
530
+ this._password = password;
531
+ this.proxy = proxy;
532
+
533
+ function reference() {
534
+ const ref = args as unknown as PostgresRef;
535
+ const instance = rds.Instance.get(`${name}Instance`, ref.id, undefined, {
536
+ parent: self,
537
+ });
538
+
539
+ const input = instance.tagsAll.apply((tags) => {
540
+ registerVersion(
541
+ tags?.["sst:component-version"]
542
+ ? parseInt(tags["sst:component-version"])
543
+ : undefined,
544
+ );
545
+
546
+ return {
547
+ proxyId: output(ref.proxyId),
548
+ passwordTag: tags?.["sst:lookup:password"],
549
+ };
550
+ });
551
+
552
+ const proxy = input.proxyId.apply((proxyId) =>
553
+ proxyId
554
+ ? rds.Proxy.get(`${name}Proxy`, proxyId, undefined, {
555
+ parent: self,
556
+ })
557
+ : undefined,
558
+ );
559
+
560
+ const password = input.passwordTag.apply((passwordTag) => {
561
+ if (!passwordTag)
562
+ throw new VisibleError(
563
+ `Failed to get password for Postgres ${name}.`,
564
+ );
565
+
566
+ const secret = secretsmanager.getSecretVersionOutput(
567
+ { secretId: passwordTag },
568
+ { parent: self },
569
+ );
570
+ return $jsonParse(secret.secretString).apply(
571
+ (v) => v.password as string,
572
+ );
573
+ });
574
+
575
+ return { instance, proxy, password };
576
+ }
577
+
578
+ function registerVersion(overrideVersion?: number) {
579
+ self.registerVersion({
580
+ new: _version,
581
+ old: overrideVersion ?? $cli.state.version[name],
582
+ message: [
583
+ `This component has been renamed. Please change:\n`,
584
+ `"sst.aws.Postgres" to "sst.aws.Postgres.v${$cli.state.version[name]}"\n`,
585
+ `Learn more https://sst-community.github.io/sst/docs/components/#versioning`,
586
+ ].join("\n"),
587
+ });
588
+ }
589
+
590
+ function normalizeStorage() {
591
+ return output(args.storage ?? "20 GB").apply((v) => {
592
+ const size = toGBs(v);
593
+ if (size < 20) {
594
+ throw new VisibleError(
595
+ `Storage must be at least 20 GB for the ${name} Postgres database.`,
596
+ );
597
+ }
598
+ if (size > 65536) {
599
+ throw new VisibleError(
600
+ `Storage cannot be greater than 65536 GB (64 TB) for the ${name} Postgres database.`,
601
+ );
602
+ }
603
+ return size;
604
+ });
605
+ }
606
+
607
+ function normalizeVpc() {
608
+ // "vpc" is a Vpc.v1 component
609
+ if (args.vpc instanceof VpcV1) {
610
+ throw new VisibleError(
611
+ `You are using the "Vpc.v1" component. Please migrate to the latest "Vpc" component.`,
612
+ );
613
+ }
614
+
615
+ // "vpc" is a Vpc component
616
+ if (args.vpc instanceof Vpc) {
617
+ return {
618
+ subnets: args.vpc.privateSubnets,
619
+ };
620
+ }
621
+
622
+ // "vpc" is object
623
+ return output(args.vpc);
624
+ }
625
+
626
+ function registerDev() {
627
+ if (!args.dev) return undefined;
628
+
629
+ if (
630
+ $dev &&
631
+ args.dev.password === undefined &&
632
+ args.password === undefined
633
+ ) {
634
+ throw new VisibleError(
635
+ `You must provide the password to connect to your locally running Postgres database either by setting the "dev.password" or by setting the top-level "password" property.`,
636
+ );
637
+ }
638
+
639
+ const dev = {
640
+ enabled: $dev,
641
+ host: output(args.dev.host ?? "localhost"),
642
+ port: output(args.dev.port ?? 5432),
643
+ username: args.dev.username ? output(args.dev.username) : username,
644
+ password: output(args.dev.password ?? args.password ?? ""),
645
+ database: args.dev.database ? output(args.dev.database) : dbName,
646
+ };
647
+
648
+ new DevCommand(`${name}Dev`, {
649
+ dev: {
650
+ title: name,
651
+ autostart: true,
652
+ command: `sst print-and-not-quit`,
653
+ },
654
+ environment: {
655
+ SST_DEV_COMMAND_MESSAGE: interpolate`Make sure your local PostgreSQL server is using:
656
+
657
+ username: "${dev.username}"
658
+ password: "${dev.password}"
659
+ database: "${dev.database}"
660
+
661
+ Listening on "${dev.host}:${dev.port}"...`,
662
+ },
663
+ });
664
+
665
+ return dev;
666
+ }
667
+
668
+ function createPassword() {
669
+ return args.password
670
+ ? output(args.password)
671
+ : new RandomPassword(
672
+ `${name}Password`,
673
+ {
674
+ length: 32,
675
+ special: false,
676
+ },
677
+ { parent: self },
678
+ ).result;
679
+ }
680
+
681
+ function createSubnetGroup() {
682
+ return new rds.SubnetGroup(
683
+ ...transform(
684
+ args.transform?.subnetGroup,
685
+ `${name}SubnetGroup`,
686
+ {
687
+ subnetIds: vpc.subnets,
688
+ },
689
+ { parent: self },
690
+ ),
691
+ );
692
+ }
693
+
694
+ function createParameterGroup() {
695
+ return new rds.ParameterGroup(
696
+ ...transform(
697
+ args.transform?.parameterGroup,
698
+ `${name}ParameterGroup`,
699
+ {
700
+ family: engineVersion.apply((v) => `postgres${v.split(".")[0]}`),
701
+ parameters: [
702
+ {
703
+ name: "rds.force_ssl",
704
+ value: "0",
705
+ },
706
+ {
707
+ name: "rds.logical_replication",
708
+ value: "1",
709
+ applyMethod: "pending-reboot",
710
+ },
711
+ ],
712
+ },
713
+ {
714
+ parent: self,
715
+ ignoreChanges: args.version ? [] : ["family"],
716
+ // Necessary for the parameter group to be deleted AFTER upgrading the instance.
717
+ // This is either a Pulumi bug or an undocumented feature.
718
+ deleteBeforeReplace: false,
719
+ },
720
+ ),
721
+ );
722
+ }
723
+
724
+ function createSecret() {
725
+ const secret = new secretsmanager.Secret(
726
+ `${name}ProxySecret`,
727
+ {
728
+ recoveryWindowInDays: 0,
729
+ },
730
+ { parent: self },
731
+ );
732
+
733
+ new secretsmanager.SecretVersion(
734
+ `${name}ProxySecretVersion`,
735
+ {
736
+ secretId: secret.id,
737
+ secretString: jsonStringify({
738
+ username,
739
+ password,
740
+ }),
741
+ },
742
+ { parent: self },
743
+ );
744
+
745
+ return secret;
746
+ }
747
+
748
+ function createInstance() {
749
+ return new rds.Instance(
750
+ ...transform(
751
+ args.transform?.instance,
752
+ `${name}Instance`,
753
+ {
754
+ dbName,
755
+ dbSubnetGroupName: subnetGroup.name,
756
+ engine: "postgres",
757
+ engineVersion,
758
+ instanceClass: interpolate`db.${instanceType}`,
759
+ username,
760
+ password,
761
+ parameterGroupName: parameterGroup.name,
762
+ applyImmediately: true,
763
+ allowMajorVersionUpgrade: true,
764
+ autoMinorVersionUpgrade: false,
765
+ skipFinalSnapshot: true,
766
+ storageEncrypted: true,
767
+ storageType: "gp3",
768
+ allocatedStorage: 20,
769
+ // Blue/green deployments require maxAllocatedStorage to be at least
770
+ // 10% higher than allocatedStorage for autoscaling headroom.
771
+ maxAllocatedStorage: all([storage, blueGreen]).apply(([s, bg]) =>
772
+ bg ? Math.max(s, 22) : s,
773
+ ),
774
+ multiAz,
775
+ backupRetentionPeriod: 7,
776
+ performanceInsightsEnabled: true,
777
+ blueGreenUpdate: blueGreen.apply((bg) => ({ enabled: bg })),
778
+ tags: {
779
+ "sst:component-version": _version.toString(),
780
+ "sst:lookup:password": secret.id,
781
+ },
782
+ },
783
+ {
784
+ parent: self,
785
+ deleteBeforeReplace: true,
786
+ ignoreChanges: args.version ? [] : ["engineVersion"],
787
+ },
788
+ ),
789
+ );
790
+ }
791
+
792
+ function createReplicas() {
793
+ return output(args.replicas ?? 0).apply((replicas) =>
794
+ Array.from({ length: replicas }).map(
795
+ (_, i) =>
796
+ new rds.Instance(
797
+ `${name}Replica${i}`,
798
+ {
799
+ replicateSourceDb: instance.identifier,
800
+ dbName: interpolate`${instance.dbName}_replica${i}`,
801
+ dbSubnetGroupName: instance.dbSubnetGroupName,
802
+ availabilityZone: instance.availabilityZone,
803
+ engine: instance.engine,
804
+ engineVersion: instance.engineVersion,
805
+ instanceClass: instance.instanceClass,
806
+ username: instance.username,
807
+ password: instance.password.apply((v) => v!),
808
+ parameterGroupName: instance.parameterGroupName,
809
+ applyImmediately: true,
810
+ skipFinalSnapshot: true,
811
+ storageEncrypted: instance.storageEncrypted.apply((v) => v!),
812
+ storageType: instance.storageType,
813
+ allocatedStorage: instance.allocatedStorage,
814
+ maxAllocatedStorage: instance.maxAllocatedStorage.apply(
815
+ (v) => v!,
816
+ ),
817
+ },
818
+ {
819
+ parent: self,
820
+ ignoreChanges: args.version ? [] : ["engineVersion"],
821
+ },
822
+ ),
823
+ ),
824
+ );
825
+ }
826
+
827
+ function createProxy() {
828
+ return output(args.proxy).apply((proxy) => {
829
+ if (!proxy) return;
830
+
831
+ const credentials = proxy === true ? [] : proxy.credentials ?? [];
832
+
833
+ // Create secrets
834
+ const secrets = credentials.map((credential) => {
835
+ const secret = new secretsmanager.Secret(
836
+ `${name}ProxySecret${credential.username}`,
837
+ {
838
+ recoveryWindowInDays: 0,
839
+ },
840
+ { parent: self },
841
+ );
842
+
843
+ new secretsmanager.SecretVersion(
844
+ `${name}ProxySecretVersion${credential.username}`,
845
+ {
846
+ secretId: secret.id,
847
+ secretString: jsonStringify({
848
+ username: credential.username,
849
+ password: credential.password,
850
+ }),
851
+ },
852
+ { parent: self },
853
+ );
854
+ return secret;
855
+ });
856
+
857
+ const role = new iam.Role(
858
+ `${name}ProxyRole`,
859
+ {
860
+ assumeRolePolicy: iam.assumeRolePolicyForPrincipal({
861
+ Service: "rds.amazonaws.com",
862
+ }),
863
+ inlinePolicies: [
864
+ {
865
+ name: "inline",
866
+ policy: iam.getPolicyDocumentOutput({
867
+ statements: [
868
+ {
869
+ actions: ["secretsmanager:GetSecretValue"],
870
+ resources: [secret.arn, ...secrets.map((s) => s.arn)],
871
+ },
872
+ ],
873
+ }).json,
874
+ },
875
+ ],
876
+ },
877
+ { parent: self },
878
+ );
879
+
880
+ const lookup = new RdsRoleLookup(
881
+ `${name}ProxyRoleLookup`,
882
+ { name: "AWSServiceRoleForRDS" },
883
+ { parent: self },
884
+ );
885
+
886
+ const rdsProxy = new rds.Proxy(
887
+ ...transform(
888
+ args.transform?.proxy,
889
+ `${name}Proxy`,
890
+ {
891
+ engineFamily: "POSTGRESQL",
892
+ auths: [
893
+ {
894
+ authScheme: "SECRETS",
895
+ iamAuth: "DISABLED",
896
+ secretArn: secret.arn,
897
+ },
898
+ ...secrets.map((s) => ({
899
+ authScheme: "SECRETS",
900
+ iamAuth: "DISABLED",
901
+ secretArn: s.arn,
902
+ })),
903
+ ],
904
+ roleArn: role.arn,
905
+ vpcSubnetIds: vpc.subnets,
906
+ },
907
+ { parent: self, dependsOn: [lookup] },
908
+ ),
909
+ );
910
+
911
+ const targetGroup = new rds.ProxyDefaultTargetGroup(
912
+ `${name}ProxyTargetGroup`,
913
+ {
914
+ dbProxyName: rdsProxy.name,
915
+ },
916
+ { parent: self },
917
+ );
918
+
919
+ new rds.ProxyTarget(
920
+ `${name}ProxyTarget`,
921
+ {
922
+ dbProxyName: rdsProxy.name,
923
+ targetGroupName: targetGroup.name,
924
+ dbInstanceIdentifier: instance.identifier,
925
+ },
926
+ { parent: self },
927
+ );
928
+
929
+ return rdsProxy;
930
+ });
931
+ }
932
+ }
933
+
934
+ /**
935
+ * The identifier of the Postgres instance.
936
+ */
937
+ public get id() {
938
+ if (this.dev?.enabled) return output("placeholder");
939
+ return this.instance!.identifier;
940
+ }
941
+
942
+ /**
943
+ * The name of the Postgres proxy.
944
+ */
945
+ public get proxyId() {
946
+ if (this.dev?.enabled) return output("placeholder");
947
+
948
+ return this.proxy!.apply((v) => {
949
+ if (!v) {
950
+ throw new VisibleError(
951
+ `Proxy is not enabled. Enable it with "proxy: true".`,
952
+ );
953
+ }
954
+ return v.id;
955
+ });
956
+ }
957
+
958
+ /** The username of the master user. */
959
+ public get username() {
960
+ if (this.dev?.enabled) return this.dev.username;
961
+ return this.instance!.username;
962
+ }
963
+
964
+ /** The password of the master user. */
965
+ public get password() {
966
+ if (this.dev?.enabled) return this.dev.password;
967
+ return this._password!;
968
+ }
969
+
970
+ /**
971
+ * The name of the database.
972
+ */
973
+ public get database() {
974
+ if (this.dev?.enabled) return this.dev.database;
975
+ return this.instance!.dbName;
976
+ }
977
+
978
+ /**
979
+ * The port of the database.
980
+ */
981
+ public get port() {
982
+ if (this.dev?.enabled) return this.dev.port;
983
+ return this.instance!.port;
984
+ }
985
+
986
+ /**
987
+ * The host of the database.
988
+ */
989
+ public get host() {
990
+ if (this.dev?.enabled) return this.dev.host;
991
+
992
+ return all([this.instance!.endpoint, this.proxy!]).apply(
993
+ ([endpoint, proxy]) => proxy?.endpoint ?? output(endpoint.split(":")[0]),
994
+ );
995
+ }
996
+
997
+ public get nodes() {
998
+ return {
999
+ instance: this.instance,
1000
+ };
1001
+ }
1002
+
1003
+ /** @internal */
1004
+ public getSSTLink() {
1005
+ return {
1006
+ properties: {
1007
+ database: this.database,
1008
+ username: this.username,
1009
+ password: this.password,
1010
+ port: this.port,
1011
+ host: this.host,
1012
+ },
1013
+ };
1014
+ }
1015
+
1016
+ /**
1017
+ * Reference an existing Postgres database with the given name. This is useful when you
1018
+ * create a Postgres database in one stage and want to share it in another. It avoids
1019
+ * having to create a new Postgres database in the other stage.
1020
+ *
1021
+ * :::tip
1022
+ * You can use the `static get` method to share Postgres databases across stages.
1023
+ * :::
1024
+ *
1025
+ * @param name The name of the component.
1026
+ * @param args The arguments to get the Postgres database.
1027
+ * @param opts Resource options.
1028
+ *
1029
+ * @example
1030
+ * Imagine you create a database in the `dev` stage. And in your personal stage `frank`,
1031
+ * instead of creating a new database, you want to share the same database from `dev`.
1032
+ *
1033
+ * ```ts title="sst.config.ts"
1034
+ * const database = $app.stage === "frank"
1035
+ * ? sst.aws.Postgres.get("MyDatabase", {
1036
+ * id: "app-dev-mydatabase",
1037
+ * proxyId: "app-dev-mydatabase-proxy"
1038
+ * })
1039
+ * : new sst.aws.Postgres("MyDatabase", {
1040
+ * proxy: true
1041
+ * });
1042
+ * ```
1043
+ *
1044
+ * Here `app-dev-mydatabase` is the ID of the database, and `app-dev-mydatabase-proxy`
1045
+ * is the ID of the proxy created in the `dev` stage. You can find these by outputting
1046
+ * the database ID and proxy ID in the `dev` stage.
1047
+ *
1048
+ * ```ts title="sst.config.ts"
1049
+ * return {
1050
+ * id: database.id,
1051
+ * proxyId: database.proxyId
1052
+ * };
1053
+ * ```
1054
+ */
1055
+ public static get(
1056
+ name: string,
1057
+ args: PostgresGetArgs,
1058
+ opts?: ComponentResourceOptions,
1059
+ ) {
1060
+ return new Postgres(
1061
+ name,
1062
+ {
1063
+ ref: true,
1064
+ id: args.id,
1065
+ proxyId: args.proxyId,
1066
+ } as unknown as PostgresArgs,
1067
+ opts,
1068
+ );
1069
+ }
1070
+ }
1071
+
1072
+ const __pulumiType = "sst:aws:Postgres";
1073
+ // @ts-expect-error
1074
+ Postgres.__pulumiType = __pulumiType;