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 DsComponentsArgs { /** * (Optional) Configuration block(s) for filtering. Detailed below. */ filter?: core.Array | core.ArrayOut; /** * (Optional) The owner of the image recipes. Valid values are `Self`, `Shared` and `Amazon`. Defaults * to `Self`. */ owner?: string | core.StringOut; } export class DsComponents extends core.Data { /** * Set of ARNs of the matched Image Builder Components. */ @core.attr(String, { computed: true, kind: "array" }) public arns!: core.Array | core.ArrayOut; /** * (Optional) Configuration block(s) for filtering. Detailed below. */ @core.attr(Filter, { kind: "array" }) public filter?: core.Array | core.ArrayOut; @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * Set of names of the matched Image Builder Components. */ @core.attr(String, { computed: true, kind: "array" }) public names!: core.Array | core.ArrayOut; /** * (Optional) The owner of the image recipes. Valid values are `Self`, `Shared` and `Amazon`. Defaults * to `Self`. */ @core.attr(String) public owner?: string | core.StringOut; constructor(name: string, args?: DsComponentsArgs) { super(name, "aws_imagebuilder_components", args); } public override getNamespace(): string { return "aws_imagebuilder"; } }