import * as core from "@terrascript/core"; export interface QueryDefinitionArgs extends core.ResourceArgs { /** * (Optional) Specific log groups to use with the query. */ logGroupNames?: core.Array | core.ArrayOut; /** * (Required) The name of the query. */ name: string | core.StringOut; /** * (Required) The query to save. You can read more about CloudWatch Logs Query Syntax in the [documenta * tion](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax.html). */ queryString: string | core.StringOut; } export class QueryDefinition extends core.Resource { @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * (Optional) Specific log groups to use with the query. */ @core.attr(String, { kind: "array" }) public logGroupNames?: core.Array | core.ArrayOut; /** * (Required) The name of the query. */ @core.attr(String) public name!: string | core.StringOut; /** * The query definition ID. */ @core.attr(String, { computed: true }) public queryDefinitionId!: string | core.StringOut; /** * (Required) The query to save. You can read more about CloudWatch Logs Query Syntax in the [documenta * tion](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax.html). */ @core.attr(String) public queryString!: string | core.StringOut; constructor(name: string, args?: QueryDefinitionArgs) { super(name, "aws_cloudwatch_query_definition", args); } public override getNamespace(): string { return "aws_cloudwatch"; } }