@sst-community/sst 4.20.0 → 5.0.0-alpha.1
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.
- package/README.md +92 -52
- package/package.json +35 -11
- package/platform/js/chunks/chunk-HIZZCEDS.js +328 -0
- package/platform/js/chunks/chunk-HIZZCEDS.js.map +6 -0
- package/platform/js/chunks/chunk-KOKHGKJ2.js +639 -0
- package/platform/js/chunks/chunk-KOKHGKJ2.js.map +6 -0
- package/platform/js/chunks/chunk-ONNI4XNK.js +367 -0
- package/platform/js/chunks/chunk-ONNI4XNK.js.map +6 -0
- package/platform/js/chunks/chunk-VIFHC73J.js +108 -0
- package/platform/js/chunks/chunk-VIFHC73J.js.map +6 -0
- package/platform/js/chunks/chunk-WJ6BVA46.js +10 -0
- package/platform/js/chunks/chunk-WJ6BVA46.js.map +6 -0
- package/platform/js/chunks/chunk-ZOXXXME5.js +472 -0
- package/platform/js/chunks/chunk-ZOXXXME5.js.map +6 -0
- package/platform/js/chunks/component-32FCLIRK.js +26 -0
- package/platform/js/chunks/component-32FCLIRK.js.map +6 -0
- package/platform/js/chunks/config-DMGMTLNB.js +10 -0
- package/platform/js/chunks/config-DMGMTLNB.js.map +6 -0
- package/platform/js/chunks/link-OJ3RNGQ3.js +9 -0
- package/platform/js/chunks/link-OJ3RNGQ3.js.map +6 -0
- package/platform/js/components/aws/index.js +35362 -0
- package/platform/js/components/aws/index.js.map +6 -0
- package/platform/js/components/cloudflare/index.js +3246 -0
- package/platform/js/components/cloudflare/index.js.map +6 -0
- package/platform/js/components/core.js +114 -0
- package/platform/js/components/core.js.map +6 -0
- package/platform/js/components/vercel/index.js +120 -0
- package/platform/js/components/vercel/index.js.map +6 -0
- package/platform/js/testing/index.js +569 -0
- package/platform/js/testing/index.js.map +6 -0
- package/platform/package.json +25 -0
- package/platform/src/ast/add.mjs +190 -0
- package/platform/src/auto/run.ts +109 -0
- package/platform/src/components/README.md +652 -0
- package/platform/src/components/args.ts +133 -0
- package/platform/src/components/aws/alb.ts +577 -0
- package/platform/src/components/aws/analog.ts +462 -0
- package/platform/src/components/aws/apigateway-websocket-route.ts +206 -0
- package/platform/src/components/aws/apigateway-websocket.ts +894 -0
- package/platform/src/components/aws/apigatewayv1-api-key.ts +90 -0
- package/platform/src/components/aws/apigatewayv1-authorizer.ts +178 -0
- package/platform/src/components/aws/apigatewayv1-base-route.ts +78 -0
- package/platform/src/components/aws/apigatewayv1-integration-route.ts +92 -0
- package/platform/src/components/aws/apigatewayv1-lambda-route.ts +152 -0
- package/platform/src/components/aws/apigatewayv1-usage-plan.ts +109 -0
- package/platform/src/components/aws/apigatewayv1.ts +1691 -0
- package/platform/src/components/aws/apigatewayv2-authorizer.ts +199 -0
- package/platform/src/components/aws/apigatewayv2-base-route.ts +69 -0
- package/platform/src/components/aws/apigatewayv2-lambda-route.ts +141 -0
- package/platform/src/components/aws/apigatewayv2-private-route.ts +101 -0
- package/platform/src/components/aws/apigatewayv2-url-route.ts +90 -0
- package/platform/src/components/aws/apigatewayv2.ts +1439 -0
- package/platform/src/components/aws/app-sync-data-source.ts +264 -0
- package/platform/src/components/aws/app-sync-function.ts +79 -0
- package/platform/src/components/aws/app-sync-resolver.ts +110 -0
- package/platform/src/components/aws/app-sync.ts +849 -0
- package/platform/src/components/aws/astro.ts +580 -0
- package/platform/src/components/aws/aurora.ts +1356 -0
- package/platform/src/components/aws/auth-v1.ts +69 -0
- package/platform/src/components/aws/auth.ts +417 -0
- package/platform/src/components/aws/bucket-lambda-subscriber.ts +162 -0
- package/platform/src/components/aws/bucket-notification.ts +254 -0
- package/platform/src/components/aws/bucket-queue-subscriber.ts +122 -0
- package/platform/src/components/aws/bucket-topic-subscriber.ts +144 -0
- package/platform/src/components/aws/bucket.ts +2046 -0
- package/platform/src/components/aws/bus-base-subscriber.ts +52 -0
- package/platform/src/components/aws/bus-lambda-subscriber.ts +125 -0
- package/platform/src/components/aws/bus-queue-subscriber.ts +88 -0
- package/platform/src/components/aws/bus.ts +630 -0
- package/platform/src/components/aws/cdn.ts +561 -0
- package/platform/src/components/aws/cluster-v1.ts +932 -0
- package/platform/src/components/aws/cluster.ts +584 -0
- package/platform/src/components/aws/cognito-identity-pool.ts +433 -0
- package/platform/src/components/aws/cognito-identity-provider.ts +96 -0
- package/platform/src/components/aws/cognito-user-pool-client.ts +114 -0
- package/platform/src/components/aws/cognito-user-pool.ts +1089 -0
- package/platform/src/components/aws/cron-v2.ts +555 -0
- package/platform/src/components/aws/cron.ts +435 -0
- package/platform/src/components/aws/dns-validated-certificate.ts +108 -0
- package/platform/src/components/aws/dns.ts +221 -0
- package/platform/src/components/aws/dsql.ts +741 -0
- package/platform/src/components/aws/dynamo-lambda-subscriber.ts +124 -0
- package/platform/src/components/aws/dynamo.ts +929 -0
- package/platform/src/components/aws/efs.ts +410 -0
- package/platform/src/components/aws/email.ts +673 -0
- package/platform/src/components/aws/fargate.ts +1279 -0
- package/platform/src/components/aws/function.ts +3227 -0
- package/platform/src/components/aws/helpers/apigateway-account.ts +78 -0
- package/platform/src/components/aws/helpers/apigatewayv2-domain.ts +144 -0
- package/platform/src/components/aws/helpers/arn.ts +182 -0
- package/platform/src/components/aws/helpers/bootstrap.ts +16 -0
- package/platform/src/components/aws/helpers/client.ts +76 -0
- package/platform/src/components/aws/helpers/container-builder.ts +33 -0
- package/platform/src/components/aws/helpers/custom-domain.ts +128 -0
- package/platform/src/components/aws/helpers/event-source.ts +41 -0
- package/platform/src/components/aws/helpers/fargate.ts +727 -0
- package/platform/src/components/aws/helpers/function-builder.ts +133 -0
- package/platform/src/components/aws/helpers/function-code.ts +224 -0
- package/platform/src/components/aws/helpers/function-part.ts +202 -0
- package/platform/src/components/aws/helpers/function-permission.ts +29 -0
- package/platform/src/components/aws/helpers/load-balancer-args.ts +88 -0
- package/platform/src/components/aws/helpers/load-balancer.ts +17 -0
- package/platform/src/components/aws/helpers/provider.ts +36 -0
- package/platform/src/components/aws/helpers/queue-policy.ts +33 -0
- package/platform/src/components/aws/helpers/rds.ts +212 -0
- package/platform/src/components/aws/helpers/site-builder.ts +41 -0
- package/platform/src/components/aws/helpers/subscriber.ts +23 -0
- package/platform/src/components/aws/helpers/vpc.ts +27 -0
- package/platform/src/components/aws/https-redirect.ts +216 -0
- package/platform/src/components/aws/iam-edit.ts +50 -0
- package/platform/src/components/aws/index.ts +61 -0
- package/platform/src/components/aws/kinesis-stream-lambda-subscriber.ts +122 -0
- package/platform/src/components/aws/kinesis-stream.ts +416 -0
- package/platform/src/components/aws/linkable.ts +32 -0
- package/platform/src/components/aws/logging.ts +25 -0
- package/platform/src/components/aws/microvm.ts +988 -0
- package/platform/src/components/aws/mysql.ts +1047 -0
- package/platform/src/components/aws/nextjs.ts +1052 -0
- package/platform/src/components/aws/nuxt.ts +527 -0
- package/platform/src/components/aws/open-search.ts +603 -0
- package/platform/src/components/aws/opencontrol.ts +235 -0
- package/platform/src/components/aws/permission.ts +80 -0
- package/platform/src/components/aws/postgres-v1.ts +537 -0
- package/platform/src/components/aws/postgres.ts +1074 -0
- package/platform/src/components/aws/providers/bucket-files.ts +32 -0
- package/platform/src/components/aws/providers/distribution-deployment-waiter.ts +27 -0
- package/platform/src/components/aws/providers/distribution-invalidation.ts +24 -0
- package/platform/src/components/aws/providers/function-environment-update.ts +46 -0
- package/platform/src/components/aws/providers/hosted-zone-lookup.ts +25 -0
- package/platform/src/components/aws/providers/kv-keys.ts +15 -0
- package/platform/src/components/aws/providers/kv-routes-update.ts +24 -0
- package/platform/src/components/aws/providers/microvm-image-prune.ts +48 -0
- package/platform/src/components/aws/providers/origin-access-control.ts +21 -0
- package/platform/src/components/aws/providers/rds-role-lookup.ts +21 -0
- package/platform/src/components/aws/providers/vector-table.ts +25 -0
- package/platform/src/components/aws/queue-lambda-subscriber.ts +135 -0
- package/platform/src/components/aws/queue.ts +712 -0
- package/platform/src/components/aws/react.ts +510 -0
- package/platform/src/components/aws/realtime-lambda-subscriber.ts +129 -0
- package/platform/src/components/aws/realtime.ts +345 -0
- package/platform/src/components/aws/redis-v1.ts +595 -0
- package/platform/src/components/aws/redis.ts +1078 -0
- package/platform/src/components/aws/remix.ts +576 -0
- package/platform/src/components/aws/router-base-route.ts +83 -0
- package/platform/src/components/aws/router-bucket-route.ts +63 -0
- package/platform/src/components/aws/router-url-route.ts +75 -0
- package/platform/src/components/aws/router.ts +3281 -0
- package/platform/src/components/aws/service-v1.ts +876 -0
- package/platform/src/components/aws/service.ts +2994 -0
- package/platform/src/components/aws/sns-topic-lambda-subscriber.ts +127 -0
- package/platform/src/components/aws/sns-topic-queue-subscriber.ts +105 -0
- package/platform/src/components/aws/sns-topic.ts +700 -0
- package/platform/src/components/aws/solid-start.ts +467 -0
- package/platform/src/components/aws/ssr-site.ts +2204 -0
- package/platform/src/components/aws/static-site.ts +1389 -0
- package/platform/src/components/aws/step-functions/choice.ts +123 -0
- package/platform/src/components/aws/step-functions/fail.ts +69 -0
- package/platform/src/components/aws/step-functions/map.ts +264 -0
- package/platform/src/components/aws/step-functions/parallel.ts +170 -0
- package/platform/src/components/aws/step-functions/pass.ts +48 -0
- package/platform/src/components/aws/step-functions/state.ts +376 -0
- package/platform/src/components/aws/step-functions/succeed.ts +31 -0
- package/platform/src/components/aws/step-functions/task.ts +538 -0
- package/platform/src/components/aws/step-functions/wait.ts +105 -0
- package/platform/src/components/aws/step-functions.ts +804 -0
- package/platform/src/components/aws/svelte-kit.ts +563 -0
- package/platform/src/components/aws/takeover/alb.ts +9 -0
- package/platform/src/components/aws/takeover/apigatewayv2.ts +43 -0
- package/platform/src/components/aws/takeover/app-sync.ts +45 -0
- package/platform/src/components/aws/takeover/aurora.ts +19 -0
- package/platform/src/components/aws/takeover/bucket.ts +94 -0
- package/platform/src/components/aws/takeover/bus.ts +43 -0
- package/platform/src/components/aws/takeover/cognito-user-pool.ts +21 -0
- package/platform/src/components/aws/takeover/cron-v2.ts +9 -0
- package/platform/src/components/aws/takeover/dsql.ts +12 -0
- package/platform/src/components/aws/takeover/dynamo.ts +31 -0
- package/platform/src/components/aws/takeover/efs.ts +9 -0
- package/platform/src/components/aws/takeover/function.ts +21 -0
- package/platform/src/components/aws/takeover/helpers.ts +26 -0
- package/platform/src/components/aws/takeover/index.ts +27 -0
- package/platform/src/components/aws/takeover/mysql.ts +17 -0
- package/platform/src/components/aws/takeover/postgres.ts +17 -0
- package/platform/src/components/aws/takeover/queue.ts +21 -0
- package/platform/src/components/aws/takeover/redis.ts +10 -0
- package/platform/src/components/aws/takeover/service.ts +22 -0
- package/platform/src/components/aws/takeover/sns-topic.ts +27 -0
- package/platform/src/components/aws/takeover/task.ts +13 -0
- package/platform/src/components/aws/tan-stack-start.ts +479 -0
- package/platform/src/components/aws/task.ts +571 -0
- package/platform/src/components/aws/v5/alb.ts +310 -0
- package/platform/src/components/aws/v5/apigatewayv2.ts +845 -0
- package/platform/src/components/aws/v5/app-sync.ts +673 -0
- package/platform/src/components/aws/v5/aurora.ts +855 -0
- package/platform/src/components/aws/v5/bucket.ts +1001 -0
- package/platform/src/components/aws/v5/bus.ts +321 -0
- package/platform/src/components/aws/v5/cluster.ts +230 -0
- package/platform/src/components/aws/v5/cognito-user-pool-client.ts +100 -0
- package/platform/src/components/aws/v5/cognito-user-pool.ts +693 -0
- package/platform/src/components/aws/v5/cron-v2.ts +316 -0
- package/platform/src/components/aws/v5/dsql.ts +665 -0
- package/platform/src/components/aws/v5/dynamo.ts +477 -0
- package/platform/src/components/aws/v5/efs.ts +311 -0
- package/platform/src/components/aws/v5/function.ts +1527 -0
- package/platform/src/components/aws/v5/index.ts +26 -0
- package/platform/src/components/aws/v5/mysql.ts +604 -0
- package/platform/src/components/aws/v5/postgres.ts +612 -0
- package/platform/src/components/aws/v5/queue.ts +271 -0
- package/platform/src/components/aws/v5/redis.ts +550 -0
- package/platform/src/components/aws/v5/service.ts +2209 -0
- package/platform/src/components/aws/v5/sns-topic.ts +284 -0
- package/platform/src/components/aws/v5/task.ts +549 -0
- package/platform/src/components/aws/vector.ts +316 -0
- package/platform/src/components/aws/vpc-v1.ts +580 -0
- package/platform/src/components/aws/vpc.ts +1641 -0
- package/platform/src/components/aws/workflow.ts +421 -0
- package/platform/src/components/base/base-site.ts +101 -0
- package/platform/src/components/base/base-ssr-site.ts +120 -0
- package/platform/src/components/base/base-static-site.ts +314 -0
- package/platform/src/components/cloudflare/account-id.ts +1 -0
- package/platform/src/components/cloudflare/ai.ts +77 -0
- package/platform/src/components/cloudflare/astro.ts +355 -0
- package/platform/src/components/cloudflare/auth.ts +69 -0
- package/platform/src/components/cloudflare/binding.ts +132 -0
- package/platform/src/components/cloudflare/bucket.ts +142 -0
- package/platform/src/components/cloudflare/cron.ts +207 -0
- package/platform/src/components/cloudflare/d1.ts +230 -0
- package/platform/src/components/cloudflare/dns.ts +253 -0
- package/platform/src/components/cloudflare/durable-object.ts +144 -0
- package/platform/src/components/cloudflare/experimental/index.ts +3 -0
- package/platform/src/components/cloudflare/experimental/solid-start.ts +288 -0
- package/platform/src/components/cloudflare/experimental/static-site.ts +4 -0
- package/platform/src/components/cloudflare/helpers/compatibility.ts +44 -0
- package/platform/src/components/cloudflare/helpers/fetch.ts +81 -0
- package/platform/src/components/cloudflare/helpers/validation.ts +74 -0
- package/platform/src/components/cloudflare/helpers/worker-builder.ts +57 -0
- package/platform/src/components/cloudflare/helpers/wrangler.ts +222 -0
- package/platform/src/components/cloudflare/hyperdrive.ts +402 -0
- package/platform/src/components/cloudflare/index.ts +25 -0
- package/platform/src/components/cloudflare/kv.ts +218 -0
- package/platform/src/components/cloudflare/providers/dns-record.ts +43 -0
- package/platform/src/components/cloudflare/providers/kv-data.ts +107 -0
- package/platform/src/components/cloudflare/providers/worker-assets.ts +41 -0
- package/platform/src/components/cloudflare/providers/worker-placement.ts +93 -0
- package/platform/src/components/cloudflare/providers/worker-script.ts +47 -0
- package/platform/src/components/cloudflare/providers/worker-url.ts +109 -0
- package/platform/src/components/cloudflare/providers/zone-lookup.ts +85 -0
- package/platform/src/components/cloudflare/queue-worker-subscriber.ts +192 -0
- package/platform/src/components/cloudflare/queue.ts +310 -0
- package/platform/src/components/cloudflare/rate-limit.ts +178 -0
- package/platform/src/components/cloudflare/react-router.ts +322 -0
- package/platform/src/components/cloudflare/ssr-site.ts +293 -0
- package/platform/src/components/cloudflare/static-site-v2.ts +428 -0
- package/platform/src/components/cloudflare/static-site.ts +470 -0
- package/platform/src/components/cloudflare/tan-stack-start.ts +408 -0
- package/platform/src/components/cloudflare/worker.ts +1080 -0
- package/platform/src/components/cloudflare/workflow.ts +319 -0
- package/platform/src/components/component.ts +242 -0
- package/platform/src/components/core.ts +43 -0
- package/platform/src/components/cpu.ts +10 -0
- package/platform/src/components/dns.ts +82 -0
- package/platform/src/components/duration.ts +67 -0
- package/platform/src/components/error.ts +5 -0
- package/platform/src/components/esbuild.ts +15 -0
- package/platform/src/components/experimental/dev-command.ts +127 -0
- package/platform/src/components/experimental/index.ts +1 -0
- package/platform/src/components/groups.ts +9 -0
- package/platform/src/components/index.ts +9 -0
- package/platform/src/components/input.ts +2 -0
- package/platform/src/components/link.ts +201 -0
- package/platform/src/components/linkable.ts +360 -0
- package/platform/src/components/naming-rules.ts +299 -0
- package/platform/src/components/naming.ts +189 -0
- package/platform/src/components/parts-component.ts +662 -0
- package/platform/src/components/parts.ts +299 -0
- package/platform/src/components/path.ts +5 -0
- package/platform/src/components/rpc/rpc.ts +110 -0
- package/platform/src/components/secret.ts +159 -0
- package/platform/src/components/size.ts +28 -0
- package/platform/src/components/takeover.ts +131 -0
- package/platform/src/components/transform.ts +107 -0
- package/platform/src/components/vercel/account-id.ts +1 -0
- package/platform/src/components/vercel/dns.ts +171 -0
- package/platform/src/components/vercel/index.ts +2 -0
- package/platform/src/components/vercel/providers/dns-record.ts +34 -0
- package/platform/src/config.ts +1460 -0
- package/platform/src/global-aliases.d.ts +37 -0
- package/platform/src/global.d.ts +374 -0
- package/platform/src/internal.d.ts +18 -0
- package/platform/src/runtime/worker/unenv.d.ts +14 -0
- package/platform/src/runtime/worker/unenv.mjs +26 -0
- package/platform/src/shim/run.js +25 -0
- package/platform/src/testing/global.ts +83 -0
- package/platform/src/testing/index.ts +103 -0
- package/platform/src/testing/mock.ts +646 -0
- package/platform/src/testing/vitest.ts +36 -0
- package/platform/src/util/compare-semver.ts +23 -0
- package/platform/src/util/fs.ts +49 -0
- package/platform/src/util/lazy.ts +12 -0
- package/platform/src/util/minify.ts +10 -0
- package/platform/src/util/package.ts +29 -0
- package/platform/src/util/semaphore.ts +29 -0
- package/platform/src/util/warn.ts +7 -0
- package/platform/types/auto/run.d.ts +9 -0
- package/platform/types/auto/run.d.ts.map +1 -0
- package/platform/types/components/args.d.ts +77 -0
- package/platform/types/components/args.d.ts.map +1 -0
- package/platform/types/components/aws/alb.d.ts +283 -0
- package/platform/types/components/aws/alb.d.ts.map +1 -0
- package/platform/types/components/aws/analog.d.ts +408 -0
- package/platform/types/components/aws/analog.d.ts.map +1 -0
- package/platform/types/components/aws/apigateway-websocket-route.d.ts +74 -0
- package/platform/types/components/aws/apigateway-websocket-route.d.ts.map +1 -0
- package/platform/types/components/aws/apigateway-websocket.d.ts +560 -0
- package/platform/types/components/aws/apigateway-websocket.d.ts.map +1 -0
- package/platform/types/components/aws/apigatewayv1-api-key.d.ts +48 -0
- package/platform/types/components/aws/apigatewayv1-api-key.d.ts.map +1 -0
- package/platform/types/components/aws/apigatewayv1-authorizer.d.ts +55 -0
- package/platform/types/components/aws/apigatewayv1-authorizer.d.ts.map +1 -0
- package/platform/types/components/aws/apigatewayv1-base-route.d.ts +36 -0
- package/platform/types/components/aws/apigatewayv1-base-route.d.ts.map +1 -0
- package/platform/types/components/aws/apigatewayv1-integration-route.d.ts +39 -0
- package/platform/types/components/aws/apigatewayv1-integration-route.d.ts.map +1 -0
- package/platform/types/components/aws/apigatewayv1-lambda-route.d.ts +53 -0
- package/platform/types/components/aws/apigatewayv1-lambda-route.d.ts.map +1 -0
- package/platform/types/components/aws/apigatewayv1-usage-plan.d.ts +53 -0
- package/platform/types/components/aws/apigatewayv1-usage-plan.d.ts.map +1 -0
- package/platform/types/components/aws/apigatewayv1.d.ts +1028 -0
- package/platform/types/components/aws/apigatewayv1.d.ts.map +1 -0
- package/platform/types/components/aws/apigatewayv2-authorizer.d.ts +54 -0
- package/platform/types/components/aws/apigatewayv2-authorizer.d.ts.map +1 -0
- package/platform/types/components/aws/apigatewayv2-base-route.d.ts +28 -0
- package/platform/types/components/aws/apigatewayv2-base-route.d.ts.map +1 -0
- package/platform/types/components/aws/apigatewayv2-lambda-route.d.ts +59 -0
- package/platform/types/components/aws/apigatewayv2-lambda-route.d.ts.map +1 -0
- package/platform/types/components/aws/apigatewayv2-private-route.d.ts +54 -0
- package/platform/types/components/aws/apigatewayv2-private-route.d.ts.map +1 -0
- package/platform/types/components/aws/apigatewayv2-url-route.d.ts +44 -0
- package/platform/types/components/aws/apigatewayv2-url-route.d.ts.map +1 -0
- package/platform/types/components/aws/apigatewayv2.d.ts +955 -0
- package/platform/types/components/aws/apigatewayv2.d.ts.map +1 -0
- package/platform/types/components/aws/app-sync-data-source.d.ts +52 -0
- package/platform/types/components/aws/app-sync-data-source.d.ts.map +1 -0
- package/platform/types/components/aws/app-sync-function.d.ts +33 -0
- package/platform/types/components/aws/app-sync-function.d.ts.map +1 -0
- package/platform/types/components/aws/app-sync-resolver.d.ts +41 -0
- package/platform/types/components/aws/app-sync-resolver.d.ts.map +1 -0
- package/platform/types/components/aws/app-sync.d.ts +638 -0
- package/platform/types/components/aws/app-sync.d.ts.map +1 -0
- package/platform/types/components/aws/astro.d.ts +409 -0
- package/platform/types/components/aws/astro.d.ts.map +1 -0
- package/platform/types/components/aws/aurora.d.ts +720 -0
- package/platform/types/components/aws/aurora.d.ts.map +1 -0
- package/platform/types/components/aws/auth-v1.d.ts +26 -0
- package/platform/types/components/aws/auth-v1.d.ts.map +1 -0
- package/platform/types/components/aws/auth.d.ts +295 -0
- package/platform/types/components/aws/auth.d.ts.map +1 -0
- package/platform/types/components/aws/bucket-lambda-subscriber.d.ts +61 -0
- package/platform/types/components/aws/bucket-lambda-subscriber.d.ts.map +1 -0
- package/platform/types/components/aws/bucket-notification.d.ts +47 -0
- package/platform/types/components/aws/bucket-notification.d.ts.map +1 -0
- package/platform/types/components/aws/bucket-queue-subscriber.d.ts +55 -0
- package/platform/types/components/aws/bucket-queue-subscriber.d.ts.map +1 -0
- package/platform/types/components/aws/bucket-topic-subscriber.d.ts +55 -0
- package/platform/types/components/aws/bucket-topic-subscriber.d.ts.map +1 -0
- package/platform/types/components/aws/bucket.d.ts +1356 -0
- package/platform/types/components/aws/bucket.d.ts.map +1 -0
- package/platform/types/components/aws/bus-base-subscriber.d.ts +20 -0
- package/platform/types/components/aws/bus-base-subscriber.d.ts.map +1 -0
- package/platform/types/components/aws/bus-lambda-subscriber.d.ts +50 -0
- package/platform/types/components/aws/bus-lambda-subscriber.d.ts.map +1 -0
- package/platform/types/components/aws/bus-queue-subscriber.d.ts +44 -0
- package/platform/types/components/aws/bus-queue-subscriber.d.ts.map +1 -0
- package/platform/types/components/aws/bus.d.ts +447 -0
- package/platform/types/components/aws/bus.d.ts.map +1 -0
- package/platform/types/components/aws/cdn.d.ts +310 -0
- package/platform/types/components/aws/cdn.d.ts.map +1 -0
- package/platform/types/components/aws/cluster-v1.d.ts +885 -0
- package/platform/types/components/aws/cluster-v1.d.ts.map +1 -0
- package/platform/types/components/aws/cluster.d.ts +364 -0
- package/platform/types/components/aws/cluster.d.ts.map +1 -0
- package/platform/types/components/aws/cognito-identity-pool.d.ts +199 -0
- package/platform/types/components/aws/cognito-identity-pool.d.ts.map +1 -0
- package/platform/types/components/aws/cognito-identity-provider.d.ts +38 -0
- package/platform/types/components/aws/cognito-identity-provider.d.ts.map +1 -0
- package/platform/types/components/aws/cognito-user-pool-client.d.ts +50 -0
- package/platform/types/components/aws/cognito-user-pool-client.d.ts.map +1 -0
- package/platform/types/components/aws/cognito-user-pool.d.ts +703 -0
- package/platform/types/components/aws/cognito-user-pool.d.ts.map +1 -0
- package/platform/types/components/aws/cron-v2.d.ts +325 -0
- package/platform/types/components/aws/cron-v2.d.ts.map +1 -0
- package/platform/types/components/aws/cron.d.ts +259 -0
- package/platform/types/components/aws/cron.d.ts.map +1 -0
- package/platform/types/components/aws/dns-validated-certificate.d.ts +27 -0
- package/platform/types/components/aws/dns-validated-certificate.d.ts.map +1 -0
- package/platform/types/components/aws/dns.d.ts +94 -0
- package/platform/types/components/aws/dns.d.ts.map +1 -0
- package/platform/types/components/aws/dsql.d.ts +369 -0
- package/platform/types/components/aws/dsql.d.ts.map +1 -0
- package/platform/types/components/aws/dynamo-lambda-subscriber.d.ts +55 -0
- package/platform/types/components/aws/dynamo-lambda-subscriber.d.ts.map +1 -0
- package/platform/types/components/aws/dynamo.d.ts +628 -0
- package/platform/types/components/aws/dynamo.d.ts.map +1 -0
- package/platform/types/components/aws/efs.d.ts +217 -0
- package/platform/types/components/aws/efs.d.ts.map +1 -0
- package/platform/types/components/aws/email.d.ts +370 -0
- package/platform/types/components/aws/email.d.ts.map +1 -0
- package/platform/types/components/aws/fargate.d.ts +894 -0
- package/platform/types/components/aws/fargate.d.ts.map +1 -0
- package/platform/types/components/aws/function.d.ts +1755 -0
- package/platform/types/components/aws/function.d.ts.map +1 -0
- package/platform/types/components/aws/helpers/apigateway-account.d.ts +3 -0
- package/platform/types/components/aws/helpers/apigateway-account.d.ts.map +1 -0
- package/platform/types/components/aws/helpers/apigatewayv2-domain.d.ts +144 -0
- package/platform/types/components/aws/helpers/apigatewayv2-domain.d.ts.map +1 -0
- package/platform/types/components/aws/helpers/arn.d.ts +51 -0
- package/platform/types/components/aws/helpers/arn.d.ts.map +1 -0
- package/platform/types/components/aws/helpers/bootstrap.d.ts +13 -0
- package/platform/types/components/aws/helpers/bootstrap.d.ts.map +1 -0
- package/platform/types/components/aws/helpers/client.d.ts +7 -0
- package/platform/types/components/aws/helpers/client.d.ts.map +1 -0
- package/platform/types/components/aws/helpers/container-builder.d.ts +4 -0
- package/platform/types/components/aws/helpers/container-builder.d.ts.map +1 -0
- package/platform/types/components/aws/helpers/custom-domain.d.ts +111 -0
- package/platform/types/components/aws/helpers/custom-domain.d.ts.map +1 -0
- package/platform/types/components/aws/helpers/event-source.d.ts +26 -0
- package/platform/types/components/aws/helpers/event-source.d.ts.map +1 -0
- package/platform/types/components/aws/helpers/fargate.d.ts +225 -0
- package/platform/types/components/aws/helpers/fargate.d.ts.map +1 -0
- package/platform/types/components/aws/helpers/function-builder.d.ts +14 -0
- package/platform/types/components/aws/helpers/function-builder.d.ts.map +1 -0
- package/platform/types/components/aws/helpers/function-code.d.ts +80 -0
- package/platform/types/components/aws/helpers/function-code.d.ts.map +1 -0
- package/platform/types/components/aws/helpers/function-part.d.ts +61 -0
- package/platform/types/components/aws/helpers/function-part.d.ts.map +1 -0
- package/platform/types/components/aws/helpers/function-permission.d.ts +17 -0
- package/platform/types/components/aws/helpers/function-permission.d.ts.map +1 -0
- package/platform/types/components/aws/helpers/load-balancer-args.d.ts +40 -0
- package/platform/types/components/aws/helpers/load-balancer-args.d.ts.map +1 -0
- package/platform/types/components/aws/helpers/load-balancer.d.ts +9 -0
- package/platform/types/components/aws/helpers/load-balancer.d.ts.map +1 -0
- package/platform/types/components/aws/helpers/provider.d.ts +3 -0
- package/platform/types/components/aws/helpers/provider.d.ts.map +1 -0
- package/platform/types/components/aws/helpers/queue-policy.d.ts +11 -0
- package/platform/types/components/aws/helpers/queue-policy.d.ts.map +1 -0
- package/platform/types/components/aws/helpers/rds.d.ts +98 -0
- package/platform/types/components/aws/helpers/rds.d.ts.map +1 -0
- package/platform/types/components/aws/helpers/site-builder.d.ts +4 -0
- package/platform/types/components/aws/helpers/site-builder.d.ts.map +1 -0
- package/platform/types/components/aws/helpers/subscriber.d.ts +6 -0
- package/platform/types/components/aws/helpers/subscriber.d.ts.map +1 -0
- package/platform/types/components/aws/helpers/vpc.d.ts +14 -0
- package/platform/types/components/aws/helpers/vpc.d.ts.map +1 -0
- package/platform/types/components/aws/https-redirect.d.ts +38 -0
- package/platform/types/components/aws/https-redirect.d.ts.map +1 -0
- package/platform/types/components/aws/iam-edit.d.ts +39 -0
- package/platform/types/components/aws/iam-edit.d.ts.map +1 -0
- package/platform/types/components/aws/index.d.ts +56 -0
- package/platform/types/components/aws/index.d.ts.map +1 -0
- package/platform/types/components/aws/kinesis-stream-lambda-subscriber.d.ts +49 -0
- package/platform/types/components/aws/kinesis-stream-lambda-subscriber.d.ts.map +1 -0
- package/platform/types/components/aws/kinesis-stream.d.ts +254 -0
- package/platform/types/components/aws/kinesis-stream.d.ts.map +1 -0
- package/platform/types/components/aws/linkable.d.ts +17 -0
- package/platform/types/components/aws/linkable.d.ts.map +1 -0
- package/platform/types/components/aws/logging.d.ts +26 -0
- package/platform/types/components/aws/logging.d.ts.map +1 -0
- package/platform/types/components/aws/microvm.d.ts +439 -0
- package/platform/types/components/aws/microvm.d.ts.map +1 -0
- package/platform/types/components/aws/mysql.d.ts +525 -0
- package/platform/types/components/aws/mysql.d.ts.map +1 -0
- package/platform/types/components/aws/nextjs.d.ts +534 -0
- package/platform/types/components/aws/nextjs.d.ts.map +1 -0
- package/platform/types/components/aws/nuxt.d.ts +480 -0
- package/platform/types/components/aws/nuxt.d.ts.map +1 -0
- package/platform/types/components/aws/open-search.d.ts +306 -0
- package/platform/types/components/aws/open-search.d.ts.map +1 -0
- package/platform/types/components/aws/opencontrol.d.ts +169 -0
- package/platform/types/components/aws/opencontrol.d.ts.map +1 -0
- package/platform/types/components/aws/permission.d.ts +80 -0
- package/platform/types/components/aws/permission.d.ts.map +1 -0
- package/platform/types/components/aws/postgres-v1.d.ts +328 -0
- package/platform/types/components/aws/postgres-v1.d.ts.map +1 -0
- package/platform/types/components/aws/postgres.d.ts +529 -0
- package/platform/types/components/aws/postgres.d.ts.map +1 -0
- package/platform/types/components/aws/providers/bucket-files.d.ts +18 -0
- package/platform/types/components/aws/providers/bucket-files.d.ts.map +1 -0
- package/platform/types/components/aws/providers/distribution-deployment-waiter.d.ts +13 -0
- package/platform/types/components/aws/providers/distribution-deployment-waiter.d.ts.map +1 -0
- package/platform/types/components/aws/providers/distribution-invalidation.d.ts +11 -0
- package/platform/types/components/aws/providers/distribution-invalidation.d.ts.map +1 -0
- package/platform/types/components/aws/providers/function-environment-update.d.ts +33 -0
- package/platform/types/components/aws/providers/function-environment-update.d.ts.map +1 -0
- package/platform/types/components/aws/providers/hosted-zone-lookup.d.ts +11 -0
- package/platform/types/components/aws/providers/hosted-zone-lookup.d.ts.map +1 -0
- package/platform/types/components/aws/providers/kv-keys.d.ts +11 -0
- package/platform/types/components/aws/providers/kv-keys.d.ts.map +1 -0
- package/platform/types/components/aws/providers/kv-routes-update.d.ts +11 -0
- package/platform/types/components/aws/providers/kv-routes-update.d.ts.map +1 -0
- package/platform/types/components/aws/providers/microvm-image-prune.d.ts +35 -0
- package/platform/types/components/aws/providers/microvm-image-prune.d.ts.map +1 -0
- package/platform/types/components/aws/providers/origin-access-control.d.ts +8 -0
- package/platform/types/components/aws/providers/origin-access-control.d.ts.map +1 -0
- package/platform/types/components/aws/providers/rds-role-lookup.d.ts +8 -0
- package/platform/types/components/aws/providers/rds-role-lookup.d.ts.map +1 -0
- package/platform/types/components/aws/providers/vector-table.d.ts +12 -0
- package/platform/types/components/aws/providers/vector-table.d.ts.map +1 -0
- package/platform/types/components/aws/queue-lambda-subscriber.d.ts +53 -0
- package/platform/types/components/aws/queue-lambda-subscriber.d.ts.map +1 -0
- package/platform/types/components/aws/queue.d.ts +494 -0
- package/platform/types/components/aws/queue.d.ts.map +1 -0
- package/platform/types/components/aws/react.d.ts +407 -0
- package/platform/types/components/aws/react.d.ts.map +1 -0
- package/platform/types/components/aws/realtime-lambda-subscriber.d.ts +53 -0
- package/platform/types/components/aws/realtime-lambda-subscriber.d.ts.map +1 -0
- package/platform/types/components/aws/realtime.d.ts +237 -0
- package/platform/types/components/aws/realtime.d.ts.map +1 -0
- package/platform/types/components/aws/redis-v1.d.ts +348 -0
- package/platform/types/components/aws/redis-v1.d.ts.map +1 -0
- package/platform/types/components/aws/redis.d.ts +545 -0
- package/platform/types/components/aws/redis.d.ts.map +1 -0
- package/platform/types/components/aws/remix.d.ts +408 -0
- package/platform/types/components/aws/remix.d.ts.map +1 -0
- package/platform/types/components/aws/router-base-route.d.ts +28 -0
- package/platform/types/components/aws/router-base-route.d.ts.map +1 -0
- package/platform/types/components/aws/router-bucket-route.d.ts +29 -0
- package/platform/types/components/aws/router-bucket-route.d.ts.map +1 -0
- package/platform/types/components/aws/router-url-route.d.ts +28 -0
- package/platform/types/components/aws/router-url-route.d.ts.map +1 -0
- package/platform/types/components/aws/router.d.ts +1754 -0
- package/platform/types/components/aws/router.d.ts.map +1 -0
- package/platform/types/components/aws/service-v1.d.ts +78 -0
- package/platform/types/components/aws/service-v1.d.ts.map +1 -0
- package/platform/types/components/aws/service.d.ts +1756 -0
- package/platform/types/components/aws/service.d.ts.map +1 -0
- package/platform/types/components/aws/sns-topic-lambda-subscriber.d.ts +53 -0
- package/platform/types/components/aws/sns-topic-lambda-subscriber.d.ts.map +1 -0
- package/platform/types/components/aws/sns-topic-queue-subscriber.d.ts +55 -0
- package/platform/types/components/aws/sns-topic-queue-subscriber.d.ts.map +1 -0
- package/platform/types/components/aws/sns-topic.d.ts +394 -0
- package/platform/types/components/aws/sns-topic.d.ts.map +1 -0
- package/platform/types/components/aws/solid-start.d.ts +399 -0
- package/platform/types/components/aws/solid-start.d.ts.map +1 -0
- package/platform/types/components/aws/ssr-site.d.ts +895 -0
- package/platform/types/components/aws/ssr-site.d.ts.map +1 -0
- package/platform/types/components/aws/static-site.d.ts +744 -0
- package/platform/types/components/aws/static-site.d.ts.map +1 -0
- package/platform/types/components/aws/step-functions/choice.d.ts +73 -0
- package/platform/types/components/aws/step-functions/choice.d.ts.map +1 -0
- package/platform/types/components/aws/step-functions/fail.d.ts +63 -0
- package/platform/types/components/aws/step-functions/fail.d.ts.map +1 -0
- package/platform/types/components/aws/step-functions/map.d.ts +236 -0
- package/platform/types/components/aws/step-functions/map.d.ts.map +1 -0
- package/platform/types/components/aws/step-functions/parallel.d.ts +127 -0
- package/platform/types/components/aws/step-functions/parallel.d.ts.map +1 -0
- package/platform/types/components/aws/step-functions/pass.d.ts +39 -0
- package/platform/types/components/aws/step-functions/pass.d.ts.map +1 -0
- package/platform/types/components/aws/step-functions/state.d.ts +231 -0
- package/platform/types/components/aws/step-functions/state.d.ts.map +1 -0
- package/platform/types/components/aws/step-functions/succeed.d.ts +26 -0
- package/platform/types/components/aws/step-functions/succeed.d.ts.map +1 -0
- package/platform/types/components/aws/step-functions/task.d.ts +485 -0
- package/platform/types/components/aws/step-functions/task.d.ts.map +1 -0
- package/platform/types/components/aws/step-functions/wait.d.ts +91 -0
- package/platform/types/components/aws/step-functions/wait.d.ts.map +1 -0
- package/platform/types/components/aws/step-functions.d.ts +478 -0
- package/platform/types/components/aws/step-functions.d.ts.map +1 -0
- package/platform/types/components/aws/svelte-kit.d.ts +456 -0
- package/platform/types/components/aws/svelte-kit.d.ts.map +1 -0
- package/platform/types/components/aws/takeover/alb.d.ts +2 -0
- package/platform/types/components/aws/takeover/alb.d.ts.map +1 -0
- package/platform/types/components/aws/takeover/apigatewayv2.d.ts +2 -0
- package/platform/types/components/aws/takeover/apigatewayv2.d.ts.map +1 -0
- package/platform/types/components/aws/takeover/app-sync.d.ts +2 -0
- package/platform/types/components/aws/takeover/app-sync.d.ts.map +1 -0
- package/platform/types/components/aws/takeover/aurora.d.ts +2 -0
- package/platform/types/components/aws/takeover/aurora.d.ts.map +1 -0
- package/platform/types/components/aws/takeover/bucket.d.ts +2 -0
- package/platform/types/components/aws/takeover/bucket.d.ts.map +1 -0
- package/platform/types/components/aws/takeover/bus.d.ts +2 -0
- package/platform/types/components/aws/takeover/bus.d.ts.map +1 -0
- package/platform/types/components/aws/takeover/cognito-user-pool.d.ts +2 -0
- package/platform/types/components/aws/takeover/cognito-user-pool.d.ts.map +1 -0
- package/platform/types/components/aws/takeover/cron-v2.d.ts +2 -0
- package/platform/types/components/aws/takeover/cron-v2.d.ts.map +1 -0
- package/platform/types/components/aws/takeover/dsql.d.ts +2 -0
- package/platform/types/components/aws/takeover/dsql.d.ts.map +1 -0
- package/platform/types/components/aws/takeover/dynamo.d.ts +2 -0
- package/platform/types/components/aws/takeover/dynamo.d.ts.map +1 -0
- package/platform/types/components/aws/takeover/efs.d.ts +2 -0
- package/platform/types/components/aws/takeover/efs.d.ts.map +1 -0
- package/platform/types/components/aws/takeover/function.d.ts +2 -0
- package/platform/types/components/aws/takeover/function.d.ts.map +1 -0
- package/platform/types/components/aws/takeover/helpers.d.ts +16 -0
- package/platform/types/components/aws/takeover/helpers.d.ts.map +1 -0
- package/platform/types/components/aws/takeover/index.d.ts +28 -0
- package/platform/types/components/aws/takeover/index.d.ts.map +1 -0
- package/platform/types/components/aws/takeover/mysql.d.ts +2 -0
- package/platform/types/components/aws/takeover/mysql.d.ts.map +1 -0
- package/platform/types/components/aws/takeover/postgres.d.ts +2 -0
- package/platform/types/components/aws/takeover/postgres.d.ts.map +1 -0
- package/platform/types/components/aws/takeover/queue.d.ts +2 -0
- package/platform/types/components/aws/takeover/queue.d.ts.map +1 -0
- package/platform/types/components/aws/takeover/redis.d.ts +2 -0
- package/platform/types/components/aws/takeover/redis.d.ts.map +1 -0
- package/platform/types/components/aws/takeover/service.d.ts +2 -0
- package/platform/types/components/aws/takeover/service.d.ts.map +1 -0
- package/platform/types/components/aws/takeover/sns-topic.d.ts +2 -0
- package/platform/types/components/aws/takeover/sns-topic.d.ts.map +1 -0
- package/platform/types/components/aws/takeover/task.d.ts +2 -0
- package/platform/types/components/aws/takeover/task.d.ts.map +1 -0
- package/platform/types/components/aws/tan-stack-start.d.ts +359 -0
- package/platform/types/components/aws/tan-stack-start.d.ts.map +1 -0
- package/platform/types/components/aws/task.d.ts +342 -0
- package/platform/types/components/aws/task.d.ts.map +1 -0
- package/platform/types/components/aws/v5/alb.d.ts +177 -0
- package/platform/types/components/aws/v5/alb.d.ts.map +1 -0
- package/platform/types/components/aws/v5/apigatewayv2.d.ts +482 -0
- package/platform/types/components/aws/v5/apigatewayv2.d.ts.map +1 -0
- package/platform/types/components/aws/v5/app-sync.d.ts +424 -0
- package/platform/types/components/aws/v5/app-sync.d.ts.map +1 -0
- package/platform/types/components/aws/v5/aurora.d.ts +459 -0
- package/platform/types/components/aws/v5/aurora.d.ts.map +1 -0
- package/platform/types/components/aws/v5/bucket.d.ts +578 -0
- package/platform/types/components/aws/v5/bucket.d.ts.map +1 -0
- package/platform/types/components/aws/v5/bus.d.ts +255 -0
- package/platform/types/components/aws/v5/bus.d.ts.map +1 -0
- package/platform/types/components/aws/v5/cluster.d.ts +167 -0
- package/platform/types/components/aws/v5/cluster.d.ts.map +1 -0
- package/platform/types/components/aws/v5/cognito-user-pool-client.d.ts +69 -0
- package/platform/types/components/aws/v5/cognito-user-pool-client.d.ts.map +1 -0
- package/platform/types/components/aws/v5/cognito-user-pool.d.ts +396 -0
- package/platform/types/components/aws/v5/cognito-user-pool.d.ts.map +1 -0
- package/platform/types/components/aws/v5/cron-v2.d.ts +206 -0
- package/platform/types/components/aws/v5/cron-v2.d.ts.map +1 -0
- package/platform/types/components/aws/v5/dsql.d.ts +453 -0
- package/platform/types/components/aws/v5/dsql.d.ts.map +1 -0
- package/platform/types/components/aws/v5/dynamo.d.ts +328 -0
- package/platform/types/components/aws/v5/dynamo.d.ts.map +1 -0
- package/platform/types/components/aws/v5/efs.d.ts +178 -0
- package/platform/types/components/aws/v5/efs.d.ts.map +1 -0
- package/platform/types/components/aws/v5/function.d.ts +582 -0
- package/platform/types/components/aws/v5/function.d.ts.map +1 -0
- package/platform/types/components/aws/v5/index.d.ts +27 -0
- package/platform/types/components/aws/v5/index.d.ts.map +1 -0
- package/platform/types/components/aws/v5/mysql.d.ts +347 -0
- package/platform/types/components/aws/v5/mysql.d.ts.map +1 -0
- package/platform/types/components/aws/v5/postgres.d.ts +348 -0
- package/platform/types/components/aws/v5/postgres.d.ts.map +1 -0
- package/platform/types/components/aws/v5/queue.d.ts +190 -0
- package/platform/types/components/aws/v5/queue.d.ts.map +1 -0
- package/platform/types/components/aws/v5/redis.d.ts +214 -0
- package/platform/types/components/aws/v5/redis.d.ts.map +1 -0
- package/platform/types/components/aws/v5/service.d.ts +1347 -0
- package/platform/types/components/aws/v5/service.d.ts.map +1 -0
- package/platform/types/components/aws/v5/sns-topic.d.ts +226 -0
- package/platform/types/components/aws/v5/sns-topic.d.ts.map +1 -0
- package/platform/types/components/aws/v5/task.d.ts +346 -0
- package/platform/types/components/aws/v5/task.d.ts.map +1 -0
- package/platform/types/components/aws/vector.d.ts +163 -0
- package/platform/types/components/aws/vector.d.ts.map +1 -0
- package/platform/types/components/aws/vpc-v1.d.ts +208 -0
- package/platform/types/components/aws/vpc-v1.d.ts.map +1 -0
- package/platform/types/components/aws/vpc.d.ts +491 -0
- package/platform/types/components/aws/vpc.d.ts.map +1 -0
- package/platform/types/components/aws/workflow.d.ts +331 -0
- package/platform/types/components/aws/workflow.d.ts.map +1 -0
- package/platform/types/components/base/base-site.d.ts +53 -0
- package/platform/types/components/base/base-site.d.ts.map +1 -0
- package/platform/types/components/base/base-ssr-site.d.ts +13 -0
- package/platform/types/components/base/base-ssr-site.d.ts.map +1 -0
- package/platform/types/components/base/base-static-site.d.ts +199 -0
- package/platform/types/components/base/base-static-site.d.ts.map +1 -0
- package/platform/types/components/cloudflare/account-id.d.ts +2 -0
- package/platform/types/components/cloudflare/account-id.d.ts.map +1 -0
- package/platform/types/components/cloudflare/ai.d.ts +68 -0
- package/platform/types/components/cloudflare/ai.d.ts.map +1 -0
- package/platform/types/components/cloudflare/astro.d.ts +249 -0
- package/platform/types/components/cloudflare/astro.d.ts.map +1 -0
- package/platform/types/components/cloudflare/auth.d.ts +22 -0
- package/platform/types/components/cloudflare/auth.d.ts.map +1 -0
- package/platform/types/components/cloudflare/binding.d.ts +109 -0
- package/platform/types/components/cloudflare/binding.d.ts.map +1 -0
- package/platform/types/components/cloudflare/bucket.d.ts +98 -0
- package/platform/types/components/cloudflare/bucket.d.ts.map +1 -0
- package/platform/types/components/cloudflare/cron.d.ts +151 -0
- package/platform/types/components/cloudflare/cron.d.ts.map +1 -0
- package/platform/types/components/cloudflare/d1.d.ts +142 -0
- package/platform/types/components/cloudflare/d1.d.ts.map +1 -0
- package/platform/types/components/cloudflare/dns.d.ts +100 -0
- package/platform/types/components/cloudflare/dns.d.ts.map +1 -0
- package/platform/types/components/cloudflare/durable-object.d.ts +125 -0
- package/platform/types/components/cloudflare/durable-object.d.ts.map +1 -0
- package/platform/types/components/cloudflare/experimental/index.d.ts +4 -0
- package/platform/types/components/cloudflare/experimental/index.d.ts.map +1 -0
- package/platform/types/components/cloudflare/experimental/solid-start.d.ts +219 -0
- package/platform/types/components/cloudflare/experimental/solid-start.d.ts.map +1 -0
- package/platform/types/components/cloudflare/experimental/static-site.d.ts +3 -0
- package/platform/types/components/cloudflare/experimental/static-site.d.ts.map +1 -0
- package/platform/types/components/cloudflare/helpers/compatibility.d.ts +21 -0
- package/platform/types/components/cloudflare/helpers/compatibility.d.ts.map +1 -0
- package/platform/types/components/cloudflare/helpers/fetch.d.ts +19 -0
- package/platform/types/components/cloudflare/helpers/fetch.d.ts.map +1 -0
- package/platform/types/components/cloudflare/helpers/validation.d.ts +15 -0
- package/platform/types/components/cloudflare/helpers/validation.d.ts.map +1 -0
- package/platform/types/components/cloudflare/helpers/worker-builder.d.ts +10 -0
- package/platform/types/components/cloudflare/helpers/worker-builder.d.ts.map +1 -0
- package/platform/types/components/cloudflare/helpers/wrangler.d.ts +31 -0
- package/platform/types/components/cloudflare/helpers/wrangler.d.ts.map +1 -0
- package/platform/types/components/cloudflare/hyperdrive.d.ts +302 -0
- package/platform/types/components/cloudflare/hyperdrive.d.ts.map +1 -0
- package/platform/types/components/cloudflare/index.d.ts +25 -0
- package/platform/types/components/cloudflare/index.d.ts.map +1 -0
- package/platform/types/components/cloudflare/kv.d.ts +140 -0
- package/platform/types/components/cloudflare/kv.d.ts.map +1 -0
- package/platform/types/components/cloudflare/providers/dns-record.d.ts +21 -0
- package/platform/types/components/cloudflare/providers/dns-record.d.ts.map +1 -0
- package/platform/types/components/cloudflare/providers/kv-data.d.ts +23 -0
- package/platform/types/components/cloudflare/providers/kv-data.d.ts.map +1 -0
- package/platform/types/components/cloudflare/providers/worker-assets.d.ts +19 -0
- package/platform/types/components/cloudflare/providers/worker-assets.d.ts.map +1 -0
- package/platform/types/components/cloudflare/providers/worker-placement.d.ts +27 -0
- package/platform/types/components/cloudflare/providers/worker-placement.d.ts.map +1 -0
- package/platform/types/components/cloudflare/providers/worker-script.d.ts +23 -0
- package/platform/types/components/cloudflare/providers/worker-script.d.ts.map +1 -0
- package/platform/types/components/cloudflare/providers/worker-url.d.ts +24 -0
- package/platform/types/components/cloudflare/providers/worker-url.d.ts.map +1 -0
- package/platform/types/components/cloudflare/providers/zone-lookup.d.ts +22 -0
- package/platform/types/components/cloudflare/providers/zone-lookup.d.ts.map +1 -0
- package/platform/types/components/cloudflare/queue-worker-subscriber.d.ts +122 -0
- package/platform/types/components/cloudflare/queue-worker-subscriber.d.ts.map +1 -0
- package/platform/types/components/cloudflare/queue.d.ts +235 -0
- package/platform/types/components/cloudflare/queue.d.ts.map +1 -0
- package/platform/types/components/cloudflare/rate-limit.d.ts +117 -0
- package/platform/types/components/cloudflare/rate-limit.d.ts.map +1 -0
- package/platform/types/components/cloudflare/react-router.d.ts +262 -0
- package/platform/types/components/cloudflare/react-router.d.ts.map +1 -0
- package/platform/types/components/cloudflare/ssr-site.d.ts +60 -0
- package/platform/types/components/cloudflare/ssr-site.d.ts.map +1 -0
- package/platform/types/components/cloudflare/static-site-v2.d.ts +302 -0
- package/platform/types/components/cloudflare/static-site-v2.d.ts.map +1 -0
- package/platform/types/components/cloudflare/static-site.d.ts +270 -0
- package/platform/types/components/cloudflare/static-site.d.ts.map +1 -0
- package/platform/types/components/cloudflare/tan-stack-start.d.ts +259 -0
- package/platform/types/components/cloudflare/tan-stack-start.d.ts.map +1 -0
- package/platform/types/components/cloudflare/worker.d.ts +483 -0
- package/platform/types/components/cloudflare/worker.d.ts.map +1 -0
- package/platform/types/components/cloudflare/workflow.d.ts +248 -0
- package/platform/types/components/cloudflare/workflow.d.ts.map +1 -0
- package/platform/types/components/component.d.ts +67 -0
- package/platform/types/components/component.d.ts.map +1 -0
- package/platform/types/components/core.d.ts +16 -0
- package/platform/types/components/core.d.ts.map +1 -0
- package/platform/types/components/cpu.d.ts +3 -0
- package/platform/types/components/cpu.d.ts.map +1 -0
- package/platform/types/components/dns.d.ts +63 -0
- package/platform/types/components/dns.d.ts.map +1 -0
- package/platform/types/components/duration.d.ts +9 -0
- package/platform/types/components/duration.d.ts.map +1 -0
- package/platform/types/components/error.d.ts +4 -0
- package/platform/types/components/error.d.ts.map +1 -0
- package/platform/types/components/esbuild.d.ts +3 -0
- package/platform/types/components/esbuild.d.ts.map +1 -0
- package/platform/types/components/experimental/dev-command.d.ts +99 -0
- package/platform/types/components/experimental/dev-command.d.ts.map +1 -0
- package/platform/types/components/experimental/index.d.ts +2 -0
- package/platform/types/components/experimental/index.d.ts.map +1 -0
- package/platform/types/components/groups.d.ts +6 -0
- package/platform/types/components/groups.d.ts.map +1 -0
- package/platform/types/components/index.d.ts +5 -0
- package/platform/types/components/index.d.ts.map +1 -0
- package/platform/types/components/input.d.ts +3 -0
- package/platform/types/components/input.d.ts.map +1 -0
- package/platform/types/components/link.d.ts +41 -0
- package/platform/types/components/link.d.ts.map +1 -0
- package/platform/types/components/linkable.d.ts +301 -0
- package/platform/types/components/linkable.d.ts.map +1 -0
- package/platform/types/components/naming-rules.d.ts +32 -0
- package/platform/types/components/naming-rules.d.ts.map +1 -0
- package/platform/types/components/naming.d.ts +21 -0
- package/platform/types/components/naming.d.ts.map +1 -0
- package/platform/types/components/parts-component.d.ts +241 -0
- package/platform/types/components/parts-component.d.ts.map +1 -0
- package/platform/types/components/parts.d.ts +194 -0
- package/platform/types/components/parts.d.ts.map +1 -0
- package/platform/types/components/path.d.ts +2 -0
- package/platform/types/components/path.d.ts.map +1 -0
- package/platform/types/components/rpc/rpc.d.ts +19 -0
- package/platform/types/components/rpc/rpc.d.ts.map +1 -0
- package/platform/types/components/secret.d.ts +123 -0
- package/platform/types/components/secret.d.ts.map +1 -0
- package/platform/types/components/size.d.ts +5 -0
- package/platform/types/components/size.d.ts.map +1 -0
- package/platform/types/components/takeover.d.ts +88 -0
- package/platform/types/components/takeover.d.ts.map +1 -0
- package/platform/types/components/transform.d.ts +34 -0
- package/platform/types/components/transform.d.ts.map +1 -0
- package/platform/types/components/vercel/account-id.d.ts +2 -0
- package/platform/types/components/vercel/account-id.d.ts.map +1 -0
- package/platform/types/components/vercel/dns.d.ts +73 -0
- package/platform/types/components/vercel/dns.d.ts.map +1 -0
- package/platform/types/components/vercel/index.d.ts +3 -0
- package/platform/types/components/vercel/index.d.ts.map +1 -0
- package/platform/types/components/vercel/providers/dns-record.d.ts +15 -0
- package/platform/types/components/vercel/providers/dns-record.d.ts.map +1 -0
- package/platform/types/config.d.ts +1437 -0
- package/platform/types/config.d.ts.map +1 -0
- package/platform/types/global-aliases.d.ts +37 -0
- package/platform/types/global.d.ts +374 -0
- package/platform/types/internal.d.ts +18 -0
- package/platform/types/runtime/worker/unenv.d.ts +14 -0
- package/platform/types/testing/global.d.ts +11 -0
- package/platform/types/testing/global.d.ts.map +1 -0
- package/platform/types/testing/index.d.ts +80 -0
- package/platform/types/testing/index.d.ts.map +1 -0
- package/platform/types/testing/mock.d.ts +136 -0
- package/platform/types/testing/mock.d.ts.map +1 -0
- package/platform/types/testing/vitest.d.ts +19 -0
- package/platform/types/testing/vitest.d.ts.map +1 -0
- package/platform/types/util/compare-semver.d.ts +4 -0
- package/platform/types/util/compare-semver.d.ts.map +1 -0
- package/platform/types/util/fs.d.ts +5 -0
- package/platform/types/util/fs.d.ts.map +1 -0
- package/platform/types/util/lazy.d.ts +2 -0
- package/platform/types/util/lazy.d.ts.map +1 -0
- package/platform/types/util/minify.d.ts +2 -0
- package/platform/types/util/minify.d.ts.map +1 -0
- package/platform/types/util/package.d.ts +10 -0
- package/platform/types/util/package.d.ts.map +1 -0
- package/platform/types/util/semaphore.d.ts +9 -0
- package/platform/types/util/semaphore.d.ts.map +1 -0
- package/platform/types/util/warn.d.ts +2 -0
- package/platform/types/util/warn.d.ts.map +1 -0
|
@@ -0,0 +1,1028 @@
|
|
|
1
|
+
import { ComponentResourceOptions, Output } from "@pulumi/pulumi";
|
|
2
|
+
import { Component, Prettify, Transform } from "../component";
|
|
3
|
+
import { Link } from "../link";
|
|
4
|
+
import type { Input } from "../input";
|
|
5
|
+
import { FunctionArgs, FunctionArn } from "./function.js";
|
|
6
|
+
import { RETENTION } from "./logging";
|
|
7
|
+
import { ApiGatewayV1LambdaRoute } from "./apigatewayv1-lambda-route";
|
|
8
|
+
import { ApiGatewayV1Authorizer } from "./apigatewayv1-authorizer";
|
|
9
|
+
import { apigateway, cloudwatch } from "@pulumi/aws";
|
|
10
|
+
import { Dns } from "../dns";
|
|
11
|
+
import { ApiGatewayV1IntegrationRoute } from "./apigatewayv1-integration-route";
|
|
12
|
+
import { ApiGatewayV1UsagePlan } from "./apigatewayv1-usage-plan";
|
|
13
|
+
export interface ApiGatewayV1DomainArgs {
|
|
14
|
+
/**
|
|
15
|
+
* Use an existing API Gateway domain name.
|
|
16
|
+
*
|
|
17
|
+
* By default, a new API Gateway domain name is created. If you'd like to use an existing
|
|
18
|
+
* domain name, set the `nameId` to the ID of the domain name and **do not** pass in `name`.
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ```js
|
|
22
|
+
* {
|
|
23
|
+
* domain: {
|
|
24
|
+
* nameId: "example.com"
|
|
25
|
+
* }
|
|
26
|
+
* }
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
nameId?: Input<string>;
|
|
30
|
+
/**
|
|
31
|
+
* The custom domain you want to use.
|
|
32
|
+
*
|
|
33
|
+
* @example
|
|
34
|
+
* ```js
|
|
35
|
+
* {
|
|
36
|
+
* domain: {
|
|
37
|
+
* name: "example.com"
|
|
38
|
+
* }
|
|
39
|
+
* }
|
|
40
|
+
* ```
|
|
41
|
+
*
|
|
42
|
+
* Can also include subdomains based on the current stage.
|
|
43
|
+
*
|
|
44
|
+
* ```js
|
|
45
|
+
* {
|
|
46
|
+
* domain: {
|
|
47
|
+
* name: `${$app.stage}.example.com`
|
|
48
|
+
* }
|
|
49
|
+
* }
|
|
50
|
+
* ```
|
|
51
|
+
*/
|
|
52
|
+
name: Input<string>;
|
|
53
|
+
/**
|
|
54
|
+
* The base mapping for the custom domain. This adds a suffix to the URL of the API.
|
|
55
|
+
*
|
|
56
|
+
* @example
|
|
57
|
+
*
|
|
58
|
+
* Given the following base path and domain name.
|
|
59
|
+
*
|
|
60
|
+
* ```js
|
|
61
|
+
* {
|
|
62
|
+
* domain: {
|
|
63
|
+
* name: "api.example.com",
|
|
64
|
+
* path: "v1"
|
|
65
|
+
* }
|
|
66
|
+
* }
|
|
67
|
+
* ```
|
|
68
|
+
*
|
|
69
|
+
* The full URL of the API will be `https://api.example.com/v1/`.
|
|
70
|
+
*
|
|
71
|
+
* :::note
|
|
72
|
+
* There's an extra trailing slash when a base path is set.
|
|
73
|
+
* :::
|
|
74
|
+
*
|
|
75
|
+
* By default there is no base path, so if the `name` is `api.example.com`, the full URL will be `https://api.example.com`.
|
|
76
|
+
*/
|
|
77
|
+
path?: Input<string>;
|
|
78
|
+
/**
|
|
79
|
+
* The ARN of an ACM (AWS Certificate Manager) certificate that proves ownership of the
|
|
80
|
+
* domain. By default, a certificate is created and validated automatically.
|
|
81
|
+
*
|
|
82
|
+
* :::tip
|
|
83
|
+
* You need to pass in a `cert` for domains that are not hosted on supported `dns` providers.
|
|
84
|
+
* :::
|
|
85
|
+
*
|
|
86
|
+
* To manually set up a domain on an unsupported provider, you'll need to:
|
|
87
|
+
*
|
|
88
|
+
* 1. [Validate that you own the domain](https://docs.aws.amazon.com/acm/latest/userguide/domain-ownership-validation.html) by creating an ACM certificate. You can either validate it by setting a DNS record or by verifying an email sent to the domain owner.
|
|
89
|
+
* 2. Once validated, set the certificate ARN as the `cert` and set `dns` to `false`.
|
|
90
|
+
* 3. Add the DNS records in your provider to point to the API Gateway URL.
|
|
91
|
+
*
|
|
92
|
+
* @example
|
|
93
|
+
* ```js
|
|
94
|
+
* {
|
|
95
|
+
* domain: {
|
|
96
|
+
* name: "example.com",
|
|
97
|
+
* dns: false,
|
|
98
|
+
* cert: "arn:aws:acm:us-east-1:112233445566:certificate/3a958790-8878-4cdc-a396-06d95064cf63"
|
|
99
|
+
* }
|
|
100
|
+
* }
|
|
101
|
+
* ```
|
|
102
|
+
*/
|
|
103
|
+
cert?: Input<string>;
|
|
104
|
+
/**
|
|
105
|
+
* The DNS provider to use for the domain. Defaults to the AWS.
|
|
106
|
+
*
|
|
107
|
+
* Takes an adapter that can create the DNS records on the provider. This can automate
|
|
108
|
+
* validating the domain and setting up the DNS routing.
|
|
109
|
+
*
|
|
110
|
+
* Supports Route 53, Cloudflare, and Vercel adapters. For other providers, you'll need
|
|
111
|
+
* to set `dns` to `false` and pass in a certificate validating ownership via `cert`.
|
|
112
|
+
*
|
|
113
|
+
* @default `sst.aws.dns`
|
|
114
|
+
*
|
|
115
|
+
* @example
|
|
116
|
+
*
|
|
117
|
+
* Specify the hosted zone ID for the Route 53 domain.
|
|
118
|
+
*
|
|
119
|
+
* ```js
|
|
120
|
+
* {
|
|
121
|
+
* domain: {
|
|
122
|
+
* name: "example.com",
|
|
123
|
+
* dns: sst.aws.dns({
|
|
124
|
+
* zone: "Z2FDTNDATAQYW2"
|
|
125
|
+
* })
|
|
126
|
+
* }
|
|
127
|
+
* }
|
|
128
|
+
* ```
|
|
129
|
+
*
|
|
130
|
+
* Use a domain hosted on Cloudflare, needs the Cloudflare provider.
|
|
131
|
+
*
|
|
132
|
+
* ```js
|
|
133
|
+
* {
|
|
134
|
+
* domain: {
|
|
135
|
+
* name: "example.com",
|
|
136
|
+
* dns: sst.cloudflare.dns()
|
|
137
|
+
* }
|
|
138
|
+
* }
|
|
139
|
+
* ```
|
|
140
|
+
*
|
|
141
|
+
* Use a domain hosted on Vercel, needs the Vercel provider.
|
|
142
|
+
*
|
|
143
|
+
* ```js
|
|
144
|
+
* {
|
|
145
|
+
* domain: {
|
|
146
|
+
* name: "example.com",
|
|
147
|
+
* dns: sst.vercel.dns()
|
|
148
|
+
* }
|
|
149
|
+
* }
|
|
150
|
+
* ```
|
|
151
|
+
*/
|
|
152
|
+
dns?: Input<false | (Dns & {})>;
|
|
153
|
+
}
|
|
154
|
+
export interface ApiGatewayV1Args {
|
|
155
|
+
/**
|
|
156
|
+
* Set a custom domain for your REST API.
|
|
157
|
+
*
|
|
158
|
+
* Automatically manages domains hosted on AWS Route 53, Cloudflare, and Vercel. For other
|
|
159
|
+
* providers, you'll need to pass in a `cert` that validates domain ownership and add the
|
|
160
|
+
* DNS records.
|
|
161
|
+
*
|
|
162
|
+
* :::tip
|
|
163
|
+
* Built-in support for AWS Route 53, Cloudflare, and Vercel. And manual setup for other
|
|
164
|
+
* providers.
|
|
165
|
+
* :::
|
|
166
|
+
*
|
|
167
|
+
* @example
|
|
168
|
+
*
|
|
169
|
+
* By default this assumes the domain is hosted on Route 53.
|
|
170
|
+
*
|
|
171
|
+
* ```js
|
|
172
|
+
* {
|
|
173
|
+
* domain: "example.com"
|
|
174
|
+
* }
|
|
175
|
+
* ```
|
|
176
|
+
*
|
|
177
|
+
* For domains hosted on Cloudflare.
|
|
178
|
+
*
|
|
179
|
+
* ```js
|
|
180
|
+
* {
|
|
181
|
+
* domain: {
|
|
182
|
+
* name: "example.com",
|
|
183
|
+
* dns: sst.cloudflare.dns()
|
|
184
|
+
* }
|
|
185
|
+
* }
|
|
186
|
+
* ```
|
|
187
|
+
*/
|
|
188
|
+
domain?: Input<string | Prettify<ApiGatewayV1DomainArgs>>;
|
|
189
|
+
/**
|
|
190
|
+
* Configure the type of API Gateway REST API endpoint.
|
|
191
|
+
*
|
|
192
|
+
* - `edge`: The default; it creates a CloudFront distribution for the API.
|
|
193
|
+
* Useful for cases where requests are geographically distributed.
|
|
194
|
+
* - `regional`: Endpoints are deployed in specific AWS regions and are
|
|
195
|
+
* intended to be accessed directly by clients within or near that region.
|
|
196
|
+
* - `private`: Endpoints allows access to the API only from within a specified
|
|
197
|
+
* Amazon VPC (Virtual Private Cloud) using VPC endpoints. These do not expose
|
|
198
|
+
* the API to the public internet.
|
|
199
|
+
*
|
|
200
|
+
* Learn more about the [different types of endpoints](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-endpoint-types.html).
|
|
201
|
+
*
|
|
202
|
+
* @default `{type: "edge"}`
|
|
203
|
+
* @example
|
|
204
|
+
*
|
|
205
|
+
* For example, to create a regional endpoint.
|
|
206
|
+
* ```js
|
|
207
|
+
* {
|
|
208
|
+
* endpoint: {
|
|
209
|
+
* type: "regional"
|
|
210
|
+
* }
|
|
211
|
+
* }
|
|
212
|
+
* ```
|
|
213
|
+
*
|
|
214
|
+
* And to create a private endpoint.
|
|
215
|
+
* ```js
|
|
216
|
+
* {
|
|
217
|
+
* endpoint: {
|
|
218
|
+
* type: "private",
|
|
219
|
+
* vpcEndpointIds: ["vpce-0dccab6fb1e828f36"]
|
|
220
|
+
* }
|
|
221
|
+
* }
|
|
222
|
+
* ```
|
|
223
|
+
*/
|
|
224
|
+
endpoint?: Input<{
|
|
225
|
+
/**
|
|
226
|
+
* The type of the API Gateway REST API endpoint.
|
|
227
|
+
*/
|
|
228
|
+
type: "edge" | "regional" | "private";
|
|
229
|
+
/**
|
|
230
|
+
* The VPC endpoint IDs for the `private` endpoint.
|
|
231
|
+
*/
|
|
232
|
+
vpcEndpointIds?: Input<Input<string>[]>;
|
|
233
|
+
}>;
|
|
234
|
+
/**
|
|
235
|
+
* Enable the CORS or Cross-origin resource sharing for your API.
|
|
236
|
+
* @default `true`
|
|
237
|
+
* @example
|
|
238
|
+
* Disable CORS.
|
|
239
|
+
* ```js
|
|
240
|
+
* {
|
|
241
|
+
* cors: false
|
|
242
|
+
* }
|
|
243
|
+
* ```
|
|
244
|
+
*/
|
|
245
|
+
cors?: Input<boolean>;
|
|
246
|
+
/**
|
|
247
|
+
* Configure the [API Gateway logs](https://docs.aws.amazon.com/apigateway/latest/developerguide/view-cloudwatch-log-events-in-cloudwatch-console.html) in CloudWatch. By default, access logs are enabled and retained for 1 month.
|
|
248
|
+
* @default `{retention: "1 month"}`
|
|
249
|
+
* @example
|
|
250
|
+
* ```js
|
|
251
|
+
* {
|
|
252
|
+
* accessLog: {
|
|
253
|
+
* retention: "forever"
|
|
254
|
+
* }
|
|
255
|
+
* }
|
|
256
|
+
* ```
|
|
257
|
+
*/
|
|
258
|
+
accessLog?: Input<{
|
|
259
|
+
/**
|
|
260
|
+
* The duration the API Gateway logs are retained in CloudWatch.
|
|
261
|
+
* @default `1 month`
|
|
262
|
+
*/
|
|
263
|
+
retention?: Input<keyof typeof RETENTION>;
|
|
264
|
+
}>;
|
|
265
|
+
/**
|
|
266
|
+
* [Transform](/docs/components#transform) how this component creates its underlying
|
|
267
|
+
* resources.
|
|
268
|
+
*/
|
|
269
|
+
transform?: {
|
|
270
|
+
/**
|
|
271
|
+
* Transform the API Gateway REST API resource.
|
|
272
|
+
*/
|
|
273
|
+
api?: Transform<apigateway.RestApiArgs>;
|
|
274
|
+
/**
|
|
275
|
+
* Transform the API Gateway REST API stage resource.
|
|
276
|
+
*/
|
|
277
|
+
stage?: Transform<apigateway.StageArgs>;
|
|
278
|
+
/**
|
|
279
|
+
* Transform the API Gateway REST API deployment resource.
|
|
280
|
+
*/
|
|
281
|
+
deployment?: Transform<apigateway.DeploymentArgs>;
|
|
282
|
+
/**
|
|
283
|
+
* Transform the CloudWatch LogGroup resource used for access logs.
|
|
284
|
+
*/
|
|
285
|
+
accessLog?: Transform<cloudwatch.LogGroupArgs>;
|
|
286
|
+
/**
|
|
287
|
+
* Transform the API Gateway REST API domain name resource.
|
|
288
|
+
*/
|
|
289
|
+
domainName?: Transform<apigateway.DomainNameArgs>;
|
|
290
|
+
/**
|
|
291
|
+
* Transform the routes. This is called for every route that is added.
|
|
292
|
+
*
|
|
293
|
+
* :::note
|
|
294
|
+
* This is applied right before the resource is created.
|
|
295
|
+
* :::
|
|
296
|
+
*
|
|
297
|
+
* You can use this to set any default props for all the routes and their handler function.
|
|
298
|
+
* Like the other transforms, you can either pass in an object or a callback.
|
|
299
|
+
*
|
|
300
|
+
* @example
|
|
301
|
+
*
|
|
302
|
+
* Here we are setting a default memory of `2048 MB` for our routes.
|
|
303
|
+
*
|
|
304
|
+
* ```js
|
|
305
|
+
* {
|
|
306
|
+
* transform: {
|
|
307
|
+
* route: {
|
|
308
|
+
* handler: (args, opts) => {
|
|
309
|
+
* // Set the default if it's not set by the route
|
|
310
|
+
* args.memory ??= "2048 MB";
|
|
311
|
+
* }
|
|
312
|
+
* }
|
|
313
|
+
* }
|
|
314
|
+
* }
|
|
315
|
+
* ```
|
|
316
|
+
*
|
|
317
|
+
* Defaulting to IAM auth for all our routes.
|
|
318
|
+
*
|
|
319
|
+
* ```js
|
|
320
|
+
* {
|
|
321
|
+
* transform: {
|
|
322
|
+
* route: {
|
|
323
|
+
* args: (props) => {
|
|
324
|
+
* // Set the default if it's not set by the route
|
|
325
|
+
* props.auth ??= { iam: true };
|
|
326
|
+
* }
|
|
327
|
+
* }
|
|
328
|
+
* }
|
|
329
|
+
* }
|
|
330
|
+
* ```
|
|
331
|
+
*/
|
|
332
|
+
route?: {
|
|
333
|
+
/**
|
|
334
|
+
* Transform the handler function of the route.
|
|
335
|
+
*/
|
|
336
|
+
handler?: Transform<FunctionArgs>;
|
|
337
|
+
/**
|
|
338
|
+
* Transform the arguments for the route.
|
|
339
|
+
*/
|
|
340
|
+
args?: Transform<ApiGatewayV1RouteArgs>;
|
|
341
|
+
};
|
|
342
|
+
};
|
|
343
|
+
}
|
|
344
|
+
export interface ApiGatewayV1AuthorizerArgs {
|
|
345
|
+
/**
|
|
346
|
+
* The name of the authorizer.
|
|
347
|
+
* @example
|
|
348
|
+
* ```js
|
|
349
|
+
* {
|
|
350
|
+
* name: "myAuthorizer"
|
|
351
|
+
* }
|
|
352
|
+
* ```
|
|
353
|
+
*/
|
|
354
|
+
name: string;
|
|
355
|
+
/**
|
|
356
|
+
* The Lambda token authorizer function. Takes the handler path or the function args.
|
|
357
|
+
* @example
|
|
358
|
+
* ```js
|
|
359
|
+
* {
|
|
360
|
+
* tokenFunction: "src/authorizer.index"
|
|
361
|
+
* }
|
|
362
|
+
* ```
|
|
363
|
+
*/
|
|
364
|
+
tokenFunction?: Input<string | FunctionArgs>;
|
|
365
|
+
/**
|
|
366
|
+
* The Lambda request authorizer function. Takes the handler path or the function args.
|
|
367
|
+
* @example
|
|
368
|
+
* ```js
|
|
369
|
+
* {
|
|
370
|
+
* requestFunction: "src/authorizer.index"
|
|
371
|
+
* }
|
|
372
|
+
* ```
|
|
373
|
+
*/
|
|
374
|
+
requestFunction?: Input<string | FunctionArgs>;
|
|
375
|
+
/**
|
|
376
|
+
* A list of user pools used as the authorizer.
|
|
377
|
+
* @example
|
|
378
|
+
* ```js
|
|
379
|
+
* {
|
|
380
|
+
* name: "myAuthorizer",
|
|
381
|
+
* userPools: [userPool.arn]
|
|
382
|
+
* }
|
|
383
|
+
* ```
|
|
384
|
+
*
|
|
385
|
+
* Where `userPool` is:
|
|
386
|
+
*
|
|
387
|
+
* ```js
|
|
388
|
+
* const userPool = new aws.cognito.UserPool();
|
|
389
|
+
* ```
|
|
390
|
+
*/
|
|
391
|
+
userPools?: Input<Input<string>[]>;
|
|
392
|
+
/**
|
|
393
|
+
* Time to live for cached authorizer results in seconds.
|
|
394
|
+
* @default `300`
|
|
395
|
+
* @example
|
|
396
|
+
* ```js
|
|
397
|
+
* {
|
|
398
|
+
* ttl: 30
|
|
399
|
+
* }
|
|
400
|
+
* ```
|
|
401
|
+
*/
|
|
402
|
+
ttl?: Input<number>;
|
|
403
|
+
/**
|
|
404
|
+
* Specifies where to extract the authorization token from the request.
|
|
405
|
+
* @default `"method.request.header.Authorization"`
|
|
406
|
+
* @example
|
|
407
|
+
* ```js
|
|
408
|
+
* {
|
|
409
|
+
* identitySource: "method.request.header.AccessToken"
|
|
410
|
+
* }
|
|
411
|
+
* ```
|
|
412
|
+
*/
|
|
413
|
+
identitySource?: Input<string>;
|
|
414
|
+
/**
|
|
415
|
+
* [Transform](/docs/components#transform) how this component creates its underlying
|
|
416
|
+
* resources.
|
|
417
|
+
*/
|
|
418
|
+
transform?: {
|
|
419
|
+
/**
|
|
420
|
+
* Transform the API Gateway authorizer resource.
|
|
421
|
+
*/
|
|
422
|
+
authorizer?: Transform<apigateway.AuthorizerArgs>;
|
|
423
|
+
};
|
|
424
|
+
}
|
|
425
|
+
export interface ApiGatewayV1UsagePlanArgs {
|
|
426
|
+
/**
|
|
427
|
+
* Configure rate limits to protect your API from being overwhelmed by too many
|
|
428
|
+
* requests at once.
|
|
429
|
+
*
|
|
430
|
+
* @example
|
|
431
|
+
* ```js
|
|
432
|
+
* {
|
|
433
|
+
* throttle: {
|
|
434
|
+
* rate: 100,
|
|
435
|
+
* burst: 200
|
|
436
|
+
* }
|
|
437
|
+
* }
|
|
438
|
+
* ```
|
|
439
|
+
*/
|
|
440
|
+
throttle?: Input<{
|
|
441
|
+
/**
|
|
442
|
+
* The maximum number of requests permitted in a short-term spike beyond the
|
|
443
|
+
* rate limit.
|
|
444
|
+
*/
|
|
445
|
+
burst?: Input<number>;
|
|
446
|
+
/**
|
|
447
|
+
* The steady-state maximum number of requests allowed per second.
|
|
448
|
+
*/
|
|
449
|
+
rate?: Input<number>;
|
|
450
|
+
}>;
|
|
451
|
+
/**
|
|
452
|
+
* Configure a cap on the total number of requests allowed within a specified time
|
|
453
|
+
* period.
|
|
454
|
+
* @example
|
|
455
|
+
* ```js
|
|
456
|
+
* {
|
|
457
|
+
* quota: {
|
|
458
|
+
* limit: 1000,
|
|
459
|
+
* period: "month",
|
|
460
|
+
* offset: 0
|
|
461
|
+
* }
|
|
462
|
+
* }
|
|
463
|
+
* ```
|
|
464
|
+
*/
|
|
465
|
+
quota?: Input<{
|
|
466
|
+
/**
|
|
467
|
+
* The maximum number of requests that can be made in the specified period of
|
|
468
|
+
* time.
|
|
469
|
+
*/
|
|
470
|
+
limit: Input<number>;
|
|
471
|
+
/**
|
|
472
|
+
* The time period for which the quota applies.
|
|
473
|
+
*/
|
|
474
|
+
period: Input<"day" | "week" | "month">;
|
|
475
|
+
/**
|
|
476
|
+
* The number of days into the period when the quota counter is reset.
|
|
477
|
+
*
|
|
478
|
+
* For example, this resets the quota at the beginning of each month.
|
|
479
|
+
*
|
|
480
|
+
* ```js
|
|
481
|
+
* {
|
|
482
|
+
* period: "month",
|
|
483
|
+
* offset: 0
|
|
484
|
+
* }
|
|
485
|
+
* ```
|
|
486
|
+
*/
|
|
487
|
+
offset?: Input<number>;
|
|
488
|
+
}>;
|
|
489
|
+
}
|
|
490
|
+
export interface ApiGatewayV1ApiKeyArgs {
|
|
491
|
+
/**
|
|
492
|
+
* The value of the API key. If not provided, it will be generated automatically.
|
|
493
|
+
* @example
|
|
494
|
+
* ```js
|
|
495
|
+
* {
|
|
496
|
+
* value: "d41d8cd98f00b204e9800998ecf8427e"
|
|
497
|
+
* }
|
|
498
|
+
* ```
|
|
499
|
+
*/
|
|
500
|
+
value?: Input<string>;
|
|
501
|
+
}
|
|
502
|
+
export interface ApiGatewayV1RouteArgs {
|
|
503
|
+
/**
|
|
504
|
+
* Enable auth for your REST API. By default, auth is disabled.
|
|
505
|
+
* @default `false`
|
|
506
|
+
* @example
|
|
507
|
+
* ```js
|
|
508
|
+
* {
|
|
509
|
+
* auth: {
|
|
510
|
+
* iam: true
|
|
511
|
+
* }
|
|
512
|
+
* }
|
|
513
|
+
* ```
|
|
514
|
+
*/
|
|
515
|
+
auth?: Input<false | {
|
|
516
|
+
/**
|
|
517
|
+
* Enable IAM authorization for a given API route.
|
|
518
|
+
*
|
|
519
|
+
* When IAM auth is enabled, clients need to use Signature Version 4 to sign their requests with their AWS credentials.
|
|
520
|
+
*/
|
|
521
|
+
iam?: Input<boolean>;
|
|
522
|
+
/**
|
|
523
|
+
* Enable custom Lambda authorization for a given API route. Pass in the authorizer ID.
|
|
524
|
+
* @example
|
|
525
|
+
* ```js
|
|
526
|
+
* {
|
|
527
|
+
* auth: {
|
|
528
|
+
* custom: myAuthorizer.id
|
|
529
|
+
* }
|
|
530
|
+
* }
|
|
531
|
+
* ```
|
|
532
|
+
*
|
|
533
|
+
* Where `myAuthorizer` is:
|
|
534
|
+
*
|
|
535
|
+
* ```js
|
|
536
|
+
* const userPool = new aws.cognito.UserPool();
|
|
537
|
+
* const myAuthorizer = api.addAuthorizer({
|
|
538
|
+
* name: "MyAuthorizer",
|
|
539
|
+
* userPools: [userPool.arn]
|
|
540
|
+
* });
|
|
541
|
+
* ```
|
|
542
|
+
*/
|
|
543
|
+
custom?: Input<string>;
|
|
544
|
+
/**
|
|
545
|
+
* Enable Cognito User Pool authorization for a given API route.
|
|
546
|
+
*
|
|
547
|
+
* @example
|
|
548
|
+
* You can configure JWT auth.
|
|
549
|
+
*
|
|
550
|
+
* ```js
|
|
551
|
+
* {
|
|
552
|
+
* auth: {
|
|
553
|
+
* cognito: {
|
|
554
|
+
* authorizer: myAuthorizer.id,
|
|
555
|
+
* scopes: ["read:profile", "write:profile"]
|
|
556
|
+
* }
|
|
557
|
+
* }
|
|
558
|
+
* }
|
|
559
|
+
* ```
|
|
560
|
+
*
|
|
561
|
+
* Where `myAuthorizer` is:
|
|
562
|
+
*
|
|
563
|
+
* ```js
|
|
564
|
+
* const userPool = new aws.cognito.UserPool();
|
|
565
|
+
*
|
|
566
|
+
* const myAuthorizer = api.addAuthorizer({
|
|
567
|
+
* name: "MyAuthorizer",
|
|
568
|
+
* userPools: [userPool.arn]
|
|
569
|
+
* });
|
|
570
|
+
* ```
|
|
571
|
+
*/
|
|
572
|
+
cognito?: Input<{
|
|
573
|
+
/**
|
|
574
|
+
* Authorizer ID of the Cognito User Pool authorizer.
|
|
575
|
+
*/
|
|
576
|
+
authorizer: Input<string>;
|
|
577
|
+
/**
|
|
578
|
+
* Defines the permissions or access levels that the authorization token grants.
|
|
579
|
+
*/
|
|
580
|
+
scopes?: Input<Input<string>[]>;
|
|
581
|
+
}>;
|
|
582
|
+
}>;
|
|
583
|
+
/**
|
|
584
|
+
* Specify if an API key is required for the route. By default, an API key is not
|
|
585
|
+
* required.
|
|
586
|
+
* @default `false`
|
|
587
|
+
* @example
|
|
588
|
+
* ```js
|
|
589
|
+
* {
|
|
590
|
+
* apiKey: true
|
|
591
|
+
* }
|
|
592
|
+
* ```
|
|
593
|
+
*/
|
|
594
|
+
apiKey?: Input<boolean>;
|
|
595
|
+
/**
|
|
596
|
+
* @deprecated Set `streaming: true` on the function definition passed to `api.route()` instead.
|
|
597
|
+
*/
|
|
598
|
+
streaming?: Input<boolean>;
|
|
599
|
+
/**
|
|
600
|
+
* The name of the route.
|
|
601
|
+
*
|
|
602
|
+
* By default, SST generates a unique suffix from the route path. Setting `name` gives
|
|
603
|
+
* you a stable, human-readable name like `MyApiRouteGetUserHandler`.
|
|
604
|
+
*
|
|
605
|
+
* Must be unique across all routes.
|
|
606
|
+
*
|
|
607
|
+
* @example
|
|
608
|
+
* ```js
|
|
609
|
+
* {
|
|
610
|
+
* name: "GetUser"
|
|
611
|
+
* }
|
|
612
|
+
* ```
|
|
613
|
+
*/
|
|
614
|
+
name?: string;
|
|
615
|
+
/**
|
|
616
|
+
* [Transform](/docs/components#transform) how this component creates its underlying
|
|
617
|
+
* resources.
|
|
618
|
+
*/
|
|
619
|
+
transform?: {
|
|
620
|
+
/**
|
|
621
|
+
* Transform the API Gateway REST API method resource.
|
|
622
|
+
*/
|
|
623
|
+
method?: Transform<apigateway.MethodArgs>;
|
|
624
|
+
/**
|
|
625
|
+
* Transform the API Gateway REST API integration resource.
|
|
626
|
+
*/
|
|
627
|
+
integration?: Transform<apigateway.IntegrationArgs>;
|
|
628
|
+
};
|
|
629
|
+
}
|
|
630
|
+
export interface ApiGatewayV1IntegrationArgs {
|
|
631
|
+
/**
|
|
632
|
+
* The type of the API Gateway REST API integration.
|
|
633
|
+
*/
|
|
634
|
+
type: Input<"aws" | "aws-proxy" | "mock" | "http" | "http-proxy">;
|
|
635
|
+
/**
|
|
636
|
+
* The URI of the API Gateway REST API integration.
|
|
637
|
+
*/
|
|
638
|
+
uri?: Input<string>;
|
|
639
|
+
/**
|
|
640
|
+
* The credentials to use to call the AWS service.
|
|
641
|
+
*/
|
|
642
|
+
credentials?: Input<string>;
|
|
643
|
+
/**
|
|
644
|
+
* The HTTP method to use to call the integration.
|
|
645
|
+
*/
|
|
646
|
+
integrationHttpMethod?: Input<"GET" | "POST" | "PUT" | "DELETE" | "HEAD" | "OPTIONS" | "ANY" | "PATCH">;
|
|
647
|
+
/**
|
|
648
|
+
* Map of request query string parameters and headers that should be passed to the backend responder.
|
|
649
|
+
*/
|
|
650
|
+
requestParameters?: Input<Record<string, Input<string>>>;
|
|
651
|
+
/**
|
|
652
|
+
* Map of the integration's request templates.
|
|
653
|
+
*/
|
|
654
|
+
requestTemplates?: Input<Record<string, Input<string>>>;
|
|
655
|
+
/**
|
|
656
|
+
* The passthrough behavior to use to call the integration.
|
|
657
|
+
*
|
|
658
|
+
* Required if `requestTemplates` is set.
|
|
659
|
+
*/
|
|
660
|
+
passthroughBehavior?: Input<"when-no-match" | "never" | "when-no-templates">;
|
|
661
|
+
}
|
|
662
|
+
/**
|
|
663
|
+
* The `ApiGatewayV1` component lets you add an [Amazon API Gateway REST API](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-rest-api.html) to your app.
|
|
664
|
+
*
|
|
665
|
+
* @example
|
|
666
|
+
*
|
|
667
|
+
* #### Create the API
|
|
668
|
+
*
|
|
669
|
+
* ```ts title="sst.config.ts"
|
|
670
|
+
* const api = new sst.aws.ApiGatewayV1("MyApi");
|
|
671
|
+
* ```
|
|
672
|
+
*
|
|
673
|
+
* #### Add routes
|
|
674
|
+
*
|
|
675
|
+
* ```ts title="sst.config.ts"
|
|
676
|
+
* api.route("GET /", "src/get.handler");
|
|
677
|
+
* api.route("POST /", "src/post.handler");
|
|
678
|
+
*
|
|
679
|
+
* api.deploy();
|
|
680
|
+
* ```
|
|
681
|
+
*
|
|
682
|
+
* :::note
|
|
683
|
+
* You need to call `deploy` after you've added all your routes.
|
|
684
|
+
* :::
|
|
685
|
+
*
|
|
686
|
+
* #### Configure the routes
|
|
687
|
+
*
|
|
688
|
+
* ```ts title="sst.config.ts"
|
|
689
|
+
* api.route("GET /", "src/get.handler", {
|
|
690
|
+
* auth: { iam: true }
|
|
691
|
+
* });
|
|
692
|
+
* ```
|
|
693
|
+
*
|
|
694
|
+
* #### Configure the route handler
|
|
695
|
+
*
|
|
696
|
+
* You can configure the Lambda function that'll handle the route.
|
|
697
|
+
*
|
|
698
|
+
* ```ts title="sst.config.ts"
|
|
699
|
+
* api.route("POST /", {
|
|
700
|
+
* handler: "src/post.handler",
|
|
701
|
+
* memory: "2048 MB"
|
|
702
|
+
* });
|
|
703
|
+
* ```
|
|
704
|
+
*
|
|
705
|
+
* #### Default props for all routes
|
|
706
|
+
*
|
|
707
|
+
* You can use a `transform` to set some default props for all your routes. For
|
|
708
|
+
* example, instead of setting the `memory` for each route.
|
|
709
|
+
*
|
|
710
|
+
* ```ts title="sst.config.ts"
|
|
711
|
+
* api.route("GET /", { handler: "src/get.handler", memory: "2048 MB" });
|
|
712
|
+
* api.route("POST /", { handler: "src/post.handler", memory: "2048 MB" });
|
|
713
|
+
* ```
|
|
714
|
+
*
|
|
715
|
+
* You can set it through the `transform`.
|
|
716
|
+
*
|
|
717
|
+
* ```ts title="sst.config.ts" {6}
|
|
718
|
+
* const api = new sst.aws.ApiGatewayV1("MyApi", {
|
|
719
|
+
* transform: {
|
|
720
|
+
* route: {
|
|
721
|
+
* handler: (args, opts) => {
|
|
722
|
+
* // Set the default if it's not set by the route
|
|
723
|
+
* args.memory ??= "2048 MB";
|
|
724
|
+
* }
|
|
725
|
+
* }
|
|
726
|
+
* }
|
|
727
|
+
* });
|
|
728
|
+
*
|
|
729
|
+
* api.route("GET /", "src/get.handler");
|
|
730
|
+
* api.route("POST /", "src/post.handler");
|
|
731
|
+
* ```
|
|
732
|
+
*
|
|
733
|
+
* With this we set the `memory` if it's not overridden by the route.
|
|
734
|
+
*/
|
|
735
|
+
export declare class ApiGatewayV1 extends Component implements Link.Linkable {
|
|
736
|
+
private constructorName;
|
|
737
|
+
private constructorArgs;
|
|
738
|
+
private constructorOpts;
|
|
739
|
+
private api;
|
|
740
|
+
private apigDomain?;
|
|
741
|
+
private apiMapping?;
|
|
742
|
+
private region;
|
|
743
|
+
private resources;
|
|
744
|
+
private routes;
|
|
745
|
+
private stage?;
|
|
746
|
+
private logGroup?;
|
|
747
|
+
private endpointType;
|
|
748
|
+
private deployed;
|
|
749
|
+
constructor(name: string, args?: ApiGatewayV1Args, opts?: ComponentResourceOptions);
|
|
750
|
+
/**
|
|
751
|
+
* The URL of the API.
|
|
752
|
+
*/
|
|
753
|
+
get url(): Output<string>;
|
|
754
|
+
/**
|
|
755
|
+
* The underlying [resources](/docs/components/#nodes) this component creates.
|
|
756
|
+
*/
|
|
757
|
+
get nodes(): {
|
|
758
|
+
/**
|
|
759
|
+
* The Amazon API Gateway REST API
|
|
760
|
+
*/
|
|
761
|
+
api: import("@pulumi/aws/apigateway/restApi").RestApi;
|
|
762
|
+
/**
|
|
763
|
+
* The Amazon API Gateway REST API stage
|
|
764
|
+
*/
|
|
765
|
+
stage: import("@pulumi/aws/apigateway/stage").Stage | undefined;
|
|
766
|
+
/**
|
|
767
|
+
* The CloudWatch LogGroup for the access logs.
|
|
768
|
+
*/
|
|
769
|
+
logGroup: import("@pulumi/aws/cloudwatch/logGroup").LogGroup | undefined;
|
|
770
|
+
/**
|
|
771
|
+
* The API Gateway REST API domain name.
|
|
772
|
+
*/
|
|
773
|
+
readonly domainName: Output<import("@pulumi/aws/apigateway/domainName").DomainName>;
|
|
774
|
+
};
|
|
775
|
+
/**
|
|
776
|
+
* Add a route to the API Gateway REST API. The route is a combination of an HTTP method and a path, `{METHOD} /{path}`.
|
|
777
|
+
*
|
|
778
|
+
* :::caution
|
|
779
|
+
* [API Gateway has strict rate limits](https://docs.aws.amazon.com/apigateway/latest/developerguide/limits.html) for creating and updating resources. Creating one Lambda function for every endpoint can significantly slow down your deployments.
|
|
780
|
+
*
|
|
781
|
+
* Use a single Lambda and handle routing in code if you don't need specific API Gateway features.
|
|
782
|
+
* :::
|
|
783
|
+
*
|
|
784
|
+
* A method could be one of `GET`, `POST`, `PUT`, `DELETE`, `PATCH`, `HEAD`, `OPTIONS`, or `ANY`. Here `ANY` matches any HTTP method.
|
|
785
|
+
*
|
|
786
|
+
* The path can be a combination of
|
|
787
|
+
* - Literal segments, `/notes`, `/notes/new`, etc.
|
|
788
|
+
* - Parameter segments, `/notes/{noteId}`, `/notes/{noteId}/attachments/{attachmentId}`, etc.
|
|
789
|
+
* - Greedy segments, `/{proxy+}`, `/notes/{proxy+}`, etc. The `{proxy+}` segment is a greedy segment that matches all child paths. It needs to be at the end of the path.
|
|
790
|
+
*
|
|
791
|
+
* :::tip
|
|
792
|
+
* The `{proxy+}` is a greedy segment, it matches all its child paths.
|
|
793
|
+
* :::
|
|
794
|
+
*
|
|
795
|
+
* When a request comes in, the API Gateway will look for the most specific match.
|
|
796
|
+
*
|
|
797
|
+
* :::note
|
|
798
|
+
* You cannot have duplicate routes.
|
|
799
|
+
* :::
|
|
800
|
+
*
|
|
801
|
+
* @param route The path for the route.
|
|
802
|
+
* @param handler The function that'll be invoked.
|
|
803
|
+
* @param args Configure the route.
|
|
804
|
+
*
|
|
805
|
+
* @example
|
|
806
|
+
* Add a simple route.
|
|
807
|
+
*
|
|
808
|
+
* ```js title="sst.config.ts"
|
|
809
|
+
* api.route("GET /", "src/get.handler");
|
|
810
|
+
* ```
|
|
811
|
+
*
|
|
812
|
+
* Match any HTTP method.
|
|
813
|
+
*
|
|
814
|
+
* ```js title="sst.config.ts"
|
|
815
|
+
* api.route("ANY /", "src/route.handler");
|
|
816
|
+
* ```
|
|
817
|
+
*
|
|
818
|
+
* Add a default or fallback route. Here for every request other than `GET /hi`,
|
|
819
|
+
* the `default.handler` function will be invoked.
|
|
820
|
+
*
|
|
821
|
+
* ```js title="sst.config.ts"
|
|
822
|
+
* api.route("GET /hi", "src/get.handler");
|
|
823
|
+
*
|
|
824
|
+
* api.route("ANY /", "src/default.handler");
|
|
825
|
+
* api.route("ANY /{proxy+}", "src/default.handler");
|
|
826
|
+
* ```
|
|
827
|
+
*
|
|
828
|
+
* The `/{proxy+}` matches any path that starts with `/`, so if you want a
|
|
829
|
+
* fallback route for the root `/` path, you need to add a `ANY /` route as well.
|
|
830
|
+
*
|
|
831
|
+
* Add a parameterized route.
|
|
832
|
+
*
|
|
833
|
+
* ```js title="sst.config.ts"
|
|
834
|
+
* api.route("GET /notes/{id}", "src/get.handler");
|
|
835
|
+
* ```
|
|
836
|
+
*
|
|
837
|
+
* Add a greedy route.
|
|
838
|
+
*
|
|
839
|
+
* ```js title="sst.config.ts"
|
|
840
|
+
* api.route("GET /notes/{proxy+}", "src/greedy.handler");
|
|
841
|
+
* ```
|
|
842
|
+
*
|
|
843
|
+
* Enable auth for a route.
|
|
844
|
+
*
|
|
845
|
+
* ```js title="sst.config.ts"
|
|
846
|
+
* api.route("GET /", "src/get.handler")
|
|
847
|
+
* api.route("POST /", "src/post.handler", {
|
|
848
|
+
* auth: {
|
|
849
|
+
* iam: true
|
|
850
|
+
* }
|
|
851
|
+
* });
|
|
852
|
+
* ```
|
|
853
|
+
*
|
|
854
|
+
* Customize the route handler.
|
|
855
|
+
*
|
|
856
|
+
* ```js title="sst.config.ts"
|
|
857
|
+
* api.route("GET /", {
|
|
858
|
+
* handler: "src/get.handler",
|
|
859
|
+
* memory: "2048 MB"
|
|
860
|
+
* });
|
|
861
|
+
* ```
|
|
862
|
+
*
|
|
863
|
+
* Or pass in the ARN of an existing Lambda function.
|
|
864
|
+
*
|
|
865
|
+
* ```js title="sst.config.ts"
|
|
866
|
+
* api.route("GET /", "arn:aws:lambda:us-east-1:123456789012:function:my-function");
|
|
867
|
+
* ```
|
|
868
|
+
*/
|
|
869
|
+
route(route: string, handler: Input<string | FunctionArgs | FunctionArn>, args?: ApiGatewayV1RouteArgs): ApiGatewayV1LambdaRoute;
|
|
870
|
+
/**
|
|
871
|
+
* Add a custom integration to the API Gateway REST API. [Learn more about
|
|
872
|
+
* integrations](https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-integration-settings.html).
|
|
873
|
+
*
|
|
874
|
+
* @param route The path for the route.
|
|
875
|
+
* @param integration The integration configuration.
|
|
876
|
+
* @param args Configure the route.
|
|
877
|
+
*
|
|
878
|
+
* @example
|
|
879
|
+
* Add a route to trigger a Step Function state machine execution.
|
|
880
|
+
*
|
|
881
|
+
* ```js title="sst.config.ts"
|
|
882
|
+
* api.routeIntegration("POST /run-my-state-machine", {
|
|
883
|
+
* type: "aws",
|
|
884
|
+
* uri: "arn:aws:apigateway:us-east-1:states:startExecution",
|
|
885
|
+
* credentials: "arn:aws:iam::123456789012:role/apigateway-execution-role",
|
|
886
|
+
* integrationHttpMethod: "POST",
|
|
887
|
+
* requestTemplates: {
|
|
888
|
+
* "application/json": JSON.stringify({
|
|
889
|
+
* input: "$input.json('$')",
|
|
890
|
+
* stateMachineArn: "arn:aws:states:us-east-1:123456789012:stateMachine:MyStateMachine"
|
|
891
|
+
* })
|
|
892
|
+
* },
|
|
893
|
+
* passthroughBehavior: "when-no-match"
|
|
894
|
+
* });
|
|
895
|
+
* ```
|
|
896
|
+
*/
|
|
897
|
+
routeIntegration(route: string, integration: ApiGatewayV1IntegrationArgs, args?: ApiGatewayV1RouteArgs): ApiGatewayV1IntegrationRoute;
|
|
898
|
+
private parseRoute;
|
|
899
|
+
private buildRouteId;
|
|
900
|
+
private createResource;
|
|
901
|
+
/**
|
|
902
|
+
* Add an authorizer to the API Gateway REST API.
|
|
903
|
+
*
|
|
904
|
+
* @param args Configure the authorizer.
|
|
905
|
+
* @example
|
|
906
|
+
* For example, add a Lambda token authorizer.
|
|
907
|
+
*
|
|
908
|
+
* ```js title="sst.config.ts"
|
|
909
|
+
* api.addAuthorizer({
|
|
910
|
+
* name: "myAuthorizer",
|
|
911
|
+
* tokenFunction: "src/authorizer.index"
|
|
912
|
+
* });
|
|
913
|
+
* ```
|
|
914
|
+
*
|
|
915
|
+
* Add a Lambda REQUEST authorizer.
|
|
916
|
+
*
|
|
917
|
+
* ```js title="sst.config.ts"
|
|
918
|
+
* api.addAuthorizer({
|
|
919
|
+
* name: "myAuthorizer",
|
|
920
|
+
* requestFunction: "src/authorizer.index"
|
|
921
|
+
* });
|
|
922
|
+
* ```
|
|
923
|
+
*
|
|
924
|
+
* Add a Cognito User Pool authorizer.
|
|
925
|
+
*
|
|
926
|
+
* ```js title="sst.config.ts"
|
|
927
|
+
* const userPool = new aws.cognito.UserPool();
|
|
928
|
+
*
|
|
929
|
+
* api.addAuthorizer({
|
|
930
|
+
* name: "myAuthorizer",
|
|
931
|
+
* userPools: [userPool.arn]
|
|
932
|
+
* });
|
|
933
|
+
* ```
|
|
934
|
+
*
|
|
935
|
+
* You can also customize the authorizer.
|
|
936
|
+
*
|
|
937
|
+
* ```js title="sst.config.ts"
|
|
938
|
+
* api.addAuthorizer({
|
|
939
|
+
* name: "myAuthorizer",
|
|
940
|
+
* tokenFunction: "src/authorizer.index",
|
|
941
|
+
* ttl: 30
|
|
942
|
+
* });
|
|
943
|
+
* ```
|
|
944
|
+
*/
|
|
945
|
+
addAuthorizer(args: ApiGatewayV1AuthorizerArgs): ApiGatewayV1Authorizer;
|
|
946
|
+
/**
|
|
947
|
+
* Add a usage plan to the API Gateway REST API.
|
|
948
|
+
*
|
|
949
|
+
* @param name The name of the usage plan.
|
|
950
|
+
* @param args Configure the usage plan.
|
|
951
|
+
* @example
|
|
952
|
+
*
|
|
953
|
+
* To add a usage plan to an API, you need to enable the API key for a route, and
|
|
954
|
+
* then deploy the API.
|
|
955
|
+
*
|
|
956
|
+
* ```ts title="sst.config.ts" {4}
|
|
957
|
+
* const api = new sst.aws.ApiGatewayV1("MyApi");
|
|
958
|
+
*
|
|
959
|
+
* api.route("GET /", "src/get.handler", {
|
|
960
|
+
* apiKey: true
|
|
961
|
+
* });
|
|
962
|
+
*
|
|
963
|
+
* api.deploy();
|
|
964
|
+
* ```
|
|
965
|
+
*
|
|
966
|
+
* Then define your usage plan.
|
|
967
|
+
*
|
|
968
|
+
* ```js title="sst.config.ts"
|
|
969
|
+
* const plan = api.addUsagePlan("MyPlan", {
|
|
970
|
+
* throttle: {
|
|
971
|
+
* rate: 100,
|
|
972
|
+
* burst: 200
|
|
973
|
+
* },
|
|
974
|
+
* quota: {
|
|
975
|
+
* limit: 1000,
|
|
976
|
+
* period: "month",
|
|
977
|
+
* offset: 0
|
|
978
|
+
* }
|
|
979
|
+
* });
|
|
980
|
+
* ```
|
|
981
|
+
*
|
|
982
|
+
* And create the API key for the plan.
|
|
983
|
+
*
|
|
984
|
+
* ```js title="sst.config.ts"
|
|
985
|
+
* const key = plan.addApiKey("MyKey");
|
|
986
|
+
* ```
|
|
987
|
+
*
|
|
988
|
+
* You can now link the API and API key to other resources, like a function.
|
|
989
|
+
*
|
|
990
|
+
* ```ts title="sst.config.ts"
|
|
991
|
+
* new sst.aws.Function("MyFunction", {
|
|
992
|
+
* handler: "src/lambda.handler",
|
|
993
|
+
* link: [api, key]
|
|
994
|
+
* });
|
|
995
|
+
* ```
|
|
996
|
+
*
|
|
997
|
+
* Once linked, include the key in the `x-api-key` header with your requests.
|
|
998
|
+
*
|
|
999
|
+
* ```ts title="src/lambda.ts"
|
|
1000
|
+
* import { Resource } from "sst";
|
|
1001
|
+
*
|
|
1002
|
+
* await fetch(Resource.MyApi.url, {
|
|
1003
|
+
* headers: {
|
|
1004
|
+
* "x-api-key": Resource.MyKey.value
|
|
1005
|
+
* }
|
|
1006
|
+
* });
|
|
1007
|
+
* ```
|
|
1008
|
+
*/
|
|
1009
|
+
addUsagePlan(name: string, args: ApiGatewayV1UsagePlanArgs): ApiGatewayV1UsagePlan;
|
|
1010
|
+
/**
|
|
1011
|
+
* Creates a deployment for the API Gateway REST API.
|
|
1012
|
+
*
|
|
1013
|
+
* :::caution
|
|
1014
|
+
* Your routes won't be added if `deploy` isn't called.
|
|
1015
|
+
* :::
|
|
1016
|
+
*
|
|
1017
|
+
* Your routes won't be added if this isn't called after you've added them. This
|
|
1018
|
+
* is due to a quirk in the way API Gateway V1 is created internally.
|
|
1019
|
+
*/
|
|
1020
|
+
deploy(): void;
|
|
1021
|
+
/** @internal */
|
|
1022
|
+
getSSTLink(): {
|
|
1023
|
+
properties: {
|
|
1024
|
+
url: Output<string>;
|
|
1025
|
+
};
|
|
1026
|
+
};
|
|
1027
|
+
}
|
|
1028
|
+
//# sourceMappingURL=apigatewayv1.d.ts.map
|