import * as core from "@terrascript/core"; export interface RepositoryPolicyArgs extends core.ResourceArgs { /** * (Required) The policy document. This is a JSON formatted string. For more information about building * IAM policy documents with Terraform, see the [AWS IAM Policy Document Guide](https://learn.hashicor * p.com/terraform/aws/iam-policy) */ policy: string | core.StringOut; /** * (Required) Name of the repository to apply the policy. */ repository: string | core.StringOut; } export class RepositoryPolicy extends core.Resource { @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * (Required) The policy document. This is a JSON formatted string. For more information about building * IAM policy documents with Terraform, see the [AWS IAM Policy Document Guide](https://learn.hashicor * p.com/terraform/aws/iam-policy) */ @core.attr(String) public policy!: string | core.StringOut; /** * The registry ID where the repository was created. */ @core.attr(String, { computed: true }) public registryId!: string | core.StringOut; /** * (Required) Name of the repository to apply the policy. */ @core.attr(String) public repository!: string | core.StringOut; constructor(name: string, args?: RepositoryPolicyArgs) { super(name, "aws_ecr_repository_policy", args); } public override getNamespace(): string { return "aws_ecr"; } }