import * as core from "@terrascript/core"; export interface TargetArgs extends core.SchemaArgs { address: string | core.StringOut; status: string | core.StringOut; type?: string | core.StringOut; } export class Target extends core.Schema { @core.attr(String) public address!: string | core.StringOut; @core.attr(String, { computed: true }) public status!: string | core.StringOut; @core.attr(String) public type?: string | core.StringOut; } export interface NotificationRuleArgs extends core.ResourceArgs { detailType: string | core.StringOut; eventTypeIds: core.Array | core.ArrayOut; name: string | core.StringOut; resource: string | core.StringOut; status?: string | core.StringOut; tags?: core.Map | core.MapOut; tagsAll?: core.Map | core.MapOut; target?: core.Array | core.ArrayOut; } export class NotificationRule extends core.Resource { @core.attr(String, { computed: true }) public arn!: string | core.StringOut; @core.attr(String) public detailType!: string | core.StringOut; @core.attr(String, { kind: "array" }) public eventTypeIds!: core.Array | core.ArrayOut; @core.attr(String, { computed: true }) public id!: string | core.StringOut; @core.attr(String) public name!: string | core.StringOut; @core.attr(String) public resource!: string | core.StringOut; @core.attr(String) public status?: string | core.StringOut; @core.attr(String, { kind: "map" }) public tags?: core.Map | core.MapOut; @core.attr(String, { computed: true, kind: "map" }) public tagsAll?: core.Map | core.MapOut; @core.attr(Target, { kind: "array" }) public target?: core.Array | core.ArrayOut; constructor(name: string, args?: NotificationRuleArgs) { super(name, "aws_codestarnotifications_notification_rule", args); } public override getNamespace(): string { return "aws_codestarnotifications"; } }