import * as core from "@terrascript/core"; export interface RestApiPolicyArgs extends core.ResourceArgs { /** * (Required) JSON formatted policy document that controls access to the API Gateway. For more informat * ion about building AWS IAM policy documents with Terraform, see the [AWS IAM Policy Document Guide]( * https://learn.hashicorp.com/terraform/aws/iam-policy) */ policy: string | core.StringOut; /** * (Required) The ID of the REST API. */ restApiId: string | core.StringOut; } export class RestApiPolicy extends core.Resource { /** * The ID of the REST API */ @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * (Required) JSON formatted policy document that controls access to the API Gateway. For more informat * ion about building AWS IAM policy documents with Terraform, see the [AWS IAM Policy Document Guide]( * https://learn.hashicorp.com/terraform/aws/iam-policy) */ @core.attr(String) public policy!: string | core.StringOut; /** * (Required) The ID of the REST API. */ @core.attr(String) public restApiId!: string | core.StringOut; constructor(name: string, args?: RestApiPolicyArgs) { super(name, "aws_api_gateway_rest_api_policy", args); } public override getNamespace(): string { return "aws_api_gateway"; } }