import * as core from "@terrascript/core"; export interface TargetsArgs extends core.SchemaArgs { key: string | core.StringOut; values: core.Array | core.ArrayOut; } export class Targets extends core.Schema { @core.attr(String) public key!: string | core.StringOut; @core.attr(String, { kind: "array" }) public values!: core.Array | core.ArrayOut; } export interface MaintenanceWindowTargetArgs extends core.ResourceArgs { /** * (Optional) The description of the maintenance window target. */ description?: string | core.StringOut; /** * (Optional) The name of the maintenance window target. */ name?: string | core.StringOut; /** * (Optional) User-provided value that will be included in any CloudWatch events raised while running t * asks for these targets in this Maintenance Window. */ ownerInformation?: string | core.StringOut; /** * (Required) The type of target being registered with the Maintenance Window. Possible values are `INS * TANCE` and `RESOURCE_GROUP`. */ resourceType: string | core.StringOut; /** * (Required) The targets to register with the maintenance window. In other words, the instances to run * commands on when the maintenance window runs. You can specify targets using instance IDs, resource * group names, or tags that have been applied to instances. For more information about these examples * formats see */ targets: core.Array | core.ArrayOut; /** * (Required) The Id of the maintenance window to register the target with. */ windowId: string | core.StringOut; } export class MaintenanceWindowTarget extends core.Resource { /** * (Optional) The description of the maintenance window target. */ @core.attr(String) public description?: string | core.StringOut; /** * The ID of the maintenance window target. */ @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * (Optional) The name of the maintenance window target. */ @core.attr(String) public name?: string | core.StringOut; /** * (Optional) User-provided value that will be included in any CloudWatch events raised while running t * asks for these targets in this Maintenance Window. */ @core.attr(String) public ownerInformation?: string | core.StringOut; /** * (Required) The type of target being registered with the Maintenance Window. Possible values are `INS * TANCE` and `RESOURCE_GROUP`. */ @core.attr(String) public resourceType!: string | core.StringOut; /** * (Required) The targets to register with the maintenance window. In other words, the instances to run * commands on when the maintenance window runs. You can specify targets using instance IDs, resource * group names, or tags that have been applied to instances. For more information about these examples * formats see */ @core.attr(Targets, { kind: "array" }) public targets!: core.Array | core.ArrayOut; /** * (Required) The Id of the maintenance window to register the target with. */ @core.attr(String) public windowId!: string | core.StringOut; constructor(name: string, args?: MaintenanceWindowTargetArgs) { super(name, "aws_ssm_maintenance_window_target", args); } public override getNamespace(): string { return "aws_ssm"; } }