import * as core from "@terrascript/core"; export interface DeploymentArgs extends core.ResourceArgs { /** * (Optional) Description of the deployment */ description?: string | core.StringOut; /** * (Required) REST API identifier. */ restApiId: string | core.StringOut; /** * (Optional) Description to set on the stage managed by the `stage_name` argument. */ stageDescription?: string | core.StringOut; /** * (Optional) Name of the stage to create with this deployment. If the specified stage already exists, * it will be updated to point to the new deployment. We recommend using the [`aws_api_gateway_stage` r * esource](api_gateway_stage.html) instead to manage stages. */ stageName?: string | core.StringOut; /** * (Optional) Map of arbitrary keys and values that, when changed, will trigger a redeployment. To forc * e a redeployment without changing these keys/values, use the [`terraform taint` command](https://www * .terraform.io/docs/commands/taint.html). */ triggers?: core.Map | core.MapOut; /** * (Optional) Map to set on the stage managed by the `stage_name` argument. */ variables?: core.Map | core.MapOut; } export class Deployment extends core.Resource { /** * The creation date of the deployment */ @core.attr(String, { computed: true }) public createdDate!: string | core.StringOut; /** * (Optional) Description of the deployment */ @core.attr(String) public description?: string | core.StringOut; /** * The execution ARN to be used in [`lambda_permission`](/docs/providers/aws/r/lambda_permission.html)' * s `source_arn` */ @core.attr(String, { computed: true }) public executionArn!: string | core.StringOut; /** * The ID of the deployment */ @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * The URL to invoke the API pointing to the stage, */ @core.attr(String, { computed: true }) public invokeUrl!: string | core.StringOut; /** * (Required) REST API identifier. */ @core.attr(String) public restApiId!: string | core.StringOut; /** * (Optional) Description to set on the stage managed by the `stage_name` argument. */ @core.attr(String) public stageDescription?: string | core.StringOut; /** * (Optional) Name of the stage to create with this deployment. If the specified stage already exists, * it will be updated to point to the new deployment. We recommend using the [`aws_api_gateway_stage` r * esource](api_gateway_stage.html) instead to manage stages. */ @core.attr(String) public stageName?: string | core.StringOut; /** * (Optional) Map of arbitrary keys and values that, when changed, will trigger a redeployment. To forc * e a redeployment without changing these keys/values, use the [`terraform taint` command](https://www * .terraform.io/docs/commands/taint.html). */ @core.attr(String, { kind: "map" }) public triggers?: core.Map | core.MapOut; /** * (Optional) Map to set on the stage managed by the `stage_name` argument. */ @core.attr(String, { kind: "map" }) public variables?: core.Map | core.MapOut; constructor(name: string, args?: DeploymentArgs) { super(name, "aws_api_gateway_deployment", args); } public override getNamespace(): string { return "aws_api_gateway"; } }