import * as core from "@terrascript/core"; export interface EncryptionConfigurationArgs extends core.SchemaArgs { encryptionType: string | core.StringOut; kmsKey: string | core.StringOut; } export class EncryptionConfiguration extends core.Schema { @core.attr(String, { computed: true }) public encryptionType!: string | core.StringOut; @core.attr(String, { computed: true }) public kmsKey!: string | core.StringOut; } export interface ImageScanningConfigurationArgs extends core.SchemaArgs { scanOnPush: boolean | core.BooleanOut; } export class ImageScanningConfiguration extends core.Schema { @core.attr(Boolean, { computed: true }) public scanOnPush!: boolean | core.BooleanOut; } export interface DsRepositoryArgs { /** * (Required) The name of the ECR Repository. */ name: string | core.StringOut; /** * (Optional) The registry ID where the repository was created. */ registryId?: string | core.StringOut; /** * A map of tags assigned to the resource. */ tags?: core.Map | core.MapOut; } export class DsRepository extends core.Data { /** * Full ARN of the repository. */ @core.attr(String, { computed: true }) public arn!: string | core.StringOut; /** * Encryption configuration for the repository. See [Encryption Configuration](#encryption-configuratio * n) below. */ @core.attr(EncryptionConfiguration, { computed: true, kind: "array" }) public encryptionConfiguration!: | core.Array | core.ArrayOut; @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * Configuration block that defines image scanning configuration for the repository. See [Image Scannin * g Configuration](#image-scanning-configuration) below. */ @core.attr(ImageScanningConfiguration, { computed: true, kind: "array" }) public imageScanningConfiguration!: | core.Array | core.ArrayOut; /** * The tag mutability setting for the repository. */ @core.attr(String, { computed: true }) public imageTagMutability!: string | core.StringOut; /** * (Required) The name of the ECR Repository. */ @core.attr(String) public name!: string | core.StringOut; /** * (Optional) The registry ID where the repository was created. */ @core.attr(String, { computed: true }) public registryId?: string | core.StringOut; /** * The URL of the repository (in the form `aws_account_id.dkr.ecr.region.amazonaws.com/repositoryName`) * . */ @core.attr(String, { computed: true }) public repositoryUrl!: string | core.StringOut; /** * A map of tags assigned to the resource. */ @core.attr(String, { computed: true, kind: "map" }) public tags?: core.Map | core.MapOut; constructor(name: string, args?: DsRepositoryArgs) { super(name, "aws_ecr_repository", args); } public override getNamespace(): string { return "aws_ecr"; } }