import * as core from "@terrascript/core"; export interface MountTargetArgs extends core.ResourceArgs { /** * (Required) The ID of the file system for which the mount target is intended. */ fileSystemId: string | core.StringOut; /** * (Optional) The address (within the address range of the specified subnet) at */ ipAddress?: string | core.StringOut; /** * (Optional) A list of up to 5 VPC security group IDs (that must */ securityGroups?: core.Array | core.ArrayOut; /** * (Required) The ID of the subnet to add the mount target in. */ subnetId: string | core.StringOut; } export class MountTarget extends core.Resource { /** * The unique and consistent identifier of the Availability Zone (AZ) that the mount target resides in. */ @core.attr(String, { computed: true }) public availabilityZoneId!: string | core.StringOut; /** * The name of the Availability Zone (AZ) that the mount target resides in. */ @core.attr(String, { computed: true }) public availabilityZoneName!: string | core.StringOut; /** * The DNS name for the EFS file system. */ @core.attr(String, { computed: true }) public dnsName!: string | core.StringOut; /** * Amazon Resource Name of the file system. */ @core.attr(String, { computed: true }) public fileSystemArn!: string | core.StringOut; /** * (Required) The ID of the file system for which the mount target is intended. */ @core.attr(String) public fileSystemId!: string | core.StringOut; /** * The ID of the mount target. */ @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * (Optional) The address (within the address range of the specified subnet) at */ @core.attr(String, { computed: true }) public ipAddress?: string | core.StringOut; /** * The DNS name for the given subnet/AZ per [documented convention](http://docs.aws.amazon.com/efs/late * st/ug/mounting-fs-mount-cmd-dns-name.html). */ @core.attr(String, { computed: true }) public mountTargetDnsName!: string | core.StringOut; /** * The ID of the network interface that Amazon EFS created when it created the mount target. */ @core.attr(String, { computed: true }) public networkInterfaceId!: string | core.StringOut; /** * AWS account ID that owns the resource. */ @core.attr(String, { computed: true }) public ownerId!: string | core.StringOut; /** * (Optional) A list of up to 5 VPC security group IDs (that must */ @core.attr(String, { computed: true, kind: "array" }) public securityGroups?: core.Array | core.ArrayOut; /** * (Required) The ID of the subnet to add the mount target in. */ @core.attr(String) public subnetId!: string | core.StringOut; constructor(name: string, args?: MountTargetArgs) { super(name, "aws_efs_mount_target", args); } public override getNamespace(): string { return "aws_efs"; } }