import * as core from "@terrascript/core"; export interface FilterArgs extends core.SchemaArgs { name: string | core.StringOut; values: core.Array | core.ArrayOut; } export class Filter extends core.Schema { @core.attr(String) public name!: string | core.StringOut; @core.attr(String, { kind: "array" }) public values!: core.Array | core.ArrayOut; } export interface DsInstancesArgs { /** * (Optional) One or more name/value pairs to use as filters. There are */ filter?: core.Array | core.ArrayOut; /** * (Optional) A list of instance states that should be applicable to the desired instances. The permitt * ed values are: `pending, running, shutting-down, stopped, stopping, terminated`. The default value i * s `running`. */ instanceStateNames?: core.Array | core.ArrayOut; /** * (Optional) A map of tags, each pair of which must */ instanceTags?: core.Map | core.MapOut; } export class DsInstances extends core.Data { /** * (Optional) One or more name/value pairs to use as filters. There are */ @core.attr(Filter, { kind: "array" }) public filter?: core.Array | core.ArrayOut; /** * AWS Region. */ @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * IDs of instances found through the filter */ @core.attr(String, { computed: true, kind: "array" }) public ids!: core.Array | core.ArrayOut; /** * (Optional) A list of instance states that should be applicable to the desired instances. The permitt * ed values are: `pending, running, shutting-down, stopped, stopping, terminated`. The default value i * s `running`. */ @core.attr(String, { kind: "array" }) public instanceStateNames?: | core.Array | core.ArrayOut; /** * (Optional) A map of tags, each pair of which must */ @core.attr(String, { computed: true, kind: "map" }) public instanceTags?: core.Map | core.MapOut; /** * Private IP addresses of instances found through the filter */ @core.attr(String, { computed: true, kind: "array" }) public privateIps!: core.Array | core.ArrayOut; /** * Public IP addresses of instances found through the filter */ @core.attr(String, { computed: true, kind: "array" }) public publicIps!: core.Array | core.ArrayOut; constructor(name: string, args?: DsInstancesArgs) { super(name, "aws_instances", args); } public override getNamespace(): string { return "aws_ec2"; } }