import * as core from "@terrascript/core"; export interface S3DestinationArgs extends core.SchemaArgs { bucket: string | core.StringOut; encryptionDisabled?: boolean | core.BooleanOut; encryptionKey: string | core.StringOut; packaging?: string | core.StringOut; path?: string | core.StringOut; } export class S3Destination extends core.Schema { @core.attr(String) public bucket!: string | core.StringOut; @core.attr(Boolean) public encryptionDisabled?: boolean | core.BooleanOut; @core.attr(String) public encryptionKey!: string | core.StringOut; @core.attr(String) public packaging?: string | core.StringOut; @core.attr(String) public path?: string | core.StringOut; } export interface ExportConfigArgs extends core.SchemaArgs { s3Destination?: S3Destination; type: string | core.StringOut; } export class ExportConfig extends core.Schema { @core.attr(S3Destination) public s3Destination?: S3Destination; @core.attr(String) public type!: string | core.StringOut; } export interface ReportGroupArgs extends core.ResourceArgs { /** * (Optional) If `true`, deletes any reports that belong to a report group before deleting the report g * roup. If `false`, you must delete any reports in the report group before deleting it. Default value * is `false`. */ deleteReports?: boolean | core.BooleanOut; /** * (Required) Information about the destination where the raw data of this Report Group is exported. se * e [Export Config](#export-config) documented below. */ exportConfig: ExportConfig; /** * (Required) The name of a Report Group. */ name: string | core.StringOut; /** * (Optional) Key-value mapping of resource tags. If configured with a provider [`default_tags` configu * ration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags-configu * ration-block) present, tags with matching keys will overwrite those defined at the provider-level. */ tags?: core.Map | core.MapOut; /** * A map of tags assigned to the resource, including those inherited from the provider [`default_tags` * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags- * configuration-block). */ tagsAll?: core.Map | core.MapOut; /** * (Required) The type of the Report Group. Valid value are `TEST` and `CODE_COVERAGE`. */ type: string | core.StringOut; } export class ReportGroup extends core.Resource { /** * The ARN of Report Group. */ @core.attr(String, { computed: true }) public arn!: string | core.StringOut; /** * The date and time this Report Group was created. */ @core.attr(String, { computed: true }) public created!: string | core.StringOut; /** * (Optional) If `true`, deletes any reports that belong to a report group before deleting the report g * roup. If `false`, you must delete any reports in the report group before deleting it. Default value * is `false`. */ @core.attr(Boolean) public deleteReports?: boolean | core.BooleanOut; /** * (Required) Information about the destination where the raw data of this Report Group is exported. se * e [Export Config](#export-config) documented below. */ @core.attr(ExportConfig) public exportConfig!: ExportConfig; /** * The ARN of Report Group. */ @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * (Required) The name of a Report Group. */ @core.attr(String) public name!: string | core.StringOut; /** * (Optional) Key-value mapping of resource tags. If configured with a provider [`default_tags` configu * ration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags-configu * ration-block) present, tags with matching keys will overwrite those defined at the provider-level. */ @core.attr(String, { kind: "map" }) public tags?: core.Map | core.MapOut; /** * A map of tags assigned to the resource, including those inherited from the provider [`default_tags` * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags- * configuration-block). */ @core.attr(String, { computed: true, kind: "map" }) public tagsAll?: core.Map | core.MapOut; /** * (Required) The type of the Report Group. Valid value are `TEST` and `CODE_COVERAGE`. */ @core.attr(String) public type!: string | core.StringOut; constructor(name: string, args?: ReportGroupArgs) { super(name, "aws_codebuild_report_group", args); } public override getNamespace(): string { return "aws_codebuild"; } }